diff options
author | Gerd Moellmann <gerd@gnu.org> | 1999-12-10 09:53:01 +0000 |
---|---|---|
committer | Gerd Moellmann <gerd@gnu.org> | 1999-12-10 09:53:01 +0000 |
commit | 476b279958670c44467e61c0e31a822da490fee3 (patch) | |
tree | 93f55312e6095c079f550c3738b771d8c6dfdcef /lib-src/movemail.c | |
parent | dfa1c6ae2c3ff364c935f383170093826a950284 (diff) | |
download | emacs-476b279958670c44467e61c0e31a822da490fee3.tar.gz |
(popmail): Allow mailbox specifications of the
form `po:username:hostname'.
Diffstat (limited to 'lib-src/movemail.c')
-rw-r--r-- | lib-src/movemail.c | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/lib-src/movemail.c b/lib-src/movemail.c index df5cb5a2d1f..ed13e9f6be8 100644 --- a/lib-src/movemail.c +++ b/lib-src/movemail.c @@ -685,8 +685,20 @@ char ibuffer[BUFSIZ]; char obuffer[BUFSIZ]; char Errmsg[80]; -popmail (user, outfile, preserve, password, reverse_order) - char *user; +/* + * The full legal syntax for a POP mailbox specification for movemail + * is "po:username:hostname". The ":hostname" is optional; if it is + * omitted, the MAILHOST environment variable will be consulted. Note + * that by the time popmail() is called the "po:" has been stripped + * off of the front of the mailbox name. + * + * If the mailbox is in the form "po:username:hostname", then it is + * modified by this function -- the second colon is replaced by a + * null. + */ + +popmail (mailbox, outfile, preserve, password, reverse_order) + char *mailbox; char *outfile; int preserve; char *password; @@ -699,8 +711,13 @@ popmail (user, outfile, preserve, password, reverse_order) char *getenv (); popserver server; int start, end, increment; + char *user, *hostname; + + user = mailbox; + if ((hostname = index(mailbox, ':'))) + *hostname++ = '\0'; - server = pop_open (0, user, password, POP_NO_GETPASS); + server = pop_open (hostname, user, password, POP_NO_GETPASS); if (! server) { error ("Error connecting to POP server: %s", pop_error); |