]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.10-20121210
authorWietse Venema <wietse@porcupine.org>
Mon, 10 Dec 2012 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:38:21 +0000 (06:38 +0000)
18 files changed:
postfix/HISTORY
postfix/README_FILES/POSTSCREEN_README
postfix/WISHLIST
postfix/html/POSTSCREEN_README.html
postfix/html/master.5.html
postfix/html/postconf.5.html
postfix/html/postscreen.8.html
postfix/man/man5/master.5
postfix/man/man5/postconf.5
postfix/man/man8/postscreen.8
postfix/proto/POSTSCREEN_README.html
postfix/proto/master
postfix/proto/postconf.proto
postfix/src/global/mail_version.h
postfix/src/postscreen/postscreen.c
postfix/src/util/ip_match.c
postfix/src/util/ip_match.in
postfix/src/util/ip_match.ref

index 485b4298f83245150c338f7c1bafd16150362546..18a553df8ddbd88758e30e029168511cd5a5a33d 100644 (file)
@@ -18045,7 +18045,7 @@ Apologies for any names omitted.
        Documentation: a simpler null-client example.  File:
        proto/STANDARD_CONFIGURATION_README.html
 
-20120113
+20121013
 
        Cleanup: to compute the LDAP connection cache lookup key,
        join the numeric fields with null, just like string fields.
@@ -18061,18 +18061,19 @@ Apologies for any names omitted.
 
 20121022
 
-       Bugfix (introduced 20101009) don't complain abuot stray -m
+       Bugfix (introduced 20101009) don't complain about stray -m
        option if none of -[bhm] is specified. Ralf Hildebrandt.
        File: postmap/postmap.c.
 
 20121029 
 
-       Strip datalink suffix from IPv6 addresses returned by the
-       system getaddrinfo() routine.  Such suffixes mess up the
-       default mynetworks value, host name/address verification
-       and possibly more. This change obsoletes the 20101108 change
-       that removes datalink suffixes in the SMTP and QMQP servers.
-       Files: util/myaddrinfo.c, smtpd/smtpd_peer.c, qmqpd/qmqpd_peer.c.
+       Workaround: strip datalink suffix from IPv6 addresses
+       returned by the system getaddrinfo() routine.  Such suffixes
+       mess up the default mynetworks value, host name/address
+       verification and possibly more. This change obsoletes the
+       20101108 change that removes datalink suffixes in the SMTP
+       and QMQP servers.  Files: util/myaddrinfo.c, smtpd/smtpd_peer.c,
+       qmqpd/qmqpd_peer.c.
 
 20121031
 
@@ -18087,7 +18088,7 @@ Apologies for any names omitted.
        postscreen/postscreen_smtpd.c, proto/POSTSCREEN_README.html.
 
        Bugfix (introduced: Postfix 1.1): wrong string termination
-       when handling a MBOX From_ line at the start of a message.
+       when handling an MBOX From_ line at the start of a message.
        File: qmqpd/qmqpd.c.
 
 20121110
@@ -18120,3 +18121,22 @@ Apologies for any names omitted.
 
        Cleanup: consistent escaping of commands in postscreen deep
        protocol test logging. File: postscreen/postscreen_smtpd.c.
+
+20121124
+
+       Documentation: the bounce behavior for automatically-added
+       BCC recipients has changed with Postfix 2.3 when DSN support
+       was introduced.  File: proto/postconf.proto.
+
+20121203
+
+       Documentation: added explicit example for -o name=value.
+       File: proto/master.
+
+20121210
+
+       Bugfix (introduced: Postfix 2.9) nesting count error while
+       stripping the optional [] around a DNS[BW]L address pattern.
+       This part of the code is not documented and had escaped
+       testing.  Files: util/ip_match.c, util/ip_match.in,
+       util/ip_match.ref.
index 6c59a5d143b9192a435e9463c1ed214bb445b0c0..a7253c670fbb10c0960ad7d27fba66862a656403 100644 (file)
@@ -13,10 +13,6 @@ process. By keeping spambots away, postscreen(8) leaves more SMTP server
 processes available for legitimate clients, and delays the onset of server
 overload conditions.
 
-postscreen(8) maintains a temporary whitelist for clients that pass its tests;
-by allowing whitelisted clients to skip tests, postscreen(8) minimizes its
-impact on legitimate email traffic.
-
 postscreen(8) should not be used on SMTP ports that receive mail from end-user
 clients (MUAs). In a typical deployment, postscreen(8) handles the MX service
 on TCP port 25, while MUA clients submit mail via the submission service on TCP
