Update "imap-uw" package to version 2000a. This fixes PR pkg/11456 and

and PR pkg/11671.
This commit is contained in:
tron 2000-12-13 21:26:53 +00:00
parent bea616fd4a
commit 1ab51e2185
4 changed files with 6 additions and 271 deletions

View file

@ -1,8 +1,7 @@
# $NetBSD: Makefile,v 1.16 2000/11/09 03:35:33 hubertf Exp $
#
# $NetBSD: Makefile,v 1.17 2000/12/13 21:26:53 tron Exp $
DISTNAME= imap-2000
PKGNAME= imap-uw-2000
DISTNAME= imap-2000a
PKGNAME= imap-uw-2000a
CATEGORIES= mail
MASTER_SITES= ftp://ftp.cac.washington.edu/imap/
EXTRACT_SUFX= .tar.Z

View file

@ -1,3 +1,3 @@
$NetBSD: md5,v 1.8 2000/11/09 03:35:34 hubertf Exp $
$NetBSD: md5,v 1.9 2000/12/13 21:26:54 tron Exp $
MD5 (imap-2000.tar.Z) = 7b5f2cfcad528bad2e79800d083821a5
MD5 (imap-2000a.tar.Z) = d642c114b55ffe2e172b8e1bef6a1a52

View file

@ -1,4 +1,4 @@
$NetBSD: patch-sum,v 1.8 2000/11/09 08:56:35 tron Exp $
$NetBSD: patch-sum,v 1.9 2000/12/13 21:26:54 tron Exp $
MD5 (patch-aa) = 6059d31af88cc99ea92914250f20c07c
MD5 (patch-ab) = bb937534f987fe7a8a365c1ffcd8760d
@ -9,4 +9,3 @@ MD5 (patch-af) = 3301d969c79118ae742f824aa9d90812
MD5 (patch-ag) = 0da043e9e17ea708ee15b71d4747ea93
MD5 (patch-ah) = 0d0d8a769e951e4422163d0912d906a9
MD5 (patch-ai) = 4757f3135f2fb6112419fadc44201e9f
MD5 (patch-aj) = abf49ad0adb18382138b1c332dc4a246

View file

