| Summary | Streamlining of passwd expect driver |
| Queue | Passwd |
| Queue Version | HEAD |
| Type | Enhancement |
| State | Stalled |
| Priority | 1. Low |
| Owners | |
| Requester | gavin (at) gwenandgavin (dot) ca |
| Created | 10/28/2006 (561 days ago) |
| Due | |
| Updated | 04/16/2008 (25 days ago) |
| Assigned | 10/28/2006 (561 days ago) |
| Resolved | 04/16/2008 (25 days ago) |
| Attachments | passwd_expect.patch ![]() |
| Milestone | |
| Patch |
State ⇒ Stalled
Marking as stalled for now. We'll re-open if there's activity.> Ping?Still here. It has been so long since I created this patch, that looking into merging this will take as long as it took to write it in the first place. I will keep this on my list of things to do, but it is pretty low on a long list.
Ping?State ⇒ Feedback
Taken from Jan Schneider
Taken from
Taken from Eric Rostetter
Unfortunately this patch doesn't apply cleanly anymore. It looks like some of the improvements have been merged, and there's a separate kpasswd_expect script. Any chance you could update the remaining improvements against HEAD?
(I took a shot, but got lost where the new code has a case for sudo)
Assigned to
Assigned to Eric Rostetter
State ⇒ New
Type ⇒ Enhancement
Priority ⇒ 1. Low
Summary ⇒ Streamlining of passwd expect driver
New Attachment: passwd_expect.patch
Queue ⇒ Passwd
Reworked the expect and send logic using exp_continue. See full description below.
Added procs that ensure consistent handling of sending and exiting.
Changed default fingerprint_string to work with any prompt that asks "Are you sure you want to continue connecting"
Changed default verify_string to accomodate "Retype New Password" and "Retype new password"
Removed old commented out code
Changed starting of remote session to be as generic as possible, including removing special case handling of telnet.
Added a common timeout handler so every expect command does not have to accomodate timeout
Added handling no output from program that indicates success.
Ensured that success is returned even if timeout after passwd changed
Added handling of kpasswd through the -kpasswd command line option and minor additions to the verify_string
Old logic for expecting and sending was:
0> If telnet check for user name prompt and send
1> enter password at prompt or ssh accept fingerprint message
2> start password changing prompt or send old password if passwd already started
3> send old password if we just sent old password
4> send new password if being prompted
5> send new password again
6> check response
New logic using exp_continue and expect_after
1> log in (accept finger print string, supply username, and/or supply password)
2> start password changing program (if necessary) and send old password. Wait for old password to be accepted.
3> send new password (no expect necessary)
4> send new password again and wait for password to be verified