@@ -24,6 +20,10 @@ port 587 which requires client authentication. Alternatively, a site could set
 up a dedicated, non-postscreen, "port 25" server that provides submission
 service and client authentication, but no MX service.
 
+postscreen(8) maintains a temporary whitelist for clients that pass its tests;
+by allowing whitelisted clients to skip tests, postscreen(8) minimizes its
+impact on legitimate email traffic.
+
 postscreen(8) is part of a multi-layer defense.
 
   * As the first layer, postscreen(8) blocks connections from zombies and other
index b9dd0be81f618a747b4415e120bb91574f0a2056..130a442d482e0e17782bc39bd6ae9e6173e169ec 100644 (file)
@@ -11,6 +11,9 @@ Wish list:
        Don't forget Apple's code donation for fetching mail from
        IMAP server.
 
+       Make errno white/blacklist for getpwnam_r etc. and mailbox
+       write errors.
+
        smtpd_muble_restrictions rule names are case-insensitive.
        restriction_classes values are case-sensitive but should
        be case-insensitive for consistency with smtpd_muble_restrictions.
index ba47369e93bc0dfefc8705cfdebc9217612ea415..ca007ed3fd490864b2676f37abc96ea2684ffb06 100644 (file)
@@ -28,11 +28,6 @@ talk to a Postfix SMTP server process.  By keeping spambots away,
 legitimate clients, and delays the onset of <a
 href="STRESS_README.html">server overload</a> conditions. </p>
 
-<p> <a href="postscreen.8.html">postscreen(8)</a> maintains a temporary whitelist for clients that
-pass its tests; by allowing whitelisted clients to skip tests,
-<a href="postscreen.8.html">postscreen(8)</a> minimizes its impact on legitimate email traffic.
-</p>
-
 <p> <a href="postscreen.8.html">postscreen(8)</a> should not be used on SMTP ports that receive
 mail from end-user clients (MUAs). In a typical deployment,
 <a href="postscreen.8.html">postscreen(8)</a> handles the MX service on TCP port 25, while MUA
@@ -41,6 +36,11 @@ requires client authentication. Alternatively, a site could set up
 a dedicated, non-postscreen, "port 25" server that provides submission
 service and client authentication, but no MX service.  </p>
 
+<p> <a href="postscreen.8.html">postscreen(8)</a> maintains a temporary whitelist for clients that
+pass its tests; by allowing whitelisted clients to skip tests,
+<a href="postscreen.8.html">postscreen(8)</a> minimizes its impact on legitimate email traffic.
+</p>
+
 <p> <a href="postscreen.8.html">postscreen(8)</a> is part of a multi-layer defense. <p>
 
 <ul>
index b8a0bc3ed49e86e93b0b502a63b7269794c53717..51ad7b755098b756f3eb9a7b48cf2433bf9a63f8 100644 (file)
@@ -208,21 +208,27 @@ MASTER(5)                                                            MASTER(5)
                      <a href="postconf.5.html">main.cf</a>.  See <a href="postconf.5.html"><b>postconf</b>(5)</a> for syntax.
 
                      NOTE 1: do not specify whitespace around the
-                     "=".  In  parameter  values,  either   avoid
-                     whitespace altogether, use commas instead of
-                     spaces,  or  consider  overrides  like   "-o
-                     name=$override_parameter"     with    $over-
-                     ride_parameter set in <a href="postconf.5.html">main.cf</a>.
-
-                     NOTE 2: Over-zealous use of parameter  over-
-                     rides  makes  the Postfix configuration hard
-                     to understand and maintain.   At  a  certain
-                     point,  it might be easier to configure mul-
-                     tiple instances of Postfix, instead of  con-
+                     "=" or in parameter  values.  To  specify  a
+                     parameter  value  that  contains whitespace,
+                     use commas instead of spaces, or specify the
+                     value in <a href="postconf.5.html">main.cf</a>. Example:
+
+                     /etc/postfix/<a href="master.5.html">master.cf</a>:
+                         submission inet .... smtpd
+                             -o smtpd_mumble=$submission_mumble
+
+                     /etc/postfix/<a href="postconf.5.html">main.cf</a>
+                         submission_mumble = text with whitespace...
+
+                     NOTE  2: Over-zealous use of parameter over-
+                     rides makes the Postfix  configuration  hard
+                     to  understand  and  maintain.  At a certain
+                     point, it might be easier to configure  mul-
+                     tiple  instances of Postfix, instead of con-
                      figuring  multiple  personalities  via  mas-
                      ter.cf.
 
-              <b>-v</b>     Increase the verbose logging level.  Specify
+              <b>-v</b>     Increase  the verbose logging level. Specify
                      multiple <b>-v</b> options to make a Postfix daemon
                      process increasingly verbose.
 
