X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fplugins%2Fradius%2Fradiusclient%2Flib%2Fsendserver.c;fp=pppd%2Fplugins%2Fradius%2Fradiusclient%2Flib%2Fsendserver.c;h=7166ed0ce9ba788c20b0f74c1babf949ede9fe7e;hb=487bb169365c260739dc79702772e2fb15ec6202;hp=351bd12b145845aa4f9f5b2929d65f9fd422a52e;hpb=dbab7400abf57617a9334735a64ff00c6552cec5;p=ppp.git diff --git a/pppd/plugins/radius/radiusclient/lib/sendserver.c b/pppd/plugins/radius/radiusclient/lib/sendserver.c index 351bd12..7166ed0 100644 --- a/pppd/plugins/radius/radiusclient/lib/sendserver.c +++ b/pppd/plugins/radius/radiusclient/lib/sendserver.c @@ -1,5 +1,5 @@ /* - * $Id: sendserver.c,v 1.3 2002/03/05 15:36:17 dfs Exp $ + * $Id: sendserver.c,v 1.4 2002/04/02 14:09:35 dfs Exp $ * * Copyright (C) 1995,1996,1997 Lars Fenneberg * @@ -190,7 +190,7 @@ static int rc_pack_list (VALUE_PAIR *vp, char *secret, AUTH_HDR *auth) * */ -int rc_send_server (SEND_DATA *data, char *msg) +int rc_send_server (SEND_DATA *data, char *msg, REQUEST_INFO *info) { int sockfd; struct sockaddr salocal; @@ -279,7 +279,7 @@ int rc_send_server (SEND_DATA *data, char *msg) else { rc_random_vector (vector); - memcpy ((char *) auth->vector, (char *) vector, AUTH_VECTOR_LEN); + memcpy (auth->vector, vector, AUTH_VECTOR_LEN); total_length = rc_pack_list(data->send_pairs, secret, auth) + AUTH_HDR_LEN; @@ -348,6 +348,12 @@ int rc_send_server (SEND_DATA *data, char *msg) data->receive_pairs = rc_avpair_gen(recv_auth); close (sockfd); + if (info) + { + memcpy(info->secret, secret, sizeof(info->secret)); + memcpy(info->request_vector, vector, + sizeof(info->request_vector)); + } memset (secret, '\0', sizeof (secret)); if (result != OK_RC) return (result); @@ -388,8 +394,8 @@ int rc_send_server (SEND_DATA *data, char *msg) * */ -static int rc_check_reply (AUTH_HDR *auth, int bufferlen, char *secret, unsigned char *vector,\ - unsigned char seq_nbr) +static int rc_check_reply (AUTH_HDR *auth, int bufferlen, char *secret, + unsigned char *vector, unsigned char seq_nbr) { int secretlen; int totallen;