Just an update. I've run the same test on a pristine dbmail installation in an UML image. Same result. I've tried various compile flags. No change. Sometimes it segfaults, sometimes it fails with an internal dbase error. Ive attached the dumped dbmail database (very small), and session log.

Just login as testuser2 pw:test and issue  a list command.


Ilja Booij wrote:
Paul J Stevens wrote:

Ilja Booij wrote:

Paul J Stevens wrote:

First bug found with the testsuite I'm building using python (unittest+imaputil).



Strange... I haven't succeeded in reproducing this error.

Somehow an mboxid of 0 was returned instead of an mboxid of > 0



Indeed. And if I do a 'setacl "testaclbox" "testuser1" "slrw" ' in stead of a "slraw", I get a segfault.


It does not crash here..

The result was clean.


I'm attaching the test-script. Create two users:

dbmail-adduser a testuser1 '{md5:}test' 0 0 [EMAIL PROTECTED]
dbmail-adduser a testuser2 '{md5:}test' 0 0 [EMAIL PROTECTED]

on host 'mail' and run....


It runs just fine.. No problem whatsoever.

It's beginning to sound like a memory error to me. I'll try some checks with valgrind. Can you send a log of the whole session up until the point it segfaults?

BTW, great test script. We should have more of these for our daemons (and dbmail-smtp). I love the way these things can be coded in Python: concise and clear.

Does everyone agree that we should put this test-script (and possibly other test-scripts) into the source tree? Automated testing will be very useful.

Ilja



_______________________________________________
Dbmail-dev mailing list
[email protected]
http://twister.fastxs.net/mailman/listinfo/dbmail-dev


--
  ________________________________________________________________
  Paul Stevens                                  mailto:[EMAIL PROTECTED]
  NET FACILITIES GROUP                     PGP: finger [EMAIL PROTECTED]
  The Netherlands________________________________http://www.nfg.nl

Attachment: dbmail_test.gz
Description: application/gzip

Mar 26 13:40:55 sarge dbmail/imap4d[14168]: PerformChildTask(): incoming 
connection from [172.16.3.1]
Mar 26 13:40:55 sarge dbmail/imap4d[14168]: PerformChildTask(): client info 
init complete, calling client handler
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: IMAPClientHandler(): line read for 
PID 14168
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: COMMAND: [A01 login "testuser2" 
"test"]
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: arg[0]: 'testuser2'
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: arg[1]: 'test'
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: IMAPClientHandler(): Executing 
command login...
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: _ic_login(): trying to validate user
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: dbmysql.c,db_query: executing query 
[SELECT user_idnr, passwd, encryption_type FROM users WHERE userid = 
'testuser2']
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: authsql.c, auth_validate: 
validating using MD5 hash comparison
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: authsql.c,auth_validate: salt   : 
$1$XH.N.o1H$
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: authsql.c,auth_validate: hash   : 
$1$XH.N.o1H$WERm4s8/8K53LLDnHykDC/
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: authsql.c,auth_validate: crypt(): 
$1$XH.N.o1H$WERm4s8/8K53LLDnHykDC/
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: dbmysql.c,db_query: executing query 
[UPDATE users SET last_login = '2004-03-26 13:40:57' WHERE user_idnr = '3']
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: _ic_login(): user (id:3, name 
testuser2) tries login^M
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: _ic_login(): user (id 3, name 
testuser2) login accepted @ 2004-03-26 13:40:57^M
Mar 26 13:40:57 sarge dbmail/imap4d[14168]: IMAPClientHandler(): Finished 
command login
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: IMAPClientHandler(): line read for 
PID 14168
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: COMMAND: [A01 list "" *]
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: arg[0]: ''
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: arg[1]: '*'
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: IMAPClientHandler(): Executing 
command list...
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: ic_list(): build the pattern: [^.*$]
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: dbmysql.c,db_query: executing query 
[SELECT mbx.name, mbx.mailbox_idnr, mbx.owner_idnr FROM mailboxes mbx LEFT JOIN 
acl ON mbx.mailbox_idnr = acl.mailbox_id WHERE (acl.user_id = '3' AND 
acl.lookup_flag = '1') OR mbx.owner_idnr = '3']
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: dbmysql.c,db_query: executing query 
[SELECT userid FROM users WHERE user_idnr = '2']
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: authsql.c,auth_get_userid: 
query_result = testuser1
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: authsql.c,auth_get_userid: 
returning testuser1 as returnid
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: misc.c,mailbox_add_namespace: owner 
name = testuser1
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: misc.c,mailbox_add_namespace: 
returning fully qualified name [#Users/testuser1/testaclbox]
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
comparing mailbox [#Users/testuser1/testaclbox] to regular expression
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
regex match #Users/testuser1/testaclbox
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
comparing mailbox [INBOX] to regular expression
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
regex match INBOX
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
comparing mailbox [testbox] to regular expression
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_list_mailboxes_by_regex: 
regex match testbox
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_findmailbox_by_regex: found 
[3] mailboxes
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: dbmysql.c,db_query: executing query 
[SELECT owner_idnr FROM mailboxes WHERE mailbox_idnr = '0']
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: dbmysql.c, db_get_result: row = 0, 
field = 0, bigger than size of result set
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: db.c,db_getmailboxname: error 
checking ownership of mailbox
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: IMAPClientHandler(): Finished 
command list
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: IMAPClientHandler(): Closing 
connection for client from IP [172.16.3.1]
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: PerformChildTask(): client handling 
complete, closing streams
Mar 26 13:40:59 sarge dbmail/imap4d[14168]: PerformChildTask(): connection 
closed

Reply via email to