@@ -235,7 +241,7 @@ MASTER(5)                                                            MASTER(5)
        <a href="DEBUG_README.html">DEBUG_README</a>, Postfix debugging
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index fc06380f31ee59dd390031b5cf32ac11b3b4a3c5..af5878dd749df2f1295452be354e603b07a50844 100644 (file)
@@ -768,8 +768,15 @@ that is received by the Postfix mail system.
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>.
+</p>
+
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
@@ -8387,8 +8394,15 @@ run "<b>postmap /etc/postfix/recipient_bcc</b>".
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>.
+</p>
+
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
@@ -8995,8 +9009,15 @@ run "<b>postmap /etc/postfix/sender_bcc</b>".
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>.
+</p>
+
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
index 5d5ec05baef5dcf37ddd8e930a338adafa0e85e2..12f9b02f11ed98ec2b65555c608cceb20cab6217 100644 (file)
@@ -19,15 +19,17 @@ POSTSCREEN(8)                                                    POSTSCREEN(8)
        decides which clients may talk to a  Postfix  SMTP  server
        process.   By  keeping spambots away, <a href="postscreen.8.html"><b>postscreen</b>(8)</a> leaves
        more  SMTP  server  processes  available  for   legitimate
-       clients.
+       clients,  and  delays  the onset of server overload condi-
+       tions.
 
        This program should not be used on SMTP ports that receive
-       mail from end-user clients (MUAs). In  a  typical  deploy-
-       ment,  <a href="postscreen.8.html"><b>postscreen</b>(8)</a>  is  used  on  the "port 25" service,
-       while MUA clients submit mail via the <b>submission</b>  service,
-       or  via  a  "port  25"  server that provides no MX service
-       (i.e.  a dedicated server that provides <b>submission</b> service
-       on port 25).
+       mail  from  end-user  clients (MUAs). In a typical deploy-
+       ment, <a href="postscreen.8.html"><b>postscreen</b>(8)</a> handles the MX service on TCP port 25,
+       while  MUA  clients submit mail via the <b>submission</b> service
+       on TCP port  587  which  requires  client  authentication.
+       Alternatively,  a  site  could  set  up  a dedicated, non-
+       postscreen, "port 25" server that provides <b>submission</b> ser-
+       vice and client authentication, but no MX service.
 
        <a href="postscreen.8.html"><b>postscreen</b>(8)</a>  maintains a temporary whitelist for clients
        that have passed a number of tests.  When an  SMTP  client
index 272eb21da410fa7df660e2a583d5369b07bbedfb..efc6d55e1c69e80a83fbb74eb2618aea96f0ab16 100644 (file)
@@ -187,11 +187,19 @@ parameter value can refer to other parameters as \fI$name\fR
 etc., just like in main.cf.  See \fBpostconf\fR(5) for
 syntax.
 .sp
-NOTE 1: do not specify whitespace around the "=". In parameter
-values, either avoid whitespace altogether, use commas
-instead of spaces, or consider overrides like "-o
-name=$override_parameter" with $override_parameter set in
-main.cf.
+NOTE 1: do not specify whitespace around the "=" or in
+parameter values. To specify a parameter value that contains
+whitespace, use commas instead of spaces, or specify the
+value in main.cf. Example:
+.sp
+.nf
+/etc/postfix/master.cf:
+    submission inet .... smtpd
+        -o smtpd_mumble=$submission_mumble
+.sp
+/etc/postfix/main.cf
+    submission_mumble = text with whitespace...
+.fi
 .sp
 NOTE 2: Over-zealous use of parameter overrides makes the
 Postfix configuration hard to understand and maintain.  At
index 94c40486dd00da080b5f03307c768f23195e94c3..5c0164575ade2cdfcb74ad7c9a6e80dcccd9f22e 100644 (file)
@@ -438,8 +438,13 @@ may break DKIM signatures that cover non-existent headers.
 Optional address that receives a "blind carbon copy" of each message
 that is received by the Postfix mail system.
 .PP
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+.PP
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 .PP
 Note: automatic BCC recipients are produced only for new mail.
 To avoid mailer loops, automatic BCC recipients are not generated
@@ -5026,8 +5031,13 @@ Look up the "@domain.tld" part.
 Specify the types and names of databases to use.  After change,
 run "\fBpostmap /etc/postfix/recipient_bcc\fR".
 .PP
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+.PP
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 .PP
 Note: automatic BCC recipients are produced only for new mail.
 To avoid mailer loops, automatic BCC recipients are not generated
