(no subject)

2005-10-18 Thread John
unsubscribe info-cyrus

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


(no subject)

2005-10-18 Thread Fernando Arconada Oróstegui
unsubscribe info-cyrus

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


(no subject)

2005-10-18 Thread Andrew Edunov

unsubscribe info-cyrus


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


lmtpd dumping core

2005-10-18 Thread Rob McMahon
Cyrus imapd 2.2.12 / Squirrelmail on Solaris 10 SPARC.  I'm using the 
autocreate patch.


Our cyrus-imap implementation began dying every time sendmail ran the 
mail queue.  It turned out to be caused by mail addressed to recipients 
like <æ>, the stack trace looking like this:


> mdb core.narcissus.lmtpd.14625
Loading modules: [ libc.so.1 libuutil.so.1 ld.so.1 ]
> ::stack
libc.so.1`strlen+0x50(ffbfbad3, ffbfc690, ffbfb2c1, 0, 0, 0)
libc.so.1`vsnprintf+0x6c(ffbfbf13, 4bd, ffbfbaac, ffbfc68c, 7c00, 0)
libc.so.1`vsyslog+0x454(3acb008, a, ffbfc68c, 63135, ffbfbaac, 73)
libc.so.1`syslog+0x1c(3, e75c4, 0, 82, ffbfc240, 0)
mboxlist_autocreateinbox+0xb8(107028, 0, 0, ffbfcafc, 186a0, 0)
autocreate_inbox+0xd8(107000, 13b2f0, 186a0, 107000, 107000, 8e76e800)
verify_user+0x238(8e76ea0b, 0, 61f, 61f, 0, 13b2f0)
process_recipient+0x3a0(1141e7, 107028, 0, 1b24c, 1147a0, 0)
lmtpmode+0x1254(100484, 13cc40, 129060, 0, 1119b9, ffbff04c)
service_main+0xc0(1, 111e48, , e2400, e2400, 1070c0)
main+0x8d0(ffbff600, 4, 1, 9, 574c, 1204c8)
_start+0x108(0, 0, 0, 0, 0, 0)
>  e75c4?s
0xe75c4:Could not get cannon userid for user %s
> ::status
debugging core file of lmtpd (32-bit) from narcissus
file: /usr/local/cyrus/bin/lmtpd
initial argv: lmtpd
threading model: multi-threaded
status: process terminated by SIGSEGV (Segmentation Fault)
>

In imap/mboxlist.c, we find the code:

if (auth_userid == NULL) {
 /*
  * Couldn't get cannon userid
  */
  syslog(LOG_ERR,
"Could not get cannon userid for user %s", auth_userid);

Oops.  If auth_userid is NULL, try to log it.  One suspects that was 
supposed to be `userid' being logged.


Comments ?

Cheers,

Rob

--
E-Mail: [EMAIL PROTECTED]   PHONE:  +44 24 7652 3037
Rob McMahon, IT Services, Warwick University, Coventry, CV4 7AL, England


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: lmtpd dumping core

2005-10-18 Thread Nikos Voutsinas

Rob McMahon wrote:


debugging core file of lmtpd (32-bit) from narcissus
file: /usr/local/cyrus/bin/lmtpd
initial argv: lmtpd
threading model: multi-threaded
status: process terminated by SIGSEGV (Segmentation Fault)
 >

In imap/mboxlist.c, we find the code:

if (auth_userid == NULL) {
 /*
  * Couldn't get cannon userid
  */
  syslog(LOG_ERR,
"Could not get cannon userid for user %s", auth_userid);

Oops.  If auth_userid is NULL, try to log it.  One suspects that was 
supposed to be `userid' being logged.


Comments ?




Ouups. This is obviously wrong. I suspect that it was propagated from
cyrus-2.1.x to cyrus-2.2.x series a bit hasty since the corresponding
code segment in 2.1 is written as following:

+auth_userid = auth_canonuser(auth_state);
+if (auth_userid == NULL) {
+/*
+ * Couldn't get cannon userid
+ */
+ syslog(LOG_ERR,
+"Could not get cannon userid for user %s", userid);
+ return IMAP_PARTITION_UNKNOWN;
+}

As far as the reason why the auth_userid is NULL, this is due to
auth_canonuser() and the "&" character, which i would strongly advise
you to avoid.

Thank you for your bug report. A new version of the autocreate patch
will be released.

Nikos Voutsinas


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


lmtp delivery to cyrus store over unix socket requires /etc/hosts.allow entry. why?

2005-10-18 Thread OpenMacNews
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160

hi all,

first -- i'd posted this 1st on exim-users, suspecting it may be an exim issue, 
but the thinking
is that it may well be a cyrus issue, or prehaps OSX ...


that said, i'm delivering to my cyrus-imap (CVS) store using an lmtp socket 
transport from exim
4.54:

cyrus_lmtp_unixsock:
debug_print = "EXIM-DEBUG [T:cyrus_lmtp_unixsock] for [EMAIL 
PROTECTED]"
driver  = lmtp
socket  = /var/MailServer/Process/lmtp.socket
envelope_to_add
user= MY_USER


