You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by he...@apache.org on 2021/05/16 16:19:57 UTC
svn commit: r1889935 - in /spamassassin:
branches/3.4/lib/Mail/SpamAssassin/Util.pm
trunk/lib/Mail/SpamAssassin/Util.pm
Author: hege
Date: Sun May 16 16:19:57 2021
New Revision: 1889935
URL: http://svn.apache.org/viewvc?rev=1889935&view=rev
Log:
Clean up get_user_groups(), tighten up group matching
Modified:
spamassassin/branches/3.4/lib/Mail/SpamAssassin/Util.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
Modified: spamassassin/branches/3.4/lib/Mail/SpamAssassin/Util.pm
URL: http://svn.apache.org/viewvc/spamassassin/branches/3.4/lib/Mail/SpamAssassin/Util.pm?rev=1889935&r1=1889934&r2=1889935&view=diff
==============================================================================
--- spamassassin/branches/3.4/lib/Mail/SpamAssassin/Util.pm (original)
+++ spamassassin/branches/3.4/lib/Mail/SpamAssassin/Util.pm Sun May 16 16:19:57 2021
@@ -1641,10 +1641,10 @@ sub receive_date {
sub get_user_groups {
my $suid = shift;
dbg("util: get_user_groups: uid is $suid\n");
- my ( $user, $passwd, $uid, $gid, $quota, $comment, $gcos, $dir, $shell, $expire ) = getpwuid($suid);
+ my ( $user, undef, undef, $gid, undef ) = getpwuid($suid);
my $rgids="$gid ";
- while ( my($name,$pw,$gid,$members) = getgrent() ) {
- if ( $members =~ m/\b$user\b/ ) {
+ while ( my($name,undef,$gid,$members) = getgrent() ) {
+ if ( grep { $_ eq $user } split(/ /, $members) ) {
$rgids .= "$gid ";
dbg("util: get_user_groups: added $gid ($name) to group list which is now: $rgids\n");
}
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm?rev=1889935&r1=1889934&r2=1889935&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm Sun May 16 16:19:57 2021
@@ -1801,7 +1801,7 @@ sub get_user_groups {
my ( $user, undef, undef, $gid, undef ) = getpwuid($suid);
my $rgids="$gid ";
while ( my($name,undef,$gid,$members) = getgrent() ) {
- if ( $members =~ m/(?:^| )\Q$user\E(?: |$)/ ) {
+ if ( grep { $_ eq $user } split(/ /, $members) ) {
$rgids .= "$gid ";
dbg("util: get_user_groups: added $gid ($name) to group list which is now: $rgids\n");
}