|
|
| version 1.1.1.1, 2012/02/21 23:32:47 | version 1.1.1.2, 2013/07/22 08:44:29 |
|---|---|
| Line 179 ACLDestroy(struct acl *acl) | Line 179 ACLDestroy(struct acl *acl) |
| void authparamsInit(struct authparams *ap) { | void authparamsInit(struct authparams *ap) { |
| memset(ap,0,sizeof(struct authparams)); | memset(ap,0,sizeof(struct authparams)); |
| ap->eapmsg = NULL; | |
| ap->state = NULL; | |
| ap->class = NULL; | |
| ap->msdomain = NULL; | ap->msdomain = NULL; |
| #ifdef SIOCSIFDESCR | #ifdef SIOCSIFDESCR |
| ap->ifdescr = NULL; | ap->ifdescr = NULL; |
| Line 602 AuthDataNew(Link l) | Line 605 AuthDataNew(Link l) |
| Auth a = &l->lcp.auth; | Auth a = &l->lcp.auth; |
| auth = Malloc(MB_AUTH, sizeof(*auth)); | auth = Malloc(MB_AUTH, sizeof(*auth)); |
| auth->reply_message = NULL; | |
| auth->mschap_error = NULL; | |
| auth->mschapv2resp = NULL; | |
| auth->conf = l->lcp.auth.conf; | auth->conf = l->lcp.auth.conf; |
| if (l->lcp.auth.conf.extauth_script) | if (l->lcp.auth.conf.extauth_script) |
| auth->conf.extauth_script = Mstrdup(MB_AUTH, l->lcp.auth.conf.extauth_script); | auth->conf.extauth_script = Mstrdup(MB_AUTH, l->lcp.auth.conf.extauth_script); |
| Line 613 AuthDataNew(Link l) | Line 619 AuthDataNew(Link l) |
| strlcpy(auth->info.session_id, l->session_id, sizeof(auth->info.session_id)); | strlcpy(auth->info.session_id, l->session_id, sizeof(auth->info.session_id)); |
| strlcpy(auth->info.peer_ident, l->lcp.peer_ident, sizeof(l->lcp.peer_ident)); | strlcpy(auth->info.peer_ident, l->lcp.peer_ident, sizeof(l->lcp.peer_ident)); |
| auth->info.originate = l->originate; | auth->info.originate = l->originate; |
| auth->info.downReason = NULL; | |
| if (l->bund) { | if (l->bund) { |
| strlcpy(auth->info.ifname, l->bund->iface.ifname, sizeof(auth->info.ifname)); | strlcpy(auth->info.ifname, l->bund->iface.ifname, sizeof(auth->info.ifname)); |
| Line 725 AuthStat(Context ctx, int ac, char *av[], void *arg) | Line 732 AuthStat(Context ctx, int ac, char *av[], void *arg) |
| Printf("\tInterface descr.: \"%s\"\r\n", | Printf("\tInterface descr.: \"%s\"\r\n", |
| au->params.ifdescr != NULL ? au->params.ifdescr : "<none>"); | au->params.ifdescr != NULL ? au->params.ifdescr : "<none>"); |
| #endif | #endif |
| #ifdef SIOCAIFGROUP | |
| Printf("\tInterface group : %s\r\n", au->params.ifgroup); | Printf("\tInterface group : %s\r\n", au->params.ifgroup); |
| #endif | |
| Printf("\tIP range : %s\r\n", (au->params.range_valid)? | Printf("\tIP range : %s\r\n", (au->params.range_valid)? |
| u_rangetoa(&au->params.range,buf,sizeof(buf)):""); | u_rangetoa(&au->params.range,buf,sizeof(buf)):""); |
| Printf("\tIP pool : %s\r\n", au->params.ippool); | Printf("\tIP pool : %s\r\n", au->params.ippool); |
| Line 898 AuthAccountStart(Link l, int type) | Line 907 AuthAccountStart(Link l, int type) |
| if (paction_start(&a->acct_thread, &gGiantMutex, AuthAccount, | if (paction_start(&a->acct_thread, &gGiantMutex, AuthAccount, |
| AuthAccountFinish, auth) == -1) { | AuthAccountFinish, auth) == -1) { |
| Log(LG_ERR, ("[%s] ACCT: Couldn't start thread: %d", | Perror("[%s] ACCT: Couldn't start thread", l->name); |
| l->name, errno)); | |
| AuthDataDestroy(auth); | AuthDataDestroy(auth); |
| } | } |
| } | } |
| Line 1119 AuthAsyncStart(Link l, AuthData auth) | Line 1127 AuthAsyncStart(Link l, AuthData auth) |
| if (paction_start(&a->thread, &gGiantMutex, AuthAsync, | if (paction_start(&a->thread, &gGiantMutex, AuthAsync, |
| AuthAsyncFinish, auth) == -1) { | AuthAsyncFinish, auth) == -1) { |
| Log(LG_ERR, ("[%s] AUTH: Couldn't start thread: %d", | Perror("[%s] AUTH: Couldn't start thread", l->name); |
| l->name, errno)); | |
| auth->status = AUTH_STATUS_FAIL; | auth->status = AUTH_STATUS_FAIL; |
| auth->why_fail = AUTH_FAIL_NOT_EXPECTED; | auth->why_fail = AUTH_FAIL_NOT_EXPECTED; |
| auth->finish(l, auth); | auth->finish(l, auth); |
| Line 1337 AuthSystem(AuthData auth) | Line 1344 AuthSystem(AuthData auth) |
| err=errno; | err=errno; |
| GIANT_MUTEX_UNLOCK(); /* We must release lock before Log() */ | GIANT_MUTEX_UNLOCK(); /* We must release lock before Log() */ |
| if (err) | if (err) |
| Perror("[%s] AUTH: Error retrieving passwd", auth->info.lnkname); | Log(LG_ERR, ("[%s] AUTH: Error retrieving passwd: %s", |
| auth->info.lnkname, strerror(err))); | |
| else | else |
| Log(LG_AUTH, ("[%s] AUTH: User \"%s\" not found in the systems database", | Log(LG_AUTH, ("[%s] AUTH: User \"%s\" not found in the systems database", |
| auth->info.lnkname, auth->params.authname)); | auth->info.lnkname, auth->params.authname)); |
| Line 1500 AuthPAM(AuthData auth) | Line 1508 AuthPAM(AuthData auth) |
| return; | return; |
| } | } |
| if (pam_start("mpd", auth->params.authname, &pamc, &pamh) != PAM_SUCCESS) { | if (pam_start(gPamService, auth->params.authname, &pamc, &pamh) != PAM_SUCCESS) { |
| Log(LG_ERR, ("[%s] AUTH: PAM error", auth->info.lnkname)); | Log(LG_ERR, ("[%s] AUTH: PAM error", auth->info.lnkname)); |
| auth->status = AUTH_STATUS_FAIL; | auth->status = AUTH_STATUS_FAIL; |
| auth->why_fail = AUTH_FAIL_NOT_EXPECTED; | auth->why_fail = AUTH_FAIL_NOT_EXPECTED; |
| Line 1569 AuthPAMAcct(AuthData auth) | Line 1577 AuthPAMAcct(AuthData auth) |
| return (0); | return (0); |
| } | } |
| if (pam_start("mpd", auth->params.authname, &pamc, &pamh) != PAM_SUCCESS) { | if (pam_start(gPamService, auth->params.authname, &pamc, &pamh) != PAM_SUCCESS) { |
| Log(LG_ERR, ("[%s] ACCT: PAM error", auth->info.lnkname)); | Log(LG_ERR, ("[%s] ACCT: PAM error", auth->info.lnkname)); |
| return (-1); | return (-1); |
| } | } |