cyrus.conf is configured with:

lmtpunix cmd="lmtpd -a  -C /var/MailServer/Conf/imapd.conf"
listen="/var/MailServer/Process/lmtp.socket" prefork=2


on delivery attempt, my EXIM log shows a failed attempt, indicating that the 
LMTP connection is
closed:

2005-10-17 20:35:14 -0700 IOJDYN-FT-OY == [EMAIL 
PROTECTED]@testdomain.com
<[EMAIL PROTECTED]> R=cyrus_localuser T=cyrus_lmtp_unixsock defer (-1): LMTP 
connection
closed after initial connection

and syslog shows:

Oct 17 20:35:14 devbox CYRUS/lmtpunix[564]: refused connection from 
0.0.0.0

after a bit of thrashing around, i find that if i add to /etc/hosts.allow

lmtpunix : 0.0.0.0

delivery completes successfully!

now, cyrus IS config'd/built "--with-libwrap", so i can use tcpwrappers to 
secure my OTHER cyrus
services (imap, imaps, sieve, etc) which are running on TCPSockets ...

QUESTION:  why is a hosts.allow entry required in the 1st place for lmtpunix 
transport over a
UNIXsocket?

and, why "0.0.0.0" for localhost, rather than 127.0.0.1 or 'localhost' in 
hosts.allow?

the suggestion on exim-users (thx Tony!) is that:

the code looks like it won't call tcpwrappers for Unix domain sockets.

BUT, if the kernel 'lies' to it and returns the wrong kind of socket 
address from
getpeername() then Cyrus will do the wrong thing.


thanks for any/all clarification!

cheers,

richard


- --

/"\
\ /  ASCII Ribbon Campaign
 X   against HTML email, vCards
/ \  & micro$oft attachments

[GPG] OpenMacNews at gmail dot com
fingerprint: 780A 5C81 D446 C616 B113  AA3A 9BF4 3736 88A5 678E
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (Darwin)

iEYEAREDAAYFAkNVI7oACgkQm/Q3NoilZ467uACffdE79XLZ4cyT6t+A8JAr10ih
eg4Anil6XuL6WkWqRn/JuLtVzlW//B/l
=LanL
-END PGP SIGNATURE-


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: lmtp delivery to cyrus store over unix socket requires /etc/hosts.allow entry. why?

2005-10-18 Thread Hajimu UMEMOTO
Hi,

> On Tue, 18 Oct 2005 09:32:58 -0700
> OpenMacNews <[EMAIL PROTECTED]> said:

openmacnews> QUESTION: why is a hosts.allow entry required in the 1st
openmacnews> place for lmtpunix transport over a UNIXsocket?

I don't know about MacOS X, but there was similar bug in FreeBSD.  So,
our port still applies following patch to avoid the bug in old version
of FreeBSD:

