From ab59166426018aa13b29035100b58b27e1883105 Mon Sep 17 00:00:00 2001 From: oliver Date: Tue, 1 Mar 2005 21:02:00 +0000 Subject: Add BSD master.passwd processing to pw2userdb Bump PORTREVISION PR: ports/78163 Submitted by: Jose M Rodriguez --- mail/courier-authlib-vchkpw/Makefile | 2 +- .../files/patch-userdb::pw2userdb.in | 104 +++++++++++++++++++++ mail/courier-authlib/Makefile | 2 +- .../files/patch-userdb::pw2userdb.in | 104 +++++++++++++++++++++ 4 files changed, 210 insertions(+), 2 deletions(-) create mode 100644 mail/courier-authlib-vchkpw/files/patch-userdb::pw2userdb.in create mode 100644 mail/courier-authlib/files/patch-userdb::pw2userdb.in (limited to 'mail') diff --git a/mail/courier-authlib-vchkpw/Makefile b/mail/courier-authlib-vchkpw/Makefile index 03babfe85151..a033447050b8 100644 --- a/mail/courier-authlib-vchkpw/Makefile +++ b/mail/courier-authlib-vchkpw/Makefile @@ -7,7 +7,7 @@ PORTNAME= courier-authlib PORTVERSION= 0.54 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= mail MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= courier diff --git a/mail/courier-authlib-vchkpw/files/patch-userdb::pw2userdb.in b/mail/courier-authlib-vchkpw/files/patch-userdb::pw2userdb.in new file mode 100644 index 000000000000..7cb79aa49b02 --- /dev/null +++ b/mail/courier-authlib-vchkpw/files/patch-userdb::pw2userdb.in @@ -0,0 +1,104 @@ +--- userdb/pw2userdb.in.orig Wed Jul 19 13:55:15 2000 ++++ userdb/pw2userdb.in Tue Mar 1 21:58:51 2005 +@@ -7,6 +7,8 @@ + # Copyright 1998 - 1999 Double Precision, Inc. See COPYING for + # distribution information. + ++# Adapted to BSD master.passwd ++ + use Getopt::Long; + + # +@@ -22,42 +24,66 @@ + if $vpopuid; + + $passwd="/etc/passwd" unless $passwd =~ /./; +-$shadow="/etc/shadow" unless $shadow =~ /./; ++$shadow="/etc/master.passwd" unless $shadow =~ /./; + + $domain="" unless $domain =~ /./; + $domain="\@$domain" if $domain =~ /./; + +-open(PASSWD, $passwd) || die "$!\n"; +- +-while () ++if (! $noshadow && $shadow =~ /master.passwd$/) + { +- chop if /\n$/; +- next if /^#/; +- ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); +- +- ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; +- +- $PASSWORD{$acct}=$passwd if $passwd ne "x"; +- $UID{$acct}=$uid; +- $GID{$acct}=$gid; +- $HOME{$acct}=$home; +- $SHELL{$acct}=$shell; +- +- $name =~ s/\|/./g; # Just in case +- $GECOS{$acct}=$name; +-} +-close (PASSWD); ++ open(PASSWD, $shadow) || die "$!\n"; + +-if ( -f $shadow && ! $noshadow) +-{ +- open (SHADOW, $shadow) || die "$!\n"; +- while () ++ while () + { ++ chop if /\n$/; + next if /^#/; +- ($acct,$passwd,$dummy)=split(/:/); ++ ($acct,$passwd,$uid,$gid,$class,$change,$expire,$name,$home,$shell)=split( /:/ ); ++ ++ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; ++ $name =~ s/\|/./g; # Just in case ++ + $PASSWORD{$acct}=$passwd; ++ $UID{$acct}=$uid; ++ $GID{$acct}=$gid; ++ $HOME{$acct}=$home; ++ $SHELL{$acct}=$shell; ++ $GECOS{$acct}=$name; ++ } ++ close (PASSWD); ++} else { ++ open(PASSWD, $passwd) || die "$!\n"; ++ ++ while () ++ { ++ chop if /\n$/; ++ next if /^#/; ++ ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); ++ ++ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; ++ ++ $PASSWORD{$acct}=$passwd if $passwd ne "x"; ++ $UID{$acct}=$uid; ++ $GID{$acct}=$gid; ++ $HOME{$acct}=$home; ++ $SHELL{$acct}=$shell; ++ ++ $name =~ s/\|/./g; # Just in case ++ $GECOS{$acct}=$name; ++ } ++ close (PASSWD); ++ ++ if ( -f $shadow && ! $noshadow) ++ { ++ open (SHADOW, $shadow) || die "$!\n"; ++ while () ++ { ++ ++ next if /^#/; ++ ($acct,$passwd,$dummy)=split(/:/); ++ $PASSWORD{$acct}=$passwd; ++ } ++ close (SHADOW); + } +- close (SHADOW); + } + + while ( defined ($key=each %UID)) diff --git a/mail/courier-authlib/Makefile b/mail/courier-authlib/Makefile index 03babfe85151..a033447050b8 100644 --- a/mail/courier-authlib/Makefile +++ b/mail/courier-authlib/Makefile @@ -7,7 +7,7 @@ PORTNAME= courier-authlib PORTVERSION= 0.54 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= mail MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= courier diff --git a/mail/courier-authlib/files/patch-userdb::pw2userdb.in b/mail/courier-authlib/files/patch-userdb::pw2userdb.in new file mode 100644 index 000000000000..7cb79aa49b02 --- /dev/null +++ b/mail/courier-authlib/files/patch-userdb::pw2userdb.in @@ -0,0 +1,104 @@ +--- userdb/pw2userdb.in.orig Wed Jul 19 13:55:15 2000 ++++ userdb/pw2userdb.in Tue Mar 1 21:58:51 2005 +@@ -7,6 +7,8 @@ + # Copyright 1998 - 1999 Double Precision, Inc. See COPYING for + # distribution information. + ++# Adapted to BSD master.passwd ++ + use Getopt::Long; + + # +@@ -22,42 +24,66 @@ + if $vpopuid; + + $passwd="/etc/passwd" unless $passwd =~ /./; +-$shadow="/etc/shadow" unless $shadow =~ /./; ++$shadow="/etc/master.passwd" unless $shadow =~ /./; + + $domain="" unless $domain =~ /./; + $domain="\@$domain" if $domain =~ /./; + +-open(PASSWD, $passwd) || die "$!\n"; +- +-while () ++if (! $noshadow && $shadow =~ /master.passwd$/) + { +- chop if /\n$/; +- next if /^#/; +- ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); +- +- ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; +- +- $PASSWORD{$acct}=$passwd if $passwd ne "x"; +- $UID{$acct}=$uid; +- $GID{$acct}=$gid; +- $HOME{$acct}=$home; +- $SHELL{$acct}=$shell; +- +- $name =~ s/\|/./g; # Just in case +- $GECOS{$acct}=$name; +-} +-close (PASSWD); ++ open(PASSWD, $shadow) || die "$!\n"; + +-if ( -f $shadow && ! $noshadow) +-{ +- open (SHADOW, $shadow) || die "$!\n"; +- while () ++ while () + { ++ chop if /\n$/; + next if /^#/; +- ($acct,$passwd,$dummy)=split(/:/); ++ ($acct,$passwd,$uid,$gid,$class,$change,$expire,$name,$home,$shell)=split( /:/ ); ++ ++ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; ++ $name =~ s/\|/./g; # Just in case ++ + $PASSWORD{$acct}=$passwd; ++ $UID{$acct}=$uid; ++ $GID{$acct}=$gid; ++ $HOME{$acct}=$home; ++ $SHELL{$acct}=$shell; ++ $GECOS{$acct}=$name; ++ } ++ close (PASSWD); ++} else { ++ open(PASSWD, $passwd) || die "$!\n"; ++ ++ while () ++ { ++ chop if /\n$/; ++ next if /^#/; ++ ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); ++ ++ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; ++ ++ $PASSWORD{$acct}=$passwd if $passwd ne "x"; ++ $UID{$acct}=$uid; ++ $GID{$acct}=$gid; ++ $HOME{$acct}=$home; ++ $SHELL{$acct}=$shell; ++ ++ $name =~ s/\|/./g; # Just in case ++ $GECOS{$acct}=$name; ++ } ++ close (PASSWD); ++ ++ if ( -f $shadow && ! $noshadow) ++ { ++ open (SHADOW, $shadow) || die "$!\n"; ++ while () ++ { ++ ++ next if /^#/; ++ ($acct,$passwd,$dummy)=split(/:/); ++ $PASSWORD{$acct}=$passwd; ++ } ++ close (SHADOW); + } +- close (SHADOW); + } + + while ( defined ($key=each %UID)) -- cgit