@@ -5443,8 +5453,13 @@ Look up the "@domain.tld" part.
 Specify the types and names of databases to use.  After change,
 run "\fBpostmap /etc/postfix/sender_bcc\fR".
 .PP
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+.PP
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 .PP
 Note: automatic BCC recipients are produced only for new mail.
 To avoid mailer loops, automatic BCC recipients are not generated
index 22a61191e4ceec8754cdf7dbc395343a5bad4fdc..821748de83bdb3afea920e8a819c5eac21a76754 100644 (file)
@@ -17,15 +17,17 @@ protection against mail server overload. One \fBpostscreen\fR(8)
 process handles multiple inbound SMTP connections, and decides
 which clients may talk to a Postfix SMTP server process.
 By keeping spambots away, \fBpostscreen\fR(8) leaves more
-SMTP server processes available for legitimate clients.
+SMTP server processes available for legitimate clients, and
+delays the onset of server overload conditions.
 
 This program should not be used on SMTP ports that receive
 mail from end-user clients (MUAs). In a typical deployment,
-\fBpostscreen\fR(8) is used on the "port 25" service, while
-MUA clients submit mail via the \fBsubmission\fR service,
-or via a "port 25" server that provides no MX service (i.e.
-a dedicated server that provides \fBsubmission\fR service
-on port 25).
+\fBpostscreen\fR(8) handles the MX service on TCP port 25,
+while MUA clients submit mail via the \fBsubmission\fR
+service on TCP port 587 which requires client authentication.
+Alternatively, a site could set up a dedicated, non-postscreen,
+"port 25" server that provides \fBsubmission\fR service and
+client authentication, but no MX service.
 
 \fBpostscreen\fR(8) maintains a temporary whitelist for
 clients that have passed a number of tests.  When an SMTP
index c7a4f020e73027eade595f906b91a26b3c5dc6fb..f91c63a96d6e308ef37f4a0945beda3bdbea3d50 100644 (file)
@@ -28,11 +28,6 @@ postscreen(8) leaves more SMTP server processes available for
 legitimate clients, and delays the onset of <a
 href="STRESS_README.html">server overload</a> conditions. </p>
 
-<p> postscreen(8) maintains a temporary whitelist for clients that
-pass its tests; by allowing whitelisted clients to skip tests,
-postscreen(8) minimizes its impact on legitimate email traffic.
-</p>
-
 <p> postscreen(8) should not be used on SMTP ports that receive
 mail from end-user clients (MUAs). In a typical deployment,
 postscreen(8) handles the MX service on TCP port 25, while MUA
@@ -41,6 +36,11 @@ requires client authentication. Alternatively, a site could set up
 a dedicated, non-postscreen, "port 25" server that provides submission
 service and client authentication, but no MX service.  </p>
 
+<p> postscreen(8) maintains a temporary whitelist for clients that
+pass its tests; by allowing whitelisted clients to skip tests,
+postscreen(8) minimizes its impact on legitimate email traffic.
+</p>
+
 <p> postscreen(8) is part of a multi-layer defense. <p>
 
 <ul>
index 9fda10188477381fa004f603ea550d41dc274dcc..d4f2dc2974dbecbed5767a1d992a7f5e27ca86b8 100644 (file)
 #      etc., just like in main.cf.  See \fBpostconf\fR(5) for
 #      syntax.
 # .sp
-#      NOTE 1: do not specify whitespace around the "=". In parameter
-#      values, either avoid whitespace altogether, use commas
-#      instead of spaces, or consider overrides like "-o
-#      name=$override_parameter" with $override_parameter set in
-#      main.cf.
+#      NOTE 1: do not specify whitespace around the "=" or in
+#      parameter values. To specify a parameter value that contains
+#      whitespace, use commas instead of spaces, or specify the
+#      value in main.cf. Example:
+# .sp
+# .nf
+#      /etc/postfix/master.cf:
+#          submission inet .... smtpd
+#              -o smtpd_mumble=$submission_mumble
+# .sp
+#      /etc/postfix/main.cf
+#          submission_mumble = text with whitespace...
+# .fi
 # .sp
 #      NOTE 2: Over-zealous use of parameter overrides makes the
 #      Postfix configuration hard to understand and maintain.  At
index d7b5bb1392f6f92161b184c3bfea34a47780b48d..307c10d1170e558c1750e37f575ce776e215975d 100644 (file)
@@ -636,8 +636,15 @@ that is received by the Postfix mail system.
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+</p>
+
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified 
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
@@ -3433,8 +3440,15 @@ run "<b>postmap /etc/postfix/recipient_bcc</b>".
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+</p>
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
@@ -3713,8 +3727,15 @@ run "<b>postmap /etc/postfix/sender_bcc</b>".
 </p>
 
 <p>
