I'm very pleased to announce the release of our new website and documentation using the new toolchain with Hugo and AsciiDoctor. To get more information about the new toolchain please read the FreeBSD Documentation Project Primer[1], Hugo docs[2] and AsciiDoctor docs[3]. Acknowledgment: Benedict Reuschling <bcr@> Glen Barber <gjb@> Hiroki Sato <hrs@> Li-Wen Hsu <lwhsu@> Sean Chittenden <seanc@> The FreeBSD Foundation [1] https://docs.FreeBSD.org/en/books/fdp-primer/ [2] https://gohugo.io/documentation/ [3] https://docs.asciidoctor.org/home/ Approved by: doceng, core
59 lines
2.1 KiB
Groff
59 lines
2.1 KiB
Groff
Index: rmuser.perl
|
|
===================================================================
|
|
RCS file: /home/ncvs/src/usr.sbin/adduser/rmuser.perl,v
|
|
retrieving revision 1.8.2.2
|
|
retrieving revision 1.8.2.2.2.2
|
|
diff -u -r1.8.2.2 -r1.8.2.2.2.2
|
|
--- rmuser.perl 2001/01/14 10:21:11 1.8.2.2
|
|
+++ rmuser.perl 2001/09/05 05:24:55 1.8.2.2.2.2
|
|
@@ -34,4 +34,6 @@
|
|
|
|
+use Fcntl;
|
|
+
|
|
sub LOCK_SH {0x01;}
|
|
sub LOCK_EX {0x02;}
|
|
sub LOCK_NB {0x04;}
|
|
@@ -42,7 +44,7 @@
|
|
umask(022);
|
|
$whoami = $0;
|
|
$passwd_file = "/etc/master.passwd";
|
|
-$new_passwd_file = "${passwd_file}.new.$$";
|
|
+$passwd_tmp = "/etc/ptmp";
|
|
$group_file = "/etc/group";
|
|
$new_group_file = "${group_file}.new.$$";
|
|
$mail_dir = "/var/mail";
|
|
@@ -311,10 +313,10 @@
|
|
|
|
print STDERR "Updating password file,";
|
|
seek(MASTER_PW, 0, 0);
|
|
- open(NEW_PW, ">$new_passwd_file") ||
|
|
- die "\n${whoami}: Error: Couldn't open file ${new_passwd_file}:\n $!\n";
|
|
- chmod(0600, $new_passwd_file) ||
|
|
- print STDERR "\n${whoami}: Warning: couldn't set mode of $new_passwd_file to 0600 ($!)\n\tcontinuing, but please check mode of /etc/master.passwd!\n";
|
|
+
|
|
+ sysopen(NEW_PW, $passwd_tmp, O_RDWR|O_CREAT|O_EXCL, 0600) ||
|
|
+ die "\n${whoami}: Error: Couldn't open file ${passwd_tmp}:\n $!\n";
|
|
+
|
|
$skipped = 0;
|
|
while (<MASTER_PW>) {
|
|
if (not /^\Q$login_name:/io) {
|
|
@@ -329,8 +331,8 @@
|
|
|
|
if ($skipped == 0) {
|
|
print STDERR "\n${whoami}: Whoops! Didn't find ${login_name}'s entry second time around!\n";
|
|
- unlink($new_passwd_file) ||
|
|
- print STDERR "\n${whoami}: Warning: couldn't unlink $new_passwd_file ($!)\n\tPlease investigate, as this file should not be left in the filesystem\n";
|
|
+ unlink($passwd_tmp) ||
|
|
+ print STDERR "\n${whoami}: Warning: couldn't unlink $passwd_tmp ($!)\n\tPlease investigate, as this file should not be left in the filesystem\n";
|
|
&unlockpw;
|
|
exit 1;
|
|
}
|
|
@@ -339,7 +341,7 @@
|
|
# Run pwd_mkdb to install the updated password files and databases
|
|
|
|
print STDERR " updating databases,";
|
|
- system('/usr/sbin/pwd_mkdb', '-p', ${new_passwd_file});
|
|
+ system('/usr/sbin/pwd_mkdb', '-p', ${passwd_tmp});
|
|
print STDERR " done.\n";
|
|
|
|
close(MASTER_PW); # Not useful anymore
|