Re: Why are only admins allowed to AUTH to lmtpd?

2003-01-04 Thread Voutsinas Nikos
:)

I always thought that what was mentioned is not primary a cyrus issue, 
but given  the opportunity from Kevin's idea here is an extension

What Kevin said is also possible with sendmail. (MTA passes the authid 
of the sender to the lmtpd). In 8.12.2 this was under _FFR code, I dont 
know the current status. (Hey sendmail we are you ??). Actually this 
concept is applicable when the MTA plays the role of an MSA, where each 
intranet user is forced to follow the SMTP authentication procedure.


  non-local user  local/authenticated user
   or
   other MTA |
||
||

   MTA  MSA
||
||

--  MAIL FROM:lala _@_ noc.edunet.gr 

| AUTH=nvoutsin
|  or
 AUTH=nvoutsin@realm
  lmtpd

MSA:intranet users should declare the MSA server in thier
clients as outgoing mail server. The MSA server according to 
RFC(???)(can't remember...) accepts user's submissions if and only
if user is succefully authenticated (in ldap :) ). Sendmail passes the 
authid (auth author or authen... ) to lmtpd as parameter on the mail 
from: command.

MTA: This is nothing else than the MX server.

Notes:
1) LMTP connections on the lmtpd are only allowed from the MSA, and MTA
2) MTA rejects each mail/connection if : a)the mail from: command 
contains one of the localmail domains b) originated from the local 
address space

The above described schema/architecture makes posting control 
possible.(No need for anyone p)

http://pacific.edunet.uoa.gr/
http://pacific.edunet.uoa.gr/help/mail/


Kevin P. Fleming wrote:
I have modified my configuration here so that now my MTA (Exim 4.12) 
uses RFC2554 authentication to identify itself to lmtpd. This was done 
so that Exim could supply AUTH=local part on the MAIL FROM: line, thus 
eliminating the need to add anyone p ACLs to subfolders in order to 
allow direct subfolder delivery.

This is all working fine, except that I had to add my dummy 
authentication user (which I create solely for Exim to authenticate 
itself to lmtpd with) to the admins entry in /etc/imapd.conf. I had to 
do this because lmptd specifically allows only admins to authenticate.

Is there any particular reason why? It's not a big deal for me, but when 
I document this configuration for other people I'm sure this will raise 
some eyebrows.






Re: Why are only admins allowed to AUTH to lmtpd?

2003-01-04 Thread Voutsinas Nikos


Voutsinas Nikos wrote:

:)

I always thought that what was mentioned is not primary a cyrus issue, 
but given  the opportunity from Kevin's idea here is an extension

What Kevin said is also possible with sendmail. (MTA passes the authid 
of the sender to the lmtpd). In 8.12.2 this was under _FFR code, I dont 
know the current status. (Hey sendmail we are you ??). Actually this 
concept is applicable when the MTA plays the role of an MSA, where each 
intranet user is forced to follow the SMTP authentication procedure.


  non-local user  local/authenticated user
   or
   other MTA |
||
||

   MTA  MSA
||
||

--  MAIL FROM:lala _@_ noc.edunet.gr
| AUTH=nvoutsin
|  or
 AUTH=nvoutsin@realm
  lmtpd

MSA:intranet users should declare the MSA server in thier
clients as outgoing mail server. The MSA server according to 
RFC(???)(can't remember...) accepts user's submissions if and only
if user is succefully authenticated (in ldap :) ). Sendmail passes the 
authid (auth author or authen... ) to lmtpd as parameter on the mail 
from: command.

MTA: This is nothing else than the MX server.

Notes:
1) LMTP connections on the lmtpd are only allowed from the MSA, and MTA
2) MTA rejects each mail/connection if : a)the mail from: command 
contains one of the localmail domains b) originated from the local 
address space

b) NOT originated from the local address space




sieve scripts not work

2003-01-04 Thread [EMAIL PROTECTED]
Hello, I'm working with cyrus imapd and I need  to implement vacation 
mails. I  have probed with sieve, everything seems to work, but when I 
put the scripts nothing happens. This is one of the
scripts that I probed (v2 script) .

  require [reject,fileinto];
  if address :is :all From [EMAIL PROTECTED] {
  reject testing;
 }


