From b54db4158f8dfb521a2464fbf9969bf09ef9d5b2 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Tue, 25 Aug 1998 14:14:05 +0000 Subject: Fixed SDPS support. svn path=/trunk/; revision=2058 --- NEWS | 5 +++++ pop3.c | 26 +++++++++++--------------- rcfile_y.y | 6 +++--- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/NEWS b/NEWS index 5df1212a..7d805094 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,10 @@ Release Notes: +fetchmail-4.5.7 (Tue Aug 25 00:29:44 EDT 1998): +* Fixed SDPS support (thanks to Chris Brooks). + +There are 253 people on fetchmail-friends and 272 on fetchmail-announce. + fetchmail-4.5.6 (Tue Aug 25 00:29:44 EDT 1998): * SDPS support, experimental version 2. Requires configure --enable-SDPS. * Major FAQ update. Added geocities warning. diff --git a/pop3.c b/pop3.c index 0682fd74..33aa3b49 100644 --- a/pop3.c +++ b/pop3.c @@ -551,26 +551,22 @@ static int pop3_fetch(int sock, struct query *ctl, int number, int *lenp) { int linecount = 0; -#define DUMMY_HEADER "Delivered-To: " /* will only get discarded */ -#define DUMMY_LENGTH (sizeof(DUMMY_HEADER) - 1) - strcpy(buf, DUMMY_HEADER); sdps_envto = (char *)NULL; gen_send(sock, "*ENV %d", number); do { - if (gen_recv(sock, buf + DUMMY_LENGTH, sizeof(buf) - DUMMY_LENGTH)) - { - break; - } - linecount++; - if (linecount == 5) - { - sdps_envto = strdup(buf); - error(0, 0, "*ENV returned envelope address %s"); - } + if (gen_recv(sock, buf, sizeof(buf))) + { + break; + } + linecount++; + if (linecount == 5) + { + /* Wrap address with To: <> so nxtaddr() likes it */ + sdps_envto = malloc(strlen(buf)+7); + sprintf(sdps_envto,"To: <%s>",buf); + } } while (buf[0] !='.'); -#undef DUMMY_HEADER -#undef DUMMY_LENGTH } #endif /* SDPS_ENABLE */ diff --git a/rcfile_y.y b/rcfile_y.y index f3dabf1d..6cca3390 100644 --- a/rcfile_y.y +++ b/rcfile_y.y @@ -139,13 +139,13 @@ serv_option : AKA alias_list current.server.port = KPOP_PORT; #endif /* INET6 */ } - | SDPS { -#ifdef ENABLE_SDPS + | PROTOCOL SDPS { +#ifdef SDPS_ENABLE current.server.protocol = P_POP3; current.server.sdps = TRUE; #else yyerror("SDPS not enabled."); -#endif /* ENABLE_SDPS */ +#endif /* SDPS_ENABLE */ } | UIDL {current.server.uidl = FLAG_TRUE;} | NO UIDL {current.server.uidl = FLAG_FALSE;} -- cgit v1.2.3