git://git.exim.org
/
users
/
heiko
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Additional tests - didn't show any problems.
[users/heiko/exim.git]
/
test
/
scripts
/
0000-Basic
/
0002
diff --git
a/test/scripts/0000-Basic/0002
b/test/scripts/0000-Basic/0002
index eaa0dd82a07254e3fb5c6dc07a1a5ee9e48ea08e..c31b9232f4266161b248d27d07f1cfff21a3aeeb 100644
(file)
--- a/
test/scripts/0000-Basic/0002
+++ b/
test/scripts/0000-Basic/0002
@@
-67,6
+67,20
@@
eval: ${eval:077}
eval: ${eval:08}
eval10: ${eval10:077}
eval10: ${eval10:08}
eval: ${eval:08}
eval10: ${eval10:077}
eval10: ${eval10:08}
+eval10: ${eval10:0x1234}
+eval: ${eval:2+42%5}
+eval: ${eval:0xc&5}
+eval: ${eval:0xc & 5 }
+eval: ${eval:0x0c|5}
+eval: ${eval:0xc^5}
+eval: ${eval:0xc>>1}
+eval: ${eval:0xc >> 2}
+eval: ${eval:0xc >> 4 }
+eval: ${eval:0xc<<1}
+eval: ${eval:~255&0x1234}
+eval: ${eval:~ 255&0x1234}
+eval: ${eval: -(~255&0x1234)}
+
expand: \$primary_hostname ${expand:\$primary_hostname}
hash: ${hash_3:monty} ${hash_5:monty} ${hash_4_62:monty python}
hash: ${hash_3:abc}X ${hash_3:ab}X ${hash_3:a}X ${hash_3:}X
expand: \$primary_hostname ${expand:\$primary_hostname}
hash: ${hash_3:monty} ${hash_5:monty} ${hash_4_62:monty python}
hash: ${hash_3:abc}X ${hash_3:ab}X ${hash_3:a}X ${hash_3:}X
@@
-142,6
+156,12
@@
str2b64:${str2b64:The quick brown \n fox}
strlen: ${strlen:}
strlen: ${strlen:a}
strlen: ${strlen:abcdefgh}
strlen: ${strlen:}
strlen: ${strlen:a}
strlen: ${strlen:abcdefgh}
+time_eval: ${time_eval:10s}
+time_eval: ${time_eval:2h}
+time_eval: ${time_eval:1d5m}
+time_eval: ${time_eval:1w2d3h4m5s}
+time_eval: ${time_eval:14}
+time_eval: ${time_eval:rhubarb}
time_interval: ${time_interval:0}
time_interval: ${time_interval:44}
time_interval: ${time_interval:999999}
time_interval: ${time_interval:0}
time_interval: ${time_interval:44}
time_interval: ${time_interval:999999}
@@
-181,6
+201,11
@@
hash: ${if eq {1}{2}{${hash_3:invalid}}{NO}}
md5: ${if eq {1}{2}{${md5:invalid}}{NO}}
mask: ${if eq {1}{2}{${mask:invalid}}{NO}}
md5: ${if eq {1}{2}{${md5:invalid}}{NO}}
mask: ${if eq {1}{2}{${mask:invalid}}{NO}}
+# Numeric overflow
+
+4096M ${if >{1}{4096M}{y}{n}}
+4096000000 ${if >{1}{4096000000}{y}{n}}
+
# Conditions
2=2: ${if ={2}{2}{y}{n}}
# Conditions
2=2: ${if ={2}{2}{y}{n}}
@@
-194,6
+219,7
@@
mask: ${if eq {1}{2}{${mask:invalid}}{NO}}
2>3: ${if >{2}{3}{y}{n}}
3>3: ${if >{3}{3}{y}{n}}
4>3: ${if >{4}{3}{y}{n}}
2>3: ${if >{2}{3}{y}{n}}
3>3: ${if >{3}{3}{y}{n}}
4>3: ${if >{4}{3}{y}{n}}
+1>-1: ${if >{1}{-1}{y}{n}}
2>=3: ${if >={2}{3}{y}{n}}
3>=3: ${if >={3}{3}{y}{n}}
4>=3: ${if >={4}{3}{y}{n}}
2>=3: ${if >={2}{3}{y}{n}}
3>=3: ${if >={3}{3}{y}{n}}
4>=3: ${if >={4}{3}{y}{n}}
@@
-204,12
+230,19
@@
mask: ${if eq {1}{2}{${mask:invalid}}{NO}}
3<=3: ${if <={3}{3}{y}{n}}
4<=3: ${if <={4}{3}{y}{n}}
5<=3: ${if <={ 5 } { 3 } {y}{n}}
3<=3: ${if <={3}{3}{y}{n}}
4<=3: ${if <={4}{3}{y}{n}}
5<=3: ${if <={ 5 } { 3 } {y}{n}}
+-3<=1: ${if <={-3}{1}{y}{n}}
5>3k: ${if >{5 } {3k }{y}{n}}
5>3m: ${if >{5 } {3m }{y}{n}}
5>3z: ${if >{5 } {3z }{y}{n}}
5>a: ${if >{ 5 } {a}{y}{n}}
5>3k: ${if >{5 } {3k }{y}{n}}
5>3m: ${if >{5 } {3m }{y}{n}}
5>3z: ${if >{5 } {3z }{y}{n}}
5>a: ${if >{ 5 } {a}{y}{n}}
+>0: ${if > {}{0}{y}{n}}
+=: ${if = {}{}{y}{n}}
+-2<: ${if < {-2}{}{y}{n}}
+08>07: ${if > {08}{07}{y}{n}}
+011=11: ${if = {011}{11}{y}{n}}
+
def:y ${if def:tod_log{y}{n}}
def:n ${if def:host{y}{n}}
def:f ${if def:post{y}{n}}
def:y ${if def:tod_log{y}{n}}
def:n ${if def:host{y}{n}}
def:f ${if def:post{y}{n}}
@@
-269,6
+302,22
@@
match_domain: ${if match_domain{5.aa.bb}{+dlist}{yes}{no}}
match_domain: ${if match_domain{xxxyz}{+dlist}{yes}{no}}
match_domain: ${if match_domain{xyz}{+dlist}{yes}{no}}
match_domain: ${if match_domain{xxxyz}{+dlist}{yes}{no}}
match_domain: ${if match_domain{xyz}{+dlist}{yes}{no}}
+${if match{x@zz.aa.bb}{^(.*)} \
+ { \
+ >$1< \
+ ${if match_domain{${domain:$1}}{+dlist}{[$1]}} \
+ >$1< \
+ } \
+ { CAN'T HAPPEN}}
+
+${if match{x@xxxabc}{^(.*)} \
+ { \
+ >$1< \
+ ${if match_domain{${domain:$1}}{^\Nxxx(.*)\N}{[$1]}} \
+ >$1< \
+ } \
+ { CAN'T HAPPEN}}
+
match_address: ${if match_address{x@y.z}{p@q:*@y.z}{yes}{no}}
match_address: ${if match_address{x@y.z}{p@q:x@*.z}{yes}{no}}
match_address: ${if match_address{x@y.z}{p@q:*@y.z}{yes}{no}}
match_address: ${if match_address{x@y.z}{p@q:x@*.z}{yes}{no}}
@@
-365,6
+414,13
@@
a99b: ${lookup{a99b}nwildlsearch{DIR/aux-var/0002.wild}{$value}{NO}}
a\\:b: ${lookup{a\\:b}nwildlsearch{DIR/aux-var/0002.wild}}
a\\:Xb: ${lookup{a\\:Xb}nwildlsearch{DIR/aux-var/0002.wild}}
a\\:b: ${lookup{a\\:b}nwildlsearch{DIR/aux-var/0002.wild}}
a\\:Xb: ${lookup{a\\:Xb}nwildlsearch{DIR/aux-var/0002.wild}}
+# Some tests of case-(in)dependence
+
+MiXeD-CD: ${lookup{MiXeD-CD}nwildlsearch{DIR/aux-var/0002.wild}{$value}{NOT FOUND}}
+MixeD-CD: ${lookup{MixeD-CD}nwildlsearch{DIR/aux-var/0002.wild}{$value}{NOT FOUND}}
+MiXeD-Ncd: ${lookup{MiXeD-Ncd}nwildlsearch{DIR/aux-var/0002.wild}{$value}{NOT FOUND}}
+MixeD-Ncd: ${lookup{MixeD-Ncd}nwildlsearch{DIR/aux-var/0002.wild}{$value}{NOT FOUND}}
+
# IP address (CIDR) lookups
1.2.3.4: ${lookup{1.2.3.4}iplsearch{DIR/aux-fixed/0002.iplsearch}}
# IP address (CIDR) lookups
1.2.3.4: ${lookup{1.2.3.4}iplsearch{DIR/aux-fixed/0002.iplsearch}}
@@
-542,6
+598,8
@@
${if and {xyz}{a}{b}}
${if and {{xya}}{a}{b}}
${if and {{${lookup{x}lsearch{/a/b}}}}{a}{b}}
${if eq {$h_xyz}{1}{y}{n}}
${if and {{xya}}{a}{b}}
${if and {{${lookup{x}lsearch{/a/b}}}}{a}{b}}
${if eq {$h_xyz}{1}{y}{n}}
+${if eq {$h_xyz:}{1}{y}{n}
+${if def:h_xyz}{y}{n}}
${if or {eq {}{}{yes}{no}}
${if or {{eq {}{}{yes}{no}}
${if or {{eq {}{}}{yes}{no}}
${if or {eq {}{}{yes}{no}}
${if or {{eq {}{}{yes}{no}}
${if or {{eq {}{}}{yes}{no}}
@@
-676,3
+734,8
@@
Subject: =?iso-8859-8?Q?_here_we_go=3A_a_string_that_is_going_to_be_encoded=3A_i
.
quit
****
.
quit
****
+# Certain kind of error
+exim -d -be
+match_ip: 15 ${if match_ip{1.2.3.4}{1.2.3}}
+match_ip: 16 ${if match_ip{1.2.3.4}{1.2.3.4/abc}}
+****