telnet localhost 2000...
Connected to localhost.
Escape character is '^]'.
IMPLEMENTATION Cyrus timsieved v1.0.0
SASL PLAIN LOGIN DIGEST-MD5 CRAM-MD5
SIEVE fileinto reject envelope vacation imapflags notify 
subaddress regex
OK


[root@V root]# installsieve -l -u cyrus localhost
Please enter your password:
vacation.sieve
prueba.sieve
v2.sieve  - active script
prueba

My imapd.conf  file:
configdirectory: /var/imap
partition-default: /var/spool/imap
admins: cyrus
allowanonymouslogin: no
admins: cyrus
sasl_pwcheck_method: sasldb
sieveusehomedir: false
sendmail: /usr/lib/sendmail

Any sugestion?

thanks in advance.
Carlos






Re: CVS 2.2 no longer compilable under Red Hat 7.3?

2003-01-04 Thread Ken Murchison
If you've just done a CVS update and expect to compile, its not going to
happen (too many things have changed).  Try:

make distclean
rm configure
sh SMakefile
./configure ...
make


Jonathan Marsden wrote:
 
 Something in CVS 2.2 changed since 26 Sept 2002 that apparently makes
 for trouble compiling it under Red Hat 7.3.
 
 (1) The first issue is probably just the a lack of a #include
 mkgmtime.h before using a struct tm in lib/mkgmtime.c (make output
 at end of message).  There is a similar omission (of #include
 gmtoff.h) in lib/gmtoff_tm.c as well.  Why wouldn't a .c file
 include its own .h file?  Must be an 'in progress' minor buglet.
 
 (2) Hacking those in gets me slightly further, but then I get
 
 gcc -c -I..  -I/usr/include/et -I/usr/local/include -I/usr/include  
