| Server IP : 104.21.25.180 / Your IP : 162.159.115.42 Web Server : Apache/2.4.37 System : Linux almalinux.duckdns.org 4.18.0-553.111.1.el8_10.x86_64 #1 SMP Sun Mar 8 20:06:07 EDT 2026 x86_64 User : ricodeal ( 1046) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/libexec/usermin/chfn/ |
Upload File : |
#!/usr/bin/perl
# save.cgi
# Change the user's details and shell
require './chfn-lib.pl';
&ReadParse();
&error_setup($text{'save_err'});
# Force current values for those that can't be changed
@remote_user_info = getpwnam($remote_user);
@uinfo = split(/,/, $remote_user_info[6]);
$in{'real'} = $uinfo[0] if (!$config{'change_real'});
$in{'office'} = $uinfo[1] if (!$config{'change_office'});
$in{'ophone'} = $uinfo[2] if (!$config{'change_ophone'});
$in{'hphone'} = $uinfo[3] if (!$config{'change_hphone'});
$in{'shell'} = $remote_user_info[8] if (!$config{'change_shell'});
# Make sure values are set
$in{'shell'} =~ /\S/ || &error($text{'save_eshell2'});
$in{'real'} =~ /\S/ || &error($text{'save_ereal2'});
# Validate inputs
$in{'real'} =~ /[,:]/ && &error($text{'save_ereal'});
$in{'office'} =~ /[,:]/ && &error($text{'save_eoffice'});
$in{'ophone'} =~ /[,:]/ && &error($text{'save_eophone'});
$in{'hphone'} =~ /[,:]/ && &error($text{'save_ehphone'});
$in{'shell'} =~ /[,:]/ && &error($text{'save_eshell'});
# Change the details and shell
$err = &change_details($in{'real'}, $in{'office'}, $in{'ophone'}, $in{'hphone'},
$in{'shell'});
$err && &error("<tt>$err</tt>");
&ui_print_header(undef, $text{'save_title'}, "");
print &text($config{'change_shell'} ? 'save_desc' : 'save_desc2',
"<tt>$remote_user</tt>"),"<p>\n";
&ui_print_footer("/", $text{'index'});