Re: Problems with a crashed BDB

2006-08-30 Thread Simon Matter
> Hi,
>
> I have a big problem with my Cyrus and my BDB here. I'm using Cyrus
> 2.2.12 with BDB 4.2.52.
>
> When I'm starting Cyrus, I get this error in my imapd.log:
> ---
> Aug 30 22:38:44 alpha1 master[19525]: setrlimit: Unable to set file
> descriptors limit to -1: Operation not permitted
> Aug 30 22:38:44 alpha1 master[19525]: retrying with 1024 (current max)
> Aug 30 22:38:44 alpha1 master[19525]: process started
> Aug 30 22:38:44 alpha1 master[19526]: about to exec
> /opt/cyrus/cyrus/bin/ctl_cyrusdb
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: Recovery
> function for LSN 8 7404244 failed on backward pass
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: PANIC: Is a
> directory
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR: critical database
> situation
> Aug 30 22:38:44 alpha1 master[19525]: process 19526 exited, status 75
> Aug 30 22:38:44 alpha1 master[19525]: ready for work
> Aug 30 22:38:44 alpha1 master[19527]: about to exec
> /opt/cyrus/cyrus/bin/ctl_cyrusdb
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR db4: PANIC: fatal
> region error detected; run recovery
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR: critical database
> situation
> Aug 30 22:38:44 alpha1 master[19525]: process 19527 exited, status 75
> 
>
> So I tried a reconstruct -m and a reconstruct -r user/username on a
> specific mailbox and I'm getting this:
> 
> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR db4: PANIC: fatal
> region error detected; run recovery
> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR: critical database
> situation
> 
>
> Running "ctl_cyrusdb -r" results in a:
> 
> ug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: Recovery function
> for LSN 8 7404244 failed on backward pass
> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: PANIC: Is a
> directory
> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR: critical database
> situation
> 
>
> Damn BDB, but HOW CAN I GET MY MAILS BACK? I'm at one's wits' end, so
> any help would be very great because I have some very important mails
> there!

Two things:

1) I'm usually not wasting my time anymore with BDB problems. Skiplist
does work so fine with cyrus-imapd that I see no reason to stay with BDB.
At least in my RPM packages I switched all databases to skiplist as a
default and I never heard anyone complaining about it.

2) I have the following code fragment in my db scripts to fix broken BDB
files. Maybe it can help you.

Regards,
Simon

==
# make sure our Berkeley databases are in a sane state
# wait for db_checkpoint to end successfully or kill it after a timeout
db_checkpoint -v -1 -h $imap_prefix/db &
DB_CHECK_PID=$!
CNT=0
while [ $CNT -lt 60 ]; do
  if ! kill -0 $DB_CHECK_PID > /dev/null 2>&1; then
break
  fi
  sleep 1
  let CNT+=1
done
if kill -0 $DB_CHECK_PID > /dev/null 2>&1; then
  kill -USR1 $DB_CHECK_PID > /dev/null 2>&1
  sleep 1
  kill -KILL $DB_CHECK_PID > /dev/null 2>&1
  wait $DB_CHECK_PID > /dev/null 2>&1
fi

# do a normal recovery
db_recover -v -h $imap_prefix/db
RETVAL=$?
if [ $RETVAL -ne 0 ]; then
  # try a catastrophic recovery instead of normal recovery
  db_recover -v -c -h $imap_prefix/db
  RETVAL=$?
  ERRVAL=$[ $ERRVAL + $RETVAL ]
  if [ $RETVAL -ne 0 ]; then
echo "ERROR: catastrophic recovery of Berkeley databases failed"
  fi
fi
===

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: Problems with a crashed BDB

2006-08-30 Thread Michael Obster
Hi,

uff. You are right. I haven't remember that they are saved there. So the
most important thing is present.
I will try to repair the metadata.

Big thanks!

Regards,
Michael