Index: master/service-thread.c
diff -u master/service-thread.c.orig master/service-thread.c
--- master/service-thread.c.origWed Jan 22 22:52:36 2003
+++ master/service-thread.c Wed Jan 22 23:09:52 2003
@@ -99,6 +99,9 @@
 struct sockaddr_storage sin;
 socklen_t len = sizeof(sin);
 
+/* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
+sin.ss_family = AF_UNIX;
+
 /* is this a connection from the local host? */
 if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {


openmacnews> and, why "0.0.0.0" for localhost, rather than 127.0.0.1
openmacnews> or 'localhost' in hosts.allow?

UNIX domain socket is not localhost.  Perhaps, getpeername() doesn't
fill sockaddr against UNIX domain socket.  So, it matches with
0.0.0.0.

Sincerely,

--
Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan
[EMAIL PROTECTED]  [EMAIL PROTECTED],jp.}FreeBSD.org
http://www.imasy.org/~ume/

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: lmtp delivery to cyrus store over unix socket requires /etc/hosts.allow entry. why?

2005-10-18 Thread OpenMacNews
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160

hi,

Hajimu UMEMOTO wrote:

> I don't know about MacOS X, but there was similar bug in FreeBSD.  So,
> our port still applies following patch to avoid the bug in old version
> of FreeBSD:
> 
> Index: master/service-thread.c
> diff -u master/service-thread.c.orig master/service-thread.c
> --- master/service-thread.c.orig  Wed Jan 22 22:52:36 2003
> +++ master/service-thread.c   Wed Jan 22 23:09:52 2003
> @@ -99,6 +99,9 @@
>  struct sockaddr_storage sin;
>  socklen_t len = sizeof(sin);
>  
> +/* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
> +sin.ss_family = AF_UNIX;
> +
>  /* is this a connection from the local host? */
>  if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
>   if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {


i tried making this _specific_ change to my cyrus code, but, to no avail ...

delivery _still_ requires the presence of:

lmtpunix : 0.0.0.0

in /etc/hosts.allow

i think i'll file this as a bug ...

cheers,

richard
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (Darwin)

iEYEAREDAAYFAkNVP9kACgkQm/Q3NoilZ44kZACfbwxXGKd0LY2qt9GvrXay7QI2
gqsAn1cgRBVODBfpryW3bN/MK87vW38/
=KXHp
-END PGP SIGNATURE-


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: lmtp delivery to cyrus store over unix socket requires /etc/hosts.allow entry. why?

2005-10-18 Thread Hajimu UMEMOTO
Hi,

> On Tue, 18 Oct 2005 11:32:58 -0700
> OpenMacNews <[EMAIL PROTECTED]> said:

openmacnews> i tried making this _specific_ change to my cyrus code, but, to no 
avail ...
openmacnews> delivery _still_ requires the presence of:
openmacnews>lmtpunix : 0.0.0.0
openmacnews> in /etc/hosts.allow

Oops, there is same chunk in master/service.c, and it is used in
usual.

Sincerely,

--
Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan
[EMAIL PROTECTED]  [EMAIL PROTECTED],jp.}FreeBSD.org
http://www.imasy.org/~ume/

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: lmtp delivery to cyrus store over unix socket requires /etc/hosts.allow entry. why?

2005-10-18 Thread OpenMacNews
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160

hi again,

> Oops, there is same chunk in master/service.c, and it is used in
> usual.


ok. making changes to BOTH files seems to workaround the problem ...

i NO LONGER NEED the /etc/hosts.allow entry ...

i'll enter the info to the bug (#2729) for someone on the dev team to consider.

thx! & cheers,

richard
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (Darwin)

iEYEAREDAAYFAkNVTEoACgkQm/Q3NoilZ46P/gCeL42y0J68ph6tseLqpmOUKX0s
uasAnjwN75KUvvhHlVSRPfHYR1AESZ6f
=emok
-END PGP SIGNATURE-


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html