Bug#600007: environment option can not set USER for pipe transport

Joachim Breitner nomeata at debian.org
Tue Oct 12 18:58:02 UTC 2010


Package: exim4
Version: 4.72-1
Severity: wishlist
Tags: upstream

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

I’d like to use deliver (from the dovecot package) in a vhost setup
without having deliver look up information from the dovecot-auth server.
To that end, I need to set the environment variables HOME and USER.
Setting HOME works fine using home_directory. But it seems that I cannot
set USER via the environment option, as in

vuser_sieve:
  driver = pipe
  command = /usr/lib/dovecot/deliver -f $sender_address
  home_directory = /var/vhosts/$domain/$local_part
  environment = USER="$local_part@$domain"

(with or without the quotes, does not matter)

Reading the code (./src/transports/pipe.c, function
pipe_transport_entry), I see that the entries from the environment
option are just appended to the list of environment variables, so I
assume that both values for USER – exim’s default and the one I set –
are passed in the environment, leading to undefined behaviour.

I think it would be better if entries in environment really override the
defaults from exim.

For me, this is not critical, as it only affects the logging output. But
it certainly is unexpected behaviour. Such a setup is also recommended
by dovceot, see the example on http://wiki.dovecot.org/LDA/Exim at the
very bottom.

Thanks,
Joachim


- -- Package-specific info:
Exim version 4.72 #1 built 03-Jun-2010 17:41:48
Copyright (c) University of Cambridge, 1995 - 2007
Berkeley DB: Berkeley DB 4.8.30: (April  9, 2010)
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages DKIM
Lookups: lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dnsdb dsearch nis nis0 passwd
Authenticators: cram_md5 plaintext
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore autoreply lmtp pipe smtp
Fixed never_users: 0
Size of off_t: 8
GnuTLS compile-time version: 2.8.6
GnuTLS runtime version: 2.8.6
Configuration file is /etc/exim4/exim4.conf

- -- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (101, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.35-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages exim4 depends on:
ii  debconf [debconf-2.0]         1.5.36     Debian configuration management sy
ii  exim4-base                    4.72-1     support files for all Exim MTA (v4
ii  exim4-daemon-light            4.72-1     lightweight Exim MTA (v4) daemon

exim4 recommends no packages.

exim4 suggests no packages.

- -- debconf information:
  exim4/drec:

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAky0r7kACgkQ9ijrk0dDIGyIwACbBnnTHQ/Z28qm4YOuF1w+n0aV
huwAmgLSMXIJAnTW4kxOUQqJL9XYlxF2
=N90d
-----END PGP SIGNATURE-----





More information about the Pkg-exim4-maintainers mailing list