[Dovecot] dotlock O_EXCL query

2007-07-04 Thread derek kit hoong foo

Hi there,

I was wondering if someone can assist with clarifying why O_EXCL does not
always work with NFS. Is it related to NFS protocol version support
or export permissions mode out of the Celerra/Netapp ( e.g: mixed mode, unix
file permissions ? )

Please advise. Thanks.

Regards,
new dovecot user.


Re: [Dovecot] Maildir configuration vs ZFS and snapshots...

2007-07-04 Thread Mike Brudenell

Greetings -

I'm intrigued by your suggestion of providing read-only access to  
mail folders in the snapshots...


On 3 Jul 2007, at 15:20, Peter Eriksson wrote:


Now,I can access the normal Maildir INBOX and folders nicely via
Dovecot/IMAP. The thing is I'd like to be able to access the
snapshot too via Dovecot/IMAP somehow. My first idea was to use
Dovecots namespace feature like this in the config file:

namespace private {
  separator = /
  prefix = snapshot/
		  location = maildir:~/.zfs/snapshot/2007-06-18/ 
Maildir:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index

}

This works great for the mail folders inside the Maildir - but not  
for the INBOX which isn't displayed at all... (Ie, under the  
snapshot prefix I only see Trash etc when looking at the folder  
from an IMAP client).


We are switching from the UW IMAP server with local disks to Dovecot  
using a NetApp filer.  The filer provides snapshots too, although  
with a slightly different layout as the .snapshot directory appears  
in each and every directory with its files and folders.  For example:


~/Maildir/.snapshot/nightly.0/...
~/Maildir/.snapshot/nightly.1/...
~/Maildir/.snapshot/nightly.2/...
etc

where the .0 suffixed directory is the most recent etc.

In your example your snapshots seem to be in directories named after  
a specific date (when the snapshot was taken?).  I was wondering if  
you had some clever way of providing access to these; in your example  
above you hard-code the names into the Dovecot configuration file,  
which doesn't seem practical for a live system?


Basically I'm trying to mimic your setup and was wondering if you had  
already solved the problem of getting down from your snapshot  
directory through the intermediate level to the Maildir itself.


In passing, would I need to use a separate CONTROL and INDEX storage  
area for these, or will the files for the snapshot folders live  
happily alongside those for the live area?  (I'm not too sure how the  
organisation of these storage areas works when namespaces and  
prefixes are concerned!)


Cheers,
Mike B-)

--
The Computing Service, University of York, Heslington, York Yo10 5DD, UK
Tel:+44-1904-433811  FAX:+44-1904-433740

* Unsolicited commercial e-mail is NOT welcome at this e-mail address. *




Re: [Dovecot] Maildir configuration vs ZFS and snapshots...

2007-07-04 Thread Peter Eriksson

namespace private {
  separator = /
  prefix = snapshot/
  location = 
maildir:~/.zfs/snapshot/2007-06-18/Maildir:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index 


}


...
We are switching from the UW IMAP server with local disks to Dovecot 
using a NetApp filer.  The filer provides snapshots too, although with a 
slightly different layout as the .snapshot directory appears in each 
and every directory with its files and folders.  For example:


~/Maildir/.snapshot/nightly.0/...
~/Maildir/.snapshot/nightly.1/...
~/Maildir/.snapshot/nightly.2/...
etc

where the .0 suffixed directory is the most recent etc.


Uh.. I'n your case I think it would be quite easy. I think this should work:

  namespace private {
separator = /
prefix = snapshot-0/
location = 
maildir:~/Maildir/.snapshot/nightly.0:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index 


  }
  namespace private {
separator = /
prefix = snapshot-1/
location = 
maildir:~/Maildir/.snapshot/nightly.1:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index 


  }

etc... You won't see the INBOX either (like me) unless you create the
symlink suggested (.INBOX - .) before taking the snapshots.

I think I tried setting up hierarchical namespaces but it didn't work
(I would have liked to see snapshot/0, snapshot/1 etc).


In your example your snapshots seem to be in directories named after a 
specific date (when the snapshot was taken?).  I was wondering if you 
had some clever way of providing access to these; in your example above 
you hard-code the names into the Dovecot configuration file, which 
doesn't seem practical for a live system?


In ZFS you can name your snapshots anything you like, it's just a tag 
that you select when you create it like this:


   zfs snapshot -r andromeda/[EMAIL PROTECTED]

(-r = take snapshot of all the subfilesystems too. Each user has their 
own filesystem here).