-DHAVE_CONFIG_H -I. -I. -Wall -O2 -march=i386 -mcpu=i686 -fPIC \
 cyrusdb.c
 cyrusdb.c: In function `cyrusdb_init':
 cyrusdb.c:77: `FNAME_DBDIR' undeclared (first use in this function)
 cyrusdb.c:77: (Each undeclared identifier is reported only once
 cyrusdb.c:77: for each function it appears in.)
 make: *** [cyrusdb.o] Error 1
 
 which I have not (yet?) figured out.  FNAME_DBDIR is defined in
 acconfig.h but nowhere else.  Hacking its value (of /db) into the
 end of lib/cyrusdb.h gets me further... but I know that's a bad
 approach!  Do I have an underlying autoconf or configure problem?
 
 (3) Even then, I soon get something about MASTER_PIDFILE in master.c ...
 
 Is CVS for 2.2 currently intentionally unusable?  If so, when is it
 likely to become reasonably safe to grab and use once more?
 
 Or, am I just being (even) more dense than usual?  If so, help getting
 the current CVS tree to compile would be welcomed :-)
 
 Thanks,
 
 Jonathan
 
 PS.  There is also an issue with the search for libdes failing if I
 try to compile with Kerberos support, which I think is an older issue
 that has returned to haunt me?  RH 7.3 lacks a libdes.a library, the
 needed functions are in libdes425.a instead.  Looks like the configure
 checks got stricter, and now break on RH 7.3, though in September they
 worked OK?
 
 
 make[1]: Entering directory `/home/jonathan/cyrus-imapd-2.2/lib'
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 acl.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 assert.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 bsearch.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 charset.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 glob.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 retry.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 util.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 libcyr_cfg.c
 gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
 mkgmtime.c
 mkgmtime.c: In function `tmcomp':
 mkgmtime.c:102: dereferencing pointer to incomplete type
 mkgmtime.c:102: dereferencing pointer to incomplete type
 mkgmtime.c:103: dereferencing pointer to incomplete type
 mkgmtime.c:103: dereferencing pointer to incomplete type
 mkgmtime.c:104: dereferencing pointer to incomplete type
 mkgmtime.c:104: dereferencing pointer to incomplete type
 mkgmtime.c:105: dereferencing pointer to incomplete type
 mkgmtime.c:105: dereferencing pointer to incomplete type
 mkgmtime.c:106: dereferencing pointer to incomplete type
 mkgmtime.c:106: dereferencing pointer to incomplete type
 mkgmtime.c:107: dereferencing pointer to incomplete type
 mkgmtime.c:107: dereferencing pointer to incomplete type
 mkgmtime.c:100: warning: `result' might be used uninitialized in this function
 mkgmtime.c: In function `mkgmtime':
 mkgmtime.c:119: storage size of `yourtm' isn't known
 mkgmtime.c:121: dereferencing pointer to incomplete type
 mkgmtime.c:137: warning: implicit declaration of function `gmtime'
 mkgmtime.c:137: warning: assignment makes pointer from integer without a cast
 mkgmtime.c:119: warning: unused variable `yourtm'
 mkgmtime.c:117: warning: `saved_seconds' might be used uninitialized in this function
 make[1]: *** [mkgmtime.o] Error 1
 make[1]: Leaving directory `/home/jonathan/cyrus-imapd-2.2/lib'
 make: *** [all] Error 1

-- 
Kenneth Murchison Oceana Matrix Ltd.
Software Engineer 21 Princeton Place
716-662-8973 x26  Orchard Park, NY 14127
--PGP Public Key--http://www.oceana.com/~ken/ksm.pgp



Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread marc . bigler
Hello,

I am trying to get Cyrus IMAPD 2.1.11 on Solaris 9 to compile with support
for UCD-SNMP, I use version 4.2.6 of UCD-SNMP. The problem is that it
doesn't detect UCD-SNMP because of the following error in the config.log:

configure:6064: checking for sprint_objid in -lsnmp
configure:6083: gcc -o conftest -Wall -g -O2 -I/opt/sfw/include/db3
-I/usr/local/include -I/opt/openssl/include -I/opt/ucdsnmp/include -L/op
t/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib -R/usr/local/lib
-R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib -L/opt/openssl/l
ib -L/opt/ucdsnmp/lib conftest.c -lsnmp -lresolv -lsocket -lnsl  -ldl
-ldb-3.1  -lssl -lcrypto 15
Undefined   first referenced
 symbol in file
kstat_close /opt/ONucdsnmp/lib/libsnmp.so
kstat_lookup/opt/ONucdsnmp/lib/libsnmp.so
kstat_read  /opt/ONucdsnmp/lib/libsnmp.so
kstat_open  /opt/ONucdsnmp/lib/libsnmp.so
kstat_data_lookup   /opt/ONucdsnmp/lib/libsnmp.so
ld: fatal: Symbol referencing errors. No output written to conftest
collect2: ld returned 1 exit status
configure: failed program was:
#line 6072 configure
#include confdefs.h
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply.  */
char sprint_objid();

int main() {
sprint_objid()
; return 0; }
configure:6141: checking UCD SNMP libraries

As you can see I have UCD-SNMP installed in /opt/ucdsnmp, but that doesn't
seem to be the problem, looks like I am missing something which has to do
with kstat. Does someone have any idea ?

PS: Sorry if you see this mail twice, I am not sure if the first one ever
arrived to the mailing list.

Regards
Marc






Re: Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread Scott Smith
do a man -k for one of those functions (kstat_read for example) and if
there's a man page for it, it should tell you what libraries you need to
link against, which should fix it.

I don't have access to a Solaris machine right now so unfortunately that's
the best help I can offer, but that should get yuou going.

Scott

--
[EMAIL PROTECTED] ``Chews?  I'll take charleston
http://storm.lackluster.net/~scott/ chews for SIXTEEN MILLIONS!!''

On Sat, 4 Jan 2003 [EMAIL PROTECTED] wrote:

 Hello,

 I am trying to get Cyrus IMAPD 2.1.11 on Solaris 9 to compile with support
 for UCD-SNMP, I use version 4.2.6 of UCD-SNMP. The problem is that it
 doesn't detect UCD-SNMP because of the following error in the config.log:

 configure:6064: checking for sprint_objid in -lsnmp
 configure:6083: gcc -o conftest -Wall -g -O2 -I/opt/sfw/include/db3
 -I/usr/local/include -I/opt/openssl/include -I/opt/ucdsnmp/include -L/op
 t/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib -R/usr/local/lib
 -R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib -L/opt/openssl/l
 ib -L/opt/ucdsnmp/lib conftest.c -lsnmp -lresolv -lsocket -lnsl  -ldl
 -ldb-3.1  -lssl -lcrypto 15
 Undefined   first referenced
  symbol in file
 kstat_close /opt/ONucdsnmp/lib/libsnmp.so
 kstat_lookup/opt/ONucdsnmp/lib/libsnmp.so
 kstat_read  /opt/ONucdsnmp/lib/libsnmp.so
 kstat_open  /opt/ONucdsnmp/lib/libsnmp.so
 kstat_data_lookup   /opt/ONucdsnmp/lib/libsnmp.so
 ld: fatal: Symbol referencing errors. No output written to conftest
 collect2: ld returned 1 exit status
 configure: failed program was:
 #line 6072 configure
 #include confdefs.h
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 builtin and then its argument prototype would still apply.  */
 char sprint_objid();

 int main() {
 sprint_objid()
 ; return 0; }
 configure:6141: checking UCD SNMP libraries

 As you can see I have UCD-SNMP installed in /opt/ucdsnmp, but that doesn't
 seem to be the problem, looks like I am missing something which has to do
 with kstat. Does someone have any idea ?

 PS: Sorry if you see this mail twice, I am not sure if the first one ever
 arrived to the mailing list.

 Regards
 Marc








Re: Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread marc . bigler

do a man -k for one of those functions (kstat_read for example) and if
there's a man page for it, it should tell you what libraries you need to
link against, which should fix it.

I've just did that and discovered that there is actually a library called
libkstat residing in /usr/lib on Solaris 9. Now against what do I need to
link this library, against UCD-SNMP or Cyrus IMAPD ? Also another question,
what's the easiest way to link the libkstat library ?

Many thanks

Regards


 Hello,

 I am trying to get Cyrus IMAPD 2.1.11 on Solaris 9 to compile with
support
 for UCD-SNMP, I use version 4.2.6 of UCD-SNMP. The problem is that it
 doesn't detect UCD-SNMP because of the following error in the config.log:

 configure:6064: checking for sprint_objid in -lsnmp
 configure:6083: gcc -o conftest -Wall -g -O2 -I/opt/sfw/include/db3
 -I/usr/local/include -I/opt/openssl/include -I/opt/ucdsnmp/include -L/op
 t/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib -R/usr/local/lib
 -R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib -L/opt/openssl/l
 ib -L/opt/ucdsnmp/lib conftest.c -lsnmp -lresolv -lsocket -lnsl  -ldl
 -ldb-3.1  -lssl -lcrypto 15
 Undefined   first referenced
  symbol in file
 kstat_close /opt/ONucdsnmp/lib/libsnmp.so
 kstat_lookup/opt/ONucdsnmp/lib/libsnmp.so
 kstat_read  /opt/ONucdsnmp/lib/libsnmp.so
 kstat_open  /opt/ONucdsnmp/lib/libsnmp.so
 kstat_data_lookup   /opt/ONucdsnmp/lib/libsnmp.so
 ld: fatal: Symbol referencing errors. No output written to conftest
 collect2: ld returned 1 exit status
 configure: failed program was:
 #line 6072 configure
 #include confdefs.h
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 builtin and then its argument prototype would still apply.  */
 char sprint_objid();

 int main() {
 sprint_objid()
 ; return 0; }
 configure:6141: checking UCD SNMP libraries

 As you can see I have UCD-SNMP installed in /opt/ucdsnmp, but that
doesn't
 seem to be the problem, looks like I am missing something which has to do
 with kstat. Does someone have any idea ?

 PS: Sorry if you see this mail twice, I am not sure if the first one ever
 arrived to the mailing list.

 Regards
 Marc













Re: Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread Igor Brezac

Try ('make distclean' first)

LIBS=-lkstat ./configure 

The real fix is to build self-contained ucd-snmp libs.

master.c will not compile if ucd-snmpd package is built with libwrap.
If this is the case, I can email you my patch.

Hope this helps.

-Igor

On Sat, 4 Jan 2003 [EMAIL PROTECTED] wrote:


 do a man -k for one of those functions (kstat_read for example) and if
 there's a man page for it, it should tell you what libraries you need to
 link against, which should fix it.

 I've just did that and discovered that there is actually a library called
 libkstat residing in /usr/lib on Solaris 9. Now against what do I need to
 link this library, against UCD-SNMP or Cyrus IMAPD ? Also another question,
 what's the easiest way to link the libkstat library ?

 Many thanks

 Regards


  Hello,
 
  I am trying to get Cyrus IMAPD 2.1.11 on Solaris 9 to compile with
 support
  for UCD-SNMP, I use version 4.2.6 of UCD-SNMP. The problem is that it
  doesn't detect UCD-SNMP because of the following error in the config.log:
 
  configure:6064: checking for sprint_objid in -lsnmp
  configure:6083: gcc -o conftest -Wall -g -O2 -I/opt/sfw/include/db3
  -I/usr/local/include -I/opt/openssl/include -I/opt/ucdsnmp/include -L/op
  t/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib -R/usr/local/lib
  -R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib -L/opt/openssl/l
  ib -L/opt/ucdsnmp/lib conftest.c -lsnmp -lresolv -lsocket -lnsl  -ldl
  -ldb-3.1  -lssl -lcrypto 15
  Undefined   first referenced
   symbol in file
  kstat_close /opt/ONucdsnmp/lib/libsnmp.so
  kstat_lookup/opt/ONucdsnmp/lib/libsnmp.so
  kstat_read  /opt/ONucdsnmp/lib/libsnmp.so
  kstat_open  /opt/ONucdsnmp/lib/libsnmp.so
  kstat_data_lookup   /opt/ONucdsnmp/lib/libsnmp.so
  ld: fatal: Symbol referencing errors. No output written to conftest
  collect2: ld returned 1 exit status
  configure: failed program was:
  #line 6072 configure
  #include confdefs.h
  /* Override any gcc2 internal prototype to avoid an error.  */
  /* We use char because int might match the return type of a gcc2
  builtin and then its argument prototype would still apply.  */
  char sprint_objid();
 
  int main() {
  sprint_objid()
  ; return 0; }
  configure:6141: checking UCD SNMP libraries
 
  As you can see I have UCD-SNMP installed in /opt/ucdsnmp, but that
 doesn't
  seem to be the problem, looks like I am missing something which has to do
  with kstat. Does someone have any idea ?
 
  PS: Sorry if you see this mail twice, I am not sure if the first one ever
  arrived to the mailing list.
 
  Regards
  Marc
 
 
 
 








-- 
Igor




Question about reconstruct and main mailbox

2003-01-04 Thread Doug
Hi!
I'm looking at upgrading from a Cyrus 1.5 to a more current Cyrus Imap, and 
have noticed that the 'reconstruct -m' function is not implemented. I think
we know that things happen.

Is there any way in version 2.1.* to build a new 'mailboxes' database if it 
gets corrupted? 

Thanks!
Doug Fajardo



Re: Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread marc . bigler

Try ('make distclean' first)

LIBS=-lkstat ./configure 

The real fix is to build self-contained ucd-snmp libs.

master.c will not compile if ucd-snmpd package is built with libwrap.
If this is the case, I can email you my patch.

Hope this helps.

That helped for the configure but now I get the following error when
issuing gmake all:

gcc -L/opt/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib
-R/usr/local/lib -R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib
-L/opt/openssl/lib -L/opt/ucdsnmp/lib -Wall -g -O2  -o master master.o
masterconf.o cyrusMasterMIB.o -lucdagent -lucdmibs -lsnmp -ldl  -ldb-3.1
-lkstat -lssl -lcrypto -lresolv -lsocket -lnsl  ../et/libcom_err.a
Undefined   first referenced
 symbol in file
kvm_read/opt/ONucdsnmp/lib/libucdagent.so
kvm_getu/opt/ONucdsnmp/lib/libucdmibs.so
kvm_open/opt/ONucdsnmp/lib/libucdagent.so
nlist   /opt/ONucdsnmp/lib/libucdmibs.so
kvm_setproc /opt/ONucdsnmp/lib/libucdmibs.so
kvm_nextproc/opt/ONucdsnmp/lib/libucdmibs.so
ld: fatal: Symbol referencing errors. No output written to master
collect2: ld returned 1 exit status
gmake[1]: *** [master] Error 1
gmake[1]: Leaving directory `/opt/source/cyrus-imapd-2.1.11/master'
gmake: *** [all] Error 1
bash-2.05$ echo $LIBS
-lkstat


