hanoi:
require
set acl_c0 = ${if def:acl_c0 {$acl_c0} {0} }
set acl_c1 = ${if def:acl_c1 {$acl_c1} {a b c} }
accept
condition = ${if >{$acl_c0}{9} }
accept
set acl_c0 = ${eval: $acl_c0 + 1 }
set acl_c1 = ${sg {$acl_c1} {(.) (.) (.)} {\N$1 $3 $2\N} }
acl = hanoi
logwrite = move ${eval: $acl_c0 - 1 } ${sg {$acl_c1} {(.) (.) (.)} {\Nfrom $1 to $2\N} }
set acl_c1 = ${sg {$acl_c1} {(.) (.) (.)} {\N$3 $1 $2\N} }
acl = hanoi
set acl_c1 = ${sg {$acl_c1} {(.) (.) (.)} {\N$2 $1 $3\N} }
set acl_c0 = ${eval: $acl_c0 - 1 }
fibonacci:
require
set acl_c0 = ${if def:acl_c0 {$acl_c0} {0} }
set acl_c1 = ${if def:acl_c1 {$acl_c1} {1} }
logwrite = fibonacci $acl_c1
set acl_c2 = ${eval: $acl_c0 + $acl_c1 }
set acl_c0 = $acl_c1
set acl_c1 = $acl_c2
acl = fibonacci
reverse:
require
set acl_c0 = ${if def:acl_c0 {$acl_c0} {$smtp_command_argument} }
deny
condition = ${if ={${strlen:$acl_c1}}{${strlen:$smtp_command_argument}} }
message = $acl_c1
require
set acl_c1 = ${sg {$acl_c0} {(.)(.*)} {\$1} }$acl_c1
set acl_c0 = ${sg {$acl_c0} {(.)(.*)} {\$2} }
acl = reverse
Tony.
--
<fanf@???> <dot@???>
http://dotat.at/ ${sg{\N${sg{\
N\}{([^N]*)(.)(.)(.*)}{\$1\$3\$2\$1\$3\n\$2\$3\$4\$3\n\$3\$2\$4}}\
\N}{([^N]*)(.)(.)(.*)}{\$1\$3\$2\$1\$3\n\$2\$3\$4\$3\n\$3\$2\$4}}