@ -1,263 +0,0 @@
$NetBSD: patch-aj,v 1.1 2000/11/09 08:56:36 tron Exp $
--- src/imapd/imapd.c.orig Wed Oct 25 01:14:45 2000
+++ src/imapd/imapd.c Thu Nov 9 09:50:21 2000
@@ -10,12 +10,27 @@
* Internet: MRC@CAC.Washington.EDU
*
* Date: 5 November 1990
- * Last Edited: 24 October 2000
- *
- * The IMAP toolkit provided in this Distribution is
- * Copyright 2000 University of Washington.
- * The full text of our legal notices is contained in the file called
- * CPYRIGHT, included with this Distribution.
+ * Last Edited: 25 August 2000
+ *
+ * Copyright 2000 by the University of Washington
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation for any purpose and without fee is hereby granted, provided
+ * that the above copyright notice appears in all copies and that both the
+ * above copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the University of Washington not be
+ * used in advertising or publicity pertaining to distribution of the software
+ * without specific, written prior permission. This software is made
+ * available "as is", and
+ * THE UNIVERSITY OF WASHINGTON DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED,
+ * WITH REGARD TO THIS SOFTWARE, INCLUDING WITHOUT LIMITATION ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, AND IN
+ * NO EVENT SHALL THE UNIVERSITY OF WASHINGTON BE LIABLE FOR ANY SPECIAL,
+ * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, TORT
+ * (INCLUDING NEGLIGENCE) OR STRICT LIABILITY, ARISING OUT OF OR IN CONNECTION
+ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
*/
/* Primary I/O calls */
@@ -167,7 +182,6 @@
void psizedtext (SIZEDTEXT *s);
void ptext (SIZEDTEXT *s);
void pthread (THREADNODE *thr);
-void pcapability (long flag);
long nameok (char *ref,char *name);
char *bboardname (char *cmd,char *name);
char *imap_responder (void *challenge,unsigned long clen,unsigned long *rlen);
@@ -181,7 +195,7 @@
/* Global storage */
-char *version = "2000.283"; /* version number of this server */
+char *version = "2000.279"; /* version number of this server */
time_t alerttime = 0; /* time of last alert */
time_t sysalerttime = 0; /* time of last system alert */
time_t useralerttime = 0; /* time of last user alert */
@@ -248,8 +262,7 @@
#include "linkage.c"
rfc822_date (tmp); /* get date/time at startup */
/* initialize server */
- server_init ((s = strrchr (argv[0],'/')) ? s + 1 : argv[0],
- "imap","imaps","imap",clkint,kodint,hupint,trmint);
+ server_init (argv[0],"imap","imaps","imap",clkint,kodint,hupint,trmint);
/* forbid automatic untagged expunge */
mail_parameters (NIL,SET_EXPUNGEATPING,NIL);
/* arm proxy copy callback */
@@ -257,15 +270,13 @@
s = myusername_full (&i); /* get user name and flags */
switch (i) {
case MU_NOTLOGGEDIN:
- PSOUT ("* OK ["); /* not logged in, ordinary startup */
- pcapability (-1);
+ PSOUT ("* OK "); /* not logged in, ordinary startup */
break;
case MU_ANONYMOUS:
anonymous = T; /* anonymous user, fall into default */
s = "ANONYMOUS";
case MU_LOGGEDIN:
- PSOUT ("* PREAUTH ["); /* already logged in, pre-authorized */
- pcapability (1);
+ PSOUT ("* PREAUTH "); /* already logged in, pre-authorized */
user = cpystr (s); /* copy user name */
pass = cpystr ("*"); /* set fake password */
state = SELECT; /* enter select state */
@@ -273,7 +284,6 @@
default:
fatal ("Unknown state from myusername_full()");
}
- PSOUT ("] ");
PSOUT (tcp_serverhost ());
PSOUT (" IMAP4rev1 ");
PSOUT (version);
@@ -357,8 +367,33 @@
else if (!strcmp (cmd,"CAPABILITY")) {
if (arg) response = badarg;
else {
- PSOUT ("* ");
- pcapability (0); /* print capabilities */
+ AUTHENTICATOR *auth = mail_lookup_auth (1);
+ THREADER *thr = (THREADER *) mail_parameters (NIL,GET_THREADERS,NIL);
+ PSOUT ("* CAPABILITY IMAP4 IMAP4REV1 NAMESPACE IDLE SCAN SORT MULTIAPPEND MAILBOX-REFERRALS LOGIN-REFERRALS");
+#ifdef IMAPSPECIALCAP
+ PBOUT (' ');
+ PSOUT (IMAPSPECIALCAP);
+#endif
+#ifdef PLAINTEXT_DISABLED
+ PSOUT (" LOGINDISABLED");
+#endif
+ while (auth) {
+#ifdef PLAINTEXT_DISABLED
+ /* disable insecure authenticators */
+ if (!auth->secflag) auth->server = NIL;
+#endif
+ if (auth->server) {
+ PSOUT (" AUTH=");
+ PSOUT (auth->name);
+ }
+ auth = auth->next;
+ }
+ if (!stat (ANOFILE,&sbuf)) PSOUT (" AUTH=ANONYMOUS");
+ while (thr) {
+ PSOUT (" THREAD=");
+ PSOUT (thr->name);
+ thr = thr->next;
+ }
CRLF;
}
if (stream) /* allow untagged EXPUNGE */
@@ -383,9 +418,6 @@
user = cpystr ("ANONYMOUS");
state = SELECT; /* make select */
alerttime = 0; /* force alert */
- PSOUT ("* ");
- pcapability (1); /* print logged-in capabilities */
- CRLF;
syslog (LOG_INFO,"Authenticated anonymous=%.80s host=%.80s",s,
tcp_clienthost ());
fs_give ((void **) &s);
@@ -395,9 +427,6 @@
else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
state = SELECT; /* make select */
alerttime = 0; /* force alert */
- PSOUT ("* ");
- pcapability (1); /* print logged-in capabilities */
- CRLF;
syslog (LOG_INFO,"Authenticated user=%.80s host=%.80s",
user,tcp_clienthost ());
}
@@ -433,9 +462,6 @@
ucase (user); /* make all uppercase for consistency */
state = SELECT; /* make select */
alerttime = 0; /* force alert */
- PSOUT ("* ");
- pcapability (1); /* print logged-in capabilities */
- CRLF;
syslog (LOG_INFO,"Login anonymous=%.80s host=%.80s",pass,
tcp_clienthost ());
}
@@ -445,9 +471,6 @@
if (server_login (user,pass,s,argc,argv)) {
state = SELECT; /* make select */
alerttime = 0; /* force alert */
- PSOUT ("* ");
- pcapability (1); /* print logged-in capabilities */
- CRLF;
syslog (LOG_INFO,"Login user=%.80s host=%.80s",user,
tcp_clienthost ());
}
@@ -682,13 +705,13 @@
response = badatt;/* bad thread attribute */
else if (arg && *arg) response = badarg;
else {
+ PSOUT ("* THREAD");
if (thr = mail_thread (stream,ucase (s),cs,spg,
uid ? SE_UID : NIL)) {
- PSOUT ("* THREAD ");
+ PBOUT (' ');
pthread (thr);
mail_free_threadnode (&thr);
}
- else PSOUT ("* THREAD");
CRLF;
}
if (spg) mail_free_searchpgm (&spg);
@@ -2984,68 +3007,21 @@
PBOUT ('('); /* open branch */
if (thr->num) { /* first node message number */
pnum (thr->num);
- if (t = thr->next) { /* any subsequent nodes? */
- PBOUT (' ');
- while (t) { /* for each subsequent node */
- if (t->branch) { /* branches? */
- pthread (t); /* yes, recurse to do branch */
- t = NIL; /* done */
- }
- else { /* just output this number */
- pnum (t->num);
- t = t->next; /* and do next message */
- }
- if (t) PBOUT (' '); /* delimit if more to come */
- }
+ if (thr->next) PBOUT (' ');
+ }
+ for (t = thr->next; t;) { /* any subsequent nodes? */
+ if (t->branch) { /* branches? */
+ pthread (t); /* yes, recurse to do branch */
+ t = NIL; /* done */
+ }
+ else { /* just output this number */
+ pnum (t->num);
+ t = t->next; /* and do next message */
}
+ if (t) PBOUT (' '); /* delimit if more to come */
}
- else pthread (thr->next); /* nest for dummy */
PBOUT (')'); /* done with this branch */
thr = thr->branch; /* do next branch */
- }
-}
-
-/* Print capabilities
- * Accepts: option flag
- */
-
-void pcapability (long flag)
-{
- struct stat sbuf;
- AUTHENTICATOR *auth = mail_lookup_auth (1);
- THREADER *thr = (THREADER *) mail_parameters (NIL,GET_THREADERS,NIL);
- /* always output protocol level */
- PSOUT ("CAPABILITY IMAP4 IMAP4REV1");
-#ifdef IMAPSPECIALCAP
- PBOUT (' ');
- PSOUT (IMAPSPECIALCAP);
-#endif
- if (flag >= 0) { /* want post-authentication capabilities? */
- PSOUT (" NAMESPACE IDLE MAILBOX-REFERRALS SCAN SORT");
- while (thr) { /* threaders */
- PSOUT (" THREAD=");
- PSOUT (thr->name);
- thr = thr->next;
- }
- if (!anonymous) PSOUT (" MULTIAPPEND");
- }
- if (flag <= 0) { /* want pre-authentication capabilities? */
- PSOUT (" LOGIN-REFERRALS");
-#ifdef PLAINTEXT_DISABLED
- PSOUT (" LOGINDISABLED");
-#endif
- while (auth) {
-#ifdef PLAINTEXT_DISABLED
- /* disable insecure authenticators */
- if (!auth->secflag) auth->server = NIL;
-#endif
- if (auth->server) {
- PSOUT (" AUTH=");
- PSOUT (auth->name);
- }
- auth = auth->next;
- }
- if (!stat (ANOFILE,&sbuf)) PSOUT (" AUTH=ANONYMOUS");
}
}