Bron Gondwana schrieb:
> Luckily for you, you haven't lost any actual emails, just meta
> data.  The emails are still on the disk as individual files.
> Do you know which specific DB file is corrupted?
> 
> You can probably nuke deliver.db at start up (we do).  Worst
> case, just move your mailboxes.db somewhere else and run
> reconstruct on every username.  Pretty horrible to have to go
> to that extent.
> 
> Emails should be in /var/spool/imap or equivalent location on
> your setup.  The layout is {letter}/user/{username}.  We keep
> our mail in /var/cyrus/{instance name} so my emails are actually
> in:
> 
> /var/cyrus/imap5/data2/b/user/brong - look for the 
> 'partition-default:' entry in your imapd.conf to find the
> correct path.
> 
> Individual messages are called '{uid}.', so the first message is
> '1.', etc.
> 
> Regards,
> 
> Bron.
> 
> On Wed, Aug 30, 2006 at 10:45:18PM +0200, Michael Obster wrote:
>> Hi,
>>
>> I have a big problem with my Cyrus and my BDB here. I'm using Cyrus
>> 2.2.12 with BDB 4.2.52.
>>
>> When I'm starting Cyrus, I get this error in my imapd.log:
>> ---
>> Aug 30 22:38:44 alpha1 master[19525]: setrlimit: Unable to set file
>> descriptors limit to -1: Operation not permitted
>> Aug 30 22:38:44 alpha1 master[19525]: retrying with 1024 (current max)
>> Aug 30 22:38:44 alpha1 master[19525]: process started
>> Aug 30 22:38:44 alpha1 master[19526]: about to exec
>> /opt/cyrus/cyrus/bin/ctl_cyrusdb
>> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: Recovery
>> function for LSN 8 7404244 failed on backward pass
>> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: PANIC: Is a
>> directory
>> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR: critical database
>> situation
>> Aug 30 22:38:44 alpha1 master[19525]: process 19526 exited, status 75
>> Aug 30 22:38:44 alpha1 master[19525]: ready for work
>> Aug 30 22:38:44 alpha1 master[19527]: about to exec
>> /opt/cyrus/cyrus/bin/ctl_cyrusdb
>> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR db4: PANIC: fatal
>> region error detected; run recovery
>> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR: critical database
>> situation
>> Aug 30 22:38:44 alpha1 master[19525]: process 19527 exited, status 75
>> 
>>
>> So I tried a reconstruct -m and a reconstruct -r user/username on a
>> specific mailbox and I'm getting this:
>> 
>> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR db4: PANIC: fatal
>> region error detected; run recovery
>> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR: critical database
>> situation
>> 
>>
>> Running "ctl_cyrusdb -r" results in a:
>> 
>> ug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: Recovery function
>> for LSN 8 7404244 failed on backward pass
>> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: PANIC: Is a
>> directory
>> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR: critical database
>> situation
>> 
>>
>> Damn BDB, but HOW CAN I GET MY MAILS BACK? I'm at one's wits' end, so
>> any help would be very great because I have some very important mails there!
>>
>> Cheers,
>> Michael Obster
>>
>> 
>> 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


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: Problems with a crashed BDB

2006-08-30 Thread Bron Gondwana
Luckily for you, you haven't lost any actual emails, just meta
data.  The emails are still on the disk as individual files.
Do you know which specific DB file is corrupted?

You can probably nuke deliver.db at start up (we do).  Worst
case, just move your mailboxes.db somewhere else and run
reconstruct on every username.  Pretty horrible to have to go
to that extent.

Emails should be in /var/spool/imap or equivalent location on
your setup.  The layout is {letter}/user/{username}.  We keep
our mail in /var/cyrus/{instance name} so my emails are actually
in:

/var/cyrus/imap5/data2/b/user/brong - look for the 
'partition-default:' entry in your imapd.conf to find the
correct path.

Individual messages are called '{uid}.', so the first message is
'1.', etc.

Regards,

Bron.

On Wed, Aug 30, 2006 at 10:45:18PM +0200, Michael Obster wrote:
> Hi,
> 
> I have a big problem with my Cyrus and my BDB here. I'm using Cyrus
> 2.2.12 with BDB 4.2.52.
> 
> When I'm starting Cyrus, I get this error in my imapd.log:
> ---
> Aug 30 22:38:44 alpha1 master[19525]: setrlimit: Unable to set file
> descriptors limit to -1: Operation not permitted
> Aug 30 22:38:44 alpha1 master[19525]: retrying with 1024 (current max)
> Aug 30 22:38:44 alpha1 master[19525]: process started
> Aug 30 22:38:44 alpha1 master[19526]: about to exec
> /opt/cyrus/cyrus/bin/ctl_cyrusdb
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: Recovery
> function for LSN 8 7404244 failed on backward pass
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: PANIC: Is a
> directory
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR: critical database
> situation
> Aug 30 22:38:44 alpha1 master[19525]: process 19526 exited, status 75
> Aug 30 22:38:44 alpha1 master[19525]: ready for work
> Aug 30 22:38:44 alpha1 master[19527]: about to exec
> /opt/cyrus/cyrus/bin/ctl_cyrusdb
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR db4: PANIC: fatal
> region error detected; run recovery
> Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR: critical database
> situation
> Aug 30 22:38:44 alpha1 master[19525]: process 19527 exited, status 75
> 
> 
> So I tried a reconstruct -m and a reconstruct -r user/username on a
> specific mailbox and I'm getting this:
> 
> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR db4: PANIC: fatal
> region error detected; run recovery
> Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR: critical database
> situation
> 
> 
> Running "ctl_cyrusdb -r" results in a:
> 
> ug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: Recovery function
> for LSN 8 7404244 failed on backward pass
> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: PANIC: Is a
> directory
> Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR: critical database
> situation
> 
> 
> Damn BDB, but HOW CAN I GET MY MAILS BACK? I'm at one's wits' end, so
> any help would be very great because I have some very important mails there!
> 
> Cheers,
> Michael Obster
> 
> 
> 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

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


