diff options
Diffstat (limited to 'drivers/target/iscsi/iscsi_target_auth.c')
| -rw-r--r-- | drivers/target/iscsi/iscsi_target_auth.c | 28 | 
1 files changed, 1 insertions, 27 deletions
diff --git a/drivers/target/iscsi/iscsi_target_auth.c b/drivers/target/iscsi/iscsi_target_auth.c index a0fc7b9eea6..cee17543278 100644 --- a/drivers/target/iscsi/iscsi_target_auth.c +++ b/drivers/target/iscsi/iscsi_target_auth.c @@ -49,32 +49,6 @@ static void chap_binaryhex_to_asciihex(char *dst, char *src, int src_len)  	}  } -static void chap_set_random(char *data, int length) -{ -	long r; -	unsigned n; - -	while (length > 0) { -		get_random_bytes(&r, sizeof(long)); -		r = r ^ (r >> 8); -		r = r ^ (r >> 4); -		n = r & 0x7; - -		get_random_bytes(&r, sizeof(long)); -		r = r ^ (r >> 8); -		r = r ^ (r >> 5); -		n = (n << 3) | (r & 0x7); - -		get_random_bytes(&r, sizeof(long)); -		r = r ^ (r >> 8); -		r = r ^ (r >> 5); -		n = (n << 2) | (r & 0x3); - -		*data++ = n; -		length--; -	} -} -  static void chap_gen_challenge(  	struct iscsi_conn *conn,  	int caller, @@ -86,7 +60,7 @@ static void chap_gen_challenge(  	memset(challenge_asciihex, 0, CHAP_CHALLENGE_LENGTH * 2 + 1); -	chap_set_random(chap->challenge, CHAP_CHALLENGE_LENGTH); +	get_random_bytes(chap->challenge, CHAP_CHALLENGE_LENGTH);  	chap_binaryhex_to_asciihex(challenge_asciihex, chap->challenge,  				CHAP_CHALLENGE_LENGTH);  	/*  |