<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet href="https://dev.horde.org/themes/horde//default/feed-rss.xsl" type="text/xsl"?> 
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 
 <channel> 
  <title>Streamlining of passwd expect driver</title> 
  <pubDate>Fri, 10 Apr 2026 09:04:30 +0000</pubDate> 
  <link>https://bugs.horde.org/ticket/4570</link> 
  <atom:link rel="self" type="application/rss+xml" title="Streamlining of passwd expect driver" href="https://bugs.horde.org/ticket/4570/rss" /> 
  <description>Streamlining of passwd expect driver</description> 
 
   
   
  <item> 
   <title>Reworked the expect and send logic using exp_continue.  See </title> 
   <description>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 &quot;Are you sure you want to continue connecting&quot;

Changed default verify_string to accomodate &quot;Retype New Password&quot; and &quot;Retype new password&quot;

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&gt; If telnet check for user name prompt and send

1&gt; enter password at prompt or ssh accept fingerprint message

2&gt; start password changing prompt or send old password if passwd already started

3&gt; send old password if we just sent old password

4&gt; send new password if being prompted

5&gt; send new password again

6&gt; check response



New logic using exp_continue and expect_after

1&gt; log in (accept finger print string, supply username, and/or supply password)

2&gt; start password changing program (if necessary) and send old password.  Wait for old password to be accepted.

3&gt; send new password (no expect necessary)

4&gt; send new password again and wait for password to be verified

</description> 
   <pubDate>Sat, 28 Oct 2006 04:42:36 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/4570#t25345</link> 
  </item> 
   
  <item> 
   <title>Unfortunately this patch doesn&#039;t apply cleanly anymore. It l</title> 
   <description>Unfortunately this patch doesn&#039;t apply cleanly anymore. It looks like some of the improvements have been merged, and there&#039;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)</description> 
   <pubDate>Mon, 24 Dec 2007 22:06:41 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/4570#t40273</link> 
  </item> 
   
  <item> 
   <title>Ping?</title> 
   <description>Ping?</description> 
   <pubDate>Sun, 24 Feb 2008 12:29:33 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/4570#t42828</link> 
  </item> 
   
  <item> 
   <title>&gt; Ping?

Still here.  It has been so long since I created th</title> 
   <description>&gt; 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.</description> 
   <pubDate>Sun, 24 Feb 2008 21:56:43 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/4570#t42872</link> 
  </item> 
   
  <item> 
   <title>Marking as stalled for now. We&#039;ll re-open if there&#039;s activit</title> 
   <description>Marking as stalled for now. We&#039;ll re-open if there&#039;s activity.</description> 
   <pubDate>Wed, 16 Apr 2008 18:04:15 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/4570#t44672</link> 
  </item> 
   
   
 
 </channel> 
</rss> 