Problems with a crashed BDB

2006-08-30 Thread Michael Obster
Hi,

I have a big problem with my Cyrus and my BDB here. I'm using Cyrus
2.2.12 with BDB 4.2.52.

When I'm starting Cyrus, I get this error in my imapd.log:
---
Aug 30 22:38:44 alpha1 master[19525]: setrlimit: Unable to set file
descriptors limit to -1: Operation not permitted
Aug 30 22:38:44 alpha1 master[19525]: retrying with 1024 (current max)
Aug 30 22:38:44 alpha1 master[19525]: process started
Aug 30 22:38:44 alpha1 master[19526]: about to exec
/opt/cyrus/cyrus/bin/ctl_cyrusdb
Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: Recovery
function for LSN 8 7404244 failed on backward pass
Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR db4: PANIC: Is a
directory
Aug 30 22:38:44 alpha1 ctl_cyrusdb[19526]: DBERROR: critical database
situation
Aug 30 22:38:44 alpha1 master[19525]: process 19526 exited, status 75
Aug 30 22:38:44 alpha1 master[19525]: ready for work
Aug 30 22:38:44 alpha1 master[19527]: about to exec
/opt/cyrus/cyrus/bin/ctl_cyrusdb
Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR db4: PANIC: fatal
region error detected; run recovery
Aug 30 22:38:44 alpha1 ctl_cyrusdb[19527]: DBERROR: critical database
situation
Aug 30 22:38:44 alpha1 master[19525]: process 19527 exited, status 75


So I tried a reconstruct -m and a reconstruct -r user/username on a
specific mailbox and I'm getting this:

Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR db4: PANIC: fatal
region error detected; run recovery
Aug 30 22:41:08 alpha1 reconstruct[19571]: DBERROR: critical database
situation


Running "ctl_cyrusdb -r" results in a:

ug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: Recovery function
for LSN 8 7404244 failed on backward pass
Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR db4: PANIC: Is a
directory
Aug 30 22:41:50 alpha1 ctl_cyrusdb[19582]: DBERROR: critical database
situation


Damn BDB, but HOW CAN I GET MY MAILS BACK? I'm at one's wits' end, so
any help would be very great because I have some very important mails there!

Cheers,
Michael Obster


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: hardware recommendations for MURDER?

2006-08-30 Thread Kjetil Torgrim Homme
On Tue, 2006-08-29 at 12:24 +0200, Marten Lehmann wrote:
> How can I 
> calculate how much CPU and memory I need for an average user with a 
> maximum of 100 MB per mailbox and some larger mailboxes like 2 or 5 GB?

inactive users don't require much resources at all ...  it's really
impossible to tell, users are so different.  plan to be able to scale
without a redesign.

> Would you prefer a really fat system with 16 GB of RAM, 1 TB storage and 
> two dual core Opterons or two separate systems with 500 GB storage, 2-4 
> GB RAM and one dual core Opteron? I would tend to the latter one (two 
> small systems should be more failsafe than one large, aren't they?).

no, two systems fail twice as often as one :-)

> So 
> for the hardware I'm tending between a small DL360 with two big SCSI 
> discs or a big DL385 with 6 drive bays.

I think my next generation setup will be something like replicating
pairs of Dell 2950 maxed out with SATA drives, and no SAN or cluster
software at all, only an IP level load balancer in front.  I'm following
the threads on replication with great interest...

-- 
Kjetil T.



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


Ruby/ManageSieve 0.3.0 released

2006-08-30 Thread Andre Nathan
Hello.

This a new release of Ruby/ManageSieve with changes which were on CVS
HEAD for some time now.

Ruby/ManageSieve is a pure-ruby library for the MANAGESIEVE
protocol. It also includes the command-line ``sievectl'' utility for
managing Sieve scripts.

