[exim-dev] [Bug 1649] rework SRS to avoid using dead librari…

Top Page
Delete this message
Reply to this message
Author: admin
Date:  
To: exim-dev
Old-Topics: [exim-dev] [Bug 1649] New: rework SRS to avoid using dead libraries
Subject: [exim-dev] [Bug 1649] rework SRS to avoid using dead libraries
https://bugs.exim.org/show_bug.cgi?id=1649

--- Comment #3 from Jeremy Harris <jgh146exb@???> ---
If you're willing to use only SRS0 addresses:

#routers
outbound:
  driver =    dnslookup
  domains =   ! +my_domains
  transport = ${if eq {$local_part@$domain} \
                      {$original_local_part@$original_domain} \
                   {remote_smtp} {remote_forwarded_smtp}}


inbound_srs:
  driver =    redirect
  senders =   :
  domains =   +my_domains
  condition = ${if match {$local_part} \
                         {^(?i)SRS0=([^=]*)=([^=]*)=([^=]*)=(.*)\$} \
                {${if and { {<= {${eval:$tod_epoch/86400 - ${base32d:$2} &
0x3ff}} \
                                {10}} \
                            {eq {$1} \
                                {${l_4:${hmac{md5}{SRS_SECRET}{$4@$3}}}}} \
                          } \
                         {true}{false} \
                 }} \
                 {false} \
                }
  data =    ${sg {$local_part} \
                 {^(?i)SRS0=[^=]+=[^=]+=([^=]*)=(.*)\$} \
                 {\$2@\$1}}



# transport
remote_forwarded_smtp:
  driver =              smtp
  max_rcpt =            1
  return_path =         SRS0\
                        =${l_4:${hmac{md5}{SRS_SECRET}{$return_path}}}\
                        =${base32:${eval:$tod_epoch/86400&0x3ff}}\
                        =${domain:$return_path}\
                        =${local_part:$return_path}\
                        @$original_domain


The above uses ${base32:}, which only just appeared in 4.next, for the
timestamp. You could perfectly well use the decimal number.

--
You are receiving this mail because:
You are on the CC list for the bug.