makedoc won't work anymore.
[apps/madmutt.git] / mutt_sasl.c
index 6da72b5..dd97bfa 100644 (file)
@@ -186,8 +186,8 @@ int mutt_sasl_client_new (CONNECTION * conn, sasl_conn_t ** saslconn)
 
 int mutt_sasl_interact (sasl_interact_t * interaction)
 {
-    char prompt[SHORT_STRING];
-    char resp[SHORT_STRING];
+    char prompt[STRING];
+    char resp[STRING];
 
     while (interaction->id != SASL_CB_LIST_END) {
         snprintf (prompt, sizeof (prompt), "%s: ", interaction->prompt);
@@ -302,7 +302,7 @@ static int mutt_sasl_cb_pass(sasl_conn_t *conn __attribute__ ((unused)),
 
     *psecret = xmalloc(sizeof(sasl_secret_t) + len);
     (*psecret)->len = len;
-    strcpy((char*)(*psecret)->data, account->pass);
+    memcpy((char*)(*psecret)->data, account->pass, len);
 
     return SASL_OK;
 }
@@ -434,9 +434,9 @@ mutt_sasl_conn_write(CONNECTION * conn, const char *buf, ssize_t len)
                 goto fail;
             }
 
-            rc = (sasldata->msasl_write)(conn, pbuf, plen);
+            plen -= (sasldata->msasl_write)(conn, pbuf, plen);
             p_delete(&pbuf);
-            if (rc != plen)
+            if (plen)
                 goto fail;
 
             len -= olen;