imap_append_message. Closes: #2244.
if (idata->cmdbuf->dptr == idata->cmdbuf->data)
return IMAP_CMD_BAD;
- rc = mutt_socket_write_d (idata->conn, idata->cmdbuf->data,
+ rc = mutt_socket_write_d (idata->conn, idata->cmdbuf->data, -1,
flags & IMAP_CMD_PASS ? IMAP_LOG_PASS : IMAP_LOG_CMD);
idata->cmdbuf->dptr = idata->cmdbuf->data;
static void flush_buffer(char *buf, size_t *len, CONNECTION *conn)
{
buf[*len] = '\0';
- mutt_socket_write(conn, buf);
+ mutt_socket_write_n(conn, buf, *len);
*len = 0;
}
return rc;
}
-int mutt_socket_write_d (CONNECTION *conn, const char *buf, int dbg)
+int mutt_socket_write_d (CONNECTION *conn, const char *buf, int len, int dbg)
{
int rc;
- int len;
dprint (dbg, (debugfile,"> %s", buf));
return -1;
}
- len = mutt_strlen (buf);
+ if (len < 0)
+ len = mutt_strlen (buf);
if ((rc = conn->conn_write (conn, buf, len)) < 0)
{
dprint (1, (debugfile,
int mutt_socket_readchar (CONNECTION *conn, char *c);
#define mutt_socket_readln(A,B,C) mutt_socket_readln_d(A,B,C,M_SOCK_LOG_CMD)
int mutt_socket_readln_d (char *buf, size_t buflen, CONNECTION *conn, int dbg);
-#define mutt_socket_write(A,B) mutt_socket_write_d(A,B,M_SOCK_LOG_CMD)
-int mutt_socket_write_d (CONNECTION *conn, const char *buf, int dbg);
+#define mutt_socket_write(A,B) mutt_socket_write_d(A,B,-1,M_SOCK_LOG_CMD)
+#define mutt_socket_write_n(A,B,C) mutt_socket_write_d(A,B,C,M_SOCK_LOG_CMD)
+int mutt_socket_write_d (CONNECTION *conn, const char *buf, int len, int dbg);
/* stupid hack for imap_logout_all */
CONNECTION* mutt_socket_head (void);
}
#endif
- mutt_socket_write_d (pop_data->conn, buf, dbg);
+ mutt_socket_write_d (pop_data->conn, buf, -1, dbg);
c = strpbrk (buf, " \r\n");
*c = '\0';