In a real live situation I'd probably name them yesterday last-week 
or something more suitable for the hardcoding in the dovecot.conf file. 
Our I'd look at creating some kind of dynamic internal namespaces 
(requires hacking of Dovecot :-).


I'd really like to be able to present all the available snapshots over 
IMAP if possible. However, I'm a bit worried though that the mail client 
will walk thru all the mailboxes in all the snapshots when accessing the 
server though...




Basically I'm trying to mimic your setup and was wondering if you had 
already solved the problem of getting down from your snapshot 
directory through the intermediate level to the Maildir itself.


In passing, would I need to use a separate CONTROL and INDEX storage 
area for these, or will the files for the snapshot folders live happily 
alongside those for the live area?  (I'm not too sure how the 
organisation of these storage areas works when namespaces and prefixes 
are concerned!)


You need to point the CONTROL and INDEX storage things outside of the 
readonly snapshots or Dovecot will complain when it wants to update the 
indexes...


- Peter


[Dovecot] Upgrade from 1.00 to 1.0.1

2007-07-04 Thread Jon

Hi,

I'm getting a bunch of errors since I upgraded to 1.0.0. I understand 
now that some of them are bug related to release 1.0.0. I'm about to 
upgrade to 1.0.1.


Does anyone know if there are  changes in the config file btwn these to 
versions?


Also, what is the best way to do the upgrade? Can I  just  run 
./configure  : make :  make install : killlall -HUP dovetcot?


Best Regards - Jon


[Dovecot] OT - Claws Mail on Mac OS X

2007-07-04 Thread Gerard
Someone on this list recently asked regarding the availability of
Claws Mail on Mac OS X architecture, A BETA release has just been
issued.

http://damien.krotkine.com/claws/

-- 
Gerard


[Dovecot] multiple userdb/passdb

2007-07-04 Thread Thomas Balsfulland
hi all,

i am using debian etch with dovecot imap (version 1.0.rc15-2) and
mysql-database for the virtual mailuser. all informations (username,
password, mailbox format, mailbox location, quota) are find in the sql.
the maildir are locates at /home/vmail/, every is working fine.
now i want to use imap for the system user as well - at the moment 
they cant user imap because they are not find in the sql db.
so i set a second userdb/passwd in the dovecot.conf for the local
system-user. now the config says:

auth default {
  passdb passwd-file {
args = /etc/dovecot/localuser
  }
  passdb sql {
args = /etc/dovecot/dovecot-sql.conf
  }

  userdb passwd-file {
args = /etc/dovecot/localuser
  }
  userdb sql {
args = /etc/dovecot/dovecot-sql.conf
  }
}

and /etc/dovecot/localuser looks:

localuser1:password:1000:1000::/home/localuser1::userdb_mail=mbox:~/Mail:INBOX=~/Mail/incoming


now the local user is able to authenticate, but cant acces his mailboxes
the logfile says:

