]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.4-20070119
authorWietse Venema <wietse@porcupine.org>
Fri, 19 Jan 2007 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:32:50 +0000 (06:32 +0000)
postfix/HISTORY
postfix/src/global/mail_version.h
postfix/src/global/namadr_list.in
postfix/src/global/namadr_list.ref
postfix/src/util/match_list.c

index 324df936561d9ca5902958d9964da594c2aaadef..983a6a360f3f6fc0c155a2bad17fd943319e509e 100644 (file)
@@ -13123,8 +13123,8 @@ Apologies for any names omitted.
 
 20070118
 
-       Bugfix: match lists didn't implement !maptype:mapname.
-       Problem reported by Paulo Pacheco. File: util/match_list.c.
+       Bugfix: match lists didn't implement ![ipv6address].  Problem
+       reported by Paulo Pacheco. File: util/match_list.c.
 
        Cleanup: revised the matchlist "!" support, added support
        for !/file/name, and updated the documentation. File:
index 1505cc4d918e95fb88d1462db3eed4dbc29d85d7..0849455a59bd1ad890ab918a906ff70a6b3f2275 100644 (file)
@@ -20,7 +20,7 @@
   * Patches change both the patchlevel and the release date. Snapshots have no
   * patchlevel; they change the release date only.
   */
-#define MAIL_RELEASE_DATE      "20070118"
+#define MAIL_RELEASE_DATE      "20070119"
 #define MAIL_VERSION_NUMBER    "2.4"
 
 #ifdef SNAPSHOT
index 39103638ae631ce914e21cb6a6d0660b53fd45c6..8b6b0802686d6d221aebae2cb25734ef2c9defe6 100644 (file)
@@ -19,6 +19,11 @@ echo foo !bar baz >junk
 ./namadr_list !`pwd`/junk dummy 168.100.189.3
 ./namadr_list !`pwd`/junk foo 168.100.189.3
 ./namadr_list !`pwd`/junk bar 168.100.189.3
+./namadr_list !`pwd`/junk baz 168.100.189.3
+./namadr_list `pwd`/junk dummy 168.100.189.3
+./namadr_list `pwd`/junk foo 168.100.189.3
+./namadr_list `pwd`/junk bar 168.100.189.3
+./namadr_list `pwd`/junk baz 168.100.189.3
 rm -f junk
 env foo=x ./namadr_list environ:junk foo 168.100.189.3
 env foo=x ./namadr_list environ:junk bar 168.100.189.3
index 5db5ce3d84fc62078a5207835ac7eaaa1a85cda8..b4ecc0bdbd07fce3a5b21b2a1a263118f4fc2d9d 100644 (file)
@@ -18,6 +18,11 @@ dummy/168.100.189.3: NO
 dummy/168.100.189.3: NO
 foo/168.100.189.3: NO
 bar/168.100.189.3: YES
+baz/168.100.189.3: NO
+dummy/168.100.189.3: NO
+foo/168.100.189.3: YES
+bar/168.100.189.3: NO
+baz/168.100.189.3: YES
 foo/168.100.189.3: YES
 bar/168.100.189.3: NO
 foo/168.100.189.3: NO
index 0aee3cf2d0d9035480d890cc4b8d4fc57d244c10..8bb6dc5a86ba146e49eae240b0d118d9a1b8a5f0 100644 (file)
@@ -99,7 +99,7 @@ struct MATCH_LIST {
 
 /* match_list_parse - parse buffer, destroy buffer */
 
-static ARGV *match_list_parse(ARGV *list, char *string, int match)
+static ARGV *match_list_parse(ARGV *list, char *string, int init_match)
 {
     const char *myname = "match_list_parse";
     VSTRING *buf = vstring_alloc(10);
@@ -109,13 +109,14 @@ static ARGV *match_list_parse(ARGV *list, char *string, int match)
     char   *start;
     char   *item;
     char   *map_type_name_flags;
+    int     match;
 
     /*
      * /filename contents are expanded in-line. To support !/filename we
      * prepend the negation operator to each item from the file.
      */
     while ((start = mystrtok(&bp, delim)) != 0) {
-       for (item = start; *item == '!'; item++)
+       for (match = init_match, item = start; *item == '!'; item++)
            match = !match;
        if (*item == 0)
            msg_fatal("%s: no pattern after '!'", myname);