g_return_val_if_fail(state->user != NULL, -1);
- inc_progress_update(state, POP3_GETAUTH_USER_SEND);
-
pop3_gen_send(sock, "USER %s", state->user);
return POP3_GETAUTH_USER_RECV;
g_return_val_if_fail(state->user != NULL, -1);
g_return_val_if_fail(state->pass != NULL, -1);
- inc_progress_update(state, POP3_GETAUTH_APOP_SEND);
-
if ((start = strchr(state->greeting, '<')) == NULL) {
log_warning(_("Required APOP timestamp not found "
"in greeting\n"));
gint pop3_getrange_stat_send(SockInfo *sock, gpointer data)
{
- Pop3State *state = (Pop3State *)data;
-
- inc_progress_update(state, POP3_GETRANGE_STAT_SEND);
-
pop3_gen_send(sock, "STAT");
return POP3_GETRANGE_STAT_RECV;
gint pop3_getrange_last_send(SockInfo *sock, gpointer data)
{
- Pop3State *state = (Pop3State *)data;
-
- inc_progress_update(state, POP3_GETRANGE_LAST_SEND);
-
pop3_gen_send(sock, "LAST");
return POP3_GETRANGE_LAST_RECV;
gint pop3_getrange_uidl_send(SockInfo *sock, gpointer data)
{
- Pop3State *state = (Pop3State *)data;
-
- inc_progress_update(state, POP3_GETRANGE_UIDL_SEND);
-
pop3_gen_send(sock, "UIDL");
return POP3_GETRANGE_UIDL_RECV;
gchar buf[POPBUFSIZE];
gchar id[IDLEN + 1];
- if (pop3_ok(sock, NULL) != PS_SUCCESS) return POP3_GETRANGE_LAST_SEND;
-
if (!state->uidl_table) new = TRUE;
if (state->ac_prefs->getall)
get_all = TRUE;
+ if (pop3_ok(sock, NULL) != PS_SUCCESS) {
+ /* UIDL is not supported */
+ if (!get_all)
+ return POP3_GETRANGE_LAST_SEND;
+ else
+ return POP3_GETSIZE_LIST_SEND;
+ }
+
while (sock_gets(sock, buf, sizeof(buf)) >= 0) {
gint num;
tdate = atoi(sdate);
keep_for = atoi(state->ac_prefs->leave_time); /* FIXME: leave time should be an int */
- g_date_clear(&curdate, time(NULL));
+ g_date_clear(&curdate, 1);
g_date_set_time(&curdate, time(NULL));
today = g_date_day_of_year(&curdate);
gint pop3_getsize_list_send(SockInfo *sock, gpointer data)
{
- Pop3State *state = (Pop3State *)data;
-
- inc_progress_update(state, POP3_GETSIZE_LIST_SEND);
-
pop3_gen_send(sock, "LIST");
return POP3_GETSIZE_LIST_RECV;
{
Pop3State *state = (Pop3State *)data;
- inc_progress_update(state, POP3_RETR_SEND);
-
pop3_gen_send(sock, "RETR %d", state->cur_msg);
return POP3_RETR_RECV;
{
Pop3State *state = (Pop3State *)data;
- /* inc_progress_update(state, POP3_DELETE_SEND); */
-
pop3_gen_send(sock, "DELE %d", state->cur_msg);
return POP3_DELETE_RECV;
g_strfreev(parts);
}
- inc_progress_update(state, POP3_LOGOUT_SEND);
-
pop3_gen_send(sock, "QUIT");
return POP3_LOGOUT_RECV;