I think the problem is really in my UCD-SNMP library, do you maybe know how
I can fix my UCD-SNMP libraries ?

Regards
Marc




[PATCH] imapd segfaults after broken pipe

2003-01-04 Thread Gerd v. Egidy
Hi,

since some popular client (we know which one ;) sometimes just kicks a 
connection instead of gracefully closing it we have a decent number of broken 
pipe signals sent to our imapds.

since our upgrade from 2.0 to 2.1.11 this was often followed by a segfault of 
the process who just got the broken pipe.

since I don't like to run programs which segfault I did a little debugging:

If the broken pipe is encountered during write (prot_flush) the process 
doesn't immediately close the connection but finishes the current command; 
s-cnt stays 0 and s-ptr isn't set to the buffer start.

If prot_putc is called later on (during finishing the current command output), 
it decreases s-cnt to -1 and writes after the malloced buffer. The #defined 
version of prot_putc isn't guarded by an assertion to defend this (it took me 
a decent debugging session to find out about the #defined version...).

If there are enough calls to prot_putc you'll get a nice segfault.

The attached patch fixes this.

While I was at it I took a look at the other prot_ functions. I think at least 
prot_ungetc should be guarded against buffer overflows too.

Kind regards,

Gerd

diff -r -u cyrus-imapd-2.1.11.orig/lib/prot.c cyrus-imapd-2.1.11/lib/prot.c
--- cyrus-imapd-2.1.11.orig/lib/prot.c	Mon Oct 21 22:44:22 2002
+++ cyrus-imapd-2.1.11/lib/prot.c	Sat Jan  4 23:19:56 2003
@@ -793,6 +793,7 @@
 int prot_putc(int c, struct protstream *s)
 {
 assert(s-write);
+if(s-error || s-eof) return EOF;
 assert(s-cnt  0);
 
 *s-ptr++ = c;
diff -r -u cyrus-imapd-2.1.11.orig/lib/prot.h cyrus-imapd-2.1.11/lib/prot.h
--- cyrus-imapd-2.1.11.orig/lib/prot.h	Tue Apr  2 05:59:04 2002
+++ cyrus-imapd-2.1.11/lib/prot.h	Sat Jan  4 23:21:55 2003
@@ -104,7 +104,7 @@
 
 #define prot_getc(s) ((s)-cnt--  0 ? (int)*(s)-ptr++ : prot_fill(s))
 #define prot_ungetc(c, s) ((s)-cnt++, (*--(s)-ptr = (c)))
-#define prot_putc(c, s) ((*(s)-ptr++ = (c)), --(s)-cnt == 0 ? prot_flush(s) : 0)
+#define prot_putc(c, s) (!((s)-error || (s)-eof) ? ((*(s)-ptr++ = (c)), --(s)-cnt == 0 ? prot_flush(s) : 0) : 0)
 #define prot_BLOCK(s) ((s)-dontblock = 0)
 #define prot_NONBLOCK(s) ((s)-dontblock = 1)
 



Re: Including UCD-SNMP support in Cyrus IMAPD

2003-01-04 Thread Igor Brezac

On Sat, 4 Jan 2003 [EMAIL PROTECTED] wrote:


 Try ('make distclean' first)

 LIBS=-lkstat ./configure 

 The real fix is to build self-contained ucd-snmp libs.

 master.c will not compile if ucd-snmpd package is built with libwrap.
 If this is the case, I can email you my patch.

 Hope this helps.

 That helped for the configure but now I get the following error when
 issuing gmake all:

 gcc -L/opt/sfw/lib -R/opt/sfw/lib -L/opt/sfw/lib -L/usr/local/lib
 -R/usr/local/lib -R/opt/sfw/lib:/opt/openssl/lib:/opt/ucdsnmp/lib
 -L/opt/openssl/lib -L/opt/ucdsnmp/lib -Wall -g -O2  -o master master.o
 masterconf.o cyrusMasterMIB.o -lucdagent -lucdmibs -lsnmp -ldl  -ldb-3.1
 -lkstat -lssl -lcrypto -lresolv -lsocket -lnsl  ../et/libcom_err.a
 Undefined   first referenced
  symbol in file
 kvm_read/opt/ONucdsnmp/lib/libucdagent.so
 kvm_getu/opt/ONucdsnmp/lib/libucdmibs.so
 kvm_open/opt/ONucdsnmp/lib/libucdagent.so
 nlist   /opt/ONucdsnmp/lib/libucdmibs.so
 kvm_setproc /opt/ONucdsnmp/lib/libucdmibs.so
 kvm_nextproc/opt/ONucdsnmp/lib/libucdmibs.so

Try,

LIBS=-lkstat -lkvm ./configure ...



 I think the problem is really in my UCD-SNMP library, do you maybe know how
 I can fix my UCD-SNMP libraries ?


Your build should work fine.  You just need to figure out your ucd-snmp
lib dependencies and include those libraries in the cyrus build.

-- 
Igor




{Resend} Failed opening 'D.B.php' (fwd)

2003-01-04 Thread Yann Debonne

I sent this to the list a couple of weeks ago, but never got a response. 
I'm still having the same issue and can't get past it.  I thought to resend 
this in case this email was ignored during the holiday bustle.

Thanks, y

 Forwarded Message 
Date: Wednesday, December 25, 2002 5:16 PM -0800
From: Yann Debonne [EMAIL PROTECTED]
To: Cyrus-Talk [EMAIL PROTECTED]
Subject: Failed opening 'D.B.php'


RH-7.3
php-v4.2.2
cyrus-v2.1.9
web-cyradm-v0.5.1

Hi,

Upon logging into web-cyradm I get the following error:

--

Warning: Failed opening 'DB.php' for inclusion
(include_path='.:/usr/local/lib/php/PEAR') in
/home/www/web-cyradm/auth.inc.php on line 12

Fatal error: Undefined class name 'db' in /home/www/web-cyradm/auth.inc.php
on line 16

--

Currently in my /etc/php.ini:

include_path = .:/usr/local/lib/php/PEAR

I've tried all these options individually:

include_path = .:/usr/local/lib/php (using this option, web-cyradm can't
find PEAR in it's sub-directory) include_path =
.:/usr/local/lib/php/PEAR:/usr/local/lib/php
include_path = .:/usr/local/lib/php:/usr/local/lib/php/PEAR

I even tried a symbolic link:

ln -s /usr/local/lib/php/DB.php /usr/local/lib/php/PEAR/DB.php

and while this rids the error message, all I get is a blank white page upon
login.  And I do have register_globals set to on.

Any ideas?

Thanks,

Yann

P.S.  Merry Christmas

-- End Forwarded Message --




Re: saslauthd performance anxiety

2003-01-04 Thread Lawrence Greenfield
--On Wednesday, January 01, 2003 9:21 PM -0500 Igor Brezac [EMAIL PROTECTED] 
wrote:
[...]
If you are on Solaris, I highly recommend the doors IPC method over the
UNIX socket method, since we began to see very bizarre problems under
load.


You might run into problems if you use ldap api and doors, ldap module
may not be thread safe.  In addition, thread safe ldap libs need to be
used when saslauthd-doors is built.

I'd like to enhance saslauthd to use loopback interface at some point,
this will solve the problem with unix sockets and you do not need to worry
about thread safety.


Solaris doors are really the ideal form of IPC for saslauthd. They have the 
problem that code has to be thread-safe and thus it isn't for everybody, 
but for high performance sites it really is a good deal.

Using the loopback interface will probably cause more people to raise 
security flags (as it is, people seem to worry about saslauthd and Unix 
sockets, which have much more obvious access control).

Larry



Re: Sendmail/Plussed Folders --WAS-- Re: [PATCH][CVS IMAPd 2.1]lmtp_downcase_rcpt implementation (2)

2003-01-04 Thread Lawrence Greenfield
--On Thursday, December 26, 2002 11:55 AM -0500 Scott Adkins 
[EMAIL PROTECTED] wrote:
[... sendmail +detail delivery ...]
Has anyone else had this problem (plussed folder emails sent to sendmail
that is configured to talk to LMTP directly, either my UNIX domain socket
or my TCP socket)?  If so, how was it resolved?


I noticed this problem some time ago and I think some of my input led to 
the FEATURE(`preserve_local_plus_detail') but I also remember it not 
working correctly with local LMTP delivery agents and the default 
configuration.

It's possible to work around this purely in the M4 macros (we've done that) 
but our sendmail configuration is fairly complicated (dealiing with our 
LDAP directory, fuzzy matching, and LMTP over TCP with LMTP AUTH) spread 
into multiple M4 files.

If you want, I can make this available to anyone who is interested. I can't 
remember the specific workaround and the M4 files aren't easily available 
to me right now.

Larry