- This makes the proxy local password management the same between chpasswd.cgi 
and
   proxy.cgi
- Tested out on my vm testbed and was able to create and modify users and their 
passwords
   in the proxy.cgi page or modify a password for a specified user on the 
chpasswd.cgi
   page. This all happened successfully and was confirmed by testing out the 
local
   authentication.

Fixes: bug12755
Tested-by: Adolf Belka <[email protected]>
Signed-off-by: Adolf Belka <[email protected]>
---
 html/cgi-bin/proxy.cgi | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/html/cgi-bin/proxy.cgi b/html/cgi-bin/proxy.cgi
index c8e3576df..bdce2fa66 100644
--- a/html/cgi-bin/proxy.cgi
+++ b/html/cgi-bin/proxy.cgi
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2021  IPFire Team  <[email protected]>                     #
+# Copyright (C) 2007-2025  IPFire Team  <[email protected]>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -20,7 +20,6 @@
 ###############################################################################
 
 use strict;
-use Apache::Htpasswd;
 use Scalar::Util qw(looks_like_number);
 
 # enable only the following on debugging purpose
@@ -4050,15 +4049,7 @@ sub adduser
                close(FILE);
        } else {
                &deluser($str_user);
-
-               my %htpasswd_options = (
-                       passwdFile => "$userdb",
-                       UseMD5 => 1,
-               );
-
-               my $htpasswd = new Apache::Htpasswd(\%htpasswd_options);
-
-               $htpasswd->htpasswd($str_user, $str_pass);
+               &General::system("/usr/bin/htpasswd", "-bB", "-C 10", 
"$userdb", "$str_user", "$str_pass");
        }
 
        if ($str_group eq 'standard') { open(FILE, ">>$stdgrp");
-- 
2.49.0


Reply via email to