Please check the Ruby/ManageSieve homepage for documentations and
downloads:

http://managesieve.rubyforge.org/

A rubygem is also available: gem install ruby-managesieve

== Changes from 0.2.0:

- Support for multiple email accounts.

- Asks the password interactively if it's not found on the config file 
  (This requires the ``termios'' library to be installed).

- Check if there's room for a script before adding it.

- Fix regex for succesful command completion on some servers.

- Better general error handling and nicer output in error situations.

Thanks to Peter Schrammel for pointing out the regex bug above.


== Help needed!

Ruby/ManageSieve currently only supports PLAIN and LOGIN authentication.
That's what our servers support here, so I can't test other methods.

Is there anyone using this library who would find support for other
login methods useful? If you can give me a test account on a server
which supports other authentication methods, I could try implementing
them. Of course, patches are most welcome :)


Best regards,
Andre


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: Problems authenticating using saslauthd w/LDAP

2006-08-30 Thread Kjetil Torgrim Homme
On Wed, 2006-08-30 at 20:13 +0200, Kjetil Torgrim Homme wrote:
> On Mon, 2006-08-28 at 13:39 -0700, Rob Tanner wrote:
> > I've setup an IMAP server using  Cyrus IMAP4 v2.2.3 which I've setup 
> > before without a problem.  Authentication is handles through saslauthd.  
> > When I use /etc/shadow as the authentication mechanism (-a shadow), my 
> > test accounts log in just fine.  When, instead, I startup saslauthd 
> > using LDAP (-a ldap), I get the famous "generic failure" error.  But at 
> > the same time, when saslauthd is running with the -a ldap option, 
> > testsaslauthd -u ,user -p  returns an "OK" for the right 
> > password and a "NO" for the wrong password.  That in itself should 
> > validate the saslauthd.conf file, but I also compared it to the 
> > saslauthd.conf file on another system which is working correctly.
> > 
> > I am confused.  Any ideas?
> 
> check the permissions on the saslauthd mux.  you probably run
> testsaslauthd as root.

never mind me, this can't be it since Cyrus is able to communicate with
saslauthd in the shadow case.

-- 
sorry for the noise,
Kjetil T.



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: Problems authenticating using saslauthd w/LDAP

2006-08-30 Thread Kjetil Torgrim Homme
On Mon, 2006-08-28 at 13:39 -0700, Rob Tanner wrote:
> I've setup an IMAP server using  Cyrus IMAP4 v2.2.3 which I've setup 
> before without a problem.  Authentication is handles through saslauthd.  
> When I use /etc/shadow as the authentication mechanism (-a shadow), my 
> test accounts log in just fine.  When, instead, I startup saslauthd 
> using LDAP (-a ldap), I get the famous "generic failure" error.  But at 
> the same time, when saslauthd is running with the -a ldap option, 
> testsaslauthd -u ,user -p  returns an "OK" for the right 
> password and a "NO" for the wrong password.  That in itself should 
> validate the saslauthd.conf file, but I also compared it to the 
> saslauthd.conf file on another system which is working correctly.
> 
> I am confused.  Any ideas?

check the permissions on the saslauthd mux.  you probably run
testsaslauthd as root.
-- 
Kjetil T.



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: deliver.db conversion to skiplist

2006-08-30 Thread Kjetil Torgrim Homme
On Tue, 2006-08-29 at 11:22 -0400, Shelley Waltz wrote:
> Aug 24 10:50:33 chipmunk lmtpunix[18963]: DBERROR: opening
> /var/lib/imap/deliver.db: Cannot allocate memory
> Aug 24 10:50:33 chipmunk lmtpunix[18963]: DBERROR: opening
> /var/lib/imap/deliver.db: cyrusdb error
> Aug 24 10:50:33 chipmunk lmtpunix[18963]: FATAL: lmtpd: unable to init
> duplicate delivery database

see http://www.sleepycat.com/docs/ref/log/config.html

create /var/lib/imap/db/DB_CONFIG with contents like

  set_lg_bsize 131072

and restart Cyrus.
-- 
Kjetil T.



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: Guidance on Use of Reconstruct

2006-08-30 Thread jimbrett099
>> How are the primary & secondary sharing data? 

SUN RAID 3320 configured as RAID 1+0 (stripe and mirror).  Primary/secondary 
IMAP servers mount (NFS) the raid as a shared memory storage device.  Each 
server connects via SCSI interface. Number of RAID disks depends on hardware 
but minimum is 4.  Following directories are accessed via mount point:

/var/imap
/var/spool/imap
/var/spool/sieve
/var/spool/postfix

