projects
/
apps
/
madmutt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
simplify mutt_expand_path
[apps/madmutt.git]
/
pop
/
pop_lib.c
diff --git
a/pop/pop_lib.c
b/pop/pop_lib.c
index
d32bf37
..
b3bac5a
100644
(file)
--- a/
pop/pop_lib.c
+++ b/
pop/pop_lib.c
@@
-7,51
+7,37
@@
* please see the file GPL in the top level source directory.
*/
* please see the file GPL in the top level source directory.
*/
-#if HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include <lib-lib/mem.h>
-#include <lib-lib/str.h>
-#include <lib-lib/ascii.h>
-#include <lib-lib/macros.h>
+#include <lib-lib/lib-lib.h>
+#include <lib-mx/mx.h>
#include "mutt.h"
#include "mutt.h"
-#include "mx.h"
-#include "url.h"
#include "pop.h"
#if defined (USE_SSL) || defined (USE_GNUTLS)
#include "pop.h"
#if defined (USE_SSL) || defined (USE_GNUTLS)
-# include
"mutt_ssl.h"
+# include
<lib-sys/mutt_ssl.h>
#endif
#endif
-#include "lib/debug.h"
-
-#include <string.h>
-#include <unistd.h>
-#include <ctype.h>
-
/* given an POP mailbox name, return host, port, username and password */
/* given an POP mailbox name, return host, port, username and password */
-int pop_parse_path (const char *path, ACCOUNT * ac
c
t)
+int pop_parse_path (const char *path, ACCOUNT * act)
{
ciss_url_t url;
char *c;
int ret = -1;
/* Defaults */
{
ciss_url_t url;
char *c;
int ret = -1;
/* Defaults */
- ac
c
t->flags = 0;
- ac
c
t->port = POP_PORT;
- ac
c
t->type = M_ACCT_TYPE_POP;
+ act->flags = 0;
+ act->port = POP_PORT;
+ act->type = M_ACCT_TYPE_POP;
c = m_strdup(path);
url_parse_ciss (&url, c);
if (url.scheme == U_POP || url.scheme == U_POPS) {
if (url.scheme == U_POPS) {
c = m_strdup(path);
url_parse_ciss (&url, c);
if (url.scheme == U_POP || url.scheme == U_POPS) {
if (url.scheme == U_POPS) {
- ac
c
t->flags |= M_ACCT_SSL;
- ac
c
t->port = POP_SSL_PORT;
+ act->flags |= M_ACCT_SSL;
+ act->port = POP_SSL_PORT;
}
}
- if ((!url.path || !*url.path) && mutt_account_fromurl (ac
c
t, &url) == 0)
+ if ((!url.path || !*url.path) && mutt_account_fromurl (act, &url) == 0)
ret = 0;
}
ret = 0;
}
@@
-68,15
+54,13
@@
void pop_error (POP_DATA * pop_data, char *msg)
c = msg;
if (!m_strncmp(msg, "-ERR ", 5)) {
c = msg;
if (!m_strncmp(msg, "-ERR ", 5)) {
- c2 = msg + 5;
- SKIPWS (c2);
-
+ c2 = vskipspaces(msg + 5);
if (*c2)
c = c2;
}
if (*c2)
c = c2;
}
-
strfcpy (t, c, sizeof (pop_data->err_msg) - strlen (pop_data->err_msg)
);
-
str_skip_trailws
(pop_data->err_msg);
+
m_strcpy(t, sizeof(pop_data->err_msg) - strlen(pop_data->err_msg), c
);
+
m_strrtrim
(pop_data->err_msg);
}
/* Parse CAPA output */
}
/* Parse CAPA output */
@@
-87,8
+71,7
@@
static int fetch_capa (char *line, void *data)
if (!ascii_strncasecmp (line, "SASL", 4)) {
p_delete(&pop_data->auth_list);
if (!ascii_strncasecmp (line, "SASL", 4)) {
p_delete(&pop_data->auth_list);
- c = line + 4;
- SKIPWS (c);
+ c = vskipspaces(line + 4);
pop_data->auth_list = m_strdup(c);
}
pop_data->auth_list = m_strdup(c);
}
@@
-153,7
+136,7
@@
static pop_query_status pop_capabilities (POP_DATA * pop_data, int mode)
/* Execute CAPA command */
if (mode == 0 || pop_data->cmd_capa != CMD_NOT_AVAILABLE) {
/* Execute CAPA command */
if (mode == 0 || pop_data->cmd_capa != CMD_NOT_AVAILABLE) {
-
strfcpy (buf, "CAPA\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "CAPA\r\n"
);
switch (pop_fetch_data (pop_data, buf, NULL, fetch_capa, pop_data)) {
case PQ_OK:
{
switch (pop_fetch_data (pop_data, buf, NULL, fetch_capa, pop_data)) {
case PQ_OK:
{
@@
-177,7
+160,7
@@
static pop_query_status pop_capabilities (POP_DATA * pop_data, int mode)
pop_data->cmd_uidl = CMD_UNKNOWN;
pop_data->cmd_top = CMD_UNKNOWN;
pop_data->cmd_uidl = CMD_UNKNOWN;
pop_data->cmd_top = CMD_UNKNOWN;
-
strfcpy (buf, "AUTH\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "AUTH\r\n"
);
if (pop_fetch_data (pop_data, buf, NULL, fetch_auth, pop_data) == PQ_NOT_CONNECTED)
return PQ_NOT_CONNECTED;
}
if (pop_fetch_data (pop_data, buf, NULL, fetch_auth, pop_data) == PQ_NOT_CONNECTED)
return PQ_NOT_CONNECTED;
}
@@
-276,7
+259,7
@@
pop_query_status pop_open_connection (POP_DATA * pop_data)
pop_data->use_stls = 2;
}
if (pop_data->use_stls == 2) {
pop_data->use_stls = 2;
}
if (pop_data->use_stls == 2) {
-
strfcpy (buf, "STLS\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "STLS\r\n"
);
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret == PQ_NOT_CONNECTED)
goto err_conn;
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret == PQ_NOT_CONNECTED)
goto err_conn;
@@
-330,7
+313,7
@@
pop_query_status pop_open_connection (POP_DATA * pop_data)
}
/* get total size of mailbox */
}
/* get total size of mailbox */
-
strfcpy (buf, "STAT\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "STAT\r\n"
);
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret == PQ_NOT_CONNECTED)
goto err_conn;
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret == PQ_NOT_CONNECTED)
goto err_conn;
@@
-363,12
+346,12
@@
void pop_logout (CONTEXT * ctx)
mutt_message _("Closing connection to POP server...");
if (ctx->readonly) {
mutt_message _("Closing connection to POP server...");
if (ctx->readonly) {
-
strfcpy (buf, "RSET\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "RSET\r\n"
);
ret = pop_query (pop_data, buf, sizeof (buf));
}
if (ret != PQ_NOT_CONNECTED) {
ret = pop_query (pop_data, buf, sizeof (buf));
}
if (ret != PQ_NOT_CONNECTED) {
-
strfcpy (buf, "QUIT\r\n", sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), "QUIT\r\n"
);
pop_query (pop_data, buf, sizeof (buf));
}
pop_query (pop_data, buf, sizeof (buf));
}
@@
-385,23
+368,14
@@
void pop_logout (CONTEXT * ctx)
* -1 - conection lost,
* -2 - invalid command or execution error.
*/
* -1 - conection lost,
* -2 - invalid command or execution error.
*/
-pop_query_status pop_query
_d (POP_DATA * pop_data, char *buf, size_t buflen, const char *msg
)
+pop_query_status pop_query
(POP_DATA * pop_data, char *buf, size_t buflen
)
{
{
- int dbg = M_SOCK_LOG_CMD;
char *c;
if (pop_data->status != POP_CONNECTED)
return PQ_NOT_CONNECTED;
char *c;
if (pop_data->status != POP_CONNECTED)
return PQ_NOT_CONNECTED;
-#ifdef DEBUG
- /* print msg instaed of real command */
- if (msg) {
- dbg = M_SOCK_LOG_FULL;
- debug_print (M_SOCK_LOG_CMD, ("> %s", msg));
- }
-#endif
-
- mutt_socket_write_d (pop_data->conn, buf, dbg);
+ mutt_socket_write(pop_data->conn, buf);
c = strpbrk (buf, " \r\n");
*c = '\0';
c = strpbrk (buf, " \r\n");
*c = '\0';
@@
-438,7
+412,7
@@
pop_query_status pop_fetch_data (POP_DATA * pop_data, const char *query, progres
long pos = 0;
size_t lenbuf = 0;
long pos = 0;
size_t lenbuf = 0;
-
strfcpy (buf, query, sizeof (buf)
);
+
m_strcpy(buf, sizeof(buf), query
);
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret != PQ_OK)
return ret;
ret = pop_query (pop_data, buf, sizeof (buf));
if (ret != PQ_OK)
return ret;
@@
-447,8
+421,7
@@
pop_query_status pop_fetch_data (POP_DATA * pop_data, const char *query, progres
for (;;) {
chunk =
for (;;) {
chunk =
- mutt_socket_readln_d (buf, sizeof (buf), pop_data->conn,
- M_SOCK_LOG_HDR);
+ mutt_socket_readln(buf, sizeof (buf), pop_data->conn);
if (chunk < 0) {
pop_data->status = POP_DISCONNECTED;
ret = PQ_NOT_CONNECTED;
if (chunk < 0) {
pop_data->status = POP_DISCONNECTED;
ret = PQ_NOT_CONNECTED;
@@
-462,13
+435,12
@@
pop_query_status pop_fetch_data (POP_DATA * pop_data, const char *query, progres
p++;
}
p++;
}
-
strfcpy(inbuf + lenbuf, p, sizeof(buf)
);
+
m_strcpy(inbuf + lenbuf,sizeof(buf), p
);
pos += chunk;
pos += chunk;
- if (chunk >= s
izeof
(buf)) {
+ if (chunk >= s
sizeof
(buf)) {
lenbuf += strlen (p);
lenbuf += strlen (p);
- }
- else {
+ } else {
if (bar)
mutt_progress_bar (bar, pos);
if (ret == 0 && funct (inbuf, data) < 0)
if (bar)
mutt_progress_bar (bar, pos);
if (ret == 0 && funct (inbuf, data) < 0)
@@
-486,14
+458,13
@@
pop_query_status pop_fetch_data (POP_DATA * pop_data, const char *query, progres
/* find message with this UIDL and set refno */
static int check_uidl (char *line, void *data)
{
/* find message with this UIDL and set refno */
static int check_uidl (char *line, void *data)
{
- int i;
- unsigned int index;
- CONTEXT *ctx = (CONTEXT *) data;
+ int i, idx;
+ CONTEXT *ctx = (CONTEXT *)data;
- sscanf (line, "%u %s", &i
nde
x, line);
+ sscanf (line, "%u %s", &i
d
x, line);
for (i = 0; i < ctx->msgcount; i++) {
if (!m_strcmp(ctx->hdrs[i]->data, line)) {
for (i = 0; i < ctx->msgcount; i++) {
if (!m_strcmp(ctx->hdrs[i]->data, line)) {
- ctx->hdrs[i]->refno = i
nde
x;
+ ctx->hdrs[i]->refno = i
d
x;
break;
}
}
break;
}
}