From f3fccdb91702ae90e321d72f597fca9ba9b87cc5 Mon Sep 17 00:00:00 2001 From: Marc Laporte Date: Mon, 14 Mar 2022 23:19:00 -0400 Subject: [PATCH 1/8] Fix a typo --- webmin/lang/en | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webmin/lang/en b/webmin/lang/en index 402fc8572..85a5144b8 100644 --- a/webmin/lang/en +++ b/webmin/lang/en @@ -1129,7 +1129,7 @@ twofactor_eauthyid=Authy user ID must be a number twofactor_eauthytoken=Authy token must be a number twofactor_eauthyotp=Authy token is invalid twofactor_enrolllink=You can now enroll for two-factor authentication in the Webmin Users module. -twofactor_url=To learn more about $1, see it's website at $2. +twofactor_url=To learn more about $1, see its website at $2. twofactor_etotpmodule=The Perl module $1 needed for two-factor authentication is not installed. Use the Perl Modules page in Webmin to install it. twofactor_qrcode=Enter the secret code $1 in the Google Authenticator app, or scan the QR code below. twofactor_etotpid=Invalid TOTP base32-encoded secret From a2a09dfc475b56c0c63ae130ea577f93b37e6ab4 Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Fri, 18 Mar 2022 23:58:05 +0200 Subject: [PATCH 2/8] Fix RHEL BIND config --- bind8/config-Redhat-Enterprise-Linux-6.0-ALL | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/bind8/config-Redhat-Enterprise-Linux-6.0-ALL b/bind8/config-Redhat-Enterprise-Linux-6.0-ALL index b4c280044..29ddfefb6 100644 --- a/bind8/config-Redhat-Enterprise-Linux-6.0-ALL +++ b/bind8/config-Redhat-Enterprise-Linux-6.0-ALL @@ -28,7 +28,6 @@ by_view=0 confirm_zone=1 confirm_rec=0 no_chroot=0 -chroot=/var/named/chroot relative_paths=0 rndc_cmd=rndc master_dir=/var/named @@ -44,6 +43,14 @@ signzone=dnssec-signzone checkconf=named-checkconf other_slaves=1 restart_cmd=restart +keygen=dnssec-keygen +tmpl_dnssec=0 +dnssec_period=21 +tmpl_dnssec_dt=1 +dnssectools_conf=/etc/dnssec-tools/dnssec-tools.conf +dnssectools_rollrec=/var/named/system.rollrec +dnssectools_keydir=/var/named/dtkeys +dnssectools_rollmgr_pidfile=/var/run/rollmgr.pid force_random=0 spf_record=0 dnssec_info=1 From 7deaf553c4ba203544cd147cd93596332961f4c9 Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Mon, 21 Mar 2022 21:00:15 +0200 Subject: [PATCH 3/8] Update contacts --- CHANGELOG | 2 +- README.md | 2 +- bin/language-manager | 2 +- bin/passwd | 2 +- bin/webmin | 6 +++--- filemin/CHANGELOG | 10 +++++----- filemin/unauthenticated/css/style.css | 2 +- update-from-repo.sh | 10 +++++----- 8 files changed, 18 insertions(+), 18 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 8b5e13061..f5ad00f63 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -215,7 +215,7 @@ More German translation updates, thanks to Raymond Vetter. ---- Changes since 1.730 ---- More German translation updates, thanks to Raymond Vetter. Norwegian updates, thanks to Stein-Aksel Basma. -The awesome new Authentic Theme by Ilia Rostovtsev is now included in the Webmin package. +The awesome new Authentic Theme by @iliajie is now included in the Webmin package. Catalan translation updates from Jaume Badiella. ---- Changes since 1.740 ---- Norwegian updates, thanks to Stein-Aksel Basma. diff --git a/README.md b/README.md index 821c8c9ed..6f73dd2e2 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ Complete set of documentation for Webmin and all of its modules can be found at ### Contributors * [Joe Cooper](https://github.com/swelljoe) -* [Ilia Rostovtsev](https://github.com/rostovtsev) +* [Ilia Ross](https://github.com/iliajie) * [Kay Marquardt](https://github.com/gnadelwartz) * [Nawawi Jamili](https://github.com/nawawi) + [57 more..](https://github.com/webmin/webmin/graphs/contributors) diff --git a/bin/language-manager b/bin/language-manager index ad6db2385..13d7215ba 100755 --- a/bin/language-manager +++ b/bin/language-manager @@ -1916,4 +1916,4 @@ Verbosely print processed files and provide detailed output. By detault, verbose =head1 LICENSE AND COPYRIGHT -Copyright 2020 Ilia Rostovtsev +Copyright 2022 Ilia Ross diff --git a/bin/passwd b/bin/passwd index 26ffc5605..6e130315f 100755 --- a/bin/passwd +++ b/bin/passwd @@ -236,5 +236,5 @@ Set new user password. Using this option may be unsecure. Copyright 2021 Jamie Cameron Joe Cooper - Ilia Rostovtsev + Ilia Ross diff --git a/bin/webmin b/bin/webmin index 0c90669ac..6cd5f07ae 100755 --- a/bin/webmin +++ b/bin/webmin @@ -418,8 +418,8 @@ non-0 on error =head1 LICENSE AND COPYRIGHT -Copyright 2021 - Jamie Cameron , +Copyright 2022 + Jamie Cameron , Joe Cooper , - Ilia Rostovtsev . + Ilia Ross . diff --git a/filemin/CHANGELOG b/filemin/CHANGELOG index 1bf7c1711..cc3e86726 100644 --- a/filemin/CHANGELOG +++ b/filemin/CHANGELOG @@ -1,7 +1,7 @@ -- Version 0.9.6 -- - Fixed `Undefined subroutine &filemin::ceil Caused on some systems by not including POSIX package in filemin-lib.pl. - - Major Authentic interface improvement by Ilia Rostovtsev + - Major Authentic interface improvement by @iliajie 1. Working sorting files by size (with next Authentic Theme - perfectly, now just alright). This fix will also prevent fatal code breaks despite of user settings 2. Store user chose on columns sorting upon page refresh @@ -14,7 +14,7 @@ #42 fixed: - Fixing conflict with Authentic Theme codeMirror - By Ilia. + by @iliajie #46 fixed: - Module is now installable from Usermin. @@ -29,7 +29,7 @@ -- Version 0.9.5 -- - Made top level menu items translatable. - Added https://github.com/Real-Gecko/filemin/pull/29 - Selected rows also highlight on hover + color tweaks, by https://github.com/rostovtsev + Selected rows also highlight on hover + color tweaks, by https://github.com/iliajie - Some code cleanup, got rid of Regexp::Common and URI dependencies. Thanks to Jamie Cameron. - Added error message if file saving fails. @@ -64,7 +64,7 @@ #21 fixed: - Added Codemirror to module for syntax highlighting, thanks to https://github.com/pabloko for solution. - - Under Authentic 14.01 now works too, thanks to https://github.com/rostovtsev for fix. + - Under Authentic 14.01 now works too, thanks to https://github.com/iliajie for fix. #24 fixed: - Added zip compression method, user now can select between 'zip' and 'tar' compression methods. @@ -169,7 +169,7 @@ Mielstone reached: #1 fixed: - After long discussion upper-left toolbar finally looks good in modern interface - - Thanks to https://github.com/Goeny for his brilliant solution and https://github.com/rostovtsev for debugging + - Thanks to https://github.com/Goeny for his brilliant solution and https://github.com/iliajie for debugging #3 fixed: - Some misspellings fixed diff --git a/filemin/unauthenticated/css/style.css b/filemin/unauthenticated/css/style.css index 6f5cd9cea..41d7dbe83 100644 --- a/filemin/unauthenticated/css/style.css +++ b/filemin/unauthenticated/css/style.css @@ -133,7 +133,7 @@ select, input[type="button"][onclick], button.btn-default.file_chooser_button, b a:hover { cursor:pointer; } -/* by https://github.com/rostovtsev */ +/* by https://github.com/iliajie */ #list_form tbody tr.checked:not(.m-active-o):not(.m-not-active):hover, #list_form tbody tr:hover:not(.m-active-o):not(.m-not-active) { background: #d3e4f4 !important; diff --git a/update-from-repo.sh b/update-from-repo.sh index 22935749e..63a04bbd5 100755 --- a/update-from-repo.sh +++ b/update-from-repo.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################# # Update webmin/usermin to the latest develop version from GitHub repo -# inspired by authentic-theme/theme-update.sh script, thanks @rostovtsev +# inspired by authentic-theme/theme-update.sh script, thanks @iliajie # VERS="1.6.9, 2020-06-18" # @@ -117,8 +117,8 @@ Examples: ${IAM} -force OR ${IAM} -yes same but without asking, - ${IAM} -force -repo:rostovtsev/webmin - update from rostovtsev's repository without asking + ${IAM} -force -repo:webmin/webmin + update from webmin's repository without asking ${IAM} -file module/module.info pull module.info for given module @@ -132,8 +132,8 @@ Examples: ${IAM} -file module/lang/ pull all files in lang/ dir of a module - ${IAM} -fore -repo:rostovtsev/webmin -file */lang/ - pull lang files for all existing */lang/ dirs from rostovtsev + ${IAM} -fore -repo:webmin/webmin -file */lang/ + pull lang files for all existing */lang/ dirs from webmin repository without asking Exit codes: From 69c3247d3409027c75bf600af4636e460e979eab Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Mon, 21 Mar 2022 21:43:56 +0200 Subject: [PATCH 4/8] Add new email for GPG setup --- webmin/webmin-lib.pl | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/webmin/webmin-lib.pl b/webmin/webmin-lib.pl index 960f7486f..ac6834528 100755 --- a/webmin/webmin-lib.pl +++ b/webmin/webmin-lib.pl @@ -42,8 +42,9 @@ our $primary_port = 80; our $webmin_key_email = "jcameron\@webmin.com"; our $webmin_key_fingerprint = "1719 003A CE3E 5A41 E2DE 70DF D97A 3AE9 11F6 3C51"; -our $authentic_key_email = "ilia\@rostovtsev.io"; -our $authentic_key_email_old = "ilia\@rostovtsev.ru"; +our $authentic_key_email = "gpg@ilia.engineer"; +our $authentic_key_email_old = "ilia\@rostovtsev.io"; +our $authentic_key_email_older = "ilia\@rostovtsev.ru"; our $authentic_key_fingerprint = "EC60 F3DA 9CB7 9ADC CF56 0D1F 121E 166D D9C8 21AB"; our $standard_host = $primary_host; @@ -639,7 +640,9 @@ my ($ok, $err) = &import_gnupg_key( return ($ok, $err) if ($ok); ($ok, $err) = &import_gnupg_key( - $authentic_key_email."|".$authentic_key_email_old, + $authentic_key_email."|". + $authentic_key_email_old."|". + $authentic_key_email_older, $authentic_key_fingerprint, "$root_directory/authentic-theme/THEME.pgp"); return ($ok, $err) if ($ok); From 5662ee9062410569950ba700e8285599f9e690fa Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Mon, 21 Mar 2022 22:01:30 +0200 Subject: [PATCH 5/8] Fix missed escape for @ --- webmin/webmin-lib.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webmin/webmin-lib.pl b/webmin/webmin-lib.pl index ac6834528..15092a905 100755 --- a/webmin/webmin-lib.pl +++ b/webmin/webmin-lib.pl @@ -42,7 +42,7 @@ our $primary_port = 80; our $webmin_key_email = "jcameron\@webmin.com"; our $webmin_key_fingerprint = "1719 003A CE3E 5A41 E2DE 70DF D97A 3AE9 11F6 3C51"; -our $authentic_key_email = "gpg@ilia.engineer"; +our $authentic_key_email = "gpg\@ilia.engineer"; our $authentic_key_email_old = "ilia\@rostovtsev.io"; our $authentic_key_email_older = "ilia\@rostovtsev.ru"; our $authentic_key_fingerprint = "EC60 F3DA 9CB7 9ADC CF56 0D1F 121E 166D D9C8 21AB"; From 6519246aef91ae2cfe8a9c654b2bef9f7e94f1e2 Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Mon, 21 Mar 2022 22:45:59 +0200 Subject: [PATCH 6/8] Add ability to update the key's contacts --- webmin/webmin-lib.pl | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/webmin/webmin-lib.pl b/webmin/webmin-lib.pl index 15092a905..fdecd81de 100755 --- a/webmin/webmin-lib.pl +++ b/webmin/webmin-lib.pl @@ -43,8 +43,6 @@ our $webmin_key_email = "jcameron\@webmin.com"; our $webmin_key_fingerprint = "1719 003A CE3E 5A41 E2DE 70DF D97A 3AE9 11F6 3C51"; our $authentic_key_email = "gpg\@ilia.engineer"; -our $authentic_key_email_old = "ilia\@rostovtsev.io"; -our $authentic_key_email_older = "ilia\@rostovtsev.ru"; our $authentic_key_fingerprint = "EC60 F3DA 9CB7 9ADC CF56 0D1F 121E 166D D9C8 21AB"; our $standard_host = $primary_host; @@ -640,10 +638,7 @@ my ($ok, $err) = &import_gnupg_key( return ($ok, $err) if ($ok); ($ok, $err) = &import_gnupg_key( - $authentic_key_email."|". - $authentic_key_email_old."|". - $authentic_key_email_older, - $authentic_key_fingerprint, + $authentic_key_email, $authentic_key_fingerprint, "$root_directory/authentic-theme/THEME.pgp"); return ($ok, $err) if ($ok); @@ -664,8 +659,21 @@ return (0) if (!-r $path); my @keys = &list_keys(); foreach my $k (@keys) { my $fp = &key_fingerprint($k); - return ( 0 ) if ($k->{'email'}->[0] =~ /^$email$/ && - $fp && $fp eq $finger); + # Key already been imported with correct contact + if ($k->{'email'}->[0] eq $email && $fp && $fp eq $finger) { + return (0); + } + # Key been imported before but contact changed, delete first + elsif ($k->{'email'}->[0] ne $email) { + my $key = $finger; + $key =~ s/\s+//g; + if ($k->{'key'} eq $key) { + my $out = &backquote_logged("$gpgpath --batch --delete-key $k->{'key'} 2>&1"); + if ($?) { + return (2, $out); + } + } + } } # Import it if not From 1066fd79af1cd2aa7796ee09b7165c26e575816b Mon Sep 17 00:00:00 2001 From: Ilia Rostovtsev Date: Mon, 21 Mar 2022 23:22:45 +0200 Subject: [PATCH 7/8] Fix GPG fingerprint extraction --- webmin/gnupg-lib.pl | 2 +- webmin/webmin-lib.pl | 14 ++++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/webmin/gnupg-lib.pl b/webmin/gnupg-lib.pl index d46336bd9..56ff07a08 100755 --- a/webmin/gnupg-lib.pl +++ b/webmin/gnupg-lib.pl @@ -100,7 +100,7 @@ local $_; &clean_language(); open(GPG, "$gpgpath --fingerprint ".quotemeta($_[0]->{'name'}->[0])." 2>/dev/null |"); while() { - if (/fingerprint\s+=\s+(.*)/) { + if (/([0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4}\s+[0-9A-F]{4})/i) { $fp = $1; } } diff --git a/webmin/webmin-lib.pl b/webmin/webmin-lib.pl index fdecd81de..a99564e74 100755 --- a/webmin/webmin-lib.pl +++ b/webmin/webmin-lib.pl @@ -664,14 +664,12 @@ foreach my $k (@keys) { return (0); } # Key been imported before but contact changed, delete first - elsif ($k->{'email'}->[0] ne $email) { - my $key = $finger; - $key =~ s/\s+//g; - if ($k->{'key'} eq $key) { - my $out = &backquote_logged("$gpgpath --batch --delete-key $k->{'key'} 2>&1"); - if ($?) { - return (2, $out); - } + elsif ($k->{'email'}->[0] ne $email && $fp && $fp eq $finger) { + my $finger_ = $finger; + $finger_ =~ s/\s+//g; + my $out = &backquote_logged("$gpgpath --batch --delete-key $finger_ 2>&1"); + if ($?) { + return (2, $out); } } } From a7790c5fc7c7d537fb78885a0bb6bfd486c38868 Mon Sep 17 00:00:00 2001 From: Ilia Date: Tue, 22 Mar 2022 11:09:41 +0200 Subject: [PATCH 8/8] Fix to escape even static params --- webmin/webmin-lib.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/webmin/webmin-lib.pl b/webmin/webmin-lib.pl index a99564e74..16bd6c505 100755 --- a/webmin/webmin-lib.pl +++ b/webmin/webmin-lib.pl @@ -665,9 +665,9 @@ foreach my $k (@keys) { } # Key been imported before but contact changed, delete first elsif ($k->{'email'}->[0] ne $email && $fp && $fp eq $finger) { - my $finger_ = $finger; - $finger_ =~ s/\s+//g; - my $out = &backquote_logged("$gpgpath --batch --delete-key $finger_ 2>&1"); + my $lfinger = $finger; + $lfinger =~ s/\s+//g; + my $out = &backquote_logged("$gpgpath --batch --delete-key ".quotemeta($lfinger)." 2>&1"); if ($?) { return (2, $out); } @@ -676,7 +676,7 @@ foreach my $k (@keys) { # Import it if not &list_keys(); -my $out = &backquote_logged("$gpgpath --import $path 2>&1"); +my $out = &backquote_logged("$gpgpath --import ".quotemeta($path)." 2>&1"); if ($?) { return (2, $out); }