diff options
-rw-r--r-- | alpine/imap.c | 3 | ||||
-rw-r--r-- | alpine/mailcmd.c | 5 | ||||
-rw-r--r-- | imap/src/c-client/imap4r1.c | 1 | ||||
-rw-r--r-- | pith/imap.c | 6 | ||||
-rw-r--r-- | pith/pine.hlp | 7 |
5 files changed, 16 insertions, 6 deletions
diff --git a/alpine/imap.c b/alpine/imap.c index 6b125e66..5b2a1f74 100644 --- a/alpine/imap.c +++ b/alpine/imap.c @@ -612,7 +612,8 @@ oauth2_get_access_code(unsigned char *url, char *method, OAUTH2_S *oauth2, int * sargs.help.title = _("HELP FOR SETTING UP XOAUTH2"); do { - scrolltool(&sargs); + if(scrolltool(&sargs) == MC_NO) + ps_global->user_says_cancel = 1; ps_global->mangled_screen = 1; ps_global->painted_body_on_startup = 0; ps_global->painted_footer_on_startup = 0; diff --git a/alpine/mailcmd.c b/alpine/mailcmd.c index 128f813a..19c42742 100644 --- a/alpine/mailcmd.c +++ b/alpine/mailcmd.c @@ -363,11 +363,14 @@ int alpine_get_password(char *prompt, char *pass, size_t len) { int flags = F_ON(F_QUELL_ASTERISKS, ps_global) ? OE_PASSWD_NOAST : OE_PASSWD; + int rv; flags |= OE_DISALLOW_HELP; pass[0] = '\0'; - return optionally_enter(pass, + rv = optionally_enter(pass, -(ps_global->ttyo ? FOOTER_ROWS(ps_global) : 3), 0, len, prompt, NULL, NO_HELP, &flags); + if(rv == 1) ps_global->user_says_cancel = 1; + return rv; } int diff --git a/imap/src/c-client/imap4r1.c b/imap/src/c-client/imap4r1.c index 85f3b2fc..9ee4b62e 100644 --- a/imap/src/c-client/imap4r1.c +++ b/imap/src/c-client/imap4r1.c @@ -1235,7 +1235,6 @@ long imap_auth (MAILSTREAM *stream,NETMBX *mb,char *tmp,char *usr) if(base && !trial){ /* do it now, instead of later */ mm_log ("IMAP Authentication cancelled",ERROR); - delete_password(mb, usr); return NIL; } /* make sure have a response */ diff --git a/pith/imap.c b/pith/imap.c index cde97ccf..4889a61e 100644 --- a/pith/imap.c +++ b/pith/imap.c @@ -1157,7 +1157,7 @@ void imap_delete_passwd_auth(MMLOGIN_S **m_list, char *user, STRLIST_S *hostlist, int altflag, char *authtype) { - MMLOGIN_S *l, *p; + MMLOGIN_S *l, *p, *q; int len, offset; if(m_list == NULL || *m_list == NULL) return; @@ -1186,8 +1186,9 @@ imap_delete_passwd_auth(MMLOGIN_S **m_list, char *user, /* relink *mlist */ if(p == *m_list) - *m_list = (*m_list)->next; + q = (*m_list)->next; else{ + q = *m_list; for(l = *m_list; l && l->next != p; l = l->next); l->next = p->next; } @@ -1201,6 +1202,7 @@ imap_delete_passwd_auth(MMLOGIN_S **m_list, char *user, free_strlist(&p->hosts); fs_give((void **) &p); + *m_list = q; dprint((9, "imap_delete_password: done with deletion.")); } diff --git a/pith/pine.hlp b/pith/pine.hlp index d3858b9e..0ef97809 100644 --- a/pith/pine.hlp +++ b/pith/pine.hlp @@ -140,7 +140,7 @@ with help text for the config screen and the composer that didn't have any reasonable place to be called from. Dummy change to get revision in pine.hlp ============= h_revision ================= -Alpine Commit 602 2021-10-08 21:42:40 +Alpine Commit 603 2021-10-10 11:00:24 ============= h_news ================= <HTML> <HEAD> @@ -206,6 +206,11 @@ Bugs addressed include: <UL> <LI> Alpine crashes when it cannot retrieve the privacy policy due to failure connecting to the external server. + +<LI> Alpine might delete all passwords from the password file if the + password file is not unlocked by cancellation, or the authentication + for an XOAUTH2 server is cancelled, or the password of an account + is changed. </UL> <P>Version 2.25 adds new features and addresses bugs found in previous |