host dovecot: imap-login: Login: user=localuser1,method=PLAIN, 
rip=195.xxx.xxx.xxx, lip=193.yyy.yyy.yyy, TLS
host dovecot: IMAP(tbals): lstat(/home/vmail//localuser1/cur) failed: 
Permission denied
host dovecot: IMAP(tbals): lstat(/home/vmail/shared) failed: Permission denied

it seems dovevot ignore the settings in /etc/dovecot/localuser.

could someone help?

regards
  thomas

-- 
thomas balsfulland   [EMAIL PROTECTED]
zwischen mut und dummheit liegt nur ein grat
der sich durch das vorbereitetsein unterscheidet


Re: [Dovecot] Maildir configuration vs ZFS and snapshots...

2007-07-04 Thread Mike Brudenell

Greetings -

On 4 Jul 2007, at 11:21, Peter Eriksson wrote:

Uh.. I'n your case I think it would be quite easy. I think this  
should work:


  namespace private {
separator = /
prefix = snapshot-0/
location = maildir:~/Maildir/.snapshot/nightly. 
0:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index

  }
  namespace private {
separator = /
prefix = snapshot-1/
location = maildir:~/Maildir/.snapshot/nightly. 
1:CONTROL=~/.dovecot/control:INDEX=~/.dovecot/index

  }


I've just been trying something like this and it does indeed work.   
(What I was after was a way of not having to list each nightly.0,  
nightly.1, etc separately, and instead be able to navigate down to  
them: akin to your comments about the design of Maildir not being  
convenient in this respect.)




etc... You won't see the INBOX either (like me) unless you create the
symlink suggested (.INBOX - .) before taking the snapshots.


This is indeed the case.  One downside is that our mail clients then  
see THREE inboxes :-( ... one is the account's real inbox, one the  
symlink, and the third is the one in Outlook's Outlook Today  
section of the list.  (I hate the way this is always shown expanded  
but the IMAP section shown collapsed: the number of people we get who  
click on the Outlook Today inbox thinking it's the one on the IMAP  
servers. :-(



I'd really like to be able to present all the available snapshots  
over IMAP if possible. However, I'm a bit worried though that the  
mail client will walk thru all the mailboxes in all the snapshots  
when accessing the server though...


My testing has shown up a couple of problems...

1)  My mail client (Apple's Mail) does indeed walk through the  
snapshot hierarchy which, unfortunately leads to:
  * Mail duplicating its local cache of all the messages on my Mac's  
hard disk, and

  * Dovecot creating index files for all the mailboxes in the snapshot.

The former takes time and disk space; the latter effectively doubles  
the space used by someone's index files when you add a snapshot.  And  
of course if you have more than one snapshot namespace each has it's  
own set of index files.


2)  Dovecot logs lots of error messages as my mail client traverses  
the folders in the snapshot.  This is because it is trying to use  
utime() to update the timestamp of the directory in a read-only  
filestore.



In passing, would I need to use a separate CONTROL and INDEX  
storage area for these, or will the files for the snapshot folders  
live happily alongside those for the live area?  (I'm not too sure  
how the organisation of these storage areas works when namespaces  
and prefixes are concerned!)


You need to point the CONTROL and INDEX storage things outside of  
the readonly snapshots or Dovecot will complain when it wants to  
update the indexes...


It looks like the CONTROL and INDEX settings for the snapshot  
shouldn't use the same setting as is used by the live mailboxes.  I  
took the precaution of pointing them at a directory called SNAPSHOT  
hanging off the normal INDEX storage location and found that  
immediately below it I got a set of Maildirs for the folders in the  
snapshot.


Thus if I had pointed the INDEX setting for the snapshot at the same  
storage location as for the live folders I think I'd have had two  
different sets of folders -- the live and its equivalent in the  
snapshot -- sharing the same index file.  If so I suspect the results  
would not have been good!  (The same goes for CONTROL files, of course.)



Cheers,
Mike B-)

--
The Computing Service, University of York, Heslington, York Yo10 5DD, UK
Tel:+44-1904-433811  FAX:+44-1904-433740

* Unsolicited commercial e-mail is NOT welcome at this e-mail address. *




Re: [Dovecot] Upgrade from 1.00 to 1.0.1

2007-07-04 Thread Sergey A. Kobzar
Hi Timo,

Wednesday, July 4, 2007, 4:44:38 PM, you wrote:

 Does anyone know if there are  changes in the config file btwn these to
 versions?

 * marked items in NEWS file tells all the important changes.

FYI:

I use Linux 2.6.20-gentoo-r8 i686. Yesterday I switched from
dovecot-1.0_rc29 to dovecot-1.0.1 and got error that was fixed:

Jun  9 14:34:11 mail dovecot: POP3([EMAIL PROTECTED]): UID larger than
next_uid in file /home/mail-root/xxx.com/xxx/dovecot-uidlist (1 = 1)

Then I switched back to rc29 immediately.


Maybe this is a Gentoo related problem because port is masked.


-- 
Sergey



Re: [Dovecot] PAM timed out, kill failed, auth SEGV

2007-07-04 Thread Timo Sirainen
On Wed, 2007-07-04 at 10:37 -0400, Thomas Arnett wrote:
 #2  0x08057c62 in auth_request_log_error (auth_request=0x80c6a00,  
 subsystem=0x808f7cd pam, format=0x808f9ac PAM child process %s  
 timed out, killing it) at auth-request.c:1177
  va = 0x597f8c5c :\211\n\b?|\t\b?|\t\b?\214\177Y
 #3  0x080658ee in pam_child_timeout (context=0x0) at passdb-pam.c:537
  request = (struct pam_auth_request *) 0x80c6de8
  iter = (struct hash_iterate_context *) 0x80bcdb0
  key = (void *) 0xa9e
  value = (void *) 0x80c6de8
  timeout = 1182548633

This should fix the crash:
http://hg.dovecot.org/dovecot-1.0/rev/de5d9ffa2a45

It probably doesn't fix the timeout problems though.


signature.asc
Description: This is a digitally signed message part


[Dovecot] PAM timed out, kill failed, auth SEGV

2007-07-04 Thread Thomas Arnett

My log is full of blocks like this:
auth(default): pam(?): PAM child process 13576 timed out, killing it
auth(default): PAM: kill(13576) failed: No such process

Often, this is recorded for several pids at once.

Occasionally, there's a single burst when a virtual user logs in,  
immediately before pam_authenticate() fails and checkpassword is  
executed.  When this happens, pam() contains the username and remote IP.


Usually, it starts 2 minutes after a login attempt (successful or  
not) and repeats every 10 seconds indefinitely.  pam() contains  
something else:

~87%?
~ 9%[garbage],master
~ 4%?,master
 1% [empty]

[garbage] varies; it seems to be constant for an instance of auth,  
but I haven't verified this.


Eventually, auth segfaults:
Core was generated by `dovecot-auth'.
Program terminated with signal 11, Segmentation fault.
...
#0  0x08087a68 in str_sanitize_append (dest=0x80a8950, src=0x3d9  
Address 0x3d9 out of bounds, max_len=64) at str-sanitize.c:11

p = 0x3d9 Address 0x3d9 out of bounds
#1  0x08057a1d in get_log_str (auth_request=0x80c6a00,  
subsystem=0x808f7cd pam, format=0x808f9ac PAM child process %s  
timed out, killing it, va=0x597f8c5c :\211\n\b?|\t\b?|\t\b?\214\177Y)

at auth-request.c:1121
ip = 0xa Address 0xa out of bounds
str = (string_t *) 0x80a8950
#2  0x08057c62 in auth_request_log_error (auth_request=0x80c6a00,  
subsystem=0x808f7cd pam, format=0x808f9ac PAM child process %s  
timed out, killing it) at auth-request.c:1177

va = 0x597f8c5c :\211\n\b?|\t\b?|\t\b?\214\177Y
#3  0x080658ee in pam_child_timeout (context=0x0) at passdb-pam.c:537
request = (struct pam_auth_request *) 0x80c6de8
iter = (struct hash_iterate_context *) 0x80bcdb0
key = (void *) 0xa9e
value = (void *) 0x80c6de8
timeout = 1182548633
#4  0x08079fc5 in io_loop_handle_timeouts (ioloop=0x80b09b0,  
update_run_now=true) at ioloop.c:294

t = (struct timeout *) 0x80b4ca8
called_timeouts = (struct timeout *) 0x80b4ca8
tv = {tv_sec = 0, tv_usec = 0}
t_id = 2
#5  0x0807b32e in io_loop_handler_run (ioloop=0x80b09b0) at ioloop- 
epoll.c:175

ctx = (struct ioloop_handler_context *) 0x80b09d8
events = (struct epoll_event *) 0x80b0a18
event = (const struct epoll_event *) 0x80b0a18
list = (struct io_list *) 0x80c42d8
io = (struct io *) 0x0
tv = {tv_sec = 1, tv_usec = 180418}
events_count = 12
t_id = 2
msecs = 1181
ret = 0
i = 1
j = 3
call = true
#6  0x0807a0a8 in io_loop_run (ioloop=0x80b09b0) at ioloop.c:329
No locals.
#7  0x0805d7ee in main (argc=1, argv=0x597f8ec4) at main.c:321
foreground = false

My config (Gentoo Linux hardened/x86/2.6):
# 1.0.1: /etc/dovecot/dovecot.conf
listen: [::1]
ssl_listen: [::]
ssl_cert_file: /etc/ssl/misfeature.net/crt
ssl_key_file: /etc/ssl/misfeature.net/key
ssl_cipher_list: HIGH
login_dir: /var/run/dovecot/login
login_executable: /usr/libexec/dovecot/imap-login
login_greeting_capability: yes
verbose_proctitle: yes
first_valid_uid: 1000
first_valid_gid: 100
mail_location: maildir:~/mail
mail_debug: yes
maildir_copy_with_hardlinks: yes
mail_drop_priv_before_exec: yes
imap_client_workarounds: delay-newmail outlook-idle
auth default:
  verbose: yes
  debug: yes
  passdb:
driver: pam
args: *
  passdb:
driver: checkpassword
args: /usr/local/bin/checkpassword
  userdb:
driver: passwd
  userdb:
driver: prefetch
  socket:
type: listen
client:
  path: /var/spool/postfix/private/auth
  mode: 432
  user: postfix
  group: postfix

I turned on the various logging options while investigating this  
problem; the messages appear even without.


-- TA