[ITP] postfix 2.11.3
Corinna Vinschen
corinna-cygwin@cygwin.com
Mon Nov 17 10:27:00 GMT 2014
Hi Christian,
On Nov 13 23:48, Christian Franke wrote:
> I would like to contribute the Postfix Mail Transfer Agent.
>
> http://www.postfix.org/
>
> Download:
> wget -e robots=off -np -nH --cut-dirs=1 -R'index.html*' -r \
> http://chrfranke.no-ip.org/cygwin/x86/release/postfix \
> http://chrfranke.no-ip.org/cygwin/x86_64/release/postfix
>
> Important: It requires cygwin 1.7.33-1 (or a recent 1.7.33-0.X test
> release). It does not work with 1.7.32-1.
>
> For a first test try 'postfix-config --dryrun'. See the /etc/postfix/main.cf
> sample for some more info.
Packaging looks basically ok, but I see a few problems in
postfix-config:
- The script uses passwd -R without asking the admin. I'm not so sure
that's feasible. The admin should have a say in the matter. Also, is
passwd -R really required? This is typically no necessary, unless you
potentially have to do stuff with native Windows tools (cron, sshd
session). Postfix doesn't seem to be a candidate for that.
- The script still accesses /etc/group and /etc/passwd, but it should
not. For reading there's getent available for quite some time now.
Creating accounts in /etc/passwd and /etc/group should depend on the
Cygwin version. I prepared a matching function for testing this in
csih, which looks like this:
# ======================================================================
# Routine: csih_use_file_etc passwd|group
# Check if /etc/passwd or /etc/group file is in use.
# On Cygwin versions < 1.7.33, files are always used.
# On Cygwin versions >= 1.7.33 it depends on /etc/nsswitch.conf.
#
# If /etc/nsswitch.conf doesn't exit, "db" is used and we don't
# need the files.
#
# If /etc/nsswitch.conf exists, and passwd/group lines contain
# the "db" entry, "db" is used and we don't need the files.
#
# Otherwise, we need the files.
#
# Returns 0 if files shall be used, 1 otherwise.
# ======================================================================
csih_use_file_etc()
{
local file
local use_file
if [ "$1" != "passwd" -a "$1" != "group" ]
then
csih_error 'Script error: csih_use_file_etc requires argument "passwd" or "group".'
fi
/usr/bin/uname -r |
/usr/bin/awk -F. '{
if ($1 < 1 || \
($1 == 1 && $2 < 7) || \
($1 == 1 && $2 == 7 && strtonum($3) <= 33))
exit 0;
exit 1;
}'
use_file=$?
if [ ${use_file} -ne 0 -a -f /etc/nsswitch.conf ]
then
grep -Eq "^${file}:.*\<db\>" /etc/nsswitch.conf || use_file=0
fi
return ${use_file}
} # === End of csih_use_file_etc() === #
readonly -f csih_use_file_etc
Maybe you could just copy the method for now until I get my lazy
back to finish the work on csih?
- I don't understand this one in create_postfix_accounts:
if /usr/bin/find / -maxdepth 0 -group "$setgid_group" >/dev/null 2>&1; then
[...]
What are you looking for in /?
Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-apps/attachments/20141117/07056e7a/attachment.sig>
More information about the Cygwin-apps
mailing list