// - - - Original Q&A - - - 

Is it overkill to run reconstruct (and quota) after every failover
(which so far has never been due to cyrus being corrupted).

>> I think so, yes. It's much more effective to note in the logs that
>> particular mailboxes aren't working, and reconstruct them, even if
>> you know that the system wasn't shutdown cleanly.

Primary and secondary IMAP servers accessed via virtual IP and
using RAID device. Cyrus 2.2.12 on SunOS 5.8 Generic_117350-13
sun4u sparc SUNW,Sun-Fire-V240.

>> How are the primary & secondary sharing data? 


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


Berkeley db errors with lmtp

2006-08-30 Thread Brenden Conte

Cause for concern, or par for the course?  :)

My situation is that I'm working on getting lmtpproxy frontends to work, 
and they do.  But every time a message is delivered, the lmtp process on 
the frontend machine also logs these additional lines:


Aug 30 09:21:02 frontend lmtp[5079]: DBERROR db4: Database handles open 
during environment close
Aug 30 09:21:02 frontend lmtp[5079]: DBERROR: error exiting application: 
Invalid argument


Is this a problem, or just another ignorable Berkeley error?  The only 
database that uses berkeley is the tlssessions.db on the frontends 
(although i havn't directly verified that that is the file the error 
refers to)


Thanks,

--
Brenden Conte
System Programmer, C&MT.CIO
Rensselaer Polytechnic Institute
(518)276-4264 



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: Mailbox does not exist

2006-08-30 Thread former03 | Baltasar Cevc

Hi Bart,


Maybe it's a permission problem - try (but remove it later), to grant
"p" rights to the folder to anybody.
  cyradm> sam user.bbbart.Lists.gphoto.devel anyone p


this did the trick. damnit, I even quoted this from the manpage. the
reason I didn't think about permissions problems was the errormessage
clearly stating that the mailbox didn't "exist" and that I checked  at
the filesystem persmissions.

oh well..


Well, it isn't obvious I'd say. What the message is trying to tell
you is: from my point of view, there is no such mailbox.

@Ken: would it be possible to change the message; I remember some more
threads like that on the list.

Baltasar

--
Baltasar Cevc

_ former 03 gmbh
_ infanteriestraße 19 haus 6 eg
_ D-80797 muenchen

_ http://www.former03.de


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: Mailbox does not exist

2006-08-30 Thread Bart Van Loon
On Wed, 2006-08-30 at 12:38 +0200, former03 | Baltasar Cevc wrote:
> Hi Bart,
> On 30.08.2006, at 10:43, Bart Van Loon wrote:
> 
> > On Tue, 2006-08-29 at 21:25 +0200, former03 | Baltasar Cevc wrote:
> >> Hi Bart,
> >>
> >>> user.bbbart.Lists.gphoto.devel (\HasNoChildren)
> >>>
> >> [...]
> >>> alex # echo "" | /usr/local/cyrus/bin/deliver -m
> >>> user.bbbart.Lists.gphoto.devel
> >>> +user.bbbart.Lists.gphoto.devel: Mailbox does not exist
> >>> alex # logout
> >>> [EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
> >>> Lists.gphoto.devel
> >>> +Lists.gphoto.devel: Mailbox does not exist
> >>>
> >>> course, when I specify the user bbbart at the end of the deliver
> >>> statement, the empty mail gets delivered in my INBOX, but this is not
> >>> what I want.
> >>
> >> I don't know wheter I understood what you want - the question I got
> >> was: how can I make cyrus deliver use the mailbox subhierarchy of the
> >> currently logged in user?
> >
> > yes, exactly. so my mail is fetched by fetchmail, whcih calls upon
> > procmail, which in his turn, calls upon /usr/local/cyrus/bin/deliver.
> > all this happens as the user for which the mail is being processed. in
> > this example. that would be 'bbbart'.
> >
> > from the man-page I get the following:
> >
> > """
> > -m mailbox
> >Deliver to mailbox.  If any userids are specified, attempts to
> > deliver to user.userid.mailbox for each  userid.  If the ACL on any 
> > such
> > mailbox does not grant the sender the "p" right or if -m is not
> > specified, then delivers to the INBOX for the userid, regardless of the
> > ACL on the INBOX.
> >If no userids are specified, attempts to deliver to mailbox.  If the
> > ACL  on  mailbox  does  not grant the sender the "p" right, the 
> > delivery
> > fails.
> > """
> >
> > so I expect that
> >
> > $ /usr/local/cyrus/bin/deliver -m Lists.gphoto.devel bbbart
> >
> > would try to drop the mail into user.bbbart.Lists.gphoto.devel (if it 
> > is
> > allowed) and fallback on user.bbbart
> >
> > seen from the perspective of the user bbbart, that would be delivery in
> > INBOX.Lists.gphoto.devel with fallback on INBOX.
> >
> > isn't this interpretation correct?
> >
> > my goal is to write procmail recipes that sort my mail by passing it
> > to /usr/local/cyrus/bin/deliver with the correct -m parameter.
> 
> Actually, that's how I think it should work - I'm not sure, though, as
> I never used deliver...

so how do you have cyrus deliver your mails then? :-)

