fixed password changing in tree view
This commit is contained in:
		
							parent
							
								
									a4fe603233
								
							
						
					
					
						commit
						78dda09764
					
				|  | @ -1107,32 +1107,9 @@ function get_enc_type( $user_password ) | |||
|     /* Capture the stuff in the { } to determine if this is crypt, md5, etc. */ | ||||
|     $enc_type = null; | ||||
|     if( preg_match( "/{([^}]+)}/", $user_password, $enc_type) )  | ||||
|         $enc_type = strtolower( $enc_type[1] );  | ||||
|         return $enc_type[1];  | ||||
|     else | ||||
|         return null; | ||||
| 
 | ||||
|     /* handle crypt types */ | ||||
|     if( 0 == strcasecmp( $enc_type, 'crypt') ) { | ||||
|         $salt = null; | ||||
|         if( preg_match( "/{[^}]+}\\$(.)\\$/", $user_password, $salt) ) | ||||
|             $salt = $salt[1]; | ||||
|         else | ||||
|             $salt = null; | ||||
|         switch( $salt ) { | ||||
|             case '':   // CRYPT_STD_DES
 | ||||
|                 $enc_type = "crypt"; | ||||
|                 break; | ||||
|             case '1':   // CRYPT_MD5
 | ||||
|                 $enc_type = "md5crypt"; | ||||
|                 break; | ||||
|             case '2':   // CRYPT_BLOWFISH
 | ||||
|                 $enc_type = "blowfish"; | ||||
|                 break; | ||||
|             default: | ||||
|                 $enc_type = "crypt"; | ||||
|         } | ||||
|     } | ||||
|     return $enc_type; | ||||
| } | ||||
| 
 | ||||
| /** | ||||
|  |  | |||
|  | @ -341,7 +341,7 @@ foreach( $attrs as $attr => $vals ) { | |||
| 		<input size="38" | ||||
| 		       type="hidden" | ||||
| 		       name="old_enc_type" | ||||
| 		       value="<?php echo ($enc_type==''?'clear':$enc_type); ?>" /> | ||||
| 		       value="<?php echo ($enc_type==''?'PLAIN':$enc_type); ?>" /> | ||||
| 
 | ||||
|         <br /> | ||||
| 		<input style="width: 260px" | ||||
|  | @ -350,14 +350,12 @@ foreach( $attrs as $attr => $vals ) { | |||
|                value="<?php echo htmlspecialchars( $user_password ); ?>" /> | ||||
| 
 | ||||
| 		<select name="enc_type"> | ||||
| 			<option>clear</option> | ||||
| 			<option<?php echo $enc_type=='crypt'?' selected="true"':''; ?>>crypt</option>
 | ||||
| 			<option<?php echo $enc_type=='md5'?' selected="true"':''; ?>>md5</option>
 | ||||
| 			<option<?php echo $enc_type=='smd5'?' selected="true"':''; ?>>smd5</option>
 | ||||
| 			<option<?php echo $enc_type=='md5crypt'?' selected="true"':''; ?>>md5crypt</option>
 | ||||
| 			<option<?php echo $enc_type=='blowfish'?' selected="true"':''; ?>>blowfish</option>
 | ||||
| 			<option<?php echo $enc_type=='sha'?' selected="true"':''; ?>>sha</option>
 | ||||
| 			<option<?php echo $enc_type=='ssha'?' selected="true"':''; ?>>ssha</option>
 | ||||
| 			<option>PLAIN</option> | ||||
| 			<option<?php echo $enc_type=='CRYPT'?' selected="true"':''; ?>>CRYPT</option>
 | ||||
| 			<option<?php echo $enc_type=='MD5'?' selected="true"':''; ?>>MD5</option>
 | ||||
| 			<option<?php echo $enc_type=='SMD5'?' selected="true"':''; ?>>SMD5</option>
 | ||||
| 			<option<?php echo $enc_type=='SHA'?' selected="true"':''; ?>>SHA</option>
 | ||||
| 			<option<?php echo $enc_type=='SSHA'?' selected="true"':''; ?>>SSHA</option>
 | ||||
| 			</select> | ||||
| 
 | ||||
|             <br /> | ||||
|  |  | |||
|  | @ -88,7 +88,7 @@ foreach( $old_values as $attr => $old_val ) | |||
| 
 | ||||
| 		// special case for userPassword attributes
 | ||||
| 		if( 0 == strcasecmp( $attr, 'userPassword' ) && $new_val != '' ) { | ||||
| 		  $new_val = password_hash( $new_val, $_POST['enc_type'] ); | ||||
| 		  $new_val = pwd_hash($new_val, true, $_POST['enc_type'] ); | ||||
| 		  $password_already_hashed = true; | ||||
| 		} | ||||
| 		// special case for samba password
 | ||||
|  | @ -111,7 +111,7 @@ if(	isset( $_POST['enc_type'] ) && | |||
| 	$_POST['enc_type'] != 'clear' && | ||||
| 	$_POST['new_values']['userpassword'] != '' ) { | ||||
| 
 | ||||
| 	$new_password = password_hash( $_POST['new_values']['userpassword'], $_POST['enc_type'] ); | ||||
| 	$new_password = pwd_hash( $_POST['new_values']['userpassword'], true, $_POST['enc_type'] ); | ||||
| 	$update_array[ 'userpassword' ] = $new_password; | ||||
| } | ||||
| 
 | ||||
|  | @ -160,7 +160,7 @@ foreach( $update_array as $attr => $val ) { | |||
| 			foreach( $old_values[ $attr ] as $v ) | ||||
| 				echo nl2br( htmlspecialchars( $v ) ) . "<br />"; | ||||
| 		else   | ||||
| 			if( 0 == strcasecmp( $attr, 'userPassword' ) && ( obfuscate_password_display() || is_null( get_enc_type( $old_values[ $attr ] ) ) ) ) { | ||||
| 			if( 0 == strcasecmp( $attr, 'userPassword' ) && ( is_null( get_enc_type( $old_values[ $attr ] ) ) ) ) { | ||||
| 				echo preg_replace( '/./', '*', $old_values[ $attr ] ) . "<br />"; | ||||
| 			} | ||||
| 			else { | ||||
|  | @ -190,7 +190,7 @@ foreach( $update_array as $attr => $val ) { | |||
| 		} | ||||
| 		else  | ||||
| 			if( $new_val != '' )  | ||||
| 				if( 0 == strcasecmp( $attr, 'userPassword' ) && ( obfuscate_password_display() || is_null( get_enc_type( $new_values[ $attr ] ) ) ) ) { | ||||
| 				if( 0 == strcasecmp( $attr, 'userPassword' ) && ( is_null( get_enc_type( $new_values[ $attr ] ) ) ) ) { | ||||
| 					echo preg_replace( '/./', '*', $new_val ) . "<br />"; | ||||
| 				} | ||||
| 				else { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue