diff -crN scarab-1.0-b13.orig/src/java/org/tigris/scarab/actions/ChangePassword.java scarab-1.0-b13/src/java/org/tigris/scarab/actions/ChangePassword.java
*** scarab-1.0-b13.orig/src/java/org/tigris/scarab/actions/ChangePassword.java	Wed May 29 17:35:45 2002
--- scarab-1.0-b13/src/java/org/tigris/scarab/actions/ChangePassword.java	Sun Dec 29 19:38:37 2002
***************
*** 114,119 ****
--- 114,153 ----
                      ScarabUser confirmedUser = (ScarabUser)
                          TurbineSecurity.getUser(username);
  
+ /*****************************************************************************/
+ // /usr/bin/htpasswd -b /User/www/svn-passwd confirmedUser.getName() password
+ try
+ {
+     Process p = Runtime.getRuntime().exec( new String[] { 
+         "/usr/bin/htpasswd", 
+         "-b", 
+         "/Users/www/svn-passwd", 
+         confirmedUser.getEmail(), 
+         password 
+     } );
+     
+     if( p.waitFor() != 0 )
+     {
+         java.io.DataInputStream dis = new java.io.DataInputStream( p.getErrorStream() );
+         StringBuffer sb = new StringBuffer();
+         String str;
+         while( (str=dis.readLine()) != null )
+             sb.append(str);
+         getScarabRequestTool(context).setAlertMessage( "error: " + sb );
+         setTarget( data, template );
+         return;
+     }
+ }
+ catch(Exception e)
+ {
+     java.io.StringWriter sw = new java.io.StringWriter();
+     e.printStackTrace( new java.io.PrintWriter(sw) );
+     getScarabRequestTool(context).setAlertMessage( "error: " + sw );
+     setTarget( data, template );
+     return;
+ }
+ /*****************************************************************************/
+ 
                      // first we need to save the user out
                      confirmedUser.setPasswordExpire();
                      confirmedUser.setHasLoggedIn(Boolean.FALSE);

