summaryrefslogtreecommitdiff
path: root/accel-pptpd/radius/auth.c
diff options
context:
space:
mode:
authorKozlov Dmitry <dima@server>2010-09-09 16:10:40 +0400
committerKozlov Dmitry <dima@server>2010-09-09 16:13:25 +0400
commiteac0adf4b2b038690c761a126cb3e55a888060df (patch)
treea286e779ad7f878bc7b8eaedb99f5a64f29b1632 /accel-pptpd/radius/auth.c
parent29b03dcfbd3b4783b0192e5f8c9bb6281acf44d5 (diff)
downloadaccel-ppp-eac0adf4b2b038690c761a126cb3e55a888060df.tar.gz
accel-ppp-eac0adf4b2b038690c761a126cb3e55a888060df.zip
radius: implemented DM/CoA extensions
Diffstat (limited to 'accel-pptpd/radius/auth.c')
-rw-r--r--accel-pptpd/radius/auth.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/accel-pptpd/radius/auth.c b/accel-pptpd/radius/auth.c
index 98c7aa89..2415a058 100644
--- a/accel-pptpd/radius/auth.c
+++ b/accel-pptpd/radius/auth.c
@@ -56,11 +56,11 @@ int rad_auth_pap(struct radius_pd_t *rpd, const char *username, va_list args)
if (!req)
return PWDB_DENIED;
- epasswd = encrypt_password(passwd, conf_auth_server_secret, req->RA, &epasswd_len);
+ epasswd = encrypt_password(passwd, conf_auth_secret, req->RA, &epasswd_len);
if (!epasswd)
goto out;
- if (rad_req_add_str(req, "Password", (char*)epasswd, epasswd_len, 0)) {
+ if (rad_packet_add_octets(req->pack, "Password", epasswd, epasswd_len)) {
free(epasswd);
goto out;
}
@@ -97,12 +97,12 @@ int rad_auth_chap_md5(struct radius_pd_t *rpd, const char *username, va_list arg
{
struct rad_req_t *req;
int i, r = PWDB_DENIED;
- char chap_password[17];
+ uint8_t chap_password[17];
int id = va_arg(args, int);
- const uint8_t *challenge = va_arg(args, const uint8_t *);
+ uint8_t *challenge = va_arg(args, uint8_t *);
int challenge_len = va_arg(args, int);
- const uint8_t *response = va_arg(args, const uint8_t *);
+ uint8_t *response = va_arg(args, uint8_t *);
chap_password[0] = id;
memcpy(chap_password + 1, response, 16);
@@ -114,11 +114,11 @@ int rad_auth_chap_md5(struct radius_pd_t *rpd, const char *username, va_list arg
if (challenge_len == 16)
memcpy(req->RA, challenge, 16);
else {
- if (rad_req_add_str(req, "CHAP-Challenge", (char*)challenge, challenge_len, 0))
+ if (rad_packet_add_octets(req->pack, "CHAP-Challenge", challenge, challenge_len))
goto out;
}
- if (rad_req_add_str(req, "CHAP-Password", chap_password, 17, 0))
+ if (rad_packet_add_octets(req->pack, "CHAP-Password", chap_password, 17))
goto out;
for(i = 0; i < conf_max_try; i++) {