diff options
author | adam <adam@pkgsrc.org> | 2010-06-02 12:50:03 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2010-06-02 12:50:03 +0000 |
commit | f3501d7ad9dfab51356497034f813432609cd6a3 (patch) | |
tree | 57f24e6a05d8bcff6129259f25798a5ff4523a37 | |
parent | 7db5757d4d68caf61b93a40ab624666dd24ff9c0 (diff) | |
download | pkgsrc-f3501d7ad9dfab51356497034f813432609cd6a3.tar.gz |
Changes 1.18:
See http://hg.vergenet.net/perdition/perdition/
-rw-r--r-- | mail/perdition-bdb/Makefile | 10 | ||||
-rw-r--r-- | mail/perdition-gdbm/Makefile | 7 | ||||
-rw-r--r-- | mail/perdition-ldap/Makefile | 5 | ||||
-rw-r--r-- | mail/perdition-mysql/Makefile | 7 | ||||
-rw-r--r-- | mail/perdition-odbc/Makefile | 7 | ||||
-rw-r--r-- | mail/perdition-postgresql/Makefile | 7 | ||||
-rw-r--r-- | mail/perdition/Makefile | 13 | ||||
-rw-r--r-- | mail/perdition/Makefile.common | 29 | ||||
-rw-r--r-- | mail/perdition/PLIST | 4 | ||||
-rw-r--r-- | mail/perdition/buildlink3.mk | 8 | ||||
-rw-r--r-- | mail/perdition/distinfo | 18 | ||||
-rw-r--r-- | mail/perdition/patches/patch-aa | 17 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ab | 17 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ac | 8 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ad | 13 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ae | 13 | ||||
-rw-r--r-- | mail/perdition/patches/patch-af | 13 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ag | 17 | ||||
-rw-r--r-- | mail/perdition/patches/patch-ah | 109 |
19 files changed, 55 insertions, 267 deletions
diff --git a/mail/perdition-bdb/Makefile b/mail/perdition-bdb/Makefile index 5327f1e8b2d..02755bacc53 100644 --- a/mail/perdition-bdb/Makefile +++ b/mail/perdition-bdb/Makefile @@ -1,16 +1,14 @@ -# $NetBSD: Makefile,v 1.6 2008/09/07 11:24:28 wiz Exp $ -# - -PKGREVISION= 4 +# $NetBSD: Makefile,v 1.7 2010/06/02 12:50:03 adam Exp $ PERDITION_COMMENT= Berkeley DB user database module PERDITION_PKGNAME= bdb BUILD_DIRS= makebdb perdition/db/bdb -BDB_ACCEPTED= db4 +BDB_ACCEPTED= db4 db5 PKG_DESTDIR_SUPPORT= user-destdir +BUILDLINK_TRANSFORM+= l:db:${BDB_TYPE} .include "../../mk/bdb.buildlink3.mk" .include "../../mail/perdition/buildlink3.mk" -.include "../perdition/Makefile.common" +.include "../../mail/perdition/Makefile.common" diff --git a/mail/perdition-gdbm/Makefile b/mail/perdition-gdbm/Makefile index 97877d14f2d..e5d9f061f88 100644 --- a/mail/perdition-gdbm/Makefile +++ b/mail/perdition-gdbm/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2008/06/12 02:14:35 joerg Exp $ -# - -PKGREVISION= 1 +# $NetBSD: Makefile,v 1.4 2010/06/02 12:50:04 adam Exp $ PERDITION_COMMENT= GDBM user database module PERDITION_PKGNAME= gdbm @@ -11,4 +8,4 @@ PKG_DESTDIR_SUPPORT= user-destdir .include "../../databases/gdbm/buildlink3.mk" .include "../../mail/perdition/buildlink3.mk" -.include "../perdition/Makefile.common" +.include "../../mail/perdition/Makefile.common" diff --git a/mail/perdition-ldap/Makefile b/mail/perdition-ldap/Makefile index 1a883ad5db4..a5a9c706152 100644 --- a/mail/perdition-ldap/Makefile +++ b/mail/perdition-ldap/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.7 2010/01/17 12:02:25 wiz Exp $ -# - -PKGREVISION= 5 +# $NetBSD: Makefile,v 1.8 2010/06/02 12:50:04 adam Exp $ PERDITION_COMMENT= LDAP user database module PERDITION_PKGNAME= ldap diff --git a/mail/perdition-mysql/Makefile b/mail/perdition-mysql/Makefile index 32ece81567e..1a6d825b5de 100644 --- a/mail/perdition-mysql/Makefile +++ b/mail/perdition-mysql/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.4 2008/06/12 02:14:35 joerg Exp $ -# - -PKGREVISION= 2 +# $NetBSD: Makefile,v 1.5 2010/06/02 12:50:04 adam Exp $ PERDITION_COMMENT= MySQL user database module PERDITION_PKGNAME= mysql @@ -12,4 +9,4 @@ USE_TOOLS+= bash:run REPLACE_BASH+= perdition/db/mysql/perditiondb_mysql_makedb .include "../../mk/mysql.buildlink3.mk" -.include "../perdition/Makefile.common" +.include "../../mail/perdition/Makefile.common" diff --git a/mail/perdition-odbc/Makefile b/mail/perdition-odbc/Makefile index c1da6e2670b..a3eb2d60be6 100644 --- a/mail/perdition-odbc/Makefile +++ b/mail/perdition-odbc/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.4 2008/06/12 02:14:35 joerg Exp $ -# - -PKGREVISION= 1 +# $NetBSD: Makefile,v 1.5 2010/06/02 12:50:04 adam Exp $ PERDITION_COMMENT= UnixODBC user database module PERDITION_PKGNAME= odbc @@ -15,4 +12,4 @@ USE_TOOLS+= bash:run REPLACE_BASH+= perdition/db/odbc/perditiondb_odbc_makedb .include "../../databases/unixodbc/buildlink3.mk" -.include "../perdition/Makefile.common" +.include "../../mail/perdition/Makefile.common" diff --git a/mail/perdition-postgresql/Makefile b/mail/perdition-postgresql/Makefile index 5906cef730a..9e410287e67 100644 --- a/mail/perdition-postgresql/Makefile +++ b/mail/perdition-postgresql/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.7 2010/02/10 19:34:07 joerg Exp $ -# - -PKGREVISION= 5 +# $NetBSD: Makefile,v 1.8 2010/06/02 12:50:04 adam Exp $ PERDITION_COMMENT= PostgreSQL user database module PERDITION_PKGNAME= postgresql @@ -13,4 +10,4 @@ USE_TOOLS+= bash:run REPLACE_BASH+= perdition/db/postgresql/perditiondb_postgresql_makedb .include "../../mk/pgsql.buildlink3.mk" -.include "../perdition/Makefile.common" +.include "../../mail/perdition/Makefile.common" diff --git a/mail/perdition/Makefile b/mail/perdition/Makefile index 521d01b551a..e5e51d7744f 100644 --- a/mail/perdition/Makefile +++ b/mail/perdition/Makefile @@ -1,7 +1,4 @@ -# $NetBSD: Makefile,v 1.11 2008/07/13 16:26:17 tonnerre Exp $ -# - -PKGREVISION= 8 +# $NetBSD: Makefile,v 1.12 2010/06/02 12:50:03 adam Exp $ PERDITION_COMMENT= main program @@ -11,15 +8,15 @@ PKG_DESTDIR_SUPPORT= user-destdir OWN_DIRS+= ${PKG_SYSCONFDIR} .for f in Makefile.popmap perdition.conf popmap popmap.re -CONF_FILES+= ${EGDIR}/perdition/$f ${PKG_SYSCONFDIR}/${f:.popmap=} +CONF_FILES+= ${EGDIR}/perdition/${f} ${PKG_SYSCONFDIR}/${f:.popmap=} .endfor RCD_SCRIPTS+= perdition.imap4 perdition.imap4s perdition.pop3 perdition.pop3s SUBST_CLASSES+= paths +SUBST_MESSAGE.paths= Fixing paths. SUBST_STAGE.paths= pre-configure SUBST_FILES.paths= etc/perdition/perdition.conf -SUBST_SED.paths= -e "s|/usr/lib/|${PREFIX}/lib/|g" \ - -e "s|/etc/perdition/|${PKG_SYSCONFDIR}/|g" -SUBST_MESSAGE.paths= Fixing paths. +SUBST_SED.paths= -e "s|/usr/lib/|${PREFIX}/lib/|g" +SUBST_SED.paths+= -e "s|/etc/perdition/|${PKG_SYSCONFDIR}/|g" .include "Makefile.common" diff --git a/mail/perdition/Makefile.common b/mail/perdition/Makefile.common index bc153683219..41fb436fe63 100644 --- a/mail/perdition/Makefile.common +++ b/mail/perdition/Makefile.common @@ -1,29 +1,28 @@ -# $NetBSD: Makefile.common,v 1.6 2007/09/04 21:04:20 joerg Exp $ -# +# $NetBSD: Makefile.common,v 1.7 2010/06/02 12:50:03 adam Exp $ -PERDITION_VERSION= 1.17 -DISTNAME= perdition-${PERDITION_VERSION} -CATEGORIES= mail -MASTER_SITES= http://www.vergenet.net/linux/perdition/download/1.17/ +DISTNAME= perdition-${PERDITION_VERSION} +CATEGORIES= mail +MASTER_SITES= http://www.vergenet.net/linux/perdition/download/${PERDITION_VERSION}/ -MAINTAINER= pkgsrc-users@NetBSD.org -HOMEPAGE= http://www.vergenet.net/linux/perdition/ -COMMENT= IMAP/POP3 proxy redirector (${PERDITION_COMMENT}) +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://www.vergenet.net/linux/perdition/ +COMMENT= IMAP/POP3 proxy redirector (${PERDITION_COMMENT}) + +PERDITION_VERSION= 1.18 -USE_TOOLS+= gmake -USE_PKGLOCALEDIR= yes USE_LIBTOOL= yes +USE_PKGLOCALEDIR= yes +USE_TOOLS+= gmake GNU_CONFIGURE= yes -PKG_SYSCONFSUBDIR= perdition - CONFIGURE_ARGS+= --disable-daemon-map CONFIGURE_ARGS+= --localstatedir=/var +PKG_SYSCONFSUBDIR= perdition EGDIR= ${PREFIX}/share/examples INSTALL_AM_MAKEFLAGS= sysconfdir=${EGDIR} INSTALL_MAKE_FLAGS= ${MAKE_FLAGS} AM_MAKEFLAGS=${INSTALL_AM_MAKEFLAGS:Q} -.ifdef PERDITION_PKGNAME +.if defined(PERDITION_PKGNAME) PKGNAME= ${DISTNAME:S/-/-${PERDITION_PKGNAME}-/} DEPENDS+= perdition-${PERDITION_VERSION}{,nb*}:../../mail/perdition BUILD_DIRS?= perdition/db/${PERDITION_PKGNAME} @@ -32,7 +31,7 @@ BUILD_DIRS?= perdition/db/${PERDITION_PKGNAME} PERDITION_SKIP_DISABLE?=${PERDITION_PKGNAME} .for f in mysql odbc pg gdbm bdb ldap ldap-doc . if empty(PERDITION_SKIP_DISABLE:M$f) -CONFIGURE_ARGS+= --disable-$f +CONFIGURE_ARGS+= --disable-${f} . endif .endfor diff --git a/mail/perdition/PLIST b/mail/perdition/PLIST index c8b7f060b60..a5f01ad41f4 100644 --- a/mail/perdition/PLIST +++ b/mail/perdition/PLIST @@ -1,6 +1,4 @@ -@comment $NetBSD: PLIST,v 1.6 2009/06/14 18:04:39 joerg Exp $ -include/jain.h -lib/libjain.la +@comment $NetBSD: PLIST,v 1.7 2010/06/02 12:50:03 adam Exp $ lib/libperditiondb_nis.la lib/libperditiondb_posix_regex.la man/man5/perditiondb.5 diff --git a/mail/perdition/buildlink3.mk b/mail/perdition/buildlink3.mk index 3b883d19b13..a06ceb1a87c 100644 --- a/mail/perdition/buildlink3.mk +++ b/mail/perdition/buildlink3.mk @@ -1,4 +1,4 @@ -# $NetBSD: buildlink3.mk,v 1.7 2009/03/20 19:24:56 joerg Exp $ +# $NetBSD: buildlink3.mk,v 1.8 2010/06/02 12:50:03 adam Exp $ BUILDLINK_TREE+= perdition @@ -6,13 +6,13 @@ BUILDLINK_TREE+= perdition PERDITION_BUILDLINK3_MK:= BUILDLINK_API_DEPENDS.perdition+= perdition>=1.17 -BUILDLINK_ABI_DEPENDS.perdition?= perdition>=1.17nb1 +BUILDLINK_ABI_DEPENDS.perdition+= perdition>=1.17nb1 BUILDLINK_PKGSRCDIR.perdition?= ../../mail/perdition # The following are included in Makefile.common for "configure"'s sake. #.include "../../devel/popt/buildlink3.mk" -#.include "../../devel/vanessa_adt/buildlink3.mk" -#.include "../../devel/vanessa_logger/buildlink3.mk" +.include "../../devel/vanessa_adt/buildlink3.mk" +.include "../../devel/vanessa_logger/buildlink3.mk" #.include "../../devel/vanessa_socket/buildlink3.mk" .endif # PERDITION_BUILDLINK3_MK diff --git a/mail/perdition/distinfo b/mail/perdition/distinfo index 453dc501201..f148929e583 100644 --- a/mail/perdition/distinfo +++ b/mail/perdition/distinfo @@ -1,13 +1,7 @@ -$NetBSD: distinfo,v 1.7 2008/07/13 16:26:17 tonnerre Exp $ +$NetBSD: distinfo,v 1.8 2010/06/02 12:50:03 adam Exp $ -SHA1 (perdition-1.17.tar.gz) = 5e04f172db4a7ee2af5b7a28c19c231f955243fc -RMD160 (perdition-1.17.tar.gz) = cc3c4679390132ece6858eca6483ffddead568e4 -Size (perdition-1.17.tar.gz) = 552149 bytes -SHA1 (patch-aa) = 17c6bf55f77187cad59f779e6fbcd85d6921eab1 -SHA1 (patch-ab) = 7d7b8458c104437e83934b3b0fea573bd54aced0 -SHA1 (patch-ac) = 5096afa901f6f5766d9a8b0d2481c8f9c1356fe1 -SHA1 (patch-ad) = 7b53169a8571141016fa79e1fbf55439579c4d77 -SHA1 (patch-ae) = a3a41d06a7a63d479f4c8de29b6d7ee2a745dd87 -SHA1 (patch-af) = 0fa5a853c69ff6869e3a752fc592228d6e782079 -SHA1 (patch-ag) = 350cfc64f98611455292d4d052463e6828588338 -SHA1 (patch-ah) = 6a88d3c73cc5e5b88a58b057c58fdbe182f2d0d4 +SHA1 (perdition-1.18.tar.gz) = 60d76e2fca810fa1a12bebe369fc3e7d3452ebbb +RMD160 (perdition-1.18.tar.gz) = 82065dcfb7f05d7bebcf98b72334f676d4fd5dad +Size (perdition-1.18.tar.gz) = 602933 bytes +SHA1 (patch-ac) = 01934fb919cc8ac7699e07e407d6e26706e98fbd +SHA1 (patch-ag) = 3840c9b4ed6e6d286c1cbeebad7184f9ccdaac2a diff --git a/mail/perdition/patches/patch-aa b/mail/perdition/patches/patch-aa deleted file mode 100644 index ac36bf0a7e3..00000000000 --- a/mail/perdition/patches/patch-aa +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-aa,v 1.1 2006/01/31 21:07:30 tv Exp $ - ---- makegdbm/Makefile.in.orig 2005-06-22 02:32:35.000000000 -0400 -+++ makegdbm/Makefile.in -@@ -144,10 +144,10 @@ EXTRA_DIST = makegdbm.1 - makegdbm_SOURCES = makegdbm.c options.c options.h - - --makegdbm_LDADD = -L../libjain -L../libjain/.libs/ -ljain -lgdbm -lpopt @dmalloc_lib@ -+makegdbm_LDADD = -L$(prefix)/lib -ljain -lgdbm -lpopt @dmalloc_lib@ - - --INCLUDES = -I$(top_srcdir)/libjain -+INCLUDES = -I$(prefix)/include - mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs - CONFIG_HEADER = ../config.h - CONFIG_CLEAN_FILES = diff --git a/mail/perdition/patches/patch-ab b/mail/perdition/patches/patch-ab deleted file mode 100644 index 72b741a733a..00000000000 --- a/mail/perdition/patches/patch-ab +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-ab,v 1.2 2006/03/01 22:49:42 wiz Exp $ - ---- makebdb/Makefile.in.orig 2005-06-22 06:32:35.000000000 +0000 -+++ makebdb/Makefile.in -@@ -144,10 +144,10 @@ EXTRA_DIST = makebdb.1 - makebdb_SOURCES = makebdb.c options.c options.h - - --makebdb_LDADD = -L../libjain -L../libjain/.libs/ -ljain -ldb -lpopt @dmalloc_lib@ -+makebdb_LDADD = -L$(prefix)/lib -ljain -ldb4 -lpopt @dmalloc_lib@ - - --INCLUDES = -I$(top_srcdir)/libjain -+INCLUDES = -I$(prefix)/include - mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs - CONFIG_HEADER = ../config.h - CONFIG_CLEAN_FILES = diff --git a/mail/perdition/patches/patch-ac b/mail/perdition/patches/patch-ac index 287aaccc737..c042aace99d 100644 --- a/mail/perdition/patches/patch-ac +++ b/mail/perdition/patches/patch-ac @@ -1,8 +1,8 @@ -$NetBSD: patch-ac,v 1.1 2006/03/04 15:16:30 joerg Exp $ +$NetBSD: patch-ac,v 1.2 2010/06/02 12:50:03 adam Exp $ ---- perdition/pam.c.orig 2006-03-04 15:10:45.000000000 +0000 +--- perdition/pam.c.orig 2009-11-26 05:05:32.000000000 +0000 +++ perdition/pam.c -@@ -31,6 +31,7 @@ +@@ -32,6 +32,7 @@ #include "config.h" #endif @@ -10,7 +10,7 @@ $NetBSD: patch-ac,v 1.1 2006/03/04 15:16:30 joerg Exp $ #include "pam.h" -@@ -52,8 +53,6 @@ int perdition_conv( +@@ -53,8 +54,6 @@ int perdition_conv( ){ char *pass; diff --git a/mail/perdition/patches/patch-ad b/mail/perdition/patches/patch-ad deleted file mode 100644 index e64ecea59ad..00000000000 --- a/mail/perdition/patches/patch-ad +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ad,v 1.1 2006/03/04 15:35:49 joerg Exp $ - ---- makebdb/makebdb.c.orig 2006-03-04 15:18:34.000000000 +0000 -+++ makebdb/makebdb.c -@@ -44,8 +44,6 @@ - #endif - - --extern int errno; -- - #define MAX_LINE_LENGTH 4096 - #define FIELD_DELIMITER ':' - diff --git a/mail/perdition/patches/patch-ae b/mail/perdition/patches/patch-ae deleted file mode 100644 index a85eaaf30c7..00000000000 --- a/mail/perdition/patches/patch-ae +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ae,v 1.1 2006/03/04 15:35:49 joerg Exp $ - ---- makegdbm/makegdbm.c.orig 2006-03-04 15:21:12.000000000 +0000 -+++ makegdbm/makegdbm.c -@@ -42,8 +42,6 @@ - #endif - - --extern int errno; -- - #define MAX_LINE_LENGTH 4096 - #define FIELD_DELIMITER ':' - diff --git a/mail/perdition/patches/patch-af b/mail/perdition/patches/patch-af deleted file mode 100644 index 02aab9e2fdf..00000000000 --- a/mail/perdition/patches/patch-af +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-af,v 1.1 2006/06/28 13:46:58 joerg Exp $ - ---- perdition/db/bdb/Makefile.in.orig 2006-06-28 13:34:23.000000000 +0000 -+++ perdition/db/bdb/Makefile.in -@@ -142,7 +142,7 @@ libperditiondb_bdb_la_SOURCES = perdi - - libperditiondb_bdb_la_LDFLAGS = -version-info 0:0:0 - --libperditiondb_bdb_la_LIBADD = -ldb -+libperditiondb_bdb_la_LIBADD = -ldb4 - - INCLUDES = -I$(top_srcdir)/ -I$(top_srcdir)/perdition -I$(top_srcdir)/libjain -DPERDITIONDB_BDB_SYSCONFDIR=\"$(sysconfdir)/perdition\" @ssl_includes@ - diff --git a/mail/perdition/patches/patch-ag b/mail/perdition/patches/patch-ag index 4a718f7455e..4c50bd2da7f 100644 --- a/mail/perdition/patches/patch-ag +++ b/mail/perdition/patches/patch-ag @@ -1,13 +1,12 @@ -$NetBSD: patch-ag,v 1.1 2007/03/02 11:37:33 grant Exp $ +$NetBSD: patch-ag,v 1.2 2010/06/02 12:50:03 adam Exp $ ---- perdition/Makefile.in.orig 2005-06-22 16:32:35.000000000 +1000 +--- perdition/Makefile.in.orig 2009-11-27 00:10:39.000000000 +0000 +++ perdition/Makefile.in -@@ -155,7 +155,7 @@ INCLUDES = -I$(top_srcdir)/libjain -DPE - LDADD = -L../libjain -L../libjain/.libs/ -ljain -lvanessa_adt -lvanessa_socket -lvanessa_logger -lpopt @pam_lib@ @socket_lib@ @nsl_lib@ @resolv_lib@ @dl_lib@ @ssl_lib@ @dmalloc_lib@ - +@@ -366,7 +366,6 @@ LDADD = \ + @ssl_lib@ \ + @dmalloc_lib@ -perdition_LDFLAGS = -rdynamic -+perdition_LDFLAGS = - mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs - CONFIG_HEADER = ../config.h - CONFIG_CLEAN_FILES = + all: all-recursive + + .SUFFIXES: diff --git a/mail/perdition/patches/patch-ah b/mail/perdition/patches/patch-ah deleted file mode 100644 index 2edd65df8fa..00000000000 --- a/mail/perdition/patches/patch-ah +++ /dev/null @@ -1,109 +0,0 @@ -$NetBSD: patch-ah,v 1.1 2008/07/13 16:26:17 tonnerre Exp $ - ---- perdition/imap4_in.c.orig 2005-06-22 07:50:05.000000000 +0200 -+++ perdition/imap4_in.c -@@ -277,6 +277,76 @@ int imap4_in_authenticate( - - #endif /* WITH_PAM_SUPPORT */ - -+/********************************************************************** -+ * imap4_in_verify_tag_str -+ * Verify that a tag is valid -+ * Pre: tag: io_t to write to -+ * Return 0 on success -+ * -1 otherwise -+ **********************************************************************/ -+ -+/* Excerpts from rfc3501, Section 9. Formal Syntax -+ * -+ * The ASCII NUL character, %x00, MUST NOT be used at any time. -+ * -+ * tag = 1*<any ASTRING-CHAR except "+"> -+ * -+ * ATOM-CHAR = <any CHAR except atom-specials> -+ * -+ * atom-specials = "(" / ")" / "{" / SP / CTL / list-wildcards / -+ * quoted-specials / resp-specials -+ * -+ * list-wildcards = "%" / "*" -+ * -+ * quoted-specials = DQUOTE / "\" -+ * -+ * resp-specials = "]" -+ * -+ * Excerpts from rfc2060, Section 9. Formal Syntax -+ * -+ * CHAR ::= <any 7-bit US-ASCII character except NUL, -+ * 0x01 - 0x7f> -+ * -+ * CTL ::= <any ASCII control character and DEL, -+ * 0x00 - 0x1f, 0x7f> -+ */ -+ -+static int imap4_in_verify_tag_str(const token_t *tag) -+{ -+ unsigned char *tag_str; -+ size_t tag_str_len, i; -+ -+ tag_str_len = token_len(tag); -+ -+ if (!tag_str_len) -+ return -1; -+ -+ tag_str = token_buf(tag); -+ -+ for (i = 0; i < tag_str_len; i++) { -+ /* Must be ASCII, must not be a control character */ -+ if (tag_str[i] <= 0x1f || tag_str[i] >= 0x7f) -+ return -1; -+ /* Must not be other reserved characters */ -+ switch(tag_str[i]) { -+ case '\0': -+ case '(': -+ case ')': -+ case '{': -+ case ' ': -+ case '%': -+ case '*': -+ case '"': -+ case '\\': -+ case ']': -+ return -1; -+ } -+ } -+ -+ return 0; -+} -+ -+ - - /********************************************************************** - * imap4_in_get_pw -@@ -337,19 +407,20 @@ int imap4_in_get_pw(io_t *io, struct pas - break; - } - -+ if (imap4_in_verify_tag_str(tag)) { -+ token_assign(tag, (unsigned char *)strdup(IMAP4_UNTAGGED), -+ strlen(IMAP4_UNTAGGED), 0); -+ __IMAP4_IN_BAD("Invalid tag, mate"); -+ goto loop; -+ } -+ - if((q=vanessa_queue_pop(q, (void **)&tag))==NULL){ - VANESSA_LOGGER_DEBUG("vanessa_queue_pop 1"); - break; - } - - if(token_is_eol(tag)){ -- if(token_is_null(tag)){ -- token_assign(tag, strdup(IMAP4_BAD), strlen(IMAP4_BAD), 0); -- __IMAP4_IN_BAD("Null tag, mate"); -- } -- else { -- __IMAP4_IN_BAD("Missing command, mate"); -- } -+ __IMAP4_IN_BAD("Missing command, mate"); - goto loop; - } - |