X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=opie.c;h=26f3c93cc561e610120b2eb21538b066fb9dfbec;hb=ff4bcbba4965b386a5d9498dbb2dfbd06809dd62;hp=0c0b9886a7f55403134c035c24b2461908ad6147;hpb=ae747561a4218a1b7e108d776dd1f39565765135;p=~andy%2Ffetchmail diff --git a/opie.c b/opie.c index 0c0b9886..26f3c93c 100644 --- a/opie.c +++ b/opie.c @@ -15,22 +15,27 @@ #include "socket.h" #include "i18n.h" -#include "md5.h" +#include "fm_md5.h" -#if OPIE_ENABLE +#ifdef OPIE_ENABLE +#ifdef __cplusplus +extern "C" { +#endif #include +#ifdef __cplusplus +} +#endif -int do_otp(int sock, char *command, struct query *ctl) +int do_otp(int sock, const char *command, struct query *ctl) { int i, rval; - int result; char buffer[128]; char challenge[OPIE_CHALLENGE_MAX+1+8]; char response[OPIE_RESPONSE_MAX+1]; gen_send(sock, "%s X-OTP", command); - if (rval = gen_recv(sock, buffer, sizeof(buffer))) + if ((rval = gen_recv(sock, buffer, sizeof(buffer)))) return rval; if (strncmp(buffer, "+", 1)) { @@ -40,10 +45,10 @@ int do_otp(int sock, char *command, struct query *ctl) to64frombits(buffer, ctl->remotename, strlen(ctl->remotename)); suppress_tags = TRUE; - gen_send(sock, buffer, sizeof(buffer)); + gen_send(sock, "%s", buffer); suppress_tags = FALSE; - if (rval = gen_recv(sock, buffer, sizeof(buffer))) + if ((rval = gen_recv(sock, buffer, sizeof(buffer)))) return rval; memset(challenge, '\0', sizeof(challenge)); @@ -67,17 +72,14 @@ int do_otp(int sock, char *command, struct query *ctl) to64frombits(buffer, response, strlen(response)); suppress_tags = TRUE; - gen_send(sock, buffer, strlen(buffer)); + gen_send(sock, "%s", buffer); suppress_tags = FALSE; - if (rval = gen_recv(sock, buffer, sizeof(buffer))) + if ((rval = gen_recv(sock, buffer, sizeof(buffer)))) return rval; - if (result) - return PS_SUCCESS; - else - return PS_AUTHFAIL; -}; + return PS_SUCCESS; +} #endif /* OPIE_ENABLE */ /* opie.c ends here */