X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=daemon%2Fui.c;fp=daemon%2Fui.c;h=34eebc10210f0ae6cf860f3c10e3b24ec8ba4401;hb=3616b334bc6426e973e08b612a5e8fd30ad80a5f;hp=d77efa79146b67eac62588d857e30e0127b2eff7;hpb=9e5f2b29cf819c9f79113bf3ae7edcb484d8ee14;p=doldaconnect.git diff --git a/daemon/ui.c b/daemon/ui.c index d77efa7..34eebc1 100644 --- a/daemon/ui.c +++ b/daemon/ui.c @@ -389,7 +389,7 @@ static void cmd_lsauth(struct socket *sk, struct uidata *data, int argc, wchar_t prev = NULL; for(mech = mechs; mech != NULL; mech = mech->next) { - if(mech->enabled) + if(mech->enabled && authavailable(mech, sk)) { if(prev != NULL) sq(sk, 1, L"200", prev->name, NULL); @@ -438,7 +438,7 @@ static void cmd_login(struct socket *sk, struct uidata *data, int argc, wchar_t return; } free(buf); - switch(authenticate(data->auth, NULL)) + switch(authenticate(data->auth, sk, NULL)) { case AUTH_SUCCESS: data->userinfo = finduser(data->username); @@ -512,7 +512,7 @@ static void cmd_pass(struct socket *sk, struct uidata *data, int argc, wchar_t * sq(sk, 0, L"507", L"Data not expected", NULL); return; } - switch(authenticate(data->auth, buf)) + switch(authenticate(data->auth, sk, buf)) { case AUTH_SUCCESS: data->userinfo = finduser(data->username);