[Exim] AUTH Login and passwords which have colons (:) in it

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Bonis, Wim
Datum:  
To: exim-users
Betreff: [Exim] AUTH Login and passwords which have colons (:) in it
I tried to use auth login with the following setup:

login:
driver = plaintext
public_name = LOGIN
server_prompts = "Username:: : Password::"
server_condition = "${if pam{$1:$2}{1}{0}}"
server_set_id = $1

But it did not work for Passwords with "colons" (:) in it.

It is maybe because the colons are the seperators for pam.

I tried every kind of ${quote-xx:$2) and rxqoute, but id did not help.

A solution was (with a help from a perl function) to convert all ":" to "::"

As a temporary fix i use now something like:

server_condition = "${if pam{$1:${perl{convert_colon}{$2}}}{1}{0}}"

with the following Perl Function:
  sub convert_colon{
        my ($n) = @_;
        $n =~ s/:/::/g;
        return $n;
  } 



A better fix would maybe to change the pam syntax to: ${pam{$1}{$2}}
or to make a new quote function ${quote-colons:$1} or quote-ldap which
subtitutes one ":" with 2 ":"


-------------------------------------------------------------------
Wim Bonis             ,+'^'+,                 Telefon:0631-31662-0
          Internet Solution Service GmbH      Technik:0631-31662-15
                       +,.,+                   privat:0631-36071-80
email: bonis@???               67655 Kaiserslautern
Karl-Marx-Str. 13                              --== DPN-POP KL ==--