version 1.8, 2002/09/19 02:02:59
|
version 1.10, 2009/07/17 02:20:59
|
Line 5
|
Line 5
|
# pwchange - setuid script to change unix passwords |
# pwchange - setuid script to change unix passwords |
# |
# |
# YEAR=2001 |
# YEAR=2001 |
# 10/23,11/13,11/15 Scott Harrison |
|
# |
# |
# YEAR=2002 |
# YEAR=2002 |
# 02/19 Matthew Hall |
# 02/19 Matthew Hall |
Line 53 foreach (split(//,$pword)) {if ((ord($_)
|
Line 52 foreach (split(//,$pword)) {if ((ord($_)
|
exit 3 if $pbad; |
exit 3 if $pbad; |
|
|
# --------------------------------------------------------- Call system command |
# --------------------------------------------------------- Call system command |
open OUT,"|passwd --stdin $safe >/dev/null"; |
my $distro; |
print OUT $pword; |
if (open(PIPE,"perl distprobe|")) { |
print OUT "\n"; |
$distro = <PIPE>; |
close OUT; |
close(PIPE); |
|
} |
|
if ($distro =~ /^ubuntu|debian/) { |
|
open(OUT,"|/usr/sbin/usermod -p `mkpasswd $pword` $safe"); |
|
close(OUT); |
|
} else { |
|
open(OUT,"|passwd --stdin $safe >/dev/null"); |
|
print OUT $pword; |
|
print OUT "\n"; |
|
close(OUT); |
|
} |
|
|
# --------------------------------------- exit with status of command execution |
# --------------------------------------- exit with status of command execution |
exit $?/256; |
exit $?/256; |