-Note: if mail to the BCC address bounces it will be returned to
-the sender.
+Note: with Postfix 2.3 and later the BCC address is added as if it
+was specified with NOTIFY=NONE. The sender will not be notified
+when the BCC address is undeliverable, as long as all down-stream
+software implements RFC 3461.
+</p>
+<p>
+Note: with Postfix 2.2 and earlier the sender will be notified
+when the BCC address is undeliverable.
 </p>
 
 <p> Note: automatic BCC recipients are produced only for new mail.
index 09466a4dd6ae675a8150d4eca459fa91a036a81f..b747bb7aba51c1a2556a6fc6a22b3210e3261da0 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      "20121123"
+#define MAIL_RELEASE_DATE      "20121210"
 #define MAIL_VERSION_NUMBER    "2.10"
 
 #ifdef SNAPSHOT
index 6ab4a2ef0267de3a1a33de6705cc7b63313923d1..0149b59ad78dc302fe40d6048c15885a0189daee 100644 (file)
 /*     process handles multiple inbound SMTP connections, and decides
 /*     which clients may talk to a Postfix SMTP server process.
 /*     By keeping spambots away, \fBpostscreen\fR(8) leaves more
-/*     SMTP server processes available for legitimate clients.
+/*     SMTP server processes available for legitimate clients, and
+/*     delays the onset of server overload conditions.
 /*
 /*     This program should not be used on SMTP ports that receive
 /*     mail from end-user clients (MUAs). In a typical deployment,
-/*     \fBpostscreen\fR(8) is used on the "port 25" service, while
-/*     MUA clients submit mail via the \fBsubmission\fR service,
-/*     or via a "port 25" server that provides no MX service (i.e.
-/*     a dedicated server that provides \fBsubmission\fR service
-/*     on port 25).
+/*     \fBpostscreen\fR(8) handles the MX service on TCP port 25,
+/*     while MUA clients submit mail via the \fBsubmission\fR
+/*     service on TCP port 587 which requires client authentication.
+/*     Alternatively, a site could set up a dedicated, non-postscreen,
+/*     "port 25" server that provides \fBsubmission\fR service and
+/*     client authentication, but no MX service.
 /*
 /*     \fBpostscreen\fR(8) maintains a temporary whitelist for
 /*     clients that have passed a number of tests.  When an SMTP
index 1cf1b78d8f7182b5310770041ca694724e8698ee..aeea799f488dd39cfe90f935c53ef464721ffefd 100644 (file)
@@ -445,7 +445,7 @@ char   *ip_match_parse(VSTRING *byte_codes, char *pattern)
      * Simplify this if we change to {} for wildcard notation.
      */
 #define FIND_TERMINATOR(start, cp) do { \
-       int _level = 1; \
+       int _level = 0; \
        for (cp = (start) ; *cp; cp++) { \
            if (*cp == '[') _level++; \
            if (*cp != ']') continue; \
index bca0d6e6720e4189d4c0bb228eeef0cbe12ded79..072657bd973f98895a02ffa9f7d8abcc67c67b09 100644 (file)
@@ -20,3 +20,5 @@ a
 1.2.3.4x
 1.2.[3..11].5  1.2.3.5 1.2.2.5 1.2.11.5 1.2.12.5  1.2.11.6
 1.2.[3;5;7;9;11].5     1.2.3.5 1.2.2.5 1.2.4.5 1.2.11.5 1.2.12.5  1.2.11.6
+[1;2].3.4.5 1.3.4.5 2.3.4.5 3.3.4.5
+[[1;2].3.4.5] 1.3.4.5 2.3.4.5 3.3.4.5
index 22c823edf0d0cb6f6e919864070c241a1ffaac9a..da06ca959321817130130f3978dd22f215165e8a 100644 (file)
@@ -53,3 +53,13 @@ Match 1.2.4.5: no
 Match 1.2.11.5: yes
 Match 1.2.12.5: no
 Match 1.2.11.6: no
+> [1;2].3.4.5 1.3.4.5 2.3.4.5 3.3.4.5
+Code: [1;2].3.4.5
+Match 1.3.4.5: yes
+Match 2.3.4.5: yes
+Match 3.3.4.5: no
+> [[1;2].3.4.5] 1.3.4.5 2.3.4.5 3.3.4.5
+Code: [1;2].3.4.5
+Match 1.3.4.5: yes
+Match 2.3.4.5: yes
+Match 3.3.4.5: no