> Maybe it's a permission problem - try (but remove it later), to grant
> "p" rights to the folder to anybody.
>   cyradm> sam user.bbbart.Lists.gphoto.devel anyone p

this did the trick. damnit, I even quoted this from the manpage. the
reason I didn't think about permissions problems was the errormessage
clearly stating that the mailbox didn't "exist" and that I checked  at
the filesystem persmissions.

oh well..

> If it works with that you'd have to play with authentication or use 
> preauth
> as a user listen in lmtp_admins - when doing that always think about the
> possibility that anybody can save messages (but nor more) to any folder 
> if
> you make deliver runnable by any user and use preauthed connections with
> the ACLs set in a way that procmail can write anywhere.

okay, I'll tweak this then. thanks for the warning.

problem solved. thank you Baltasar!

-- 
greetings,
Bart Van Loon

Be careful or be road-kill. -- Calvin


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: Mailbox does not exist

2006-08-30 Thread former03 | Baltasar Cevc

Hi Bart,
On 30.08.2006, at 10:43, Bart Van Loon wrote:


On Tue, 2006-08-29 at 21:25 +0200, former03 | Baltasar Cevc wrote:

Hi Bart,


user.bbbart.Lists.gphoto.devel (\HasNoChildren)


[...]

alex # echo "" | /usr/local/cyrus/bin/deliver -m
user.bbbart.Lists.gphoto.devel
+user.bbbart.Lists.gphoto.devel: Mailbox does not exist
alex # logout
[EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
Lists.gphoto.devel
+Lists.gphoto.devel: Mailbox does not exist

course, when I specify the user bbbart at the end of the deliver
statement, the empty mail gets delivered in my INBOX, but this is not
what I want.


I don't know wheter I understood what you want - the question I got
was: how can I make cyrus deliver use the mailbox subhierarchy of the
currently logged in user?


yes, exactly. so my mail is fetched by fetchmail, whcih calls upon
procmail, which in his turn, calls upon /usr/local/cyrus/bin/deliver.
all this happens as the user for which the mail is being processed. in
this example. that would be 'bbbart'.

from the man-page I get the following:

"""
-m mailbox
   Deliver to mailbox.  If any userids are specified, attempts to
deliver to user.userid.mailbox for each  userid.  If the ACL on any 
such

mailbox does not grant the sender the "p" right or if -m is not
specified, then delivers to the INBOX for the userid, regardless of the
ACL on the INBOX.
   If no userids are specified, attempts to deliver to mailbox.  If the
ACL  on  mailbox  does  not grant the sender the "p" right, the 
delivery

fails.
"""

so I expect that

$ /usr/local/cyrus/bin/deliver -m Lists.gphoto.devel bbbart

would try to drop the mail into user.bbbart.Lists.gphoto.devel (if it 
is

allowed) and fallback on user.bbbart

seen from the perspective of the user bbbart, that would be delivery in
INBOX.Lists.gphoto.devel with fallback on INBOX.

isn't this interpretation correct?

my goal is to write procmail recipes that sort my mail by passing it
to /usr/local/cyrus/bin/deliver with the correct -m parameter.


Actually, that's how I think it should work - I'm not sure, though, as
I never used deliver...

Maybe it's a permission problem - try (but remove it later), to grant
"p" rights to the folder to anybody.
 cyradm> sam user.bbbart.Lists.gphoto.devel anyone p

If it works with that you'd have to play with authentication or use 
preauth

as a user listen in lmtp_admins - when doing that always think about the
possibility that anybody can save messages (but nor more) to any folder 
if

you make deliver runnable by any user and use preauthed connections with
the ACLs set in a way that procmail can write anywhere.


In that case: what you've seen is the expected behaviour. There is no
mailbox named Lists.ghoto.devel; cyrus deliver does not care about 
what

name the calling user has. The system is ignorant of the system users
by design - it's a black box.


I see. so are you telling me I should try the following?

[EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
user.bbbart.Lists.gphoto.devel
+user.bbbart.Lists.gphoto.devel: Mailbox does not exist

No, I thought that you hadn't specified the user at all - however I was
apparently wrong.


So if you want to work around that, you could either specify the user,
create an alias in the shell or something similar.
However, you may run into permission trouble - as the mailboxes are in
some folder tree that belongs to the cyrus user, you cannot 
distinguish

the users there - either you allow anybody (including the nobody
account) to deliver mails anywhere or you just deny it to anybody
except the cyrus user or group.


hmmm... say my mailfolder is /var/spool/imap/ and there I have the a
subfolders user/bbbart/ and user/bbbart/Lists/gphoto/devel

you are right about the permissions: only the user cyrus has permission
any permissions on /var/spool/imap/user, but if that is the reason why 
I

can't deliver directly
into /var/spool/imap/user/bbbart/Lists/gphoto/devel, why is it possible
to deliver into /var/spool/imap/user/bbbart, where my INBOX lives?

That sounds like the permission problem.

Deliver probably talks to the Cyrus lmtpd via pre-authed LMTP on a unix
socket, so permissions to the files are not the problem. You should 
never
care about how cyrus stores its data (except if you run into trouble 
here),
as it's a black box design - never touch any file there manually except 
if

you really know what you're doing...


maybe I should just rephrase my question:

is it possible -- and if so: how? -- to have cyrus deliver mail into a
folder in the hierarchy underneith a user's INBOX folder or is all mail
bound to arrive in the top INBOX folder and is sorting to be done
afterwards?

It is possible. Alternatively, you can do Sieve filtering.

Baltasar

--
Baltasar Cevc

_ former 03 gmbh
_ infanteriestraße 19 haus 6 eg
_ D-80797 muenchen

_ http://www.former03.de


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew

Re: Mailbox does not exist

2006-08-30 Thread Bart Van Loon
On Tue, 2006-08-29 at 22:03 +0300, Cristian Mitrana wrote:
> 
> * Bart Van Loon wrote [Tuesday, August 29, 2006 07:57:30 PM +0200]
> 
> > Hi all,
> >
> > I am new to this list but didn't get to search the archives, so I hope this
> > question is not disturbing anyone.
> >
> 
>  [...]
> 
> > alex # echo "" | /usr/local/cyrus/bin/deliver -m
> > user.bbbart.Lists.gphoto.devel
> > +user.bbbart.Lists.gphoto.devel: Mailbox does not exist
> > alex # logout
> > [EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
> > Lists.gphoto.devel
> > +Lists.gphoto.devel: Mailbox does not exist
> >
> > course, when I specify the user bbbart at the end of the deliver
> > statement, the empty mail gets delivered in my INBOX, but this is not
> > what I want.
> >
> > can anyone explain this?
> 
>  My understanding is that you should feed deliver the email address and not 
> the internal cyrus mailbox name, in your case bbat+Lists.gphoto.devel 
> [EMAIL PROTECTED]

hmm... I tried that, but this does not seem to work either. cyrus just
goes on complaining:

[EMAIL PROTECTED]: Mailbox does not exist

thank you for you idea.

maybe I am asking too much: is it possible to have cyrus deliver mail
into another folder that the INBOX of the user it is delivering mail
for? more specifically, somewhere in the subhierarchy of the user's
INBOX?

-- 
groetjes,
Bart Van Loon

My family is dysfunctional and my parents won't empower me. Consequently
I'm not self actualized. -- Calvin


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: Mailbox does not exist

2006-08-30 Thread Bart Van Loon
On Tue, 2006-08-29 at 21:25 +0200, former03 | Baltasar Cevc wrote:
> Hi Bart,
> 
> > user.bbbart.Lists.gphoto.devel (\HasNoChildren)
> >
> [...]
> > alex # echo "" | /usr/local/cyrus/bin/deliver -m
> > user.bbbart.Lists.gphoto.devel
> > +user.bbbart.Lists.gphoto.devel: Mailbox does not exist
> > alex # logout
> > [EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
> > Lists.gphoto.devel
> > +Lists.gphoto.devel: Mailbox does not exist
> >
> > course, when I specify the user bbbart at the end of the deliver
> > statement, the empty mail gets delivered in my INBOX, but this is not
> > what I want.
> 
> I don't know wheter I understood what you want - the question I got 
> was: how can I make cyrus deliver use the mailbox subhierarchy of the 
> currently logged in user?

yes, exactly. so my mail is fetched by fetchmail, whcih calls upon
procmail, which in his turn, calls upon /usr/local/cyrus/bin/deliver.
all this happens as the user for which the mail is being processed. in
this example. that would be 'bbbart'.

from the man-page I get the following:

"""
-m mailbox
   Deliver to mailbox.  If any userids are specified, attempts to
deliver to user.userid.mailbox for each  userid.  If the ACL on any such
mailbox does not grant the sender the "p" right or if -m is not
specified, then delivers to the INBOX for the userid, regardless of the
ACL on the INBOX.
   If no userids are specified, attempts to deliver to mailbox.  If the
ACL  on  mailbox  does  not grant the sender the "p" right, the delivery
fails.
"""

so I expect that 

$ /usr/local/cyrus/bin/deliver -m Lists.gphoto.devel bbbart

would try to drop the mail into user.bbbart.Lists.gphoto.devel (if it is
allowed) and fallback on user.bbbart

seen from the perspective of the user bbbart, that would be delivery in
INBOX.Lists.gphoto.devel with fallback on INBOX.

isn't this interpretation correct?

my goal is to write procmail recipes that sort my mail by passing it
to /usr/local/cyrus/bin/deliver with the correct -m parameter.

> In that case: what you've seen is the expected behaviour. There is no 
> mailbox named Lists.ghoto.devel; cyrus deliver does not care about what 
> name the calling user has. The system is ignorant of the system users 
> by design - it's a black box.

I see. so are you telling me I should try the following?

[EMAIL PROTECTED] ~ $ echo "" | /usr/local/cyrus/bin/deliver -m
user.bbbart.Lists.gphoto.devel
+user.bbbart.Lists.gphoto.devel: Mailbox does not exist

That doesn't work either, as you can see.

> So if you want to work around that, you could either specify the user, 
> create an alias in the shell or something similar.
> However, you may run into permission trouble - as the mailboxes are in 
> some folder tree that belongs to the cyrus user, you cannot distinguish 
> the users there - either you allow anybody (including the nobody 
> account) to deliver mails anywhere or you just deny it to anybody 
> except the cyrus user or group.

hmmm... say my mailfolder is /var/spool/imap/ and there I have the a
subfolders user/bbbart/ and user/bbbart/Lists/gphoto/devel

you are right about the permissions: only the user cyrus has permission
any permissions on /var/spool/imap/user, but if that is the reason why I
can't deliver directly
into /var/spool/imap/user/bbbart/Lists/gphoto/devel, why is it possible
to deliver into /var/spool/imap/user/bbbart, where my INBOX lives?

maybe I should just rephrase my question:

is it possible -- and if so: how? -- to have cyrus deliver mail into a
folder in the hierarchy underneith a user's INBOX folder or is all mail
bound to arrive in the top INBOX folder and is sorting to be done
afterwards?

thank you for your answer.

-- 
greetings,
Bart Van Loon

As a math atheist, I think I should be excused from this. --- Calvin, to
Hobbes


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: something strange with sieve

2006-08-30 Thread VALOIS, Pascal
okay, i found it myself, and write it there for any people who can be
interrested about it.

the vacation module doesn't send to vacation messages to the same
recipient the same day. that's why each time i set it, i worked once
only during my tests.

thx anybody.



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: sieve doesn't work [auf Viren überprüft]

2006-08-30 Thread Hans Moser

Hi!

Martin G.H. Minkler schrieb:

After reloading and even restarting cyrus with the changes to the 
sieveshell die line and the imapd.conf in place as suggested, I still

 get the same (slighty longer but unfortunately no more informative)
 error message from sieveshell:

unable to connect to server () at /usr/bin/sieveshell line 174.

Can you doublecheck your changes to managesieve?


Do I need to restart saslauthd to re-read the config from
/etc/imapd.conf?

You don't use saslauthd at all, as I can see from your config, you use
auxprop + sasldb2...
With this you could use CRAM-MD5 and DIGEST-MD5 as well.
Perhaps you could change sasl_mech_list:
sasl_mech_list: DIGEST-MD5 CRAM-MD5 PLAIN LOGIN


Is there maybe an alternative to sieveshell? Telneting sieve seems to
 return such a correct response...

In you first post I can't see information about "sasl" and/or "STARTTLS"
Here is what I get:

"IMPLEMENTATION" "Cyrus timsieved v2.2.12"
"SASL" "LOGIN PLAIN DIGEST-MD5 CRAM-MD5"
"SIEVE" "fileinto reject envelope vacation imapflags notify subaddress 
relational comparator-i;ascii-numeric regex"

"STARTTLS"
OK


Hans


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