Am urmatoarea problema :
Am pus un Postfix compilat cu suport de mysql ,tls, sasl, tot tacamu.
am 1 domeniu local si restu (5) virtuale, fac autentificare cu pam_mysql 
si pam_stack pe system (domenii virtuale respectiv domeniul local). desi 
nu are cine stie ce legatura, folosesc courier-imap. adica 
pam_mysql+courier se inteleg de minune.

totul merge bine si frumos, adica mailu ajunge unde trebe,  
autentificarea se face ok, pot sa-mi iau mailu si cu imap, si cu pop, 
toate cele. pana cand incerc sa folosesc SMTP_AUTH:

Aug 17 14:30:52 localhost saslauthd[21494]: pam_mysql: select returned 
more than one result
Aug 17 14:30:52 localhost postfix/smtpd[21547]: warning: 
unknown[10.0.0.188]: SASL LOGIN authentication failed

configii arata cam asa :
/etc/pam.d/smtp
auth     optional       pam_mysql.so host=localhost db=postfix 
user=postfix passwd=***** table=users usercolumn=email 
passwdcolumn=clear crypt=0
account  required       pam_mysql.so host=localhost db=postfix 
user=postfix passwd=***** table=users usercolumn=email 
passwdcolumn=clear crypt=0

(Am renuntat la crypt din disperare ca nu merge treaba asta il pun la 
loc daca reusesc sa-i dau de cap)

/etc/sasl2/smtpd.conf
pwcheck_method: saslauthd
mech_list: LOGIN PLAIN

si am verificat:
smtpd_sasl_local_domain =

Faza e ca orice as scrie tot asta imi da. Dupa mai multe incercari 
repetate (mai exact 6)... saslauthd moare ??? si tre sa il repornesc. Am 
pus si versiunea "de gentoo", si aia "vanilla" de cyrus_sasl. tot aia. A 
incercat si cu tabelele mysql goale, si cu o inregistare, si cu 2 si cu 
un nume la oha, si cu parola gresita. Orice as face saslauthd imi spune 
ca selectia da mai mult de un raspuns, si la 6 incercari decedeaza. No 
logs about it.

pentru cei care vor sa vada daca chiar am supportu:
Connected to localhost.
Escape character is '^]'.
220 mail.gtt.ro ESMTP Postfix
EHLO example.ro
250-mail.gtt.ro
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-XVERP
250 8BITMIME

incet incet am ajuns la strace ...
la strace eroarea pe saslauthd pare sa inceapa de undeva de aici 
(stracele e dat cu -f):

connect(8, {sa_family=AF_UNIX, path="/var/run/mysqld/mysqld.sock"}, 110) = 0
setsockopt(8, SOL_IP, IP_TOS, [8], 4)   = -1 EOPNOTSUPP (Operation not 
supported)
setsockopt(8, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
read(8, "\'\0\0\0", 4)                  = 4
read(8, "\n4.0.20\0:\3\0\0g7z#:>d]\0, \10\2\0\0\0\0\0\0\0"..., 39) = 39
open("/usr/share/mysql/charsets/Index", O_RDONLY|O_LARGEFILE) = 9
fstat64(9, {st_mode=S_IFREG|0644, st_size=621, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0x1556b000
read(9, "# sql/share/charsets/Index\n#\n# T"..., 4096) = 621
read(9, "", 4096)                       = 0
close(9)                                = 0
munmap(0x1556b000, 4096)                = 0
write(8, "\35\0\0\1\215 [EMAIL PROTECTED]@\0postfi"..., 33) = 33
read(8, "\5\0\0\2", 4)                  = 4
read(8, "\0\0\0\2\0", 5)                = 5
fcntl64(8, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
read(8, 0x80594e8, 8192)                = -1 EAGAIN (Resource 
temporarily unavailable)
fcntl64(8, F_SETFL, O_RDWR)             = 0
write(8, "\10\0\0\0\2postfix", 12)      = 12
read(8, "\5\0\0\1", 4)                  = 4
read(8, "\0\0\0\2\0", 5)                = 5
fcntl64(8, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
read(8, 0x80594e8, 8192)                = -1 EAGAIN (Resource 
temporarily unavailable)
fcntl64(8, F_SETFL, O_RDWR)             = 0
write(8, "-\0\0\0\3SELECT clear FROM users WHE"..., 49) = 49
read(8, "\1\0\0\1", 4)                  = 4
read(8, "\1", 1)                        = 1
read(8, "\26\0\0\2", 4)                 = 4
read(8, "\5users\5clear\3\200\0\0\1\375\3\1\0\0", 22) = 22
read(8, "\1\0\0\3", 4)                  = 4
read(8, "\376", 1)                      = 1
read(8, "\1\0\0\4", 4)                  = 4
read(8, "\376", 1)                      = 1
time([1092820218])                      = 1092820218
getpid()                                = 28238
rt_sigaction(SIGPIPE, {0x15668120, [], SA_RESTORER, 0x155e12a8}, 
{SIG_IGN}, 8) = 0
send(3, "<35>Aug 18 12:10:18 saslauthd[28"..., 85, 0) = 85
rt_sigaction(SIGPIPE, {SIG_IGN}, NULL, 8) = 0
fcntl64(8, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
read(8, 0x80594e8, 8192)                = -1 EAGAIN (Resource 
temporarily unavailable)
fcntl64(8, F_SETFL, O_RDWR)             = 0
write(8, "\1\0\0\0\1", 5)               = 5
shutdown(8, 2 /* send and receive */)   = 0
close(8)                                = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 28238 detached
mai da pe undeva un:
socket(PF_UNIX, SOCK_STREAM, 0)         = 8
connect(8, {sa_family=AF_UNIX, path="/var/run/nscd/socket"}, 110) = -1 
ENOENT (No such file or directory)
close(8)                                = 0
dar ma indoiesc ca are v-o treaba (name service cache daemon nu prea are 
de-a face cu mysql si cu atat mai putin cu problema de fata).

rulez saslauthd ca root, evident.

Are careva o idee ce sa-i fac lu saslauthd ca sa poata sa ceteasca din 
mysql? ca io incep sa "run out" probabil e v-o prostie da nu ma prind.

In timp ce scriu astea compilez si libnss-mysql/libnss-db poate, poate. 
ps, de ce incearca sa folosesca libnss-db ????

Daca are cineva o idee, e binevenita.

Dragos



--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui