mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-01 02:03:31 +00:00
remove group limits checks
This commit is contained in:
parent
c84f83e0c2
commit
9a43d0d77b
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=21023
@ -29,7 +29,7 @@
|
|||||||
# signal handling
|
# signal handling
|
||||||
# add only users who exist
|
# add only users who exist
|
||||||
#
|
#
|
||||||
# $Id: addgroup.tcl,v 1.5 1996/10/29 19:11:50 wosch Exp wosch $
|
# $Id: addgroup.tcl,v 1.1 1996/10/29 20:31:43 wosch Exp $
|
||||||
|
|
||||||
# set global variables
|
# set global variables
|
||||||
set etc_group "/etc/group"; #set etc_group "/usr/tmp/group"
|
set etc_group "/etc/group"; #set etc_group "/usr/tmp/group"
|
||||||
@ -66,23 +66,6 @@ proc double_name {groupmembers} {
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
# check group(5) limits
|
|
||||||
proc group_limit {string} {
|
|
||||||
set line_max 100; # max group line length
|
|
||||||
set groups_max 200; # max group members
|
|
||||||
|
|
||||||
if {[string length $string] >= $line_max} {
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
set l [split $string ","]
|
|
||||||
if {[llength $l] >= $groups_max} {
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# cleanup and die
|
# cleanup and die
|
||||||
proc Err {string} {
|
proc Err {string} {
|
||||||
upvar etc_group_new new
|
upvar etc_group_new new
|
||||||
@ -172,20 +155,12 @@ while {[gets $db line] >= 0 } {
|
|||||||
|
|
||||||
# group with no group members?
|
# group with no group members?
|
||||||
if {[string compare $y ""] == 0} {
|
if {[string compare $y ""] == 0} {
|
||||||
if {[group_limit "$line$groupmembers"] == 0} {
|
puts $db_new "$line$groupmembers"
|
||||||
puts $db_new "$line$groupmembers"
|
|
||||||
} else {
|
|
||||||
Err "group line too long: ``$line$groupmembers''"
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
if {[group_limit "$line,$groupmembers"] == 0} {
|
if {[double_name "$y,$groupmembers"] != 0} {
|
||||||
if {[double_name "$y,$groupmembers"] != 0} {
|
Err "\t$line,$groupmembers"
|
||||||
Err "\t$line,$groupmembers"
|
|
||||||
} else {
|
|
||||||
puts $db_new "$line,$groupmembers"
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
Err "group line too long: ``$line,$groupmembers''"
|
puts $db_new "$line,$groupmembers"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set done 1
|
set done 1
|
||||||
@ -198,11 +173,7 @@ while {[gets $db line] >= 0 } {
|
|||||||
if {$done == 0} {
|
if {$done == 0} {
|
||||||
for {set i $gid_start} {$i < $gid_max} {incr i} {
|
for {set i $gid_start} {$i < $gid_max} {incr i} {
|
||||||
if {[info exists gid($i)] == 0} {
|
if {[info exists gid($i)] == 0} {
|
||||||
if {[group_limit "$groupname:*:$i:$groupmembers"] == 0} {
|
puts $db_new "$groupname:*:$i:$groupmembers"
|
||||||
puts $db_new "$groupname:*:$i:$groupmembers"
|
|
||||||
} else {
|
|
||||||
Err "group line too long: ``$groupname:*:$i:$groupmembers''"
|
|
||||||
}
|
|
||||||
set done 1
|
set done 1
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
# SUCH DAMAGE.
|
# SUCH DAMAGE.
|
||||||
#
|
#
|
||||||
# $Id: adduser.perl,v 1.22 1996/12/07 21:25:12 ache Exp $
|
# $Id: adduser.perl,v 1.23 1996/12/23 00:10:19 mpp Exp $
|
||||||
|
|
||||||
|
|
||||||
# read variables
|
# read variables
|
||||||
@ -394,15 +394,6 @@ sub add_group {
|
|||||||
$groupmembers{$gid} .= "," if $groupmembers{$gid};
|
$groupmembers{$gid} .= "," if $groupmembers{$gid};
|
||||||
$groupmembers{$gid} .= "$name";
|
$groupmembers{$gid} .= "$name";
|
||||||
|
|
||||||
local(@l) = split(',', $groupmembers{$gid});
|
|
||||||
# group(5): A group cannot have more than 200 members.
|
|
||||||
# The maximum line length of /etc/group is 1024 characters.
|
|
||||||
# Longer lines will be skiped.
|
|
||||||
if ($#l >= 200 ||
|
|
||||||
length($groupmembers{$gid}) > 1024 - 50) { # 50 is for group name
|
|
||||||
warn "WARNING, maybe group line ``$gid{$gid}'' is to long or to\n" .
|
|
||||||
"much users in group, see group(5)\a\n";
|
|
||||||
}
|
|
||||||
return $name;
|
return $name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user