Compare commits

...

641 Commits

Author SHA1 Message Date
Ilia Ross
548c078813 Fix not to truncate usernames 2024-06-18 20:23:22 +03:00
Ilia Ross
76ccb2b7ed Fix support for Chrony in Debian systems 2024-06-17 15:09:42 +03:00
Ilia Ross
61d2081371 Add to support more passible options to systemd service file 2024-06-16 01:55:03 +03:00
Ilia Ross
458916b4d8 Fix to simplify make_date calls 2024-06-16 01:48:14 +03:00
Jamie Cameron
37451ad905 Merge pull request #2197 from vsc55/fix-2196
Fix metod detect Linux Gentoo.
2024-06-15 09:50:06 -07:00
Javier Pastor
9eec58a1f1 Fix metod detect Linux Gentoo. 2024-06-15 18:41:54 +02:00
Ilia Ross
178f527afa Fix to return an actual value 2024-06-15 16:50:04 +03:00
Jamie Cameron
cd1555b3e1 Merge branch 'master' of github.com:webmin/webmin 2024-06-12 16:53:02 -07:00
Jamie Cameron
2d7cfca67f Prevent duplicate also-notify and allow-transfer IPs 2024-06-12 16:52:50 -07:00
Jamie Cameron
e92a35b3ed Merge pull request #2195 from webmin/dev/xterm-acls-allow-not-enforce-sudo
Fix to allow disabling the enforcement of sudo-capable logins
2024-06-12 15:47:08 -07:00
Ilia Ross
e35efd0f00 Fix to always show the field 2024-06-13 01:36:41 +03:00
Ilia Ross
a12f385a5b Fix to consider user with the same name 2024-06-13 01:07:21 +03:00
Ilia Ross
5dc7cfafd7 Fix to allow disabling the enforcement of sudo-capable logins 2024-06-12 20:14:06 +03:00
Jamie Cameron
35aee74311 Merge pull request #2194 from webmin/dev/xterm-start-with-sudocapable
Fix to start with a sudo-capable user if possible
2024-06-11 18:19:05 -07:00
Ilia Ross
d04dfdf157 Fix to simplify the test 2024-06-12 01:20:29 +03:00
Ilia Ross
41f1adf0df Fix to start with a sudo-capable user if possible 2024-06-11 15:31:00 +03:00
Ilia Ross
1ae01bed8d Fix to support theme styling for embedded calendar 2024-06-10 16:34:29 +03:00
Ilia Ross
4a6f5d9a6a Fix not to load images by default and ask 2024-06-10 14:23:18 +03:00
Ilia Ross
bb3a4bc1e8 Fix font size consistency 2024-06-10 13:48:14 +03:00
Jamie Cameron
084c117547 Merge pull request #2193 from webmin/dev/embed-calendar
Add support for embedding calendar events inline in email messages
2024-06-09 18:48:18 -07:00
Ilia Ross
0221a092b9 Drop duplicate code
https://github.com/webmin/webmin/pull/2193#discussion_r1632362334
2024-06-09 21:16:52 +03:00
Ilia Ross
535d4173b3 Fix to factor out code to separate functions to be available in Usermin 2024-06-09 19:59:50 +03:00
Ilia Ross
20d481e96b Add further margin fixes 2024-06-09 19:13:52 +03:00
Ilia Ross
0256ee47f2 Fix block margin for perfect alignment 2024-06-09 16:16:52 +03:00
Ilia Ross
6af5ed6e2f Fix margin for inner content 2024-06-09 16:09:44 +03:00
Ilia Ross
abeff44b1a Add further improvements to TZs 2024-06-09 04:39:53 +03:00
Ilia Ross
35298efd8a Fix timezones 2024-06-09 04:14:32 +03:00
Ilia Ross
3fa687e716 Fix bugs 2024-06-09 03:49:43 +03:00
Ilia Ross
43fc057484 Add further indent improvements 2024-06-09 03:24:23 +03:00
Ilia Ross
70e9a1c00b Fix indentation 2024-06-09 03:14:50 +03:00
Ilia Ross
d21188c2ad Add improvements to mail frame interactions 2024-06-09 03:06:53 +03:00
Ilia Ross
a780103e2f Fix to improve calendar styles 2024-06-09 02:45:51 +03:00
Ilia Ross
4014293760 Fix to resize embedding iframe for content to fit on view details 2024-06-09 01:55:56 +03:00
Ilia Ross
ba3be31335 Fix to resize iframe if called by some elements from inside 2024-06-09 01:53:36 +03:00
Ilia Ross
adb3d0bb67 Revert "Fix to expose mail iframe resize function"
This reverts commit cd9bc8b7c4.
2024-06-09 01:42:12 +03:00
Ilia Ross
cd9bc8b7c4 Fix to expose mail iframe resize function 2024-06-09 01:16:21 +03:00
Ilia Ross
e1ebcf0506 Fix code to fit within an 80-character width 2024-06-09 01:06:27 +03:00
Ilia Ross
17a27dbe00 Fix to drop showing organizer time unless TZ is explicitly given 2024-06-09 00:48:36 +03:00
Ilia Ross
e36e943251 Fix to keep calendar cell always in right size 2024-06-09 00:31:39 +03:00
Ilia Ross
95ee1e2f2d Add support to embed iCalendar to email message 2024-06-08 23:52:59 +03:00
Ilia Ross
37cde80bbe Fix standard description to replace new lines to HTML break 2024-06-08 23:36:59 +03:00
Ilia Ross
45852664fe Add further fixes and improvements to the processor 2024-06-08 23:19:46 +03:00
Ilia Ross
00885b1f76 Fix location detection 2024-06-08 18:40:35 +03:00
Ilia Ross
cce8911f0f Add additional details to the object 2024-06-08 16:53:25 +03:00
Ilia Ross
3a151469c7 Add proper date parsing and storing extensive details about event 2024-06-08 16:47:08 +03:00
Ilia Ross
e3b94dc458 Fix summary match for strings like SUMMARY;LANGUAGE=fr-CA 2024-06-08 02:18:20 +03:00
Jamie Cameron
cde548ada3 Merge pull request #2192 from webmin/dev/websocket-url-proxy-rely
Set websocket URL depending on the proxy unless defined in config
2024-06-06 20:39:03 -07:00
Ilia Ross
00d0a89630 Set socket URL depending on the proxy unless defined in config 2024-06-07 01:15:27 +03:00
Ilia Ross
9c971202b3 Remove debug 2024-06-07 00:47:47 +03:00
Ilia Ross
2aa3bce4da Fix explicitly set module name from the caller 2024-06-07 00:35:41 +03:00
Ilia Ross
4103177d1e Fix dependencies [build] 2024-06-06 22:55:39 +03:00
Jamie Cameron
31b6cdc82b Merge branch 'master' of github.com:webmin/webmin 2024-06-06 08:34:03 -07:00
Jamie Cameron
fd8c634277 Zone key record might not exist https://forum.virtualmin.com/t/security-updates/127159 2024-06-06 08:33:34 -07:00
Ilia Ross
596ba13b1e Add logic to store iCalendars 2024-06-06 01:59:58 +03:00
Ilia Ross
5e684bf41b Add improvements to iCalendar parser 2024-06-05 03:34:33 +03:00
Jamie Cameron
356c8f7f53 Merge pull request #2191 from webmin/dev/websockets-funcs-are-global
Improve WebSockets API
2024-06-04 16:27:40 -07:00
Ilia Ross
185465351a Fix to use named loop variable 2024-06-05 00:07:44 +03:00
Ilia Ross
8d84e7313a Fix to call function properly 2024-06-04 23:54:13 +03:00
Ilia Ross
71e37adfed Add ability to clean all modules with websockets=1 on the .info 2024-06-04 19:55:25 +03:00
Ilia Ross
af912d9539 Add API to get WebSocket URL 2024-06-04 19:07:34 +03:00
Ilia Ross
5b31c7df84 Factor out WebSockets port and host options to global config 2024-06-04 18:43:34 +03:00
Ilia Ross
55b5939194 Move websocket functions to be always available 2024-06-04 15:48:06 +03:00
Jamie Cameron
00ddfd4d05 Also cleanup websockets 2024-06-03 18:42:31 -07:00
Jamie Cameron
2d23a3503e Fix spacing 2024-06-03 18:34:59 -07:00
Jamie Cameron
a838d11a26 No need for a loop to process a 1-element array 2024-06-03 18:29:56 -07:00
Jamie Cameron
5f28a28d8d Merge pull request #2189 from webmin/dev/icalendar-event-parser
Add support to parse calendar events files #2160
2024-06-03 16:05:49 -07:00
Ilia Ross
e13df24539 Fix to assign argument array before anything else 2024-06-04 00:54:55 +03:00
Ilia Ross
4f7924338d Add missing websockets-lib-funcs.pl file to the build #2190
[build]
2024-06-04 00:48:35 +03:00
Ilia Ross
3a1d609579 Add support to parse calendar events files 2024-06-03 20:58:38 +03:00
Jamie Cameron
e441427031 Merge pull request #2170 from webmin/dev/logviewer-custom-units
Add support for additional units in systemd log viewer
2024-06-01 09:57:19 -07:00
Ilia Ross
469857a41e Fix to use links as is
https://github.com/webmin/webmin/pull/2170#discussion_r1623004037
2024-06-01 18:37:28 +03:00
Ilia Ross
e47c82e7e8 Fix cron id format [build] 2024-06-01 15:32:43 +03:00
Ilia Ross
a0f6dd935c Fix to favour lexically scoped variable over global 2024-06-01 15:31:50 +03:00
Jamie Cameron
e302b706ec Add a default option for mynetworks_style https://github.com/webmin/webmin/issues/2174 2024-05-31 16:26:56 -07:00
Jamie Cameron
8c7fc88d51 Use more accurate wording https://github.com/webmin/webmin/issues/2174 2024-05-31 16:25:11 -07:00
Jamie Cameron
7b4d905eb6 Merge branch 'master' of github.com:webmin/webmin 2024-05-31 16:02:57 -07:00
Jamie Cameron
a1a6f669b2 Use a unique ID for webmin crons created in the same process at the same time https://forum.virtualmin.com/t/webmin-server-stauts/126983 2024-05-31 16:02:41 -07:00
Jamie Cameron
0298d884ef Merge pull request #2182 from webmin/dev/take-out-ws-lib-and-make-it-work-with-themes
Dev/take-out-ws-lib-and-make-it-work-with-themes
2024-05-31 13:40:31 -07:00
Ilia Ross
5a8b3467a1 Fix to consider themes using websockets too 2024-05-31 23:04:19 +03:00
Ilia Ross
17fb8304c3 Fix to take out WebSockets library 2024-05-31 22:58:27 +03:00
Jamie Cameron
5cd88dad43 Merge pull request #2181 from webmin/dev/fix-proftpd-mods-load
Fix how modules are loaded in ProFTPd
2024-05-31 12:41:50 -07:00
Ilia Ross
c15e7a5e5e Fix how modules are loaded in ProFTPd 2024-05-31 19:55:37 +03:00
Jamie Cameron
fad464be47 Merge pull request #2180 from webmin/dev/better-xterm-logging
Dev/better-xterm-logging
2024-05-31 08:57:39 -07:00
Ilia Ross
489db4c769 Fix to store logs in var directory 2024-05-31 16:54:36 +03:00
Ilia Ross
cc663af3df Fix to log username 2024-05-31 16:51:08 +03:00
Ilia Ross
0b58cd5197 Fix to print log nicely 2024-05-31 16:31:56 +03:00
Ilia Ross
dbd16c21cc Fix to drop extra new line [build] 2024-05-31 15:52:50 +03:00
Ilia Ross
8ddabb35b6 Fix test for ports below zero and put port number to error message 2024-05-31 15:50:34 +03:00
Ilia Ross
8476206da8 Merge pull request #2179 from webmin/dev/impove-status-module
Dev/impove-status-module
2024-05-31 13:37:18 +03:00
Ilia Ross
e0085e82d4 Fix to remove colon in button text as its relation is obvious 2024-05-31 13:10:18 +03:00
Ilia Ross
b697c134f1 Fix to break status icons to a new line 2024-05-31 12:15:02 +03:00
Ilia Ross
5d363d60fe Fix to break remotes to a new line without pointless limits 2024-05-31 12:14:45 +03:00
Ilia Ross
f06bc871dc Fix to break each icon to a new line 2024-05-31 12:13:33 +03:00
Ilia Ross
45e16aeeac Revert "[build] - Test collect_interval=5 preset"
This reverts commit 9be50b5aef.
2024-05-30 15:30:01 +03:00
Ilia Ross
9be50b5aef [build] - Test collect_interval=5 preset 2024-05-30 15:01:27 +03:00
Ilia Ross
80c7c7794c Fix saving SMTP TLS client security level #2177 2024-05-30 12:28:44 +03:00
Ilia Ross
decb55b8ff Add support for storing replaced text values and keys #2176
9e0d4cd9b6
2024-05-30 02:39:19 +03:00
Jamie Cameron
d061a190ac Handle case where FPM config contains no PHP options yet https://forum.virtualmin.com/t/pfp-fpm-default-configuration/127002 2024-05-29 16:26:48 -07:00
Jamie Cameron
6d89004446 Merge branch 'master' of github.com:webmin/webmin 2024-05-29 13:22:51 -07:00
Jamie Cameron
9817085c70 Delete PID file on shutdown 2024-05-29 13:22:47 -07:00
Ilia Ross
ca3362ee84 Fix to properly test fetched filtered content 2024-05-29 19:20:15 +03:00
Ilia Ross
e88ba87eae Add a message for progressive logs with no data 2024-05-29 17:38:28 +03:00
Ilia Ross
a420c7142f Fix to use hash for mapping since select names 2024-05-29 15:35:41 +03:00
Ilia Ross
6f37dc94bf Revert the change to hide logs from other modules yet
https://github.com/webmin/webmin/pull/2170#discussion_r1618145017
2024-05-29 11:30:53 +03:00
Ilia Ross
c59a200725 Fix functions name 2024-05-29 03:11:28 +03:00
Ilia Ross
e56aa7711c Add status handler function 2024-05-29 03:11:18 +03:00
Ilia Ross
b480b4caa3 Fix SPA themes have own control over onbeforeunload event 2024-05-29 01:37:43 +03:00
Ilia Ross
db456ad458 Add crucial calls abortion control 2024-05-29 01:11:53 +03:00
Ilia Ross
9513d85157 Fix to just always call it Filter 2024-05-28 22:59:45 +03:00
Ilia Ross
68b547d55a Fix to include forwarded message on empty body
a268373550 (r142447419)

[build]
2024-05-28 16:56:23 +03:00
Ilia Ross
dccc3fb10e Fix to call check right away
https://github.com/webmin/webmin/pull/2170#discussion_r1616387257
2024-05-28 00:08:23 +03:00
Jamie Cameron
d6bed07aae Delete obsolete java applet for running strace 2024-05-27 12:17:51 -07:00
Ilia Ross
bb7938a0f5 Add support for tailing logs in real time 2024-05-27 21:52:24 +03:00
Ilia Ross
8164480b48 Fix lines bug in journalctl 2024-05-27 18:08:57 +03:00
Ilia Ross
4155fdb4c5 Fix not to use bare words 2024-05-27 15:05:15 +03:00
Ilia Ross
19efd89c28 Fix bug when hiding controls 2024-05-27 14:53:01 +03:00
Ilia Ross
f911137624 Add module config and other buttons in case index page is bypassed 2024-05-27 14:40:06 +03:00
Ilia Ross
d4ac34e4b5 Fix to show right title when viewing journal 2024-05-27 14:39:23 +03:00
Ilia Ross
5323bda372 Fix to limit select width not to break the page on long systemd entries 2024-05-27 14:37:40 +03:00
Ilia Ross
1b1ac686e3 Fix to redirect straight to log view or show error 2024-05-27 13:57:27 +03:00
Ilia Ross
75e9323429 Rename the old logging system to "System Logs RS" to free up the name for actual systemd-journald 2024-05-27 13:47:10 +03:00
Ilia Ross
554b439bf8 Fix to drop redundant support for extra units 2024-05-27 00:56:42 +03:00
Ilia Ross
2f9a0b3f21 Add support for showing messages all units and filter by since
Fix numerous of other bugs:

  1. No `tac` for `journalctl` as there is a special `-r` flag
  2. No using tail for `journalctl`
2024-05-27 00:52:45 +03:00
Jamie Cameron
f457b971a7 Check if an NFS server is actually installed 2024-05-26 11:35:24 -07:00
Jamie Cameron
f5252d3f09 Merge branch 'master' of github.com:webmin/webmin 2024-05-25 22:19:28 -07:00
Jamie Cameron
60a9419cc3 Use static routes to set the default gateway https://forum.virtualmin.com/t/ubuntu-and-network-configurations/126890 2024-05-25 22:18:53 -07:00
Ilia Ross
cc2502737f Add support for additional units in systemd log viewer 2024-05-26 01:12:39 +03:00
Jamie Cameron
0cbd11335d Don't show procmail icon if controlled by Virtualmin https://github.com/virtualmin/virtualmin-gpl/issues/818 2024-05-25 11:42:02 -07:00
Ilia Ross
f9198b0fbd Update translations 2024-05-25 01:40:22 +03:00
Jamie Cameron
bb24e2bbdd Merge pull request #2168 from webmin/dev/firewalld-block-ip
Add support for blocking a given IP temporarily or permanently
2024-05-24 15:10:49 -07:00
Ilia Ross
a86eb6ff46 Fix to use substitution 2024-05-25 00:58:57 +03:00
Ilia Ross
d2420038f9 Update translations 2024-05-24 23:20:43 +03:00
Ilia Ross
26625786cb Fix layout 2024-05-24 23:16:51 +03:00
Ilia Ross
3f2023d174 Update translations 2024-05-24 22:55:30 +03:00
Ilia Ross
6b190a6cba Add support for blocking a given IP temporarily or permanently 2024-05-24 22:30:54 +03:00
Jamie Cameron
5c465a587c Add function to clear the Webmin cache for a URL 2024-05-23 15:17:27 -07:00
Jamie Cameron
61f631c1f7 Add more choices for smtpd_sasl_security_options 2024-05-22 14:30:19 -07:00
Jamie Cameron
40c1c30ae2 Don't show the last perl eval faiure unless full error reporting is enabled, because it scares the users https://github.com/virtualmin/virtualmin-gpl/issues/813 2024-05-20 16:22:59 -07:00
Jamie Cameron
d805878186 Merge branch 'master' of github.com:webmin/webmin 2024-05-20 13:29:46 -07:00
Jamie Cameron
84d46adcee There are only 65536 ports https://github.com/webmin/webmin/discussions/2161 2024-05-20 13:29:26 -07:00
Jamie Cameron
b740f9850b Merge pull request #2163 from webmin/dev/log-nicely
Fix to always use log function
2024-05-20 11:39:42 -07:00
Ilia Ross
2641985b98 Fix typo 2024-05-20 19:06:18 +03:00
Ilia Ross
736e514766 Fix to always use log function 2024-05-20 18:48:44 +03:00
Jamie Cameron
5ab6ce618d Sometimes less than a whole line is read 2024-05-17 19:47:14 -07:00
Jamie Cameron
1c8257ecff Add missing icon 2024-05-17 19:38:55 -07:00
Jamie Cameron
ebfd1e9e51 Terminal doesn't work in proxy mode https://forum.virtualmin.com/t/webmin-terminal-wss-connection-time-out/126735 2024-05-16 20:13:12 -07:00
Jamie Cameron
70dede0e22 Merge branch 'master' of github.com:webmin/webmin 2024-05-11 15:20:24 -07:00
Jamie Cameron
35e9f0a01d Limit UDP replies to 1 every 5 seconds per IP 2024-05-11 15:20:19 -07:00
Ilia Ross
0c8777acef Add support for nested forms embedded in tabs 2024-05-12 01:17:42 +03:00
Ilia Ross
04523fdb86 Fix tab name 2024-05-10 14:25:06 +03:00
Ilia Ross
b83bcc4723 Fix to compare versions correctly 2024-05-08 21:28:43 +03:00
Jamie Cameron
b9bb060250 Default changed in version 3.4 https://github.com/webmin/webmin/issues/2156 2024-05-08 10:42:32 -07:00
Jamie Cameron
f49f8f2fb1 Add more authentication methods https://github.com/webmin/webmin/issues/2154 2024-05-08 10:33:06 -07:00
Jamie Cameron
801f1f61d8 Always show extra client restrictions field https://github.com/webmin/webmin/issues/2153 2024-05-08 10:25:29 -07:00
Jamie Cameron
ede9921ea4 Merge branch 'master' of github.com:webmin/webmin 2024-05-08 09:39:36 -07:00
Jamie Cameron
cbd7a91d5c Cache the list of boot interfaces https://forum.virtualmin.com/t/webmin-network-settings-does-not-pickup-or-allow-setting-of-default-route/126466/ 2024-05-08 09:39:29 -07:00
Ilia Ross
36c8aa5e7d Update Xterm.js 2024-05-08 15:37:22 +03:00
Jamie Cameron
7881b1c6c2 Remove options that were obsoleted in version 3.9 https://github.com/webmin/webmin/issues/2150 2024-05-07 15:41:34 -07:00
Jamie Cameron
4a918ee504 Merge branch 'master' of github.com:webmin/webmin 2024-05-07 15:39:02 -07:00
Jamie Cameron
078d3acb98 Remove obsolete smtp_use_tls option 2024-05-07 15:38:22 -07:00
Ilia Ross
6a521ea32c Fix some experimental MIME types are now recognized #2147 2024-05-05 23:28:01 +03:00
Ilia Ross
0c0639d2e9 Add missing option help file #2146 2024-05-05 17:20:52 +03:00
Jamie Cameron
1c8cee607e Merge pull request #2145 from webmin/dev/jail-backend-port
Dev/jail-backend-port
2024-05-04 14:26:12 -07:00
Ilia Ross
4ac3a675e8 No need to stress 2024-05-04 21:40:25 +03:00
Ilia Ross
35dfcbe456 Update language 2024-05-04 21:38:31 +03:00
Ilia Ross
1d5900eb70 Add ports support 2024-05-04 21:37:28 +03:00
Ilia Ross
e2d6caf359 Add backend support 2024-05-04 21:35:38 +03:00
Ilia Ross
1cc640a8e2 Move enabled 2024-05-04 21:01:52 +03:00
Ilia Ross
13442d4aa4 Update translations 2024-05-03 14:16:43 +03:00
Jamie Cameron
677b39bd61 Improve wording 2024-05-02 21:51:23 -07:00
Jamie Cameron
0dc1af46f2 Document password timeouts with a tooltip 2024-05-02 21:49:33 -07:00
Jamie Cameron
bff3e78630 Also update MySQL to MariaDB in text strings https://github.com/virtualmin/virtualmin-gpl/issues/798 2024-05-01 20:30:48 -07:00
Jamie Cameron
d9d4522430 Clarify which characters cannot be used https://forum.virtualmin.com/t/virtualmin-seems-to-have-broken-itself-sort-of-dont-you-just-love-a-descriptive-title/126306 2024-05-01 07:51:01 -07:00
Jamie Cameron
0bd657978f Merge branch 'master' of github.com:webmin/webmin 2024-04-30 16:49:34 -07:00
Jamie Cameron
d59c49b6ce Change default monitor name if it's MariaDB https://github.com/virtualmin/virtualmin-gpl/issues/798 2024-04-30 16:48:15 -07:00
Ilia Ross
fae522a28e Add support for another AMD CPU #2140 [build] 2024-04-30 15:51:16 +03:00
Ilia Ross
9dcb1da4f5 Fix to invalidate EOL cache on re-checks #2139 2024-04-29 13:51:05 +03:00
Jamie Cameron
591161560a Merge branch 'master' of github.com:webmin/webmin 2024-04-28 09:07:40 -07:00
Jamie Cameron
799ccb3683 Add missing local variable 2024-04-28 09:05:02 -07:00
Ilia Ross
4e5da791e2 Fix to limit input to 4 numbers https://github.com/webmin/webmin/issues/2138#issuecomment-2079609477 [build] 2024-04-26 18:39:46 +03:00
Ilia Ross
4db36071b3 Fix $rawtime scope #2136 [build] 2024-04-26 16:02:24 +03:00
Ilia Ross
8de5c83ca8 Add ctrl help #2134 2024-04-26 13:34:20 +03:00
Ilia Ross
9b496bf413 Fix to drop installing systemd service at boot script [build]
https://github.com/webmin/webmin/issues/2133
2024-04-21 17:53:03 +03:00
Ilia Ross
985129bb70 Fix to call update boot script after adding boot #2133 [build] 2024-04-21 17:45:10 +03:00
Ilia Ross
f1804201e6 Fix indent [build] 2024-04-21 16:43:47 +03:00
Ilia Ross
0b1e5f87e1 Dev: Remove debug info 2024-04-21 16:41:25 +03:00
Ilia Ross
1e94a328ba Dev: Add more debug [build] 2024-04-21 16:29:05 +03:00
Ilia Ross
bac62e03c7 Add debug [build] 2024-04-21 16:18:10 +03:00
Ilia Ross
b1a6beda22 Revert "Fix to use latest version [build]"
This reverts commit cd46f97288.
2024-04-21 15:54:33 +03:00
Ilia Ross
b57d57b729 Fix to check for status only if it was running in the first place
https://sourceforge.net/p/webadmin/bugs/5646/

[build]
2024-04-21 15:48:09 +03:00
Ilia Ross
cd46f97288 Fix to use latest version [build] 2024-04-21 15:38:39 +03:00
Ilia Ross
1f2a7902c6 Fix to save status of service correctly [build] 2024-04-21 14:59:12 +03:00
Ilia Ross
975ae7b497 Fix to wait for systemd to update configuration
[build]
2024-04-21 14:53:03 +03:00
Ilia Ross
f252296471 Fix to preserve service state https://github.com/webmin/webmin/issues/2133
[build]
2024-04-21 13:56:11 +03:00
Jamie Cameron
f33b433b96 Merge pull request #2130 from webmin/dev/disable-manual-upgrades
Fix to correctly disable manual upgrades
2024-04-20 11:29:19 -07:00
Ilia Ross
6eb674b451 Fix to swap lines 2024-04-20 16:22:12 +03:00
Ilia Ross
690bae82fc Fix to use disable hash 2024-04-19 20:51:03 +03:00
Ilia Ross
575c1ca5a3 Fix to use Perl to get repo files 2024-04-19 20:33:24 +03:00
Jamie Cameron
97e4545c58 Merge pull request #2131 from Romanitch/bind8
Add ED25519 & ED448 DNSSEC Key Algorithm
2024-04-18 15:45:03 -07:00
Ilia Ross
73150b7818 Fix to remove un_urlize as unnecessary 2024-04-18 23:26:55 +03:00
Ilia Ross
c72a24369c Fix how self Webmin and Usermin upgrades are banned 2024-04-18 22:57:31 +03:00
Ilia Ross
ed7ac533d4 Fix to remove from build time 2024-04-18 21:19:40 +03:00
Romanitch
6df08bc645 add ED25519 & ED448 DNSSEC Key Algorithm 2024-04-18 19:43:16 +03:00
Ilia Ross
54d2766960 Fix to correctly disable manual upgrades
https://forum.virtualmin.com/t/should-this-warning-be-displayed/126011
2024-04-17 20:39:43 +03:00
Ilia Ross
c22f7fa8af Fix to correctly call the package for Debian systems 2024-04-17 20:00:38 +03:00
Jamie Cameron
da285e9804 Merge pull request #2129 from swelljoe/deprecate-old-netbsd-mounts
Fix for 10+ versions of netbsd
2024-04-17 09:48:10 -07:00
Joe Cooper
db42daab77 Fix for 10+ versions of netbsd 2024-04-17 10:09:42 -05:00
Ilia Ross
e2cf926097 Fix to correctly handle save and save and next buttons 2024-04-17 15:33:47 +03:00
Jamie Cameron
6f1b0db855 Merge branch 'master' of github.com:webmin/webmin 2024-04-16 19:50:21 -07:00
Jamie Cameron
1f99616848 Fix passing of params by save-and-next button 2024-04-16 19:49:58 -07:00
Jamie Cameron
d10d98421e Merge pull request #2128 from Mr-Method/dev/translation_uk/lang
dev/translation_uk/lang
2024-04-16 19:39:37 -07:00
Jamie Cameron
827e02d47d Merge pull request #2127 from Mr-Method/dev/translation_uk/filemin
dev/translation_uk/filemin
2024-04-16 19:39:13 -07:00
Jamie Cameron
1bee7442a6 Merge pull request #2126 from Mr-Method/dev/translation_uk/cpan
dev/translation_uk/cpan
2024-04-16 16:44:22 -07:00
Mr-Method
d165a4740a dev/translation_uk/lang
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:53:27 +03:00
Mr-Method
4126264a63 dev/translation_uk/filemin
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:47:59 +03:00
Jamie Cameron
0d390df894 Merge pull request #2125 from Mr-Method/dev/translation_uk/change-user
dev/translation_uk/change-user
2024-04-16 15:32:55 -07:00
Mr-Method
eda29478de dev/translation_uk/cpan
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:28:54 +03:00
Mr-Method
ea98188a63 dev/translation_uk/change-user
translated with wbmtranslator 0.9.2 (fixed)
2024-04-17 01:21:48 +03:00
Jamie Cameron
f6b3bb2ca5 New version bump 2024-04-15 20:54:02 -07:00
Jamie Cameron
f25c71f625 New version bump 2024-04-15 20:50:36 -07:00
Ilia Ross
657113d0c8 Fix to return if no EOL data found for specific OS version #2121 2024-04-16 02:38:49 +03:00
Ilia Ross
470bed602b Fix to prevent locking the select widths
2f5ee346b2 (commitcomment-140754610)
2024-04-15 15:33:09 +03:00
Ilia Ross
90d197701f Update CHANGELOG.md for 2.110 release 2024-04-15 14:01:22 +03:00
Jamie Cameron
8473d5e611 New version bump 2024-04-14 13:04:57 -07:00
Ilia Ross
5f6a6c8425 Fix to exit on error [build] 2024-04-14 01:14:21 +03:00
Ilia Ross
ce5b85c5e2 Fix to remove 'Use of uninitialized' warnings [build] 2024-04-14 00:58:24 +03:00
Ilia Ross
1b7c9bea0d Dev: Fix builds to include EOL data properly [build] 2024-04-14 00:44:26 +03:00
Ilia Ross
548b2ab08e Dev: Fork it! [build] 2024-04-14 00:32:15 +03:00
Ilia Ross
d3b46a6675 Dev: Is it http_download? [build] 2024-04-14 00:17:36 +03:00
Ilia Ross
5f28c37cab Dev: No need to use extra modules [build] 2024-04-14 00:11:23 +03:00
Ilia Ross
5046081a47 Dev: Load libs and check [build] 2024-04-13 23:58:50 +03:00
Ilia Ross
1a9a1dc1f5 Dev: Load it right [build] 2024-04-13 23:56:09 +03:00
Ilia Ross
031b84621a Dev: Fix to load all sub [build] 2024-04-13 23:54:31 +03:00
Ilia Ross
1d1d1d0c54 Dev: Is it really libs, no? [build] 2024-04-13 23:52:48 +03:00
Ilia Ross
09167a34a6 Dev: Embed libs only [build] 2024-04-13 23:49:16 +03:00
Ilia Ross
225013da07 Dev: Is this about Webmin open_tempfile? [build]
main::/home/runner/webmin/web-lib-funcs.pl line 161 web-lib-funcs.pl (line 10507)
2024-04-13 23:46:25 +03:00
Ilia Ross
614aa056c0 Dev: Does it work the old way? [build] 2024-04-13 23:30:36 +03:00
Ilia Ross
6eb3b193b9 Dev: Has the actual issue been solved? [build] 2024-04-13 23:27:59 +03:00
Ilia Ross
ba677eedc9 Revert "Dev: What's wrong with file? [build]"
This reverts commit 5c6c4b9da9.
2024-04-13 23:26:35 +03:00
Ilia Ross
5c6c4b9da9 Dev: What's wrong with file? [build] 2024-04-13 23:24:11 +03:00
Ilia Ross
65ed7a082e Fix to show actual path [build] 2024-04-13 23:16:22 +03:00
Ilia Ross
5008271d11 Dev: JSON::PP needs to be installed [build] 2024-04-13 22:48:40 +03:00
Ilia Ross
18d405b91a Fix a bug when error() sub is called without loaded UI lib 2024-04-13 22:46:39 +03:00
Ilia Ross
d1f0e77d25 Dev: What's up this time? [build] 2024-04-13 22:30:04 +03:00
Ilia Ross
e8691fd541 Add a fallback for downloading EOL data [build] 2024-04-13 22:27:59 +03:00
Ilia Ross
c820eb21bd Dev: No need for new dependencies 2024-04-13 22:23:54 +03:00
Ilia Ross
6850a50b0d Dev: Unroll vars [build] 2024-04-13 22:02:46 +03:00
Ilia Ross
27969bc0fb Dev: Fix packages list 2024-04-13 22:00:35 +03:00
Ilia Ross
d92bdfff8a Dev: Oops [build] 2024-04-13 21:49:16 +03:00
Ilia Ross
56a1382d4c Dev: What's up? [build] 2024-04-13 21:47:48 +03:00
Jamie Cameron
ba9b178905 Merge pull request #2117 from webmin/dev/eol-api
Add EOL API
2024-04-13 09:44:28 -07:00
Ilia Ross
b2ef544331 Fix comment 2024-04-13 13:32:50 +03:00
Ilia Ross
fb2ceb9ae5 Fix to use get_webmin_version instead 2024-04-12 02:08:12 +03:00
Ilia Ross
e1dafea664 Fix not to flood logs with pointless warning 2024-04-11 21:22:45 +03:00
Ilia Ross
8621cf8bd0 Fix to always prioritize extended support (actual EOL in Debian/Ubuntu) 2024-04-11 21:19:24 +03:00
Ilia Ross
0b21cbdc7c Fix to simplify caching logic to only check for EOL data after Webmin installation/upgrade 2024-04-11 20:07:34 +03:00
Ilia Ross
d446c7d3d0 Delete os-eol.map file 2024-04-11 18:56:21 +03:00
Ilia Ross
376eb2c04a Fix textbox width 2024-04-11 14:03:11 +03:00
Ilia Ross
db674f769e Fix to call die if EOL data cannot be fetched in build time 2024-04-10 23:58:04 +03:00
Ilia Ross
46358dc5d7 Update translations 2024-04-10 23:53:26 +03:00
Ilia Ross
fae806f1a8 Fix to drop useless option 2024-04-10 23:49:25 +03:00
Ilia Ross
fdf1c40c28 Update language keys for consistency 2024-04-10 23:43:03 +03:00
Ilia Ross
5cb91ab3f9 Add language strings 2024-04-10 23:38:02 +03:00
Ilia Ross
7628a7329d Add EOL display and configurable option to Operating System and Environment page 2024-04-10 23:37:47 +03:00
Ilia Ross
613c568f4f Add EOL message to the dashboard 2024-04-10 22:40:24 +03:00
Ilia Ross
b43e75e701 Add caching support for speed and efficiency 2024-04-10 22:39:25 +03:00
Ilia Ross
b53333e8bc Add actual EOL details ; fix bug 2024-04-10 20:44:06 +03:00
Ilia Ross
ec34a26e1a Fix to generate os_eol.json during build time 2024-04-10 18:28:55 +03:00
Ilia Ross
4102b5ee1c Fix how EOL data is fetched and stored 2024-04-10 16:35:03 +03:00
Ilia Ross
c6cb6397f0 Fix to cache it for 1 month 2024-04-10 03:27:51 +03:00
Ilia Ross
550a263ceb Fix to only write empty file if doesn't exist 2024-04-10 03:25:26 +03:00
Ilia Ross
ff5937b79b Fix timeout 2024-04-10 03:21:34 +03:00
Ilia Ross
2fce5e752e Add support for year and complete short date formats
i.e. can now return 2024 and Thursday, April 1
2024-04-09 23:44:45 +03:00
Ilia Ross
4202fa5063 Add EOL API 2/2 2024-04-09 23:42:26 +03:00
Ilia Ross
f24a34f8c5 Update map 2024-04-09 20:52:08 +03:00
Ilia Ross
13e343e2d7 Add EOL API 1/2 2024-04-09 20:20:55 +03:00
Ilia Ross
1648384ce8 Fix comment 2024-04-09 20:11:36 +03:00
Jamie Cameron
a73eb0cd96 Add qrencode as a soft dependency https://github.com/webmin/webmin/issues/2115 2024-04-07 16:21:13 -07:00
Jamie Cameron
adcd7d8fd5 Remove a useless blank line 2024-04-07 16:18:02 -07:00
Jamie Cameron
21845e9708 If the qrencode command is installed, use it to generate QR codes locally instead of the Google chart API https://github.com/webmin/webmin/issues/2115 2024-04-07 16:14:25 -07:00
Jamie Cameron
e4aee1c27e Merge branch 'master' of github.com:webmin/webmin 2024-04-06 18:13:11 -07:00
Jamie Cameron
64211e46cb Remove un-needed param 2024-04-06 18:12:11 -07:00
Jamie Cameron
407ec904ca Merge pull request #2111 from mpkossen/master
Capitalize SMTP auth command for broader compatibility.
2024-03-31 17:19:50 -07:00
Ilia Ross
3001ec8aa4 Update Xterm.js 2024-03-31 20:34:43 +03:00
Maarten Kossen (mpkossen)
abcdf51d10 Improve capitalization of auth command. 2024-03-31 10:48:23 -05:00
Maarten Kossen (mpkossen)
b3350f5b37 Capitalize SMTP auth command for broader compatibility. 2024-03-31 07:42:03 -05:00
Jamie Cameron
56abe45e64 Use common reload function 2024-03-29 15:17:32 -07:00
Jamie Cameron
a260ad5acd Include TLS cers in backup 2024-03-29 15:12:03 -07:00
Jamie Cameron
31eead4a08 Helo has to be sent again after switching to TLS 2024-03-29 14:27:25 -07:00
Jamie Cameron
48023fe3eb Merge branch 'master' of github.com:webmin/webmin 2024-03-29 12:54:42 -07:00
Jamie Cameron
ae6592602f HELO has to come first before STARTTLS 2024-03-29 12:54:32 -07:00
Jamie Cameron
6963ce9add Merge pull request #2110 from samgakhyeong/master
Units like GiB do not need to be translated because they are used the…
2024-03-28 11:45:56 -07:00
samgak
28af4c4991 Units like GiB do not need to be translated because they are used the same way in Korean. This appears to be a clear mistranslation. 2024-03-29 00:23:59 +09:00
Ilia Ross
7f8ad9c148 Fix to drop old word-around in make_date 2024-03-25 11:55:11 +02:00
Jamie Cameron
83c93d8bdc Don't assume that the date split can be split 2024-03-24 11:29:22 -07:00
Jamie Cameron
3a275d1d5b Don't make assumptions about splitting up the date 2024-03-24 10:44:11 -07:00
Jamie Cameron
8f6ce35db6 Merge branch 'master' of github.com:webmin/webmin 2024-03-23 11:44:33 -07:00
Jamie Cameron
2f5ee346b2 Width needs a 'px' suffix 2024-03-23 11:42:59 -07:00
Ilia Ross
44f6361c5c Add Ubuntu 24.04 support [build] 2024-03-18 18:58:45 +02:00
Ilia Ross
7fc71adecc Fix not to disable already disabled textfield in GPL mode 2024-03-16 18:41:18 +02:00
Ilia Ross
1e0f6be4ab Fix class leak for disabled features in GPL mode 2024-03-16 15:41:56 +02:00
Jamie Cameron
d54c6bf8e0 Add field for folder to check https://github.com/webmin/webmin/discussions/2104 2024-03-15 15:41:54 -07:00
Jamie Cameron
5c533916ff More ui-lib conversion 2024-03-15 15:35:45 -07:00
Jamie Cameron
b02f0ef96b ui-lib conversion 2024-03-15 15:21:25 -07:00
Jamie Cameron
12c205f3ec Convert to ui-lib 2024-03-14 14:41:04 -07:00
Jamie Cameron
ea00ff92a2 Work on UI cleanup 2024-03-13 21:57:23 -07:00
Jamie Cameron
0c0b04ffe0 Add monitor for IMAP 2024-03-11 22:21:08 -07:00
Jamie Cameron
c762d41fa1 Add support for SMTP login 2024-03-11 21:22:29 -07:00
Jamie Cameron
0704ac640e Start of work on SMTP monitor 2024-03-11 20:39:59 -07:00
Jamie Cameron
a9d0f8b704 Use standard function 2024-03-11 20:17:43 -07:00
Jamie Cameron
203c75f79a Fix user switching 2024-03-11 16:45:02 -07:00
Jamie Cameron
7734ba1285 Add user to run as config option, for clones 2024-03-11 16:38:51 -07:00
Jamie Cameron
fb6f27aaaa Use ui-lib standard functions 2024-03-11 11:33:01 -07:00
Jamie Cameron
dd9dac860c Improve layout of the monitor editing page 2024-03-10 18:35:22 -07:00
Jamie Cameron
68e4f6c5aa Merge branch 'master' of github.com:webmin/webmin 2024-03-10 17:26:56 -07:00
Jamie Cameron
527d238da2 The word remote is confusing 2024-03-10 17:25:17 -07:00
Jamie Cameron
b292c68123 Merge pull request #2103 from webmin/dev/check-reboot-req
Fix to consider using `needrestart` to test if reboot is required
2024-03-09 11:08:26 -08:00
Ilia Ross
3fc4f05f49 Fix to consider using needrestart to test if reboot is required 2024-03-09 20:24:39 +02:00
Jamie Cameron
75836b1f25 permissions fix 2024-03-07 18:50:10 -08:00
Jamie Cameron
e3c4711d77 Merge branch 'master' of github.com:webmin/webmin 2024-03-07 18:49:46 -08:00
Jamie Cameron
5565113777 Pass in conf instead of filename 2024-03-07 18:49:18 -08:00
Ilia Ross
01a10d1f08 Fix collecting CPU fan data
https://forum.virtualmin.com/t/show-cpu-fan-speed-on-dashboard/125292
2024-03-03 21:52:22 +02:00
Ilia Ross
60793e9ac5 Fix to pass view param as it is being relied on in themes 2024-03-02 20:08:41 +02:00
Ilia Ross
e50898dd05 Update translations 2024-03-02 19:28:48 +02:00
Ilia Ross
bc27c75027 Fix not to print pointless file name 2024-03-02 19:25:41 +02:00
Jamie Cameron
9c4f32246d No need for a special view param because that's all this module does 2024-03-01 18:12:21 -08:00
Jamie Cameron
37c91a6330 TXT records should always be quoted 2024-02-29 20:37:48 -08:00
Jamie Cameron
f9f19552dd Merge branch 'master' of github.com:webmin/webmin 2024-02-27 19:44:19 -08:00
Jamie Cameron
60e424689d Handle case where we can't figure out the from https://github.com/webmin/usermin/issues/109 2024-02-27 19:31:40 -08:00
Ilia Ross
2c1388b0be Update translations [build] 2024-02-27 17:23:56 +02:00
Ilia Ross
910619c364 Fix key name not to add color and icon to the button 2024-02-27 17:23:04 +02:00
Ilia Ross
893e5ba06f Fix to always return to the right tab 2024-02-27 16:59:00 +02:00
Ilia Ross
5cd605dce5 Add tiny UI fixes 2024-02-27 16:31:32 +02:00
Jamie Cameron
6c3a7d1d5e Fix version regexp 2024-02-26 21:45:05 -08:00
Jamie Cameron
882bf281b1 Version bump 2024-02-26 21:24:33 -08:00
Jamie Cameron
f0127ca722 Add function to get de[endencies on debian 2024-02-26 21:18:22 -08:00
Jamie Cameron
cb7a7d6e22 Use a hidden table to show dependencies 2024-02-25 21:39:38 -08:00
Jamie Cameron
a3f9d0a60f Initial work on showing package dependencies 2024-02-25 21:33:14 -08:00
Jamie Cameron
24bf147c9a Split page into tabs 2024-02-25 18:58:38 -08:00
Jamie Cameron
f5bb99a431 Merge branch 'master' of github.com:webmin/webmin 2024-02-25 12:06:32 -08:00
Jamie Cameron
3b38106363 Fix border param 2024-02-25 12:06:25 -08:00
Jamie Cameron
e08a4bf078 Merge pull request #2098 from webmin/dev/add-passable-config-params
Add support for passing params to config directly
2024-02-25 11:54:41 -08:00
Ilia Ross
cb95472a27 Add support for passing params to config directly 2024-02-25 19:31:47 +02:00
Jamie Cameron
d8b02b5f42 Refer to new string 2024-02-13 14:16:24 -08:00
Jamie Cameron
2dad993bee I did it my way 2024-02-13 14:14:32 -08:00
Jamie Cameron
f31c7a9668 Remove useless table layout 00~https://github.com/webmin/webmin/issues/208901~ 2024-02-13 14:12:59 -08:00
Ilia Ross
cf396e6ec1 Fix generated HTML output
https://github.com/webmin/webmin/issues/2089
2024-02-13 16:17:40 +02:00
Ilia Ross
aae7aa527f Fix to just show all checks
dff70c3349 (r138377441)
2024-02-07 18:02:37 +02:00
Jamie Cameron
196b7c72a3 Add missing strings https://github.com/webmin/webmin/issues/2085 2024-02-06 21:23:53 -08:00
Jamie Cameron
3cb936d7c8 Handle multiple IPv6 addresses properly https://github.com/webmin/webmin/issues/2081 2024-01-30 19:54:19 -08:00
Jamie Cameron
875e827954 Merge branch 'master' of github.com:webmin/webmin 2024-01-30 07:34:39 -08:00
Jamie Cameron
06a6817f04 Install Socket6 perl module for IPv6 if available https://github.com/webmin/webmin/issues/2081 2024-01-30 07:33:04 -08:00
Ilia Ross
e62e0d032e Add improvements for displaying disabled pages 2024-01-29 19:08:50 +02:00
Jamie Cameron
919601d1c6 Preserve all post-up directives https://github.com/webmin/webmin/issues/2080 2024-01-28 16:26:32 -08:00
Jamie Cameron
da142c95a7 Use multi-select for extensions https://forum.virtualmin.com/t/there-is-a-problem-with-php-extensions/124552 2024-01-20 22:11:53 -08:00
Jamie Cameron
78c64ea786 Merge branch 'master' of github.com:webmin/webmin 2024-01-20 10:40:36 -08:00
Jamie Cameron
fd56523955 Use /etc/hostname if available https://forum.virtualmin.com/t/setup-fails/124437 2024-01-20 10:39:49 -08:00
Ilia Ross
a6f5e593b0 Fix self-XSS when downloading a file
Reported by: Rushikesh Kaware
[build]
2024-01-20 12:36:11 +02:00
Ilia Ross
70a15314c0 Fix consistency in search criteria #2079 2024-01-17 12:54:53 +02:00
Jamie Cameron
3a5dcc4723 Make error message about bootup action clearer 2024-01-16 20:48:16 -08:00
Jamie Cameron
e9f382272a Merge branch 'master' of github.com:webmin/webmin 2024-01-14 10:37:37 -08:00
Jamie Cameron
5c8d5ee75e Add option to notify for security updates only https://github.com/webmin/webmin/issues/2075 2024-01-14 10:37:30 -08:00
Ilia Ross
f244805c01 Fix to default to mail_location
https://forum.virtualmin.com/t/bug-in-webmin-dovecot-mail-files-config/124425?u=ilia
2024-01-12 13:34:13 +02:00
Ilia Ross
26cb81ad2b Fix to use new API for "Write logs to" option 2024-01-06 19:06:34 +02:00
Ilia Ross
3cc8e71035 Fix to support new lines 2024-01-06 19:02:18 +02:00
Ilia Ross
3a264330ed Fix to use new ui_radio_row API 2024-01-06 16:51:00 +02:00
Ilia Ross
8edffc8f30 Add new ui_radio_row API 2024-01-06 16:50:40 +02:00
Ilia Ross
7fd3b9e725 Add support for age purge bans database option
https://forum.virtualmin.com/t/change-fail2ban-times/124311/3?u=ilia
2024-01-05 17:45:07 +02:00
Jamie Cameron
1bd70e7669 Merge pull request #2069 from ctrlbru/master
Reviewed Bacula module italian translation file
2024-01-01 10:07:16 -08:00
Dario Corti
975ed1c277 Reviewed italian auto translation file 2024-01-01 17:40:26 +01:00
Dario Corti
c1b3b6606e Reviewed italian auto translation file 2024-01-01 17:24:18 +01:00
Jamie Cameron
b6b8398eb2 Get and show the full version number 2023-12-30 21:52:16 -08:00
Ilia Ross
66e2f1e1e3 Fix to pass params separately 2023-12-30 22:25:08 +02:00
Ilia Ross
f82def9a9b Fix to separate params and packages names 2023-12-30 17:04:52 +02:00
Ilia Ross
924a0da014 Fix to prioritize MariaDB packages over MySQL
e418b4c178
2023-12-29 14:07:25 +02:00
Ilia Ross
c4f39f56f8 Fix to use alternating page name
e418b4c178
2023-12-29 13:37:45 +02:00
Jamie Cameron
6b2b72707e Alma / Rocky / CentOS 8 also call it dhcp-server 2023-12-28 16:30:15 -08:00
Jamie Cameron
e327d0b81b Only use dhcp-server on Redhat 9 and friends 2023-12-28 10:08:22 -08:00
Jamie Cameron
e418b4c178 DHCPd package is named dhcp-server on RHEL 9 https://github.com/webmin/webmin/issues/2066 2023-12-28 09:57:26 -08:00
Jamie Cameron
f89844171c Properly escape selected databases in DB chooser https://github.com/virtualmin/virtualmin-gpl/issues/723 2023-12-25 08:54:09 -08:00
Jamie Cameron
2cbdf62b1b Merge branch 'master' of github.com:webmin/webmin 2023-12-23 16:04:14 -08:00
Jamie Cameron
e89220e846 Don't include newline in text string 2023-12-23 16:04:08 -08:00
Ilia Ross
1df9920aa9 Fix to further simplify the code
d00945bdfc (r135639921)
2023-12-23 22:36:40 +02:00
Jamie Cameron
732d12a1f4 Merge branch 'master' of github.com:webmin/webmin 2023-12-23 08:43:06 -08:00
Jamie Cameron
83de10b7c2 Escape username in error 2023-12-23 08:42:59 -08:00
Ilia Ross
d00945bdfc Fix to use scalar instead
d275ee095b (r135620123)
2023-12-23 12:28:47 +02:00
Ilia Ross
c136c380be Fix to display if a user is Virtualmin user 2023-12-21 16:06:45 +02:00
Ilia Ross
807f9cfe34 Fix not to say warning twice as already inside of warning alert 2023-12-21 15:58:00 +02:00
Jamie Cameron
93157a428d Merge pull request #2064 from TheBeardedQuack/master
Simple nftables support via the use of update-alternatives
2023-12-20 20:52:28 -08:00
TheBeardedQuack
e3866f6607 Merge branch 'webmin:master' into master 2023-12-20 23:26:02 +00:00
Ilia Ross
86bab830b3 Fix to simplify working code to preserve precision
d275ee095b (r135407587)
2023-12-20 15:40:24 +02:00
TheBeardedQuack
3c67453d16 Merge branch 'webmin:master' into master 2023-12-20 13:19:38 +00:00
TheBeardedQuack
0df0bb4837 Swap the command order to allow for simple nftables support, via update-alternatives 2023-12-20 13:16:08 +00:00
TheBeardedQuack
a2bb0173b6 Made iptables-save logic, match the iptables-restore logic. 2023-12-20 13:14:34 +00:00
Jamie Cameron
bed55e7e08 Simpler code to support fractional units 2023-12-19 18:38:33 -08:00
Ilia Ross
3ac0a468b1 Fix to use localized labels for size 2023-12-19 16:53:45 +02:00
Ilia Ross
8da45b832a Fix to remove trailing zeros in decimal part 2023-12-19 16:29:48 +02:00
Ilia Ross
d275ee095b Fix to accomplish not loosing precision when showing higher values
bf97df4522
2023-12-19 16:03:48 +02:00
Jamie Cameron
bf97df4522 Don't lose precious when showing higher units https://github.com/virtualmin/virtualmin-gpl/issues/719 2023-12-18 22:56:19 -08:00
Jamie Cameron
fa54da125f Use standard function for bytes field 2023-12-18 22:55:30 -08:00
Jamie Cameron
522051a854 Add support for SSL/TLS fields 2023-12-17 22:31:54 -08:00
Jamie Cameron
c87fc1a15c Initial skeleton of mod_tls 2023-12-17 15:49:27 -08:00
Jamie Cameron
80cc0cb9d2 General code style cleanups 2023-12-17 15:20:26 -08:00
Jamie Cameron
a88ae240f5 Finished off ui-lib conversion in this file 2023-12-17 15:11:41 -08:00
Jamie Cameron
2b38b7bfb7 yet more ui-lib conversion 2023-12-17 14:55:06 -08:00
Jamie Cameron
5a791299e6 yet more ui-lib conversion 2023-12-17 14:24:27 -08:00
Jamie Cameron
97203f1245 Merge branch 'master' of github.com:webmin/webmin 2023-12-17 12:22:51 -08:00
Jamie Cameron
a4a8d970e1 Use proper checkbox function 2023-12-17 12:19:31 -08:00
Ilia Ross
8665c5a725 Fix to include directory name, as glob result isn't readdir
https://forum.virtualmin.com/t/re-i-think-i-found-another-issue/123981/13
2023-12-17 15:37:19 +02:00
Ilia Ross
28e55d6774 Revert "What if /etc/network/interfaces is a directory https://forum.virtualmin.com/t/re-i-think-i-found-another-issue/123981"
This reverts commit f2476e0a6d.
2023-12-17 15:35:09 +02:00
Jamie Cameron
de638bcb6a More ui-lib conversions 2023-12-16 22:33:00 -08:00
Jamie Cameron
e9238d1b24 yet more ui-lib conversion 2023-12-16 18:42:27 -08:00
Jamie Cameron
f2476e0a6d What if /etc/network/interfaces is a directory https://forum.virtualmin.com/t/re-i-think-i-found-another-issue/123981 2023-12-16 17:46:00 -08:00
Jamie Cameron
c2c548a3d6 Use ui-lib for tables 2023-12-16 11:48:38 -08:00
Jamie Cameron
ac26b356ac Yet more ui-lib conversion 2023-12-16 11:39:41 -08:00
Jamie Cameron
9b744c4632 ui-lib conversion 2023-12-15 22:54:04 -08:00
Jamie Cameron
e481cf9dda more ui-lib conversion 2023-12-15 21:40:52 -08:00
Jamie Cameron
5672f6bfce Finished off ui-lib conversion 2023-12-15 20:55:10 -08:00
Jamie Cameron
dcee332bff More ui-lib conversion 2023-12-15 20:43:31 -08:00
Jamie Cameron
8d0aeb6fc9 Convert to ui-lib 2023-12-15 20:35:50 -08:00
Jamie Cameron
716e1deb5f more ui-lib conversion 2023-12-15 20:24:58 -08:00
Jamie Cameron
b65af5f3ac ui-lib conversion 2023-12-15 20:18:53 -08:00
Jamie Cameron
f3c4eb63e8 Commands are in upper case 2023-12-15 20:14:50 -08:00
Jamie Cameron
64924182d2 Convery to ui-lib functions 2023-12-15 17:52:45 -08:00
Jamie Cameron
8bad9dd0f8 DNS domains are also space separated 2023-12-13 15:57:06 -08:00
Jamie Cameron
8e1507d8d0 Stop showing rsh option unless already selected https://forum.virtualmin.com/t/cant-setup-backup-in-webmin/123736 2023-12-11 20:33:00 -08:00
Jamie Cameron
dd06d75468 Merge branch 'master' of github.com:webmin/webmin 2023-12-10 14:35:21 -08:00
Jamie Cameron
f3d2d38214 list.cgi needs JSON::PP 2023-12-10 13:50:33 -08:00
Ilia Ross
e264daebe0 Fix German translation
https://github.com/webmin/webmin/issues/2060
2023-12-10 19:56:26 +02:00
Jamie Cameron
3b67cd6773 Merge branch 'master' of github.com:webmin/webmin 2023-12-10 08:25:26 -08:00
Jamie Cameron
53834dc5e7 Add option to request LE cert using certbot in standalone mode http://forum.virtualmin.com/t/webmin-ssl-certificate-with-lets-encrypt-directly-obtain-certificate-without-requiring-apache-or-nginx/123696/ 2023-12-10 08:25:11 -08:00
Ilia Ross
09891459ee Fix to remove Windows from the list
https://github.com/webmin/webmin/issues/2055#issuecomment-1848669794
2023-12-10 15:18:01 +02:00
Jamie Cameron
346b9f3af8 Merge branch 'master' of github.com:webmin/webmin 2023-12-09 12:48:17 -08:00
Jamie Cameron
409a4fbb7b Sometimes there is no options block https://forum.virtualmin.com/t/bind-module-is-not-set-up/123790 2023-12-09 12:42:39 -08:00
Ilia Ross
fd44191c96 Fix latest Devuan Linux support [build]
https://github.com/virtualmin/virtualmin-gpl/issues/705
2023-12-03 14:32:18 +02:00
Jamie Cameron
3b65ec28ed Fix core vs cores 2023-11-27 17:17:33 -08:00
Jamie Cameron
0c6351d3ab Merge branch 'master' of github.com:webmin/webmin 2023-11-22 11:15:07 -08:00
Jamie Cameron
6126d1d0f3 5 seconds is too low for a TTL 2023-11-22 11:14:04 -08:00
Ilia Ross
c9ee0d5a4d Add Squid 6.5 support [build]
https://forum.virtualmin.com/t/your-version-of-squid-is-not-supported-by-webmin-only-versions-from-1-1-to-3-4-are-supported-by-this-module/123561
2023-11-22 13:44:01 +02:00
Ilia Ross
1a39ba639f Fix to set hwclock in a way compatible with both RHEL and Debian
https://forum.virtualmin.com/t/re-letsencrypt-auto-renew-is-using-sub-server-domain-instead-of-wildcard/123542?u=ilia
2023-11-20 18:01:50 +02:00
Ilia Ross
7360544f06 Merge pull request #2048 from gnadelwartz/master
fix update-from-repo.sh -release:lastest: get version from raw.githubusercontent.com
2023-11-16 15:07:28 +02:00
Kay Marquardt
b8bd5115b4 fix update-from-repo.sh -release:lastest: get version from raw.githubusercontent.com 2023-11-16 13:47:32 +01:00
Jamie Cameron
2175bc25fe ui-lib conversion 2023-11-15 22:24:45 -08:00
Jamie Cameron
35bae257f2 Don't add IP address if there isn't one 2023-11-15 17:14:54 -08:00
Jamie Cameron
6926262562 Use more UI functions 2023-11-14 21:18:48 -08:00
Jamie Cameron
167b6a33a3 Some ui-lib conversions 2023-11-14 21:15:51 -08:00
Jamie Cameron
0e2cc49ed0 Merge branch 'master' of github.com:webmin/webmin 2023-11-14 20:21:20 -08:00
Jamie Cameron
b095aa2b20 Show the actual command that failed in the error 2023-11-14 20:20:06 -08:00
Ilia Ross
79b840024a Update translations 2023-11-14 20:16:19 +02:00
Ilia Ross
8925f396cf Finalize support for systems usingsystemd-timesyncd and chronyd 2023-11-14 19:56:22 +02:00
Ilia Ross
62c5d73076 Fix to make sure that init module is called 2023-11-14 17:52:40 +02:00
Ilia Ross
b0b26f8663 Fix to preserve timesyncd and chronyd status. 2023-11-14 17:32:48 +02:00
Ilia Ross
f555367eb4 Add support for timesyncd and timedatectl
https://forum.virtualmin.com/t/q-a-debian-12-known-issues/121990/22?u=ilia
2023-11-14 17:13:12 +02:00
Ilia Ross
1fe336ad39 Fix to cache support_hwtime as it can take a lot of time
hwclock: select() to /dev/rtc0 to wait for clock tick timed out
2023-11-14 16:17:56 +02:00
Jamie Cameron
8f157253a3 Fix detection of Debian 13 https://sourceforge.net/p/webadmin/bugs/5639/ 2023-11-11 11:25:24 -08:00
Jamie Cameron
aca2a9a524 Pass URL params from the page that called config.cgi back when saving 2023-11-10 16:57:24 -08:00
Jamie Cameron
07fc4621f8 DNS server IPs are space separated https://forum.virtualmin.com/t/trouble-with-saving-in-network-config-section/123394 2023-11-09 11:18:24 -08:00
Jamie Cameron
d239e77f15 Pass config module in as a regular param 2023-11-08 22:09:21 -08:00
Jamie Cameron
627a047028 Next virtual interface is always one greater than the last one 2023-11-07 17:56:02 -08:00
Ilia Ross
a1844d301d Update CHANGELOG.md for 2.105 2023-11-07 21:05:22 +02:00
Jamie Cameron
d9db632718 Merge pull request #2043 from webmin/dev/qq-in-glob
Fix to `quotemeta` variables instead
2023-11-06 19:17:48 -08:00
Ilia Ross
4b38af6b51 Fix to quotemeta variables instead 2023-11-06 13:28:22 +02:00
Jamie Cameron
46238ef7a1 Glob splits up strings based on spaces https://forum.virtualmin.com/t/deleted-a-virtual-server-now-virtualmin-gone-but-webmin-remains/123284 2023-11-05 20:32:58 -08:00
Jamie Cameron
059b47f84d New version bump 2023-11-05 16:25:01 -08:00
Ilia Ross
62b6b32719 Code cleanup 2023-11-05 19:13:28 +02:00
Ilia Ross
02eb35d622 Fix to test for file after it was declared
9cade51106
2023-11-03 22:38:17 +02:00
Jamie Cameron
4d5b4ef697 Merge branch 'master' of github.com:webmin/webmin 2023-11-01 23:33:44 -07:00
Jamie Cameron
b3c8706690 Fix variable name 2023-11-01 23:26:53 -07:00
Ilia Ross
283fe2e440 Fix not to set reuse flag on initial request 2023-11-01 00:16:02 +02:00
Jamie Cameron
8e586e6f14 Merge branch 'master' of github.com:webmin/webmin 2023-10-28 15:21:22 -07:00
Jamie Cameron
7ad30bdc8c Make sure index field is always populated https://github.com/webmin/webmin/issues/2041 2023-10-28 15:21:13 -07:00
Ilia Ross
81ead590c9 Add better display of disabled features 2023-10-26 20:36:05 +03:00
Jamie Cameron
48b0912cf6 Merge pull request #2038 from MiraMaX166/master
fix Russian localization
2023-10-26 21:47:07 +11:00
MiraMaX166
e0d743076d fix Russian localization 2023-10-26 11:42:34 +06:00
Ilia Ross
91c2facff9 Fix to use default accordion instead 2023-10-25 18:03:24 +03:00
Jamie Cameron
8e71cfa73a Merge branch 'master' of github.com:webmin/webmin 2023-10-25 02:24:38 -07:00
Jamie Cameron
9cade51106 Fix bad file descriptor error https://forum.virtualmin.com/t/sql-execution-sql-backup-restore-fails/123116 2023-10-25 02:24:31 -07:00
Ilia Ross
d0691f273c Merge pull request #2035 from MiraMaX166/master
Russian localization update. Logviewer.
2023-10-20 07:40:27 +03:00
MiraMaX166
ef41362b57 Russian localization update. Logviewer. 2023-10-20 10:29:12 +06:00
Jamie Cameron
6942ce7f0f Merge branch 'master' of github.com:webmin/webmin 2023-10-19 13:17:26 -07:00
Jamie Cameron
97d1624bb0 Fix param to read only headers https://sourceforge.net/p/webadmin/usermin-bugs/501/ 2023-10-19 13:17:19 -07:00
Ilia Ross
a85fa2f8c2 Fix Cortex CPU detection in sensors output
https://forum.virtualmin.com/t/cpu-temp-id-missing-dashboard/123096
[build]
2023-10-19 20:35:57 +03:00
Ilia Ross
c0e20f024a Fix German translation
https://github.com/webmin/webmin/issues/2031
2023-10-19 15:40:00 +03:00
Ilia Ross
1c13b29aa6 Merge pull request #2032 from MiraMaX166/master
Russian localization update
2023-10-19 14:59:04 +03:00
MiraMaX166
ba623246a1 Russian localization update 2023-10-19 17:38:39 +06:00
Ilia Ross
e36f2051e3 Update .gitignore 2023-10-19 14:38:29 +03:00
Jamie Cameron
c0bc9daff3 Fix indent 2023-10-18 11:37:02 -07:00
Ilia Ross
5c0dc5d613 Add better display of locked files 2023-10-17 14:54:58 +03:00
Ilia Ross
a8f00d69f8 Fix to print specific action name 2023-10-17 02:20:56 +03:00
Ilia Ross
514b4f8def Fix to use ui_checked_columns_row for theme show right checkboxes 2023-10-17 02:09:25 +03:00
Ilia Ross
6cc6429a0f Fix to link to proc module 2023-10-17 01:52:57 +03:00
Ilia Ross
76b57bab75 Update CHANGELOG.md for 2.104 2023-10-16 21:42:57 +03:00
Ilia Ross
104375b5b5 Update translations 2023-10-16 21:30:05 +03:00
Ilia Ross
03f80d707e Fix stray tag 2023-10-15 15:33:11 +03:00
Jamie Cameron
3718835b23 New version bump 2023-10-14 22:50:09 -07:00
Jamie Cameron
eefb0cb32e Fix dupe strings 2023-10-14 22:49:47 -07:00
Jamie Cameron
691798f913 Finish off page showing active locks 2023-10-14 17:29:03 -07:00
Jamie Cameron
dec31a73a2 Merge branch 'master' of github.com:webmin/webmin 2023-10-13 08:10:29 -07:00
Ilia Ross
904545de89 Add user-friendly dependency list if installed manually [build] 2023-10-13 15:33:43 +03:00
Ilia Ross
b9f1d5df1d Fix to suppress output from init scripts
We already have `Attempting to start Webmin web server ..` being printed. As the init scripts have prompt we also need to handle it
2023-10-13 14:11:06 +03:00
Ilia Ross
46375d60c2 Fix to fall back to Framed Theme when there is no default [build] 2023-10-13 12:17:09 +03:00
Ilia Ross
ba29164e1d Fix to clear upstart script (CentOS 6) [build] 2023-10-13 11:54:46 +03:00
Ilia Ross
50d8ac3261 Add Time::HiRes to recommends [build] 2023-10-13 11:39:57 +03:00
Ilia Ross
e8fa36e7fd Fix to simplify update boot run [build] 2023-10-13 11:19:48 +03:00
Ilia Ross
c6b5768bf2 Fix to install missing init script [build] 2023-10-13 11:06:33 +03:00
Ilia Ross
0d0e9170b9 Add timeoutstopsec as well 2023-10-13 10:51:33 +03:00
Jamie Cameron
72f127fe0f UI to show active locks 2023-10-12 21:45:02 -07:00
Ilia Ross
3cdaaf2950 Fix custom PS1 for .bashrc module defaults 2023-10-12 20:45:31 +03:00
Ilia Ross
f980e3bb2e Update xterm.js to the latest [build] 2023-10-12 20:18:07 +03:00
Ilia Ross
e199d7e5be Fix to tell package manager to install deps as we provide it in vendor_perl
It may seem redundant but package manager (`dnf` in particular) won't install `perl-File-Basename` and `perl-File-Path` packages because Webmin `vendor_perl` already provides it. It will result in broken `webmin` sub-commands, like `passwd` and `server`, i.e. `webmin status`, `webmin restart` and etc., which use dependencies outside of the boilerplate.
2023-10-12 15:41:07 +03:00
Ilia Ross
fb662de8b4 Fix to load libraries from the Webmin 2023-10-12 15:33:31 +03:00
Ilia Ross
35d1fe0eb5 Add missing shared-mime-info to recommends [build] 2023-10-12 12:25:04 +03:00
Ilia Ross
b40fe2140d Fix hostname detection [build] 2023-10-12 10:38:03 +03:00
Jamie Cameron
4c8d27cf89 Can't be too careful 2023-10-11 22:47:27 -07:00
Jamie Cameron
895217865b Initial support for tracking locks 2023-10-11 22:46:01 -07:00
Jamie Cameron
87e386eb69 Merge branch 'master' of github.com:webmin/webmin 2023-10-11 21:02:23 -07:00
Jamie Cameron
384913506f Add function to get the DB character set 2023-10-11 21:02:17 -07:00
Jamie Cameron
4d88b1ad2b Merge pull request #2026 from webmin/dev/fix-installation-2023-11
Fix Webmin installation issues
2023-10-11 14:07:41 -07:00
Jamie Cameron
db071c39fb Merge pull request #2025 from webmin/dev/samba-support-utf8-names
Fix support for unicode names in Samba
2023-10-11 11:31:50 -07:00
Ilia Ross
766eaf635c Fix installation of missing init script 2023-10-11 18:57:48 +03:00
Ilia Ross
5dd8b95f5f Fix init desc 2023-10-11 18:51:22 +03:00
Ilia Ross
873490367d Fix to ensure systemd is the active init system #2022 2023-10-11 18:43:47 +03:00
Ilia Ross
0457c1d1c0 Fix not to double encode on modify 2023-10-11 16:46:44 +03:00
Ilia Ross
59b944ebff Fix to properly test unicode names 2023-10-11 16:46:26 +03:00
Ilia Ross
2e63031e22 Fix not to use bare words 2023-10-11 16:43:44 +03:00
Ilia Ross
6137f285f2 Fix not to use bare words 2023-10-11 14:46:44 +03:00
Ilia Ross
04557f6e28 Fix to check for config dir instead on systemd system 2023-10-10 23:47:05 +03:00
Ilia Ross
d7de842f45 Fix to change version in caller 2023-10-10 23:36:52 +03:00
Ilia Ross
ba1aa5a498 Add missing change 2023-10-10 18:58:48 +03:00
Ilia Ross
b70a697e66 Update CHANGELOG.md 2023-10-10 18:54:53 +03:00
Jamie Cameron
c4c2c5c38e Add a 10 second timeout to handle the case where a client connects but doesn't start a valid SSL session 2023-10-09 22:55:18 -07:00
Jamie Cameron
bbe7e78516 Log timeout to wait for 2023-10-09 21:59:50 -07:00
Jamie Cameron
e40fc5568b Merge branch 'master' of github.com:webmin/webmin 2023-10-09 20:44:31 -07:00
Jamie Cameron
71d94982df Make UI for locking page more consistent 2023-10-09 20:44:24 -07:00
Ilia Ross
d48154d6a0 Fix reading hostname from file as hostnamectl depends on it anyway #2020 2023-10-09 21:14:31 +03:00
Ilia Ross
949f6fbf8d Merge branch 'master' of github.com:webmin/webmin 2023-10-09 18:43:05 +03:00
Ilia Ross
3c97fc5a32 Fix to check if UI function exists #2021 2023-10-09 18:41:19 +03:00
Jamie Cameron
4d4468e907 Prevent password change when it makes no sense https://github.com/virtualmin/virtualmin-gpl/issues/648 2023-10-07 08:51:50 -07:00
Jamie Cameron
fc5a638e24 Merge branch 'master' of github.com:webmin/webmin 2023-10-05 21:22:33 -07:00
Jamie Cameron
cf6a14b7a6 Version bump 2023-10-05 21:22:19 -07:00
Ilia Ross
6ddde41728 Revert "Wait a bit longer for DNS propogation"
This reverts commit 45845b8ca6.
2023-10-04 13:01:43 +03:00
Ilia Ross
5114308d0d Fix to never double escape HTML in display 2023-10-04 00:51:49 +03:00
Ilia Ross
2c325b1ee4 Add support for numbered list hotkey 2023-10-03 19:04:29 +03:00
Ilia Ross
e087bb718c Add support for bullet list hotkey 2023-10-03 18:55:38 +03:00
Ilia Ross
51bdd0d07e Fix to remove old Webmin repo in sources.list file
https://github.com/webmin/webmin/issues/1969#issuecomment-1742141240
2023-10-02 21:14:18 +03:00
Jamie Cameron
74fec8b171 Merge pull request #2013 from webmin/dev/theme-switcher
Add theme switcher using hotkeys
2023-10-01 15:21:47 -07:00
Ilia Ross
9d360f1c24 Fix not to enable on error_stack option 2023-10-01 21:34:50 +03:00
Jamie Cameron
148743894f The rm command should always be available 2023-10-01 11:15:23 -07:00
Ilia Ross
6b935f980c Fix to use ACL modify_user to change theme
https://github.com/webmin/webmin/pull/2013#discussion_r1342020745
2023-10-01 14:36:56 +03:00
Jamie Cameron
e751836684 Revert "Fix to use full path [build]"
This reverts commit b9449c213b.
2023-09-30 21:40:53 -07:00
Ilia Ross
b9449c213b Fix to use full path [build] 2023-10-01 03:04:27 +03:00
Jamie Cameron
a3c9770d4f Merge branch 'master' of github.com:webmin/webmin 2023-09-29 20:43:28 -07:00
Jamie Cameron
3c971dacc1 Copy allow-transfer directives up from global, because they aren't merged 2023-09-29 20:40:31 -07:00
Ilia Ross
ac1a73c154 Update CHANGELOG.md for 2.103 2023-09-29 17:23:52 +03:00
Ilia Ross
3a099fabec Fix to consider stand alone option as well 2023-09-29 15:32:07 +03:00
Ilia Ross
9a1e869a82 Fix to only enable theme switcher in debug mode 2023-09-29 12:56:23 +03:00
Ilia Ross
5c54c614e3 Fix comments to update hotkeys 2023-09-29 03:40:32 +03:00
Ilia Ross
cbdc843500 Add theme switcher using hotkeys 2023-09-29 03:24:14 +03:00
Ilia Ross
82fbca20e4 Merge branch 'master' of github.com:webmin/webmin 2023-09-29 00:22:13 +03:00
Ilia Ross
ef7dbb1f77 Fix to support hiding dot-files in File Manager 2023-09-29 00:21:50 +03:00
Jamie Cameron
4f15106fa9 Merge branch 'master' of github.com:webmin/webmin 2023-09-27 16:45:11 -07:00
Jamie Cameron
96bfc34247 Clean up code to set per-domain allow-transfer and also-notify 2023-09-27 16:36:21 -07:00
Ilia Ross
0289ceed5b Fix indent [build] 2023-09-26 21:24:12 +03:00
Ilia Ross
4e54ce3f85 Fix to correctly cache cloned locale with military time 2023-09-26 21:22:44 +03:00
Ilia Ross
73b2322597 Add English (United States) (military time) locale
https://github.com/webmin/authentic-theme/issues/1676#issuecomment-1735466651
2023-09-26 19:19:21 +03:00
Ilia Ross
05c7b6c3a3 Fix locale as sv isn't se
https://github.com/webmin/authentic-theme/issues/1676
2023-09-26 15:22:57 +03:00
Jamie Cameron
1bb70effea Use proper page flipper API 2023-09-25 20:04:11 -07:00
Jamie Cameron
590c27d202 Make option a bit nicer 2023-09-25 19:58:09 -07:00
Jamie Cameron
846dff2636 Clean up page flipper 2023-09-25 19:56:26 -07:00
Ilia Ross
b339c76fc7 Fix to always escape & by default 2023-09-25 19:19:52 +03:00
Ilia Ross
fbabecbe9e Fix support for new ZSTD and XZ formats 2023-09-24 22:12:59 +03:00
Ilia Ross
7706c0795e Add XZ and ZSTD compression ; add plain TAR archives 2023-09-24 21:21:08 +03:00
Ilia Ross
4be368c523 Fix elements overflow in shell module [build]
https://forum.virtualmin.com/t/webmin-command-shell-module-oddity-the-text-input-field-extends-past-screens-end/122741/9?u=ilia
2023-09-23 13:08:18 +03:00
Ilia Ross
b268c1bb66 Fix to import missing $bind_version vars 2023-09-20 19:33:41 +03:00
Jamie Cameron
b2f18fb784 dnssec-enabled has been obsoleted in new version https://github.com/virtualmin/virtualmin-gpl/issues/645 2023-09-19 21:13:38 -07:00
Jamie Cameron
34e3b4c027 Fix core vs cores https://github.com/webmin/webmin/issues/2008 2023-09-19 16:15:30 -07:00
Jamie Cameron
3c5edcf184 Merge branch 'master' of github.com:webmin/webmin 2023-09-18 22:04:15 -07:00
Jamie Cameron
33f4d7a008 Re-check OS after reboot https://github.com/webmin/webmin/issues/2004 2023-09-18 22:04:04 -07:00
Ilia Ross
2d182a2eea Fix ProFTPd config path 2023-09-19 01:07:41 +03:00
Jamie Cameron
7f06ccaf53 Merge pull request #2003 from webmin/dev/die-handler
Add die handler that stores the error from eval message
2023-09-17 22:26:05 -07:00
Jamie Cameron
d8fa7f26af Use proper function to compare versions https://github.com/virtualmin/virtualmin-gpl/issues/641 2023-09-17 19:39:40 -07:00
Jamie Cameron
aa6edf6c55 Preserve original permissions, ownership and file times after gunzipping 2023-09-17 19:20:26 -07:00
Ilia Ross
4333435739 Fix indent 2023-09-17 13:44:03 +03:00
Ilia Ross
f01197df71 Add die handler that stores the error from eval message 2023-09-17 13:42:30 +03:00
Jamie Cameron
cb41eff450 Fix decompression of folders 2023-09-16 18:44:42 -07:00
Jamie Cameron
352326f574 Return decompression status 2023-09-16 18:44:16 -07:00
Jamie Cameron
410fd07287 Merge branch 'master' of github.com:webmin/webmin 2023-09-16 09:29:49 -07:00
Jamie Cameron
faededeb77 Fix variable name 2023-09-16 09:29:42 -07:00
Ilia Ross
f0f8dc2850 Fix to correctly escape content in editor mode
https://forum.virtualmin.com/t/webmins-file-managers-editor-converting-html-special-characters-making-the-next-save-detrimental/122606/18?u=ilia

605a32f87d
2023-09-16 16:57:08 +03:00
Jamie Cameron
184e8d627d Deal with case where all configs are under /opt 2023-09-15 20:52:23 -07:00
Jamie Cameron
fd2b7c1fc7 Merge pull request #2002 from webmin/dev/protocols-save-to-global
Fix to save protocols to global config file
2023-09-15 20:50:34 -07:00
Jamie Cameron
98192ca099 Fix variable name 2023-09-15 18:54:43 -07:00
Jamie Cameron
05a93a5e3d Merge branch 'master' of github.com:webmin/webmin 2023-09-15 18:53:00 -07:00
Jamie Cameron
50a2820a97 remove typo 2023-09-15 18:52:54 -07:00
Ilia Ross
87f2640ee3 Update CHANGELOG.md 2023-09-16 00:21:59 +03:00
Ilia Ross
4180e3d3ee Fix to always include vendor_perl for 2FA to work [build]
https://forum.virtualmin.com/t/added-two-factor-authentication-i-think-last-access-but-not-100-anyway-2fa-is-failing-about-authen-oath/122538/60?u=ilia
2023-09-16 00:03:45 +03:00
Ilia Ross
b7d7ea5d8d Fix to simplify code 2023-09-15 22:34:32 +03:00
Ilia Ross
4e09cf0b55 Fix sent folder name ; update translations 2023-09-15 21:14:43 +03:00
Ilia Ross
3f0ab3fb92 Fix missing line increment 2023-09-15 19:21:08 +03:00
Ilia Ross
836647525a Fix to save protocols to global config file 2023-09-15 17:50:39 +03:00
Ilia Ross
8b68eac561 Fix how errors are handled when $main::error_last_eval is set
Note: If `$main::error_last_eval` was set, then display full error message using HTML accordion, otherwise display a bubble showing a file name and line which failed
2023-09-15 15:37:33 +03:00
Ilia Ross
0503299773 Fix to correctly set last caller (file:line) in error 2023-09-15 14:16:58 +03:00
Jamie Cameron
2e8000d191 Show full error if Authen::OATH cannot be loaded 2023-09-14 18:50:39 -07:00
Jamie Cameron
65ffcea0db Merge branch 'master' of github.com:webmin/webmin 2023-09-14 18:47:44 -07:00
Jamie Cameron
45845b8ca6 Wait a bit longer for DNS propogation 2023-09-14 17:07:04 -07:00
Ilia Ross
fead9b108d Fix to print errors to STDERR nicely 2023-09-15 01:13:54 +03:00
Ilia Ross
db1c9679ba Fix to revert previous patch 2023-09-15 00:40:16 +03:00
Ilia Ross
d753fa7a8d Fix to actually print the error 2023-09-15 00:11:06 +03:00
Ilia Ross
f6d7e05b14 Fix to remove unused config title 2023-09-13 22:53:32 +03:00
Ilia Ross
a9288423cc Fix to remove unused config title 2023-09-12 16:08:25 +03:00
Ilia Ross
ac9e54afba Update CHANGELOG.md for 2.103 2023-09-11 21:34:42 +03:00
Jamie Cameron
f7cf6419d2 Use taqbs 2023-09-06 16:23:40 -07:00
Jamie Cameron
a9097cbb42 Also support passing in the key ID and hmac for non-standard servers 2023-09-05 20:28:21 -07:00
Jamie Cameron
6f84ca1c9d Merge branch 'master' of github.com:webmin/webmin 2023-09-04 19:09:58 -07:00
Ilia Ross
dff70c3349 Fix Postfix check options page 2023-09-04 22:38:47 +03:00
Jamie Cameron
fe8f3f8494 Use standard buffer size 2023-09-04 11:13:45 -07:00
Ilia Ross
f5f3510a59 Fix default download buffer (once more) as 1 MiB should be just fine 2023-09-04 14:09:55 +03:00
Ilia Ross
1e375b4740 Fix indent one more time
c573496914
2023-09-04 13:14:31 +03:00
Jamie Cameron
c573496914 Fix indenting 2023-09-03 22:54:28 -07:00
Jamie Cameron
73e731722d Use packages with new key for upgrading 2023-09-02 21:44:29 -07:00
Jamie Cameron
6186376b6b Use packages with new key for upgrading 2023-09-02 21:43:58 -07:00
Ilia Ross
31e0151804 Fix to use help UI lib for showing explanatory message 2023-09-02 16:11:02 +03:00
Ilia Ross
872ca66b07 Add UI option to control network buffer size for downloads 2023-09-02 15:49:47 +03:00
Ilia Ross
088aba8cec Fix to use safer default buffer 2023-09-02 15:19:11 +03:00
Ilia Ross
99b8959559 Fix to send a file in chunks
https://forum.virtualmin.com/t/upgrade-2-102-killed-download-from-server-feature/122413/7?u=ilia
2023-09-02 15:18:49 +03:00
Jamie Cameron
94f23e63e7 Hide ps command in output 2023-08-31 22:44:44 -07:00
Jamie Cameron
7c449cf4a3 Merge branch 'master' of github.com:webmin/webmin 2023-08-31 22:40:06 -07:00
Jamie Cameron
2db507e5e8 Use proper UI functions for CPU and RAM modes 2023-08-31 22:39:45 -07:00
Ilia Ross
bdeb908df0 Fix to add --no-reuse-key as well
https://forum.virtualmin.com/t/unable-to-switch-ssl-certificate-into-elliptic-curve/122383?u=ilia
2023-08-31 17:15:24 +03:00
Jamie Cameron
a133cdfdef Also uncompress sub-folders 2023-08-30 22:54:25 -07:00
Jamie Cameron
fe2656acd8 Add flag for the key name 2023-08-30 20:15:41 -07:00
Jamie Cameron
64a44a667e Merge branch 'master' of github.com:webmin/webmin 2023-08-30 20:10:39 -07:00
Jamie Cameron
59cef9a04f Add flag for the default GPG key 2023-08-30 20:10:01 -07:00
Ilia Ross
af629fe3cd Fix code indent 2023-08-28 16:08:28 +03:00
Ilia Ross
80368e2a04 Merge branch 'master' of github.com:webmin/webmin 2023-08-28 16:05:39 +03:00
Ilia Ross
5237ae8ea2 Fix bug when backend isn't saved correctly #1992 2023-08-28 16:05:33 +03:00
Jamie Cameron
54ad4f7f74 Work on function to uncompress mail folders 2023-08-27 21:54:18 -07:00
Jamie Cameron
0dd94f5957 Merge branch 'master' of github.com:webmin/webmin 2023-08-26 18:51:08 -07:00
Jamie Cameron
5b2b3f0790 Add flag for ACME service URL 2023-08-26 18:51:01 -07:00
Jamie Cameron
ac05a0c43a Merge pull request #1991 from webmin/dev/cache-system-hostname-using-state
Fix to use a new way for clearing hostname cache
2023-08-26 15:34:26 -07:00
Ilia Ross
710829c16a Fix to send headers unless already done in var_dump 2023-08-26 21:45:44 +03:00
1103 changed files with 11820 additions and 5914 deletions

View File

@@ -13,7 +13,7 @@ jobs:
- uses: actions/checkout@v3
- uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: git tar gzip openssl curl openssh-client rpm perl libdigest-sha-perl liblist-moreutils-perl libencode-detect-perl
packages: git tar gzip openssl curl openssh-client rpm perl libjson-pp-perl libdigest-sha-perl liblist-moreutils-perl libencode-detect-perl
version: 1.0
- uses: szenius/set-timezone@v1.2
with:

1
.gitignore vendored
View File

@@ -21,3 +21,4 @@ core
tarballs/
minimal/
.DS_Store
.vscode/settings.json

View File

@@ -1,5 +1,48 @@
## Changelog
#### 2.111 (April 16, 2024)
* Fix EOL detection for unreleased Linux distributions
#### 2.110 (April 15, 2024)
* Add an API to check if the system is running or approaching its end of life (EOL)
* Add support for `systemd-timesyncd` and `chronyd` to the System Time module
* Add Ubuntu 24.04 support
* Add Squid 6 support
* Add latest Devuan Linux support
* Add an option to request Let's Encrypt certificates using `certbot` in standalone mode [forum.virtualmin.com/t/123696](http://forum.virtualmin.com/t/webmin-ssl-certificate-with-lets-encrypt-directly-obtain-certificate-without-requiring-apache-or-nginx/123696/)
* Add IMAP and SMTP monitors in the System and Server Status module
* Fix TLS connection to SMTP servers not working in some cases
* Fix ProFTPd module to use actual UI library
* Fix to using the `qrencode` command to generate QR codes locally instead of the remote Google Chart API
* Fix a number of various other issues
#### 2.105 (November 09, 2023)
* Fix param to read only headers [sourceforge.net/usermin-bugs#501](https://sourceforge.net/p/webadmin/usermin-bugs/501/)
* Fix not to set `reuse` flag on initial Let's Encrypt request
* Fix to correctly escape mail file names upon deletion
* Fix index field in cache file in BIND DNS module
#### 2.104 (October 16, 2023)
* Add support for numbered and bulleted lists in email HTML editor
* Add ability to display active file locks in `Webmin Configuration ⇾ File Locking` page
* Fix hostname detection on `systemd` systems to avoid excessive logging [#2020](https://github.com/webmin/webmin/issues/2020)
* Fix Webmin version display [#2023](https://github.com/webmin/webmin/issues/2023)
* Fix to check if UI library is loaded before using it [#2021](https://github.com/webmin/webmin/issues/2021)
* Fix the absent init script for legacy systems after the initial installation
* Update the Authentic theme to the latest version with various fixes and improvements
#### 2.103 (October 08, 2023)
* Add support for hostname detection using `hostnamectl` command
* Add support for other ACME services
* Add ability to hide dotfiles in File Manager [#1578](https://github.com/webmin/authentic-theme/issues/1578)
* Add `xz`, `zstd` and plain `tar` support when creating archives in File Manager [#2009](https://github.com/webmin/webmin/issues/2009)
* Add support for English (United States) (military time) locale
* Fix to correctly switch key hash type with ACME services
* Fix bug when `backend` wasn't saved correctly in Fail2Ban module [#1992](https://github.com/webmin/webmin/issues/1992)
* Fix large files download in Upload and Download module
* Fix Google Authentication on RHEL systems derivatives
* Update the Authentic theme to the latest version with various fixes and improvements
#### 2.102 (August 23, 2023)
* Add support for Amazon Linux 2023
* Fix a bug in Network Configuration module when parsing network size [sourceforge.net/discussion#55377]( https://sourceforge.net/p/webadmin/discussion/55377/thread/78e5aa05f3)

File diff suppressed because one or more lines are too long

View File

@@ -501,6 +501,7 @@ core_actmod=Aktiewe modules
core_option=Opsie
core_setdir=Stel vir gids in
core_merge=Smelt met ouer
core_eoptionsboth=Gidsopsies : Aktiewe opsies moet almal óf gestel vir gids óf saamgevoeg met ouer wees, maar nie albei nie
core_users=Slegs hierdie gebruikers
core_groups=Slegs hierdie groepe
core_allusers=Alle geldige gebruikers

View File

@@ -500,6 +500,7 @@ core_actmod=وحدات نشطة
core_option=اختيار
core_setdir=تعيين للدليل
core_merge=دمج مع الوالد
core_eoptionsboth=خيارات الدليل: يجب أن تكون جميع الخيارات النشطة إما Set For Directory أو Merged With Parent، ولكن ليس كليهما
core_users=فقط هؤلاء المستخدمين
core_groups=فقط هذه المجموعات
core_allusers=جميع المستخدمين صالحة

View File

@@ -501,6 +501,7 @@ core_actmod=Актыўныя модулі
core_option=Варыянт
core_setdir=Набор для каталога
core_merge=Зліццё з бацькам
core_eoptionsboth=Параметры каталога : усе актыўныя параметры павінны быць усталяваны для каталога або аб'яднаны з бацькоўскім, але не абодва
core_users=Толькі гэтыя карыстальнікі
core_groups=Толькі гэтыя групы
core_allusers=Усе сапраўдныя карыстальнікі

View File

@@ -9,3 +9,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 криптиран
core_protocols_h2c=HTTP/2 нешифрован
core_eprotcols=Няма избрани протоколи!
core_eoptionsboth=Опции за директория: Всички активни опции трябва да са или Задани за директория, или Обединени с родител, но не и двете

View File

@@ -10,3 +10,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 xifrat
core_protocols_h2c=HTTP/2 sense xifrar
core_eprotcols=No s'ha seleccionat cap protocol!
core_eoptionsboth=Opcions de directori: les opcions actives han d'estar totes configurades per al directori o combinades amb el pare, però no totes dues

View File

@@ -27,6 +27,7 @@ core_protocols_h2=HTTP/2 šifrováno
core_protocols_h2c=HTTP/2 nešifrované
core_eprotcols=Nejsou vybrány žádné protokoly!
core_minor=Pouze menší verze
core_eoptionsboth=Možnosti adresáře : Všechny aktivní možnosti musí být buď Set For Directory, nebo Merged With Parent, ale ne obojí
mod_alias_alias2=alias dokumentu
mod_alias_regexp2=alias dokumentu regexp

View File

@@ -271,6 +271,7 @@ core_optfile=Optagelsesfil pr. Katalog
core_ecandoc=Du har ikke tilladelse til at bruge dokumentroten '$1'
core_realm=Autentificeringsrealmets navn
core_minor=Kun mindre version
core_eoptionsboth=Indstillinger for bibliotek : Alle aktive indstillinger skal være enten indstillet til bibliotek eller flettet med overordnet, men ikke begge
mod_negotiation_cache=Cache-indholdsforhandlede dokumenter?
mod_negotiation_pri=Sprogprioritet for flere visninger

View File

@@ -7,3 +7,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 verschlüsselt
core_protocols_h2c=HTTP/2 unverschlüsselt
core_eprotcols=Keine Protokolle ausgewählt!
core_eoptionsboth=Verzeichnisoptionen: Alle aktiven Optionen müssen entweder „Für Verzeichnis festlegen“ oder „Mit übergeordnetem Verzeichnis zusammengeführt“ sein, jedoch nicht beides

View File

@@ -9,3 +9,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 κρυπτογραφημένο
core_protocols_h2c=HTTP/2 μη κρυπτογραφημένο
core_eprotcols=Δεν επιλέχθηκαν πρωτόκολλα!
core_eoptionsboth=Επιλογές καταλόγου : Οι ενεργές επιλογές πρέπει να είναι όλες είτε ορισμένες για κατάλογο είτε συγχωνευμένες με γονέα, αλλά όχι και οι δύο

View File

@@ -50,6 +50,7 @@ core_protocols_h2c=HTTP/2 sin cifrar
core_eprotcols=¡No se seleccionaron protocolos!
core_ecandoc=No tiene permiso para usar la raíz del documento '$1'
core_minor=Solo versión menor
core_eoptionsboth=Opciones de directorio: las opciones activas deben estar todas configuradas para directorio o fusionadas con padre, pero no ambas
core_fileowner=Propietario de archivo coincide
core_filegroup=Partidos del propietario del grupo

View File

@@ -501,6 +501,7 @@ core_actmod=Modulu aktiboak
core_option=aukera
core_setdir=Direktorioa ezarri
core_merge=Gurasoekin elkartu
core_eoptionsboth=Direktorio-aukerak : Aukera aktiboak guztiak direktoriorako ezarrita edo gurasoekin bateratuta egon behar dira, baina ez biak
core_users=Erabiltzaile horiek bakarrik
core_groups=Talde horiek bakarrik
core_allusers=Erabiltzaile baliozko guztiak

View File

@@ -54,6 +54,7 @@ core_ecandoc=You are not allowed to use the document root '$1'
core_minor=فقط نسخه جزئی
core_uid=شناسه کاربری
core_euid='$1' is not a valid group ID
core_eoptionsboth=گزینه های دایرکتوری: گزینه های فعال باید همه یا Set For Directory یا Merged with Parent باشند، اما نه هر دو
core_fileowner=مالک پرونده مطابقت دارد
core_filegroup=مالک گروه مطابقت دارد

View File

@@ -501,6 +501,7 @@ core_actmod=Aktiiviset moduulit
core_option=Vaihtoehto
core_setdir=Asetettu hakemistoon
core_merge=Yhdistä vanhemman kanssa
core_eoptionsboth=Hakemistovalinnat : Kaikkien aktiivisten asetusten on oltava joko asetettu hakemistoon tai yhdistetty ylätason kanssa, mutta ei molempia
core_users=Vain nämä käyttäjät
core_groups=Vain nämä ryhmät
core_allusers=Kaikki kelvolliset käyttäjät

View File

@@ -5,3 +5,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 crypté
core_protocols_h2c=HTTP/2 non crypté
core_eprotcols=Aucun protocole sélectionné !
core_eoptionsboth=Options du répertoire : les options actives doivent toutes être définies pour le répertoire ou fusionnées avec le parent, mais pas les deux

View File

@@ -501,6 +501,7 @@ core_actmod=מודולים פעילים
core_option=אפשרות
core_setdir=הגדר לספרייה
core_merge=התמזגו עם ההורה
core_eoptionsboth=אפשרויות ספרייה : האפשרויות הפעילות חייבות להיות כולן מוגדרות למדריך או התמזגו עם אב, אך לא שתיהן
core_users=רק משתמשים אלה
core_groups=רק הקבוצות האלה
core_allusers=כל המשתמשים התקפים

View File

@@ -25,6 +25,7 @@ core_protocols_h2=HTTP/2 šifrirano
core_protocols_h2c=HTTP/2 nešifriran
core_eprotcols=Nema odabranih protokola!
core_minor=Samo manja verzija
core_eoptionsboth=Opcije direktorija : sve aktivne opcije moraju biti postavljene za imenik ili spojene s nadređenim, ali ne oboje
mod_proxy_seconds=sekundi

View File

@@ -49,6 +49,7 @@ core_protocols_h2c=HTTP/2 titkosítatlan
core_eprotcols=Nincsenek kiválasztva protokollok!
core_ecandoc=Nem használhatja a '$1' gyökér dokumentumot
core_minor=Kisebb verzió
core_eoptionsboth=Címtárbeállítások : Az aktív opciók mindegyike címtárhoz beállítva vagy Összevonva a szülővel lehet, de nem mindkettő
core_fileowner=A fájltulajdonos megegyezik
core_filegroup=Csoportos tulajdonos mérkőzések

View File

@@ -577,10 +577,10 @@ mod_proxy_netbit=Sottorete (Network/bits)
mod_proxy_maxfw=Numero massimo di proxy nella catena di richiesta
mod_proxy_emaxfs=Il Numero massimo di proxy nella catena di richiesta deve essere un intero
mod_proxy_preserve=Preserva originale l'header Host:
mod_proxy_timeout=Timeout delle richieste proxy in secondi
mod_proxy_etimeout=Il timeout delle richieste proxy deve essere un numero di secondi
mod_proxy_via=Setta header Via:
mod_log_agent_default=Default
mod_log_agent_file=File..
mod_log_agent_program=Programma..

View File

@@ -63,6 +63,7 @@ core_eprotcols=Nessun protocollo selezionato!
core_ecandoc=Non puoi utilizzare la radice del documento '$1'
core_minor=Solo versione secondaria
core_eerrordir=La directory per il file di registro degli errori non esiste
core_eoptionsboth=Opzioni directory: le opzioni attive devono essere tutte impostate per directory o unite con padre, ma non entrambe
core_fileowner=Corrispondenze del proprietario del file
core_filegroup=Partite del proprietario del gruppo

View File

@@ -25,6 +25,7 @@ core_protocols_h2=HTTP/2暗号化
core_protocols_h2c=HTTP/2暗号化されていない
core_eprotcols=プロトコルが選択されていません!
core_minor=マイナーバージョンのみ
core_eoptionsboth=ディレクトリ オプション: アクティブなオプションはすべて、「ディレクトリに設定」または「親とマージ」のいずれかである必要がありますが、両方にすることはできません。
mod_proxy_seconds=秒

View File

@@ -101,6 +101,7 @@ core_minor=부 버전 만
core_maxxml=최대 XML 요청 본문 크기
core_exml=잘못된 XML 요청 본문 크기
core_eerrordir=오류 로그 파일의 디렉토리가 존재하지 않습니다
core_eoptionsboth=디렉터리 옵션: 활성 옵션은 모두 디렉터리에 대해 설정 또는 상위 항목과 병합이어야 하지만 둘 다일 수는 없습니다
core_fileowner=파일 소유자 일치
core_filegroup=그룹 소유자 일치
core_major=메이저 버전 만

View File

@@ -501,6 +501,7 @@ core_actmod=Aktyvūs moduliai
core_option=Pasirinkimas
core_setdir=Nustatykite katalogą
core_merge=Sujungti su tėvu
core_eoptionsboth=Katalogo parinktys : visos aktyvios parinktys turi būti nustatytos kaip katalogas arba sujungtos su pirminiu, bet ne abi
core_users=Tik šie vartotojai
core_groups=Tik šios grupės
core_allusers=Visi tinkami vartotojai

View File

@@ -501,6 +501,7 @@ core_actmod=Aktīvie moduļi
core_option=Iespēja
core_setdir=Iestatīts direktorijam
core_merge=Apvienot ar vecāku
core_eoptionsboth=Direktorija opcijas : visām aktīvajām opcijām ir jābūt iestatītām direktorijam vai sapludinātām ar vecāku, bet ne abām
core_users=Tikai šie lietotāji
core_groups=Tikai šīs grupas
core_allusers=Visi derīgi lietotāji

View File

@@ -49,6 +49,7 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 disulitkan
core_protocols_h2c=HTTP/2 tidak disulitkan
core_eprotcols=Tiada protokol dipilih!
core_eoptionsboth=Pilihan direktori : Pilihan aktif mestilah semua sama ada Tetapkan Untuk Direktori atau Digabungkan Dengan Induk, tetapi bukan kedua-duanya
mod_negotiation_cache=Dokumen-dokumen yang dirundingkan kandungan cache?
mod_negotiation_pri=Keutamaan bahasa untuk pelbagai tontonan

View File

@@ -501,6 +501,7 @@ core_actmod=Moduli attivi
core_option=Għażla
core_setdir=Issettjat għad-direttorju
core_merge=Tingħaqad mal-ġenitur
core_eoptionsboth=Għażliet tad-Direttorju : L-għażliet attivi jridu jkunu kollha jew Issettjati Għal Direttorju jew Magħquda Mal-Ġenitur, iżda mhux it-tnejn
core_users=Dawn l-utenti biss
core_groups=Dawn il-gruppi biss
core_allusers=L-utenti validi kollha

View File

@@ -14,3 +14,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 versleuteld
core_protocols_h2c=HTTP/2 niet-versleuteld
core_eprotcols=Geen protocollen geselecteerd!
core_eoptionsboth=Directory-opties: Actieve opties moeten allemaal Set For Directory of Merged With Parent zijn, maar niet beide

View File

@@ -5,3 +5,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=HTTP/2 kryptert
core_protocols_h2c=HTTP/2 ukryptert
core_eprotcols=Ingen protokoller valgt!
core_eoptionsboth=Katalogalternativer : Alle aktive alternativer må enten være satt til katalog eller slått sammen med overordnet, men ikke begge

View File

@@ -9,3 +9,4 @@ core_protocols_http/2=HTTP/2
core_protocols_h2=Szyfrowany HTTP/2
core_protocols_h2c=HTTP/2 nieszyfrowany
core_eprotcols=Nie wybrano protokołów!
core_eoptionsboth=Opcje katalogu: wszystkie aktywne opcje muszą być ustawione na katalog lub scalone z nadrzędnym, ale nie na jedno i drugie

View File

@@ -290,6 +290,7 @@ core_actmod=Módulos ativos
core_option=Opção
core_setdir=Definido para o diretório
core_merge=Mesclar com o pai
core_eoptionsboth=Opções de diretório: as opções ativas devem ser todas definidas para o diretório ou mescladas com o pai, mas não ambas
core_users=Somente esses usuários
core_groups=Somente esses grupos
core_allusers=Todos os usuários válidos

View File

@@ -23,6 +23,7 @@ core_protocols_h2=HTTP/2 criptografado
core_protocols_h2c=HTTP/2 não criptografado
core_eprotcols=Nenhum protocolo selecionado!
core_minor=Apenas versão secundária
core_eoptionsboth=Opções de diretório: as opções ativas devem ser todas definidas para o diretório ou mescladas com o pai, mas não ambas
mod_proxy_seconds=segundos

View File

@@ -501,6 +501,7 @@ core_actmod=Module active
core_option=Opțiune
core_setdir=Set pentru director
core_merge=Unire cu părintele
core_eoptionsboth=Opțiuni de director : opțiunile active trebuie să fie toate fie Set for Directory sau Merged With Parent, dar nu ambele
core_users=Numai acești utilizatori
core_groups=Numai aceste grupuri
core_allusers=Toți utilizatorii valabili

View File

@@ -27,6 +27,7 @@ core_protocols_h2=HTTP/2 зашифрованный
core_protocols_h2c=HTTP/2 незашифрованный
core_eprotcols=Протоколы не выбраны!
core_ecandoc=Вы не можете использовать корневой каталог документа «$1»
core_eoptionsboth=Параметры каталога: все активные параметры должны быть либо «Установлено для каталога», либо «Объединено с родительским», но не оба одновременно
core_fileowner=Владелец файла соответствует
core_filegroup=Совпадения владельца группы

View File

@@ -501,6 +501,7 @@ core_actmod=Aktívne moduly
core_option=voľba
core_setdir=Nastaviť pre adresár
core_merge=Zlúčiť s rodičom
core_eoptionsboth=Možnosti adresára: Všetky aktívne možnosti musia byť buď Nastaviť pre adresár alebo Zlúčiť s rodičom, ale nie oboje
core_users=Iba títo používatelia
core_groups=Iba tieto skupiny
core_allusers=Všetci platní používatelia

View File

@@ -501,6 +501,7 @@ core_actmod=Aktivni moduli
core_option=Možnost
core_setdir=Nastavite za imenik
core_merge=Spojite se s staršem
core_eoptionsboth=Možnosti imenika : vse aktivne možnosti morajo biti Nastavljene za imenik ali Združene z nadrejenim, ne pa oboje
core_users=Samo ti uporabniki
core_groups=Samo te skupine
core_allusers=Vsi veljavni uporabniki

View File

@@ -23,6 +23,7 @@ core_protocols_h2=HTTP/2 krypterad
core_protocols_h2c=HTTP/2 okrypterad
core_eprotcols=Inga protokoll har valts!
core_minor=Endast mindre version
core_eoptionsboth=Katalogalternativ : Alla aktiva alternativ måste antingen vara inställda för katalog eller sammanfogade med överordnade, men inte båda
mod_proxy_seconds=sekunder

View File

@@ -501,6 +501,7 @@ core_actmod=โมดูลที่ใช้งานอยู่
core_option=ตัวเลือก
core_setdir=ตั้งไว้สำหรับไดเรกทอรี
core_merge=รวมกับผู้ปกครอง
core_eoptionsboth=ตัวเลือกไดเร็กทอรี : ตัวเลือกที่ใช้งานอยู่ทั้งหมดจะต้องตั้งค่าสำหรับไดเร็กทอรีหรือผสานกับพาเรนต์ แต่ไม่ใช่ทั้งสองอย่าง
core_users=เฉพาะผู้ใช้เหล่านี้
core_groups=เฉพาะกลุ่มเหล่านี้
core_allusers=ผู้ใช้ที่ถูกต้องทั้งหมด

View File

@@ -178,6 +178,7 @@ core_exml=Geçersiz XML isteği gövde boyutu
core_sroot=Sunucu kökü
core_eerrordir=Hata günlüğü dosyası dizini mevcut değil
core_merge=Üst öğe ile birleştir
core_eoptionsboth=Dizin seçenekleri : Etkin seçeneklerin tümü Dizin İçin Ayarla veya Üst Öğeyle Birleştirilmiş olmalıdır, ancak her ikisi birden olmamalıdır
core_fileowner=Dosya sahibi eşleşmeleri
core_filegroup=Grup sahibi eşleşmeleri
core_product=Sadece ürün

View File

@@ -566,10 +566,10 @@ mod_proxy_netbit=Мережа/біт
mod_proxy_maxfw=Максимальна кількість проксі в ланцюжку запитів
mod_proxy_emaxfs=Максимальна кількість проксі в ланцюжку запитів належний бути цілої числом
mod_proxy_preserve=Зарезервувати оригінальний вузол: заголовок
mod_proxy_timeout=Час чекання виконання запиту проксі в секундах
mod_proxy_etimeout=Час чекання виконання запиту проксі повинне бути числом секунд
mod_proxy_via=Установити через: заголовки
mod_log_agent_default=За замовчуванням
mod_log_agent_file=Файл..
mod_log_agent_program=Програма..

View File

@@ -73,6 +73,7 @@ core_eprotcols=Протоколи не вибрано!
core_ecandoc=Вам не дозволяється використовувати корінь документа "$1"
core_minor=Тільки незначна версія
core_eerrordir=Каталог файлу журналу помилок не існує
core_eoptionsboth=Параметри каталогу: усі активні параметри мають бути або встановлені для каталогу, або об’єднані з батьківським, але не обидва
core_fileowner=Власник файлу відповідає
core_filegroup=Матчі власників групи
core_major=Тільки основна версія

View File

@@ -501,6 +501,7 @@ core_actmod=فعال ماڈیولز
core_option=آپشن
core_setdir=ڈائریکٹری کے لئے مقرر کریں
core_merge=والدین کے ساتھ ضم کریں
core_eoptionsboth=ڈائرکٹری کے اختیارات: فعال اختیارات تمام یا تو ڈائرکٹری کے لیے سیٹ ہونے چاہئیں یا والدین کے ساتھ ضم ہونے چاہئیں، لیکن دونوں نہیں۔
core_users=صرف یہ صارفین
core_groups=صرف یہ گروہ
core_allusers=تمام درست استعمال کنندہ

View File

@@ -501,6 +501,7 @@ core_actmod=Các mô-đun hoạt động
core_option=Lựa chọn
core_setdir=Đặt cho thư mục
core_merge=Hợp nhất với cha mẹ
core_eoptionsboth=Tùy chọn thư mục : Tất cả các tùy chọn hoạt động phải là Set For Directory hoặc Merged With Parent, nhưng không được cả hai
core_users=Chỉ những người dùng này
core_groups=Chỉ những nhóm này
core_allusers=Tất cả người dùng hợp lệ

View File

@@ -573,10 +573,10 @@ mod_proxy_netbit=网络/位
mod_proxy_maxfw=请求链中最大的代理数
mod_proxy_emaxfs=请求链中最大的代理数必须是整数
mod_proxy_preserve=保持原来的主机:文件头
mod_proxy_timeout=代理请求超时秒数
mod_proxy_etimeout=代理请求超时必须是一个有效的秒数
mod_proxy_via=设置通过:头
mod_log_agent_default=默认
mod_log_agent_file=文件…
mod_log_agent_program=程序…

View File

@@ -68,6 +68,7 @@ core_eprotcols=未选择任何协议!
core_ecandoc=不允许使用文档根目录'$1'
core_minor=仅次要版本
core_eerrordir=错误日志文件目录不存在
core_eoptionsboth=目录选项:活动选项必须全部为“为目录设置”或“与父级合并”,但不能同时为两者
core_fileowner=文件所有者匹配
core_filegroup=群组拥有者比赛

View File

@@ -583,10 +583,10 @@ mod_proxy_netbit=網路/位元
mod_proxy_maxfw=請求鏈中最大的代理數
mod_proxy_emaxfs=請求鏈中最大的代理數必須是整數
mod_proxy_preserve=保留原始主機: 檔頭
mod_proxy_timeout=Proxy回應逾時秒數
mod_proxy_etimeout=Proxy回應逾時秒數必須是個秒數數字
mod_proxy_via=設定經由: 檔頭
mod_log_agent_default=預設
mod_log_agent_file=檔案..
mod_log_agent_program=程式..

View File

@@ -56,6 +56,7 @@ core_protocols_h2c=HTTP/2 未加密
core_eprotcols=未選擇任何協議!
core_ecandoc=不允許使用文檔根目錄'$1'
core_minor=僅次要版本
core_eoptionsboth=目錄選項:活動選項必須全部為“設定目錄”或“與父級合併”,但不能同時為兩者
core_fileowner=文件所有者匹配
core_filegroup=群組擁有者比賽

View File

@@ -99,9 +99,7 @@ print &ui_table_row($text{'index_time'},
&ui_textbox("hour", undef, 2).":".&ui_textbox("min", "00", 2));
# Current date and time
my ($date, $time) = split(/\s+/, &make_date(time()));
print &ui_table_row($text{'index_cdate'}, $date);
print &ui_table_row($text{'index_ctime'}, $time);
print &ui_table_row($text{'index_cdatetime'}, &make_date(time()));
# Run in directory
print &ui_table_row($text{'index_dir'},

View File

@@ -10,8 +10,7 @@ index_exec=Run at
index_created=Created on
index_dir=Run in directory
index_return=commands list
index_cdate=Current date
index_ctime=Current time
index_cdatetime=Current date and time
index_allow=Allowed scheduled command users
index_amode=Users to allow
index_amode0=All Unix users

View File

@@ -74,7 +74,7 @@ backup_eserver2=Missing or invalid SSH server
backup_epath=Missing or invalid absolute path on FTP server
backup_epath2=Missing or invalid absolute path on SSH server
backup_euser=Invalid characters in FTP server login
backup_epass=Invalid characters in FTP server password
backup_epass=Invalid characters in FTP server password - @, : and / cannot be used
backup_eport=Missing or invalid FTP server port
backup_esport=Missing or invalid SSH server port
backup_emods=No modules selected

View File

@@ -1,79 +1,79 @@
index_echeck=$1 Forse non è installato oppure la <a href='$2'>configurazione del modulo</a> non è corretta.
index_edb=Impossibile connettersi al database Bacula: $1 Forse non è impostato o la <a href='$2'>configurazione del modulo</a> non è corretta.
index_eng=Impossibile connettersi al database dei gruppi Bacula: $1. Forse non esiste o la <a href='$2'>configurazione del modulo</a> non è corretta.
index_econsole=Il comando della console Bacula $1 non è riuscito a comunicare con il direttore Bacula. Assicurati che la password in $2 sia corretta.
index_econsole2=Il comando della console Bacula $1 non è configurato con un host del regista Bacula valido. Attualmente utilizza $2, che non esiste.
index_edb=Impossibile connettersi al database di Bacula: $1 Forse non è impostato o la <a href='$2'>configurazione del modulo</a> non è corretta.
index_eng=Impossibile connettersi al database dei gruppi di Bacula: $1. Forse non esiste o la <a href='$2'>configurazione del modulo</a> non è corretta.
index_econsole=Il comando della console Bacula $1 non è riuscito a comunicare con il Director Bacula. Assicurati che la password in $2 sia corretta.
index_econsole2=Il comando della console Bacula $1 non è configurato con un host del Director Bacula valido. Attualmente utilizza $2, che non esiste.
index_fixpass=Fai clic qui per correggere la password della console
index_fixaddr=Fai clic qui per correggere l'host Director di Bacula
index_fixaddr=Fai clic qui per correggere l'host del Director di Bacula
index_stop=Ferma Bacula
index_stopdesc=Fare clic su questo pulsante per chiudere i processi del demone Bacula sopra elencati.
index_start=Inizia Bacula
index_startdesc=Fare clic su questo pulsante per avviare i processi del demone Bacula sopra elencati.
index_stopdesc=Fare clic su questo pulsante per chiudere i processi Bacula sopra elencati.
index_start=Avvia Bacula
index_startdesc=Fare clic su questo pulsante per avviare i processi Bacula sopra elencati.
index_restart=Riavvia Bacula
index_restartdesc=Fare clic su questo pulsante per interrompere e riavviare i processi del demone Bacula sopra elencati. Ciò può essere necessario per attivare le configurazioni del dispositivo di archiviazione.
index_restartdesc=Fare clic su questo pulsante per interrompere e riavviare i processi Bacula sopra elencati. Ciò può essere necessario per attivare le configurazioni del dispositivo di archiviazione.
index_apply=Applica configurazione
index_applydesc=Fare clic su questo pulsante per attivare la configurazione del regista Bacula mostrata sopra.
index_boot=Inizia all'avvio
index_applydesc=Fare clic su questo pulsante per attivare la configurazione del Director Bacula mostrata sopra.
index_boot=Avvia con il sistema
index_bootdesc=Modifica questa opzione per controllare se Bacula viene avviato o meno all'avvio del sistema.
index_status=Stati del processo:
index_up=Su
index_down=Giù
index_up=Attivo
index_down=Fermo
index_return=indice del modulo
index_versionbacula=Bacula $1
index_versionbareos=Bareos $1
index_notrun=I backup e altre operazioni non possono essere eseguiti poiché il daemon di Bacula Directory non è attivo.
index_notrun=I backup e altre operazioni non possono essere eseguiti poiché il Director di Bacula non è attivo.
index_eversion=Il tuo sistema utilizza Bacula versione $2, ma questo modulo Webmin supporta solo le versioni $1 e successive.
index_dir=Director Director
index_sd=Configurazione del daemon di archiviazione
index_fd=Configurazione del daemon di file
index_dir=Configurazione Director
index_sd=Configurazione dello Storage daemon
index_fd=Configurazione del File daemon
index_groups=Configurazione del gruppo Bacula
index_actions=Azioni di backup e ripristino
index_ocmin=Contributo di <a href=$2 target=_new>Linmin</a> </a>
connect_emysql=Impossibile caricare il driver DBI del database $1
connect_elogin=Impossibile accedere al database $1:$2.
connect_elogin=Impossibile accedere al database $1: $2.
connect_equery=Il database $1 non sembra contenere tabelle Bacula.
connect_equery2=Ciò può essere dovuto al fatto che il modulo SQLite Perl installato è troppo nuovo e non supporta il vecchio formato di database SQLite utilizzato da Bacula.
connect_equery3=Il database $1 non sembra contenere tabelle di gruppo OC Bacula.
esql=Errore SQL : $1
esql=Errore SQL: $1
check_edir=La directory di configurazione Bacula $1 non è stata trovata sul tuo sistema.
check_ebacula=Il comando di controllo Bacula $1 non è stato trovato.
check_econsole=Il comando della console Bacula $1 non è stato trovato.
check_edirector=Il file di configurazione del direttore Bacula $1 non è stato trovato.
check_eclient=Questo sistema sembra essere un <a href='$2'>client Bacula</a> piuttosto che un regista.
check_edirector=Il file di configurazione del Director Bacula $1 non è stato trovato.
check_eclient=Questo sistema sembra essere un <a href='$2'>client Bacula</a> piuttosto che un Director.
check_econfigs=Nessun file di configurazione Bacula trovato in $1
check_eservers=Nessun gruppo di server Webmin è stato definito
check_engmod=Il modulo dei gruppi Bacula OpenCountry non è installato
proc_bacula-sd=Demone di archiviazione
proc_bacula-fd=Demone di file
proc_bacula-dir=Demone di Bacula Director
proc_bareos-sd=Demone di archiviazione
proc_bareos-fd=Demone di file
proc_bareos-dir=Demone di Bacula Director
proc_bacula-sd=Storage daemon
proc_bacula-fd=File daemon
proc_bacula-dir=Bacula Director
proc_bareos-sd=Storage daemon
proc_bareos-fd=File daemon
proc_bareos-dir=Bacula Director
stop_err=Impossibile arrestare Bacula
start_err=Impossibile avviare Bacula
start_einit=Nessuno script init trovato per $1
start_erun=Impossibile avviare $1 : $2
start_erun=Impossibile avviare $1: $2
restart_err=Impossibile riavviare Bacula
apply_err=Impossibile applicare la configurazione
apply_failed=È stato rilevato un errore di configurazione
apply_problem=Impossibile applicare la configurazione : $1
apply_problem=Impossibile applicare la configurazione: $1
jobs_title=Processi di backup
jobs_none=Nessun processo di backup è stato ancora definito.
jobs_name=Nome del lavoro
jobs_none=Nessun processo di backup è stata ancora definita.
jobs_name=Nome del processo
jobs_deftype=Impostazioni predefinite?
jobs_type=Tipo di lavoro
jobs_client=Client per il backup
jobs_fileset=File impostato su backup
jobs_schedule=Pianificazione del backup
jobs_type=Tipo di processo
jobs_client=Client di backup
jobs_fileset=Insieme di file di backup
jobs_schedule=Pianificazione del processo
jobs_add=Aggiungi un nuovo processo di backup.
jobs_delete=Elimina lavori selezionati
jobs_return=elenco di lavori
jobs_derr=Impossibile eliminare i lavori
jobs_delete=Elimina processi selezionati
jobs_return=lista di processi
jobs_derr=Impossibile eliminare i processi.
filesets_title=Set di file
filesets_none=Nessun set di file di backup è stato ancora definito.
@@ -83,48 +83,48 @@ filesets_add=Aggiungi un nuovo set di file di backup.
filesets_delete=Elimina set di file selezionati
filesets_return=elenco di set di file
filesets_derr=Impossibile eliminare i set di file
filesets_ednone=Nessuno selezionato
filesets_ednone=Nessuna selezione
fileset_title1=Crea set di file
fileset_title2=Modifica set di file
fileset_header=Dettagli del set di file di backup
fileset_egone=Il set di file non esiste più!
fileset_name=Nome set file
fileset_include=File e directory per il backup
fileset_include=File e directory da archiviare
fileset_exclude=File e directory da saltare
fileset_sig=Tipo di firma del file
fileset_sig=Funzione di hash dei file
fileset_none=Nessuna
fileset_md5=MD5
fileset_err=Impossibile salvare il set di file
fileset_ename=Nome set file mancante
fileset_eclash=Un file impostato con lo stesso nome esiste già
fileset_eclash=Un set di file con lo stesso nome esiste già
fileset_echild=Questo set di file non può essere eliminato in quanto utilizzato da $1
fileset_comp=Tipo di compressione
fileset_gzipdef=&lt;Livello di compressione predefinito&gt;
fileset_lzo=Compressione LZO
fileset_gzip=Livello Gzip $1
fileset_gzip=Gzip livello $1
fileset_onefs=Limitare il backup a un file system?
clients_title=Client di backup
clients_none=Nessun client di backup è stato ancora definito.
clients_name=Nome del cliente
clients_name=Nome del client
clients_address=Nome host o indirizzo
clients_catalog=Catalogare
clients_catalog=Catalogo
clients_add=Aggiungi un nuovo client di backup.
clients_delete=Elimina i clienti selezionati
clients_return=elenco dei clienti
clients_delete=Elimina i client selezionati
clients_return=elenco dei client
clients_derr=Impossibile eliminare i client
client_title1=Crea client di backup
client_title2=Modifica client di backup
client_header=Dettagli del client di cui eseguire il backup
client_egone=Il client non esiste più!
client_name=Nome FD client
client_name=Nome FD del client
client_address=Nome host o indirizzo IP
client_port=Porta Bacula FD
client_pass=Password Bacula FD
client_catalog=Catalogo da usare
client_prune=Eliminare lavori e file scaduti?
client_prune=Eliminare processi e file scaduti?
client_fileret=Conserva i file di backup per
client_jobret=Mantieni processi di backup per
client_err=Impossibile salvare il client di backup
@@ -134,7 +134,7 @@ client_epass=Password mancante
client_eaddress=Nome host o indirizzo mancante o non valido
client_eport=Porta FD mancante o non valida
client_efileret=Periodo di conservazione dei file mancante o non valido
client_ejobret=Periodo di conservazione del lavoro mancante o non valido
client_ejobret=Periodo di conservazione del processo mancante o non valido
client_echild=Questo client non può essere eliminato in quanto utilizzato da $1
client_status=Mostra stato
@@ -144,137 +144,137 @@ job_header=Dettagli del processo di backup
job_name=Nome del processo di backup
job_enabled=Processo di backup abilitato?
job_def=Tipo predefinito
job_def0=Decisione predefinita
job_def1=Lavoro autonomo
job_def0=Definizione predefinita
job_def1=Processo isolato
job_def2=Eredita valori predefiniti da $1
job_type=Tipo di lavoro
job_type=Tipo di processo
job_level=Livello di backup
job_client=Client per il backup
job_fileset=File impostato su backup
job_schedule=Backup nei tempi previsti
job_storage=Dispositivo di archiviazione di destinazione
job_fileset=Set di file per il backup
job_schedule=Pianificazione processo
job_storage=Storage daemon di destinazione
job_pool=Pool di volumi
job_messages=Destinazione per i messaggi
job_prority=Priorità di backup
job_err=Impossibile salvare il processo di backup
job_ename=Nome lavoro mancante o non valido
job_eclash=Esiste già un lavoro con lo stesso nome
job_ename=Nome processo mancante o non valido
job_eclash=Esiste già un processo con lo stesso nome
job_epriority=Numero di priorità mancante o non valido
job_echild=Questa definizione di lavoro predefinita non può essere eliminata poiché utilizzata da $1
job_run=Corri adesso
job_before=Comando prima del lavoro
job_after=Comando dopo il lavoro
job_cbefore=Comando prima del lavoro (sul client)
job_cafter=Comando dopo processo (sul client)
job_echild=Questa definizione predefinita di processo non può essere eliminata poiché utilizzata da $1
job_run=Esegui ora
job_before=Comando prima del processo
job_after=Comando dopo il processo
job_cbefore=Comando prima del processo (sul client)
job_cafter=Comando dopo il processo (sul client)
schedules_title=Pianificazioni di backup
schedules_none=Nessuna pianificazione di backup è stata ancora definita.
schedules_name=Nome programma
schedules_sched=Esegui livelli e tempi
schedules_none=Nessuna pianificazione è stata ancora definita.
schedules_name=Nome pianifications
schedules_sched=Livelli e pianificazioni di esecuzione
schedules_add=Aggiungi una nuova pianificazione del backup.
schedules_delete=Elimina i programmi selezionati
schedules_return=elenco di programmi
schedules_delete=Elimina le pianificazioni selezionate
schedules_return=elenco di pianificazioni
schedules_derr=Impossibile eliminare le pianificazioni
schedule_title1=Crea programma di backup
schedule_title1=Crea pianificazione di backup
schedule_title2=Modifica pianificazione backup
schedule_header=Dettagli sulla pianificazione del backup
schedule_name=Nome pianificazione backup
schedule_runs=Esegui livelli e tempi
schedule_runs=Livelli e pianificazioni di esecuzione
schedule_level=Livello di backup
schedule_pool=Volume
schedule_times=Corri a volte
schedule_times=Orari di esecuzione
schedule_err=Impossibile salvare la pianificazione del backup
schedule_ename=Nome programma mancante o non valido
schedule_eclash=Esiste già un programma con lo stesso nome
schedule_etimes=Tempi di backup mancanti nella riga $1
schedule_ename=Nome pianificazione mancante o non valido
schedule_eclash=Esiste già una pianificazione con lo stesso nome
schedule_etimes=Orari di esecuzione mancanti nella riga $1
schedule_echild=Questa pianificazione non può essere eliminata in quanto utilizzata da $1
backup_title=Esegui processo di backup
backup_header=Dettagli del processo di backup
backup_job=Lavoro da eseguire
backup_job=Processo da eseguire
backup_jd=$1 (set di file $2 su $3)
backup_wait=Aspetta i risultati?
backup_ok=Esegui il backup ora
backup_run=Avvio del processo di backup $1 ..
backup_return=modulo di backup
backup_ejob=.. non è riuscito a trovare lavoro!
backup_eok=.. impossibile avviare il lavoro
backup_ejob=.. processo non trovato!
backup_eok=.. impossibile avviare il processo
backup_running=.. il processo di backup è ora in esecuzione. Al termine, i risultati verranno visualizzati di seguito.
backup_running2=.. il processo di backup è stato avviato in background.
backup_done=.. backup completato.
backup_failed=.. il backup non è stato completato correttamente. Controllare il messaggio di errore sopra per i dettagli.
gbackup_title=Esegui processo di backup del gruppo Bacula
gbackup_title=Esegui gruppo di processi di backup
gbackup_run=Avvio del processo di backup $1 su $2 client ..
gbackup_on=Esecuzione del processo di backup sul client $1 :
gbackup_header=Dettagli del processo di backup del gruppo Bacula
gbackup_on=Esecuzione del processo di backup sul client $1:
gbackup_header=Dettagli del gruppo di processo di backup
gbackup_jd=$1 (set di file $2 sul gruppo $3)
dirstatus_title=Stato del direttore
dirstatus_title=Stato del Director
dirstatus_sched=Processi di backup pianificati
dirstatus_name=Nome del lavoro
dirstatus_type=genere
dirstatus_name=Nome del processo
dirstatus_type=Tipo
dirstatus_level=Livello
dirstatus_date=Corri a
dirstatus_date2=Iniziato alle
dirstatus_date=Orari esecuzione
dirstatus_date2=Iniziato a
dirstatus_volume=Volume
dirstatus_schednone=Nessun processo di backup è attualmente pianificato.
dirstatus_id=Esegui ID
dirstatus_id=Id di esecuzione
dirstatus_status=Stato attuale
dirstatus_run=Esecuzione di processi di backup
dirstatus_run=Processi di backup in esecuzione
dirstatus_runnone=Nessun processo di backup è attualmente in esecuzione.
dirstatus_done=Processi di backup completati
dirstatus_bytes=Taglia
dirstatus_bytes=Dimensione
dirstatus_files=File
dirstatus_status2=Stato
dirstatus_donenone=Nessun processo di backup è stato eseguito.
dirstatus_cancel=Annulla lavori selezionati
dirstatus_cancel=Annulla processi selezionati
dirstatus_refresh=Aggiorna la lista
clientstatus_title=Stato del cliente
clientstatus_err=Impossibile recuperare lo stato da $1 : $2
clientstatus_msg=Stato da $1 : $2
clientstatus_title=Stato del client
clientstatus_err=Impossibile recuperare lo stato da $1: $2
clientstatus_msg=Stato da $1: $2
clientstatus_show=Mostra lo stato del client:
clientstatus_ok=ok
clientstatus_ok=OK
clientstatus_on=$1 (su $2)
storages_title=Demoni di archiviazione
storages_none=Nessun demone di archiviazione è stato ancora definito.
storages_name=Nome di archiviazione
storages_title=Storage daemon
storages_none=Nessuno Storage daemon è stato ancora definito.
storages_name=Nome dello Storage daemon
storages_address=Nome host o indirizzo
storages_device=Dispositivo di archiviazione
storages_type=Tipo di supporto
storages_add=Aggiungi un nuovo demone di archiviazione.
storages_delete=Elimina i daemon di archiviazione selezionati
storages_return=elenco di demoni di archiviazione
storages_derr=Impossibile eliminare i daemon di archiviazione
storages_add=Aggiungi un nuovo Storage daemon.
storages_delete=Elimina gli Storage daemon selezionati
storages_return=elenco di Storage daemon
storages_derr=Impossibile eliminare gli Storage daemon
storage_title1=Crea un demone di archiviazione
storage_title2=Modifica demone di archiviazione
storage_header=Dettagli del demone di archiviazione remota
storage_egone=Il demone di archiviazione non esiste più!
storage_name=Nome del demone di archiviazione
storage_title1=Crea uno Storage daemon
storage_title2=Modifica demone dello Storage daemon
storage_header=Dettagli dello Storage daemon remoto
storage_egone=Lo Storage daemon non esiste più!
storage_name=Nome dello Storage daemon
storage_address=Nome host o indirizzo IP
storage_port=Porta SD Bacula
storage_pass=Password SD Bacula
storage_device=Nome del dispositivo di archiviazione
storage_media=Nome del tipo di supporto
storage_maxjobs=Numero massimo di lavori simultanei
storage_other=Altro ..
storage_err=Impossibile salvare il demone di archiviazione
storage_ename=Nome del daemon di archiviazione mancante
storage_eclash=Un demone di archiviazione con lo stesso nome esiste già
storage_maxjobs=Numero massimo di processi simultanei
storage_other=Altro..
storage_err=Impossibile salvare lo Storage daemon
storage_ename=Nome dello Storage daemon mancante
storage_eclash=Uno Storage daemon con lo stesso nome esiste già
storage_epass=Password mancante
storage_eaddress=Nome host o indirizzo mancante o non valido
storage_eport=Porta SD mancante o non valida
storage_edevice=Nome del dispositivo di archiviazione mancante
storage_emedia=Nome del tipo di supporto mancante
storage_emaxjobs=Numero massimo di lavori simultanei mancanti
storage_echild=Questo client non può essere eliminato in quanto utilizzato da $1
storage_emaxjobs=Numero massimo di processi simultanei mancanti
storage_echild=Questo Storage daemon non può essere eliminato in quanto utilizzato da $1
storage_status=Mostra stato
devices_title=Dispositivi di memoria
devices_title=Dispositivi di archiviazione
devices_none=Nessun dispositivo di archiviazione è stato ancora definito.
devices_name=Nome del dispositivo
devices_device=File o directory del dispositivo
@@ -292,7 +292,7 @@ device_name=Nome del dispositivo di archiviazione
device_device=Dispositivo di archiviazione o directory
device_media=Nome del tipo di supporto
device_label=Etichettare automaticamente i supporti?
device_random=Mezzo di accesso casuale?
device_random=Dispositivo ad accesso casuale?
device_auto=Montare automaticamente?
device_removable=Supporti rimovibili?
device_always=Tieni sempre aperto?
@@ -301,34 +301,34 @@ device_ename=Nome del dispositivo di archiviazione mancante
device_eclash=Un dispositivo di archiviazione con lo stesso nome esiste già
device_emedia=Nome del tipo di supporto mancante
device_edevice=Dispositivo o directory di archivio mancante o non valido
device_echild=Questo client non può essere eliminato in quanto utilizzato da $1
device_echild=Questo dispositivo di archiviazione non può essere eliminato in quanto utilizzato da $1
storagestatus_title=Stato del demone di archiviazione
storagestatus_err=Impossibile recuperare lo stato da $1 : $2
storagestatus_msg=Stato da $1 : $2
storagestatus_show=Mostra lo stato del demone di archiviazione:
storagestatus_ok=ok
storagestatus_title=Stato dello Storage daemon
storagestatus_err=Impossibile recuperare lo stato da $1: $2
storagestatus_msg=Stato da $1: $2
storagestatus_show=Mostra lo stato dello Storage daemon:
storagestatus_ok=OK
label_title=Volume dell'etichetta
label_title=Etichetta volume
label_header=Dettagli del volume da etichettare
label_storage=Demone di archiviazione da etichettare
label_pool=Crea in piscina
label_storage=Storage daemon da etichettare
label_pool=Crea pool
label_label=Nuovo nome dell'etichetta
label_ok=Etichetta ora
label_return=modulo di etichetta
label_run=Volume di etichettatura con $2 sul daemon di archiviazione $1 ..
label_estorage=.. il demone di archiviazione non è stato trovato!
label_run=Etichettatura volume con $2 sullo Storage daemon $1 ..
label_estorage=.. lo Storage daemon non è stato trovato!
label_eexists=.. l'etichetta specificata esiste già.
label_efailed=.. etichettatura fallita! Controllare il messaggio di errore sopra per il motivo.
label_done=.. etichettatura eseguita correttamente.
label_epool=.. impossibile trovare la piscina!
label_err=Etichetta fallita
label_epool=.. impossibile trovare il pool!
label_err=Etichettatura fallita
label_elabel=Nessuna etichetta inserita
pools_title=Pool di volumi
pools_none=Nessun pool di volumi è stato ancora definito.
pools_name=Nome piscina
pools_type=Tipo di piscina
pools_name=Nome pool
pools_type=Tipo di pool
pools_reten=Periodo di conservazione
pools_add=Aggiungi un nuovo pool di volumi.
pools_delete=Elimina pool di volumi selezionati
@@ -340,30 +340,30 @@ pool_title2=Modifica pool di volumi
pool_header=Dettagli del pool di volumi di backup
pool_egone=Il pool di volumi non esiste più!
pool_name=Nome del pool di volumi
pool_recycle=Ricicli automaticamente i volumi?
pool_auto=Potare i volumi scaduti?
pool_recycle=Riciclare automaticamente i volumi?
pool_auto=Eliminare i volumi scaduti?
pool_any=Backup su qualsiasi volume nel pool?
pool_reten=Periodo di conservazione del volume
pool_type=Tipo di pool di volumi
pool_max=Numero massimo di lavori per volume
pool_max=Numero massimo di processi per volume
pool_unlimited=Illimitato
pool_err=Impossibile salvare il dispositivo di archiviazione
pool_ename=Nome del dispositivo di archiviazione mancante
pool_eclash=Un dispositivo di archiviazione con lo stesso nome esiste già
pool_echild=Questo client non può essere eliminato in quanto utilizzato da $1
pool_err=Impossibile salvare il pool di volumi
pool_ename=Nome del pool di volumi mancante
pool_eclash=Un pool di volumi con lo stesso nome esiste già
pool_echild=Questo pool non può essere eliminato in quanto utilizzato da $1
pool_emax=Numero massimo di lavori mancante o non valido per volume
pool_ereten=Periodo di conservazione mancante o non valido
pool_status=Mostra i volumi
pool_autolabel=Etichetta automaticamente il prefisso dei volumi
pool_maxvolsize=Dimensioni massime del volume (ad es. 5G per 5 Gigabyte)
poolstatus_title=Volumi In Piscina
poolstatus_title=Volumi in pool
poolstatus_show=Mostra i volumi nel pool:
poolstatus_ok=ok
poolstatus_ok=OK
poolstatus_volumes=Volumi nel pool selezionato
poolstatus_name=Nome volume
poolstatus_type=Tipo di supporto
poolstatus_first=Prima usato
poolstatus_first=Primo uso
poolstatus_last=Ultimo uso
poolstatus_bytes=Byte scritti
poolstatus_status=Modalità di backup
@@ -373,116 +373,116 @@ poolstatus_delete=Elimina i volumi selezionati
dvolumes_err=Impossibile eliminare i volumi
dvolumes_enone=Nessuno selezionato
dvolumes_ebacula=Errore Bacula : $1
dvolumes_ebacula=Errore Bacula: $1
mount_title=Monta o smonta
mount_header=Opzioni di montaggio o disinstallazione dello storage
mount_header=Opzioni di montaggio o smontaggio dello storage
mount_storage=Dispositivo di archiviazione
mount_slot=Slot caricatore automatico
mount_noslot=Nessuna
mount_slotno=Numero di posto connettore
mount_mount=Mount Storage
mount_unmount=Smonta memoria
mount_run=Volume di montaggio sul dispositivo di archiviazione $1 ..
unmount_run=Volume di smontaggio sul dispositivo di memorizzazione $1 ..
mount_slot=Slot del caricatore automatico
mount_noslot=Nessuno
mount_slotno=Numero slot
mount_mount=Monta dispositivo
mount_unmount=Smonta dispositivo
mount_run=Montaggio volume sullo Storage daemon $1 ..
unmount_run=Smontaggio volume sullo Storage daemon $1 ..
mount_done=.. montato correttamente.
unmount_done=.. non montato correttamente.
mount_failed=.. montaggio fallito! Vedere il messaggio di errore sopra per il motivo.
unmount_failed=.. disinstallazione fallita! Vedere il messaggio di errore sopra per il motivo.
unmount_failed=.. smontaggio fallito! Vedere il messaggio di errore sopra per il motivo.
mount_return=forma di montaggio
mount_err=Impossibile montare il dispositivo di archiviazione
mount_eslot=Numero di slot mancante o non valido
cancel_err=Impossibile annullare i lavori
cancel_err=Impossibile annullare i processi
cancel_enone=Nessuno selezionato
gjobs_title=Processi di backup del gruppo Bacula
gjobs_none=Nessun processo di backup del gruppo Bacula è stato ancora definito.
gjobs_add=Aggiungi un nuovo processo di backup del gruppo Bacula.
gjobs_delete=Elimina lavori selezionati
gjobs_return=elenco dei lavori del gruppo Bacula
gjobs_derr=Impossibile eliminare i lavori del gruppo Bacula
gjobs_client=Gruppo Bacula per il backup
gjobs_title=Gruppi di processi di backup
gjobs_none=Nessun gruppo di processi di backup è stato ancora definito.
gjobs_add=Aggiungi un nuovo gruppo di processi di backup.
gjobs_delete=Elimina processi selezionati
gjobs_return=elenco dei processi del gruppo
gjobs_derr=Impossibile eliminare i processi del gruppo
gjobs_client=Client per il gruppo
gjob_title1=Crea processo di backup del gruppo Bacula
gjob_title2=Modifica processo di backup del gruppo Bacula
gjob_header=Dettagli del processo di backup del gruppo Bacula
gjob_client=Gruppo Bacula per il backup
gjob_title1=Crea gruppo di processi di backup
gjob_title2=Modifica gruppo di processi di backup
gjob_header=Dettagli del gruppo di processi di backup
gjob_client=Client per il gruppo
groups_title=Gruppi Bacula
groups_none=Nessun gruppo Bacula è stato ancora selezionato per il backup da Bacula.
groups_none=Nessun gruppo di processi di backup è stato ancora selezionato.
groups_name=Nome del gruppo
groups_port=Porta FD
groups_add=Aggiungi gruppo Bacula:
groups_add=Aggiungi gruppo:
groups_ok=Inserisci
groups_catalog=Catalogare
groups_delete=Elimina i gruppi Bacula selezionati
groups_catalog=Catalogo
groups_delete=Elimina i gruppi selezionati
groups_return=elenco di gruppi
groups_derr=Impossibile eliminare i gruppi
groups_noadd=Non esistono gruppi Bacula da selezionare per i backup.
groups_noadd=Non esistono gruppi da selezionare per i backup.
groups_info=$1 ($2 membri)
groups_already=Tutti i gruppi Bacula sono già stati aggiunti.
groups_already=Tutti i gruppi sono già stati aggiunti.
group_title1=Crea gruppo Bacula
group_title2=Modifica gruppo Bacula
group_header=Dettagli del gruppo Bacula di cui eseguire il backup
group_title1=Crea gruppo
group_title2=Modifica gruppo
group_header=Dettagli del gruppo di backup
group_egone=Il gruppo non esiste più!
group_egone2=Il gruppo Bacula non esiste più!
group_name=Nome del gruppo Bacula
group_egone2=Il gruppo non esiste più!
group_name=Nome del gruppo
group_port=Porta Bacula FD
group_err=Impossibile salvare il gruppo Bacula
group_err=Impossibile salvare il gruppo
group_eclash=Un gruppo con lo stesso nome esiste già
group_members=Host nel gruppo Bacula
group_members=Host nel gruppo
sync_title=Sincronizzazione del gruppo Bacula
sync_header=Opzioni di sincronizzazione client del gruppo Bacula automatico
sync_sched=Sincronizzare nei tempi previsti?
sync_schedyes=Sì, a volte selezionato di seguito.
sync_err=Impossibile salvare la sincronizzazione del gruppo Bacula
sync_title=Sincronizzazione del gruppo
sync_header=Opzioni di sincronizzazione automatica dei client del gruppo
sync_sched=Sincronizzare su schedulazione?
sync_schedyes=Sì, agli orari selezionati di seguito.
sync_err=Impossibile salvare la sincronizzazione del gruppo
log_create_client=Client di backup creato $1
log_modify_client=Client di backup modificato $1
log_delete_client=Client di backup eliminato $1
log_delete_clients=Client di backup $1 eliminati
log_create_fileset=Set di file creato $1
log_modify_fileset=Set di file modificato $1
log_delete_fileset=Set di file eliminato $1
log_delete_filesets=Set di file $1 eliminati
log_create_job=Processo di backup creato $1
log_modify_job=Processo di backup modificato $1
log_delete_job=Processo di backup eliminato $1
log_create_client=Client di backup $1 creato
log_modify_client=Client di backup $1 modificato
log_delete_client=Client di backup $1 eliminato
log_delete_clients=Eliminati $1 client di backup
log_create_fileset=Set di file $1 creato
log_modify_fileset=Set di file $1 modificato
log_delete_fileset=Set di file $1 eliminato
log_delete_filesets=Eliminati $1 set di file
log_create_job=Processo di backup $1 creato
log_modify_job=Processo di backup $1 modificato
log_delete_job=Processo di backup $1 eliminato
log_delete_jobs=Eliminati $1 processi di backup
log_create_schedule=Pianificazione del backup creata $1
log_modify_schedule=Pianificazione del backup modificata $1
log_delete_schedule=Pianificazione del backup eliminata $1
log_delete_schedules=Pianificazioni di backup $1 eliminate
log_create_pool=Pool di volumi creato $1
log_modify_pool=Pool di volumi modificato $1
log_delete_pool=Pool di volumi eliminati $1
log_delete_pools=Pool di volumi $1 eliminati
log_create_storage=Demone di archiviazione creato $1
log_modify_storage=Demone di archiviazione modificato $1
log_delete_storage=Demone di archiviazione eliminato $1
log_delete_storages=Demoni di archiviazione $1 eliminati
log_create_device=Dispositivo di archiviazione creato $1
log_modify_device=Dispositivo di archiviazione modificato $1
log_delete_device=Dispositivo di archiviazione eliminato $1
log_create_schedule=Pianificazione del backup $1 creata
log_modify_schedule=Pianificazione del backup $1 modificata
log_delete_schedule=Pianificazione del backup $1 eliminata
log_delete_schedules=Eliminate $1 pianificazioni di backup
log_create_pool=Pool di volumi $1 creato
log_modify_pool=Pool di volumi $1 modificato
log_delete_pool=Pool di volumi $1 eliminati
log_delete_pools=Eliminati $1 Pool di volumi
log_create_storage=Storage daemon $1 creato
log_modify_storage=Storage daemon $1 modificato
log_delete_storage=Storage daemon $1 eliminato
log_delete_storages=Eliminati $1 Storage daemon
log_create_device=Dispositivo di archiviazione $1 creato
log_modify_device=Dispositivo di archiviazione $1 modificato
log_delete_device=Dispositivo di archiviazione $1 eliminato
log_delete_devices=$1 dispositivi di archiviazione eliminati
log_create_group=Creato gruppo Bacula $1
log_modify_group=Gruppo Bacula modificato $1
log_delete_group=Gruppo Bacula eliminato $1
log_delete_groups=$1 gruppi Bacula eliminati
log_create_gjob=Processo di backup del gruppo Bacula creato $1
log_modify_gjob=Processo di backup del gruppo Bacula modificato $1
log_delete_gjob=Processo di backup del gruppo Bacula eliminato $1
log_delete_gjobs=Eliminati $1 processi di backup del gruppo Bacula
log_create_fdirector=Direttore daemon file creato $1
log_modify_fdirector=Direttore del demone file modificato $1
log_delete_fdirector=Direttore daemon file eliminato $1
log_delete_fdirectors=Direttori di daemon file eliminati $1
log_create_sdirector=Direttore del demone di archiviazione creato $1
log_modify_sdirector=Direttore del demone di archiviazione modificato $1
log_delete_sdirector=Direttore del demone di archiviazione eliminato $1
log_create_group=Creato gruppo $1
log_modify_group=Gruppo $1 modificato
log_delete_group=Gruppo $1 eliminato
log_delete_groups=$1 gruppi eliminati
log_create_gjob=Processo di backup del gruppo $1 creato
log_modify_gjob=Processo di backup del gruppo $1 modificato
log_delete_gjob=Processo di backup del gruppo $1 eliminato
log_delete_gjobs=Eliminati $1 processi di backup del gruppo
log_create_fdirector=Director daemon file creato $1
log_modify_fdirector=Director del demone file modificato $1
log_delete_fdirector=Director daemon file eliminato $1
log_delete_fdirectors=Director di daemon file eliminati $1
log_create_sdirector=Director del demone di archiviazione creato $1
log_modify_sdirector=Director del demone di archiviazione modificato $1
log_delete_sdirector=Director del demone di archiviazione eliminato $1
log_delete_sdirectors=Registri daemon di archiviazione $1 eliminati
log_stop=Demoni Bacula fermati
log_start=Demoni Bacula avviati
@@ -494,23 +494,23 @@ log_label=Demone di archiviazione con etichetta $1
log_mount=Dispositivo di archiviazione montato $1
log_unmount=Dispositivo di archiviazione non montato $1
log_sync=Sincronizzazione del gruppo Bacula salvata
log_director=Configurazione del regista Bacula globale salvata
log_director=Configurazione del Director Bacula globale salvata
log_file=Configurazione del demone del file Bacula salvata
log_storagec=Configurazione del demone di archiviazione Bacula salvata
log_fixpass=Risolto il problema con la password del programma della console Bacula
director_title=Director Director
director_header=Opzioni del regista Global Bacula
director_name=Nome del direttore
director_port=Ascolta in porto
director_jobs=Numero massimo di lavori simultanei
director_title=Configurazione Director
director_header=Opzioni globali Director
director_name=Nome del Director
director_port=Porta di ascolto
director_jobs=Numero massimo di processi simultanei
director_messages=Destinazione per i messaggi
director_enone=Nessuna configurazione del regista trovata!
director_enone=Nessuna configurazione del Director trovata!
director_dir=Directory di lavoro di Bacula
director_err=Impossibile salvare la configurazione del direttore
director_ename=Nome regista mancante o non valido
director_err=Impossibile salvare la configurazione del Director
director_ename=Nome Director mancante o non valido
director_eport=Numero porta mancante o non valido
director_ejobs=Numero mancante o non valido di lavori simultanei
director_ejobs=Numero mancante o non valido di processi simultanei
director_edir=Directory di lavoro mancante o inesistente
tls_enable=Abilitare la crittografia TLS?
@@ -525,86 +525,86 @@ tls_ekey=File chiave TLS mancante o inesistente
tls_ecacert=File di certificato CA TLS mancante o inesistente
tls_ecerts=Per abilitare TLS, è necessario specificare i file di certificato, chiave e CA.
file_title=Configurazione del daemon di file
file_header=Opzioni del demone del file Bacula
file_name=Nome del demone del file
file_port=Ascolta in porto
file_jobs=Numero massimo di lavori simultanei
file_title=Configurazione del File daemon
file_header=Opzioni del File daemon
file_name=Nome del File daemon
file_port=Porta di ascolto
file_jobs=Numero massimo di processi simultanei
file_dir=Directory di lavoro di Bacula
file_enone=Nessuna configurazione di daemon di file trovata!
file_err=Impossibile salvare la configurazione del daemon di file
file_ename=Nome del daemon di file mancante o non valido
file_enone=Nessuna configurazione di File daemon trovata!
file_err=Impossibile salvare la configurazione del File daemon
file_ename=Nome del File daemon mancante o non valido
file_eport=Numero porta mancante o non valido
file_ejobs=Numero mancante o non valido di lavori simultanei
file_ejobs=Numero mancante o non valido di processi simultanei
file_edir=Directory di lavoro mancante o inesistente
fdirectors_title=File Daemon Director
fdirectors_none=Nessun amministratore è stato ancora definito.
fdirectors_name=Nome del direttore
fdirectors_title=Director del File daemon
fdirectors_none=Nessun Director è stato ancora definito.
fdirectors_name=Nome del Director
fdirectors_pass=Password accettata
fdirectors_add=Aggiungi un nuovo regista.
fdirectors_delete=Elimina i registi selezionati
fdirectors_return=elenco dei direttori
fdirectors_derr=Impossibile eliminare i direttori
fdirectors_add=Aggiungi un nuovo Director.
fdirectors_delete=Elimina i Director selezionati
fdirectors_return=elenco dei Director
fdirectors_derr=Impossibile eliminare i Director
fdirector_title1=Crea File Daemon Director
fdirector_title2=Modifica File Daemon Director
fdirector_header=Dettagli sul controllo di Remote Director
fdirector_egone=Il regista non esiste più!
fdirector_name=Nome del direttore
fdirector_title1=Crea Director del File daemon
fdirector_title2=Modifica Director del File daemon
fdirector_header=Dettagli sul controllo del Director remoto
fdirector_egone=Il Director non esiste più!
fdirector_name=Nome del Director
fdirector_pass=Password accettata
fdirector_monitor=Consentire solo il monitoraggio della connessione?
fdirector_err=Impossibile salvare il daemon director del file
fdirector_ename=Nome del regista mancante
fdirector_eclash=Un regista con lo stesso nome esiste già
fdirector_err=Impossibile salvare il Director del File daemon
fdirector_ename=Nome del Director mancante
fdirector_eclash=Un Director con lo stesso nome esiste già
fdirector_epass=Password mancante
sdirectors_title=Direttori dei demoni di archiviazione
sdirectors_none=Nessun amministratore è stato ancora definito.
sdirectors_name=Nome del direttore
sdirectors_title=Director degli Storage daemon
sdirectors_none=Nessun Director è stato ancora definito.
sdirectors_name=Nome del Director
sdirectors_pass=Password accettata
sdirectors_add=Aggiungi un nuovo regista.
sdirectors_delete=Elimina i registi selezionati
sdirectors_return=elenco dei direttori
sdirectors_derr=Impossibile eliminare i direttori
sdirectors_add=Aggiungi un nuovo Director.
sdirectors_delete=Elimina i Director selezionati
sdirectors_return=elenco dei Director
sdirectors_derr=Impossibile eliminare i Director
sdirector_title1=Crea un Daemon Director di archiviazione
sdirector_title2=Modifica Daemon Director di archiviazione
sdirector_header=Dettagli sul controllo di Remote Director
sdirector_egone=Il regista non esiste più!
sdirector_name=Nome del direttore
sdirector_title1=Crea un Director dello Storage daemon
sdirector_title2=Modifica Director dello Storage daemon
sdirector_header=Dettagli sul controllo del Director remoto
sdirector_egone=Il Director non esiste più!
sdirector_name=Nome del Director
sdirector_pass=Password accettata
sdirector_monitor=Consentire solo il monitoraggio della connessione?
sdirector_err=Impossibile salvare il daemon director di archiviazione
sdirector_ename=Nome del regista mancante
sdirector_eclash=Un regista con lo stesso nome esiste già
sdirector_err=Impossibile salvare il Director dello Storage daemon
sdirector_ename=Nome del Director mancante
sdirector_eclash=Un Director con lo stesso nome esiste già
sdirector_epass=Password mancante
storagec_title=Configurazione del daemon di archiviazione
storagec_header=Opzioni del demone di archiviazione Bacula
storagec_title=Configurazione del Director dello Storage daemon
storagec_header=Opzioni dello Storage daemon
storagec_name=Nome del demone
storagec_port=Ascolta in porto
storagec_jobs=Numero massimo di lavori simultanei
storagec_enone=Nessuna configurazione del demone di archiviazione trovata!
storagec_port=Porta di ascolto
storagec_jobs=Numero massimo di processi simultanei
storagec_enone=Nessuna configurazione dello Storage daemon trovata!
storagec_dir=Directory di lavoro di Bacula
storagec_err=Impossibile salvare la configurazione del daemon di archiviazione
storagec_ename=Nome del daemon di archiviazione mancante o non valido
storagec_err=Impossibile salvare la configurazione dello Storage daemon
storagec_ename=Nome dello dello Storage daemon mancante o non valido
storagec_eport=Numero porta mancante o non valido
storagec_ejobs=Numero mancante o non valido di lavori simultanei
storagec_ejobs=Numero mancante o non valido di processi simultanei
storagec_edir=Directory di lavoro mancante o inesistente
chooser_title=Seleziona Pianifica
chooser_monthsh=Mesi da eseguire
chooser_title=Seleziona Pianificazione
chooser_monthsh=Mesi in cui eseguire
chooser_months=Mesi dell'anno
chooser_all=Tutti
chooser_sel=Selezionato sotto. ..
chooser_ok=ok
chooser_timeh=Ora del giorno da eseguire
chooser_sel=Selezionati sotto. ..
chooser_ok=OK
chooser_timeh=Ora del giorno in cui eseguire
chooser_time=Ora e minuti
chooser_weekdaysh=Giorni della settimana da eseguire
chooser_weekdaysh=Giorni della settimana in cui eseguire
chooser_weekdays=Giorni della settimana
chooser_weekdaynums=Numeri nel mese
chooser_daysh=Giorni del mese da eseguire
chooser_daysh=Giorni del mese in cui eseguire
chooser_days=Date
chooser_err=Impossibile selezionare la pianificazione
chooser_emonths=Nessun mese scelto
@@ -621,43 +621,43 @@ chooser_edaysrange=I giorni selezionati del mese devono essere contigui
weekdaynum_1=Primo
weekdaynum_2=Secondo
weekdaynum_3=Terzo
weekdaynum_4=Il quarto
weekdaynum_4=Quarto
weekdaynum_5=Quinto
restore_title=Ripristinare il backup
restore_title2=Ripristina backup nel gruppo Bacula
restore_title=Ripristina backup
restore_title2=Ripristina backup nel gruppo
restore_title3=Ripristina backup gruppo Bacula
restore_header=Opzioni per il ripristino del processo di backup precedente
restore_job=Lavoro da ripristinare
restore_job=Processo da ripristinare
restore_files=File da ripristinare
restore_client=Ripristina su client o gruppo
restore_storage=Ripristina dal dispositivo di archiviazione
restore_where=Ripristina nella directory
restore_where2=Altra directory principale
restore_ewhere=Directory mancante in cui ripristinare
restore_ewhere=Directory su cui ripristinare mancante
restore_ok=Ripristina ora
restore_err=Impossibile ripristinare il backup
restore_efiles=Nessun file inserito
restore_ejob=ID lavoro non valido
restore_ejobfiles=Nessun file registrato per lavoro
restore_run=Avvio del ripristino del processo $1 sul client $2 dalla memoria $3 ..
restore_ejob=ID processo non valido
restore_ejobfiles=Nessun file archiviato per il processo
restore_run=Avvio del ripristino del processo $1 sul client $2 dal dispositivo $3 ..
restore_return=modulo di ripristino
restore_eok=.. impossibile avviare il lavoro
restore_eok=.. impossibile avviare il processo
restore_running=.. il ripristino è ora in esecuzione. Al termine, i risultati verranno visualizzati di seguito.
restore_running2=.. il ripristino è stato avviato in background.
restore_done=.. ripristino completato.
restore_failed=.. il ripristino non è stato completato correttamente. Controllare il messaggio di errore sopra per i dettagli.
restore_clist=--Clients--
restore_glist=--Bacula Gruppi--
restore_eclient=Nessun cliente o gruppo Bacula selezionato
restore_clist=--Client--
restore_glist=--Gruppi Bacula--
restore_eclient=Nessun client o gruppo Bacula selezionato
restore_egroup=Il gruppo Bacula non esiste
restore_jlist=- Lavori con sistema singolo--
restore_jlist=--Processi sistema singolo--
restore_njlist=--Bacula Groups Jobs--
restore_all=--Tutti i clienti del gruppo--
restore_all=--Tutti i client del gruppo--
restore_eclients=Nessun membro del backup del gruppo Bacula trovato!
restore_eall1=L'opzione <b>Tutti i client di backup</b> deve essere selezionata per <b>Ripristina su client o gruppo</b> quando si esegue un ripristino di processo del gruppo Bacula
restore_eall2=L'opzione <b>Tutti i client di backup</b> può essere selezionata solo per <b>Ripristina su client o gruppo</b> quando si esegue un ripristino di processo del gruppo Bacula
restore_eall1=L'opzione <b>Tutti i client di backup</b> deve essere selezionata per <b>Ripristina su client o gruppo</b> quando si esegue un processo di ripristino del gruppo Bacula
restore_eall2=L'opzione <b>Tutti i client di backup</b> può essere selezionata solo per <b>Ripristina su client o gruppo</b> quando si esegue un processo di ripristino del gruppo Bacula
restore_enofiles=Nessuno dei file selezionati è nel backup
restore_level_F=Pieno
restore_level_F=Completo
restore_level_D=Differenziale
restore_level_I=incrementale

View File

@@ -2,6 +2,7 @@
# Returns a list of files and directories under some directory
$trust_unknown_referers = 1;
use JSON::PP;
require './bacula-backup-lib.pl';
&ReadParse();

View File

@@ -5,12 +5,9 @@ use strict;
use warnings;
BEGIN { $Pod::Usage::Formatter = 'Pod::Text::Color'; }
use 5.010; # Version in CentOS 6
use Getopt::Long qw(:config permute pass_through);
use Pod::Usage;
use Term::ANSIColor qw(:constants);
use File::Spec;
use File::Basename;
use Pod::Usage;
my $a0 = $ARGV[0];
@@ -38,8 +35,12 @@ sub main {
}
);
# Set defaults
$opt{'config'} ||= "/etc/webmin";
$opt{'commands'} = $a0;
# Load libs
loadlibs(\%opt);
my @remain = @ARGV;
# List commands?
@@ -48,7 +49,6 @@ sub main {
exit 0;
} elsif ($opt{'version'} || $opt{'versions'}) {
# Load libs
my $root = root($opt{'config'});
my $ver_checked = sub {
my ($ver_remote, $ver_curr) = @_;
if ($ver_remote && $ver_curr &&
@@ -82,6 +82,7 @@ sub main {
}
};
my $root = root($opt{'config'});
if ($root && -d $root) {
require("$root/web-lib-funcs.pl");
@@ -207,6 +208,9 @@ exit main( \@ARGV ) if !caller(0);
sub run_command {
my ( $optref, $subcmd, $remainref ) = @_;
# Load libs
loadlibs($optref);
# Figure out the Webmin root directory
my $root = root($optref->{'config'});
@@ -237,6 +241,10 @@ sub run_command {
sub get_command_path {
my ($root, $subcmd, $optref) = @_;
# Load libs
loadlibs($optref);
# Check for a root-level command (in "$root/bin")
my $command_path;
if ($subcmd) {
@@ -374,6 +382,20 @@ sub root {
return $root;
}
# loadlibs - Load libraries from the Webmin vendor dir
# as those may not be installed as dependency, because
# Webmin already provides them from package manager
# perspective.
sub loadlibs {
my ($optref) = @_;
$optref->{'config'} ||= "/etc/webmin";
my $root = root($optref->{'config'});
my $libroot = "$root/vendor_perl";
eval "use lib '$libroot'";
eval "use File::Basename";
eval "use File::Spec";
}
1;
=pod

View File

@@ -64,12 +64,12 @@ our $dnssec_dlv_zone = "dlv.isc.org.";
our @dnssec_dlv_key = ( 257, 3, 5, '"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWEn4MxDCE1+lLy2brhQv5rN32RKtMzX6Mj70jdzeND4XknW58dnJNPCxn8+jAGl2FZLK8t+1uq4W+nnA3qO2+DL+k6BD4mewMLbIYFwe0PG73Te9fZ2kJb56dhgMde5ymX4BI/oQ+cAK50/xvJv00Frf8kw6ucMTwFlgPe+jnGxPPEmHAte/URkY62ZfkLoBAADLHQ9IrS2tryAe7mbBZVcOwIeU/Rw/mRx/vwwMCTgNboMQKtUdvNXDrYJDSHZws3xiRXF1Rf+al9UmZfSav/4NWLKjHzpT59k/VStTDN0YUuWrBNh"' );
my $rand_flag;
if ($gconfig{'os_type'} =~ /-linux$/ &&
if ($gconfig{'os_type'} =~ /-linux$/ &&
$config{'force_random'} eq '0' &&
-r "/dev/urandom" &&
$bind_version =~ /^9\./ &&
&compare_version_numbers($bind_version, '<', '9.14.2')) {
# Version: 9.14.2 deprecated the use of -r option
# Version: 9.14.2 deprecated the use of -r option
# in favor of using /dev/random [bugs:#5370]
$rand_flag = "-r /dev/urandom";
}
@@ -449,6 +449,9 @@ for(my $i=0; $i<@oldv || $i<@newv; $i++) {
$newv[$i]->{'line'} = $_[0]->{'eline'};
$newv[$i]->{'eline'} =
$_[0]->{'eline'} + scalar(@nl) - 1;
if (!defined($newv[$i]->{'index'})) {
$newv[$i]->{'index'} = @$pm ? $pm->[@$pm - 1]->{'index'} + 1 : 0;
}
&renumber($parent, $_[0]->{'eline'}-1,
$_[0]->{'file'}, scalar(@nl));
}
@@ -469,6 +472,9 @@ for(my $i=0; $i<@oldv || $i<@newv; $i++) {
$newv[$i]->{'line'} = $_[0]->{'line'}+1;
$newv[$i]->{'eline'} =
$_[0]->{'line'} + scalar(@nl);
if (!defined($newv[$i]->{'index'})) {
$newv[$i]->{'index'} = 0;
}
&renumber($parent, $_[0]->{'line'},
$_[0]->{'file'}, scalar(@nl));
}
@@ -1000,7 +1006,7 @@ else {
}
if ($access{'dironly'}) {
# Check directory access control
# Check directory access control
return 1 if (!$file);
$file = &absolute_path($file);
return 0 if (!&allowed_zone_file(\%access, $file));
@@ -1330,9 +1336,9 @@ elsif ($type eq "DMARC") {
print &ui_table_row($text{'value_dmarcfo'},
&ui_select("dmarcfo", $dmarc->{'fo'},
[ [ undef, $text{'default'} ],
[ 0, $text{'value_dmarcfo0'} ],
[ 1, $text{'value_dmarcfo1'} ],
[ 'd', $text{'value_dmarcfod'} ],
[ 0, $text{'value_dmarcfo0'} ],
[ 1, $text{'value_dmarcfo1'} ],
[ 'd', $text{'value_dmarcfod'} ],
[ 's', $text{'value_dmarcfos'} ] ]));
}
elsif ($type eq "NSEC3PARAM") {
@@ -1486,7 +1492,7 @@ return 1;
# expand_ip6(ip)
# Transform compact (with ::) IPv6 address to the unique expanded form
# (without :: and leading zeroes in all parts)
# (without :: and leading zeroes in all parts)
sub expand_ip6
{
my ($ip) = @_;
@@ -1502,7 +1508,7 @@ return $ip;
}
# expandall_ip6(ip)
# Transform IPv6 address to the expanded form containing all internal 0's
# Transform IPv6 address to the expanded form containing all internal 0's
sub expandall_ip6
{
my ($ip) = @_;
@@ -1513,7 +1519,7 @@ $ip =~ s/(:|^)(\w)(?=:|$)/:000$2/g;
return $ip;
}
sub time_unit_choice
sub time_unit_choice
{
my ($name, $value) = @_;
return &ui_select($name, $value =~ /^(S?)$/i ? "" :
@@ -1842,10 +1848,6 @@ sub create_slave_zone
{
my $parent = &get_config_parent();
my $conf = $parent->{'members'};
my $opts = &find("options", $conf);
if (!$opts) {
return 1;
}
# Check if exists in the view
my @zones;
@@ -1939,9 +1941,6 @@ my ($name, $slaves, $viewname, $file, $records) = @_;
my $parent = &get_config_parent();
my $conf = $parent->{'members'};
my $opts = &find("options", $conf);
if (!$opts) {
return 1;
}
# Check if exists in the view
my @zones;
@@ -1976,22 +1975,36 @@ if (!$file) {
push(@{$dir->{'members'}}, { 'name' => 'file',
'values' => [ $file ] } );
# Add slave IPs
if (@$slaves) {
# Allow transfer from slave IPs
my (@notify, @transfer);
foreach my $s (@$slaves) {
push(@notify, { 'name' => $s });
push(@transfer, { 'name' => $s });
}
if (@transfer) {
my $gat = $opts ? &find("allow-transfer", $opts->{'members'}) : undef;
if ($gat) {
push(@transfer, @{$gat->{'members'}});
}
}
if (@notify) {
my %done;
@notify = grep { !$done{$_->{'name'}}++ } @notify;
my $also = { 'name' => 'also-notify',
'type' => 1,
'members' => [ ] };
my $allow = { 'name' => 'allow-transfer',
'type' => 1,
'members' => [ ] };
foreach my $s (@$slaves) {
push(@{$also->{'members'}}, { 'name' => $s });
push(@{$allow->{'members'}}, { 'name' => $s });
}
push(@{$dir->{'members'}}, $also, $allow);
'members' => \@notify};
push(@{$dir->{'members'}}, $also);
push(@{$dir->{'members'}}, { 'name' => 'notify',
'values' => [ 'yes' ] });
}
if (@transfer) {
my %done;
@transfer = grep { !$done{$_->{'name'}}++ } @transfer;
my $allow = { 'name' => 'allow-transfer',
'type' => 1,
'members' => \@transfer };
push(@{$dir->{'members'}}, $allow);
}
# Create the zone file, with records
my $ZONE;
@@ -2627,7 +2640,7 @@ my $parent = &get_config_parent();
my $bconf = &get_config();
my $conf = $bconf;
if ($zone->{'viewindex'} ne '') {
my $view = $conf->[$zone->{'viewindex'}];
my $view = $conf->[$zone->{'viewindex'}];
$conf = $view->{'members'};
$parent = $view;
}
@@ -2896,7 +2909,7 @@ foreach my $slave (@slaves) {
}
if ($config{'extra_slaves'}) {
push(@otherslaves,
grep { $_ ne '' }
grep { $_ ne '' }
map { &to_ipaddress($_) || &to_ip6address($_) }
split(/\s+/, $config{'extra_slaves'}));
}
@@ -3314,7 +3327,7 @@ return &has_command($config{'signzone'}) &&
}
# supports_dnssec_client()
# Returns 2 if this BIND can send and verify DNSSEC requests, 1 if the
# Returns 2 if this BIND can send and verify DNSSEC requests, 1 if the
# dnssec-validation directive is not supported, 0 otherwise
sub supports_dnssec_client
{
@@ -3339,13 +3352,15 @@ return $alg eq 'RSASHA256' ? ( 2048, 4096 ) :
$alg eq 'NSEC3DSA' ? ( 512, 1024, 64 ) :
$alg eq 'ECDSAP256SHA256' ? ( 128, 512 ) :
$alg eq 'ECDSAP384SHA384' ? ( 128, 512 ) :
$alg eq 'ED25519' ? ( 1, 512 ) :
$alg eq 'ED448' ? ( 1, 512 ) :
( );
}
sub list_dnssec_algorithms
{
return ("RSASHA1", "RSASHA256", "RSAMD5", "DSA", "DH", "HMAC-MD5",
"NSEC3RSASHA1", "NSEC3DSA", "ECDSAP256SHA256", "ECDSAP384SHA384");
"NSEC3RSASHA1", "NSEC3DSA", "ECDSAP256SHA256", "ECDSAP384SHA384", "ED25519", "ED448");
}
# get_keys_dir(&zone|&zone-name)
@@ -3632,7 +3647,7 @@ while($tries++ < 10) {
$out = &backquote_logged(
"cd ".quotemeta($dir)." && ".
"$config{'signzone'} -o ".quotemeta($dom).
($alg =~ /^(NSEC3|RSASHA256|RSASHA512|ECCGOST|ECDSAP256SHA256|ECDSAP384SHA384)/ ? " -3 - -u" : "").
($alg =~ /^(NSEC3|RSASHA256|RSASHA512|ECCGOST|ECDSAP256SHA256|ECDSAP384SHA384|ED25519|ED448)/ ? " -3 - -u" : "").
" -f ".quotemeta($signed)." ".
quotemeta($chrootfn)." 2>&1");
last if (!$?);
@@ -3704,11 +3719,11 @@ my ($z, $recs, $bump) = @_;
# Check if zones are managed by dnssec-tools
my $dom = $z->{'members'} ? $z->{'values'}->[0] : $z->{'name'};
# If zone is managed through dnssec-tools use zonesigner for resigning the zone
# If zone is managed through dnssec-tools use zonesigner for resigning the zone
if (&check_if_dnssec_tools_managed($dom)) {
# Do the signing
my $zonefile = &get_zone_file($z);
my $zonefile = &get_zone_file($z);
my $krfile = "$zonefile".".krf";
&lock_file(&make_chroot($zonefile));
@@ -3890,21 +3905,21 @@ return \%rv;
}
sub get_dnssectools_config
{
{
&lock_file($config{'dnssectools_conf'});
my $lref = &read_file_lines($config{'dnssectools_conf'});
my @rv;
my $lnum = 0;
my $lref = &read_file_lines($config{'dnssectools_conf'});
my @rv;
my $lnum = 0;
foreach my $line (@$lref) {
my ($n, $v) = split(/\s+/, $line, 2);
my ($n, $v) = split(/\s+/, $line, 2);
# Do basic sanity checking
$v =~ /(\S+)/;
$v = $1;
if ($n) {
push(@rv, { 'name' => $n, 'value' => $v, 'line' => $lnum });
}
}
$lnum++;
}
}
&flush_file_lines();
&unlock_file($config{'dnssectools_conf'});
return \@rv;
@@ -3919,7 +3934,7 @@ sub save_dnssectools_directive
&lock_file($config{'dnssectools_conf'});
my $lref = &read_file_lines($config{'dnssectools_conf'});
foreach my $n (keys %$nv) {
my $old = &find($n, $conf);
if ($old) {
@@ -3943,14 +3958,14 @@ sub list_dnssec_dne
}
# list_dnssec_dshash()
# return a list containing the different DS record hash types
# return a list containing the different DS record hash types
sub list_dnssec_dshash
{
return ("SHA1", "SHA256");
return ("SHA1", "SHA256");
}
# schedule_dnssec_cronjob()
# schedule a cron job to handle periodic resign operations
# schedule a cron job to handle periodic resign operations
sub schedule_dnssec_cronjob
{
my $job;
@@ -3983,7 +3998,7 @@ sub schedule_dnssec_cronjob
&unlock_file($module_config_file);
}
# dt_sign_zone(zone, nsec3)
# dt_sign_zone(zone, nsec3)
# Replaces a zone's file with one containing signed records.
sub dt_sign_zone
{
@@ -4022,9 +4037,9 @@ sub dt_sign_zone
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&copy_source_dest($z_chroot, $usz);
&copy_source_dest($z_chroot, $usz);
$cmd = "$zonesigner $nsec3param".
" -genkeys ".
@@ -4066,13 +4081,13 @@ sub dt_sign_zone
rollrec_unlock();
&unlock_file($z_chroot);
&dt_rollerd_restart();
&restart_bind();
return undef;
}
# dt_resign_zone(zone-name, zonefile, krfile, threshold)
# dt_resign_zone(zone-name, zonefile, krfile, threshold)
# Replaces a zone's file with one containing signed records.
sub dt_resign_zone
{
@@ -4093,7 +4108,7 @@ sub dt_resign_zone
rollrec_lock();
# Remove DNSSEC records and save the unsigned zone file
@recs = &read_zone_file($z, $d);
@recs = &read_zone_file($z, $d);
my $tools = &have_dnssec_tools_support();
for(my $i=$#recs; $i>=0; $i--) {
if ($recs[$i]->{'type'} eq 'NSEC' ||
@@ -4102,12 +4117,12 @@ sub dt_resign_zone
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&copy_source_dest($z_chroot, $usz);
&copy_source_dest($z_chroot, $usz);
if ($t > 0) {
$threshold = "-threshold ".quotemeta("-$t"."d"." ");
$threshold = "-threshold ".quotemeta("-$t"."d"." ");
}
$cmd = "$zonesigner -verbose -verbose".
@@ -4130,7 +4145,7 @@ sub dt_resign_zone
}
# dt_zskroll_zone(zone-name)
# Initiates a zsk rollover operation for the zone
# Initiates a zsk rollover operation for the zone
sub dt_zskroll_zone
{
my ($d) = @_;
@@ -4143,7 +4158,7 @@ sub dt_zskroll_zone
}
# dt_kskroll_zone(zone-name)
# Initiates a ksk rollover operation for the zone
# Initiates a ksk rollover operation for the zone
sub dt_kskroll_zone
{
my ($d) = @_;
@@ -4156,7 +4171,7 @@ sub dt_kskroll_zone
}
# dt_notify_parentzone(zone-name)
# Notifies rollerd that the new DS record has been published in the parent zone
# Notifies rollerd that the new DS record has been published in the parent zone
sub dt_notify_parentzone
{
my ($d) = @_;
@@ -4169,7 +4184,7 @@ sub dt_notify_parentzone
}
# dt_rollerd_restart()
# Restart the rollerd daemon
# Restart the rollerd daemon
sub dt_rollerd_restart
{
my $rollerd;
@@ -4181,7 +4196,7 @@ sub dt_rollerd_restart
return $text{'dt_zone_enocmd'};
}
rollmgr_halt();
$r = $config{"dnssectools_rollrec"};
$r = $config{"dnssectools_rollrec"};
$cmd = "$rollerd -rrfile ".quotemeta($r);
&execute_command($cmd);
return undef;
@@ -4209,9 +4224,9 @@ sub dt_genkrf
# Identify if this is a zsk or a ksk
$key->{$f} =~ /(K\Q$dom\E\.\+\d+\+\d+)/;
if ($key->{'ksk'}) {
$kskcur = $1;
$kskcur = $1;
} else {
$zskcur = $1;
$zskcur = $1;
}
&copy_source_dest($key->{$f}, $keydir);
&unlink_file($key->{$f});
@@ -4222,7 +4237,7 @@ sub dt_genkrf
return &text('dt_zone_enokey', $dom);
}
# Remove the older dsset file
# Remove the older dsset file
if ($oldkeydir) {
&unlink_file($oldkeydir."/"."dsset-".$dom.".");
}
@@ -4248,7 +4263,7 @@ sub dt_genkrf
# dt_delete_dnssec_state(&zone)
# Delete all DNSSEC-Tools meta-data for a given zone
# Delete all DNSSEC-Tools meta-data for a given zone
sub dt_delete_dnssec_state
{
my ($zone) = @_;
@@ -4298,14 +4313,14 @@ sub dt_delete_dnssec_state
$recs[$i]->{'type'} eq 'RRSIG' ||
$recs[$i]->{'type'} eq 'DNSKEY') {
&delete_record($z, $recs[$i]);
}
}
}
&bump_soa_record($z, \@recs);
&unlock_file($z_chroot);
rollrec_unlock();
&dt_rollerd_restart();
&dt_rollerd_restart();
&restart_bind();
} else {
# Just delete the dsset- file
@@ -4472,4 +4487,3 @@ return $r;
}
1;

View File

@@ -5,7 +5,7 @@ use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
# Globals
our (%access, %text);
our (%access, %text, $bind_version);
our $dnssec_dlv_zone;
require './bind8-lib.pl';
@@ -24,10 +24,12 @@ $tkeys ||= { 'members' => [ ] };
print &ui_form_start("save_trusted.cgi", "post");
print &ui_table_start($text{'trusted_header'}, undef, 2);
# DNSSEC enabled?
print &choice_input($text{'trusted_dnssec'}, 'dnssec-enable', $mems,
$text{'yes'}, 'yes', $text{'no'}, 'no',
$text{'default'}, undef);
if (&compare_version_numbers($bind_version, '<', '9.16.0')) {
# DNSSEC enabled?
print &choice_input($text{'trusted_dnssec'}, 'dnssec-enable', $mems,
$text{'yes'}, 'yes', $text{'no'}, 'no',
$text{'default'}, undef);
}
if (&supports_dnssec_client() == 2) {
print &choice_input($text{'trusted_validation'},
'dnssec-validation', $mems,

View File

@@ -40,6 +40,7 @@ if (@keyrecs) {
my $kt = $key->{'ksk'} ? 'ksk' : 'zone';
my ($keyrec) = grep { $_->{'values'}->[0] ==
($key->{'ksk'} ? 257 : 256) } @keyrecs;
next if (!$keyrec);
my $keyline = format_dnssec_public_key(
join(" ", $keyrec->{'name'}, $keyrec->{'class'},
$keyrec->{'type'}, @{$keyrec->{'values'}}));

View File

@@ -930,7 +930,8 @@ else {
# All one one line
my @rv;
foreach my $v (@{$r->{'values'}}) {
push(@rv, $v =~ /\s|;/ ? "\"$v\"" : $v);
push(@rv, $v =~ /\s|;/ || $r->{'type'} eq 'TXT' ?
"\"$v\"" : $v);
}
return join(" ", @rv);
}

View File

@@ -666,8 +666,8 @@ else {
&expandall_ip6($ofwdrec->{'values'}->[0]) &&
$fulloldvalue0 eq $ofwdrec->{'name'}) {
# Updating the forward record
&before_editing($ofwdfile);
&before_editing($fwdfile);
&before_editing($ofwdconf);
&before_editing($fwdconf);
&lock_file(&make_chroot($ofwdfile));
&lock_file(&make_chroot($fwdfile));
my @ofrecs = &read_zone_file($ofwdfile, $ofwdconf->{'name'});
@@ -702,8 +702,8 @@ else {
&bump_soa_record($ofwdfile, \@ofrecs);
&sign_dnssec_zone_if_key($ofwdconf, \@ofrecs);
}
&after_editing($fwdfile);
&after_editing($ofwdfile);
&after_editing($fwdconf);
&after_editing($ofwdconf);
}
}
&bump_soa_record($in{'file'}, \@recs);

View File

@@ -4,7 +4,7 @@ use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
our (%access, %text, %in, %config);
our (%access, %text, %in, %config, $bind_version);
require './bind8-lib.pl';
$access{'defaults'} || &error($text{'trusted_ecannot'});
@@ -17,7 +17,9 @@ my $conf = $parent->{'members'};
my $options = &find("options", $conf);
# DNSSEC enabled
&save_choice("dnssec-enable", $options, 1);
if (&compare_version_numbers($bind_version, '<', '9.16.0')) {
&save_choice("dnssec-enable", $options, 1);
}
if (&supports_dnssec_client() == 2) {
&save_choice("dnssec-validation", $options, 1);
}

View File

@@ -1,11 +1,23 @@
index_title=Перемінити мову і тему
index_title=Змінити мову і тему
index_dateformatglobal2=Глобальний формат дат .. $1
index_dateformatset=Особистий вибір..
index_lang=Мова
index_langglobal2=Глобальна мова .. $1 ($2)
index_langset=персональний вибір ..
index_themeglobal=Глобальна тема ($1)
index_themeset=Персональний вибір ..
index_locale=Локаль
index_locale2=Формат дат
index_localeglobal2=Глобальна локаль .. $1 ($2)
index_localeset=Особистий вибір..
index_overlay=Накладання теми
index_overlaydef=Немає - використовувати теми за замовчуванням
index_pass=Пароль облікового запису Webmin
index_passagain=Повторно введіть пароль
index_passleave=Не змінювати
index_passset=Установити в..
index_ok=Зберегти зміни
index_theme=Тема
index_themedef=Стара тема Webmin
index_desc2=Цей модуль може бути використаний для зміни $1, тільки для вашого облікового запису Webmin.
index_d3=1$, 2$ і 3$
@@ -15,13 +27,17 @@ index_dlang=мова, на якому відображаються модулі
index_dtheme=тема, що контролює зовнішній вигляд Webmin
index_dpass=пароль використовуваний для реєстрації
change_title=Змінюю настроювання
change_user=Змінюю настроювання облікового запису Webmin ..
change_title=Зміна налаштувань
change_user=Зміна налаштувань облікового запису Webmin ..
change_done=.. готово
change_restart=Перезапускаю Webmin ..
change_eoverlay=Ви не можете вибрати накладання теми, якщо також не вибрано тему інтерфейсу користувача
change_eoverlay2=Вибране накладання теми несумісне з вибраною темою інтерфейсу користувача
change_epass=Новий пароль недійсний: $1
change_epass2=Нові паролі не збігаються
change_redirect=Перехід у головне меню ..
change_ecolon=Ваш пароль не може містити символ :
acl_lang=Може змінювати мова?
acl_lang=Чи можна змінити мову?
acl_locale=Чи можна змінити локаль?
acl_theme=Може змінювати тему?
acl_pass=Може змінювати пароль (коли зазначений у Webmin)?
acl_pass=Чи можна змінити пароль (якщо встановлено в Webmin)?

View File

@@ -0,0 +1,3 @@
desc_uk=Зміна мови та теми
longdesc_uk=Дозволяє поточному користувачеві Webmin змінювати мову, тему та, можливо, пароль.
name_uk=Зміна мови та теми

View File

@@ -407,5 +407,50 @@ if (-r $module_prefs_conf) {
}
}
# hidden_config_cparams(&in)
# Return HTML for hidden inputs for params to pass back to whatever linked
# to config.cgi
sub hidden_config_cparams
{
my ($in) = @_;
my $rv = "";
foreach my $k (keys %$in) {
next if ($k !~ /^(_cparam_|_cscript)/);
foreach my $v (split(/\0/, $in{$k})) {
$rv .= &ui_hidden($k, $v)."\n";
}
}
return $rv;
}
# link_config_cparams(module, &in, [add-cparam])
# Returns a URL to link to after the config is saved
sub link_config_cparams
{
my ($m, $in, $keep) = @_;
my $url = "/$m/";
my @w;
if ($in->{'_cscript'}) {
if ($keep) {
push(@w, "_cscript=".&urlize($in->{'_cscript'}));
}
else {
$url .= $in->{'_cscript'};
}
}
foreach my $k (keys %$in) {
if ($k =~ /^_cparam_(.*)$/) {
$n = $1;
foreach my $v (split(/\0/, $in{$k})) {
push(@w, &urlize($keep ? $k : $n)."=".&urlize($v));
}
}
}
if (@w) {
$url .= "?".join("&", @w);
}
return $url;
}
1;

View File

@@ -24,6 +24,7 @@ else {
$text{'config_title'}, "", $help, 0, 1);
print &ui_form_start("config_save.cgi", "post");
print &hidden_config_cparams(\%in);
print &ui_hidden("module", $m),"\n";
print &ui_table_start(&text('config_header', $module_info{'desc'}),
"width=100%", 2);
@@ -51,5 +52,5 @@ if (!$func) {
print &ui_table_end();
print &ui_form_end([ [ "save", $text{'save'} ] ]);
&ui_print_footer("/$m", $text{'index'});
&ui_print_footer(&link_config_cparams($m, \%in), $text{'index'});

View File

@@ -56,5 +56,5 @@ if (&foreign_check("webmin")) {
}
&webmin_log("_config_", undef, undef, \%in, $m);
&redirect("/$m/");
&redirect(&link_config_cparams($m, \%in));

View File

@@ -1,5 +1,5 @@
line1=Параметри&#44; що настроюються,11
refresh_days=Період відновлення списку модулів CPAN (днів),0,5
line1=Параметри,11
refresh_days=Період оновлення списку модулів CPAN (днів),0,5
line2=Системні параметри,11
packages=Список модулів Perl CPAN,0
cpan=Базовий URL модулів CPAN,0

View File

@@ -5,16 +5,36 @@ index_version=Версія
index_desc=Опис
index_date=Дата установки
index_installmsg=Виберіть модуль Perl для зборки й установки на вашій системі.
index_allmods2=Відсутні модулі, які використовуються Webmin
index_cpan=З CPAN за назвою
index_refresh=Обновити список модулів CPAN
index_local=З локального файлу
index_uploaded=Із завантаженого файлу
index_delete=Видалення модулів
index_ezone=Схоже, що Perl використовується спільно з глобальною зоною, тому тут неможливо встановити модулі. Натомість вони повинні бути встановлені в глобальній зоні.
index_forcecpan=Завжди встановлюйте останню версію з сирцевих кодів
index_user=$1 (використовується $2)
index_wantmods=Модулі для встановлення
index_tabsuggest=Пропоновані модулі
index_ftp=По URL ftp чи http
index_installok=Установити
index_return=списку модулів
index_none=У вашій системі не знайдено встановлених модулів Perl.
index_pversion=Perl версії $1
index_recs=Наступні модулі Perl рекомендуються для встановлення Webmin:
index_recsgot=Встановлено всі наступні модулі Perl, рекомендовані Webmin: $1
index_recsok=Встановити вибрані модулі
index_tabinstall=Встановити модуль
index_tabmods=Існуючі модулі
delete_efile=Недійсний файл пакета!
download_act=Дії по установці
download_args=Аргументи <tt>Makefile.PL</tt>
download_cont=Продовжити установку
download_ebuild=Для створення одного або кількох модулів Perl потрібно $1, але цей модуль Perl не встановлено.
download_err=Не удалося установити модуль
download_ecpangz=URL-адреса $1 не є списком модулів CPAN. Перевірте конфігурацію модуля.
download_elocal=Не зазначений локальний файл
download_elocal2='$1' не існує
download_eupload=Ваш браузер не підтримує завантаження файлів
@@ -22,21 +42,26 @@ download_eurl=Незрозумілий URL '$1'
download_edir=Невірний каталог $1
download_etar=Не удалося розпакувати файл tar : $1
download_emod=Невірний модуль Perl
download_fallback=Деякі модулі не вдалося встановити з пакетів, натомість намагаються встановити з сирцевих кодів..
download_title=Установка модуля
download_header=Настроювання установки модуля Perl
download_mod=Назва модуля
download_ver=Версія
download_act=Дії по установці
download_args=Аргументи <tt>Makefile.PL</tt>
download_cont=Продовжити установку
download_yum=Встановлення модуля Perl $1 з пакета $2
download_src=Джерело
download_m=Тільки зібрати
download_mt=Зібрати і перевірити
download_mi=Зібрати й установити
download_missing=Відсутні модулі $1
download_missingok=У CPAN відсутні модулі
download_mods=Назви модулів
download_mti=Зібрати, перевірити й установити
download_cont=Продовжити установку
download_epackages=Невірний URL модулів CPAN
download_ecpan=Модуль $1 у списку модулів CPAN не виявлений
download_eisperl=Модуль $1 є частиною стандартного дистрибутива Perl
download_args=Аргументи <tt>Makefile.PL</tt>
download_envs=Перемінні оточення <tt>Makefile.PL</tt>
download_name=Ім'я
download_value=Значення
@@ -48,6 +73,7 @@ install_make=Зборка модуля
install_test=Перевірка модуля
install_install=Установка модуля
install_loop=У висновку виявлене можливе зациклення!
install_needunlink=Ви можете спробувати встановити знову, повернувшись на попередню сторінку та вибравши інші параметри. В іншому випадку <a href='$1'>клацніть тут, щоб видалити тимчасові файли пакунків</a>, щоб заощадити місце на диску.
install_done_0=Зборка $1 успішно довершена.
install_done_1=Зборка і перевірка $1 успішно довершена.
install_done_2=Зборка й установка $1 успішно довершена.
@@ -63,19 +89,33 @@ cpan_search=Знайти модулі з назвою
cpan_match=Модулі, що збігаються з $1 ..
cpan_none=Збігів не виявлено.
uninstall_debian=Модуль буде видалено шляхом видалення пакета $1 Debian.
edit_title=Інформація про модуль
edit_header=Інформація про модуль
edit_mod=Назва модуля
edit_debian=Пакет Debian $1
edit_desc=Опис
edit_date=Дата установки
edit_subs=Підмодулі
edit_header2=Документація модуля
edit_file=Файл модуля
edit_manual=Ручне встановлення модуля Perl
edit_method=Встановлено з
edit_none=Немає
edit_return=інформації про модуль
edit_rpm=Пакет RPM $1
edit_uninstall=Видалити модель і підмодулі
edit_upgrade=Модуль оновлення від CPAN
uninstall_title=Видалення модуля
uninstall_err=Не вдалося видалити модуль
uninstall_rpm=Модуль буде видалено шляхом видалення пакета $1 RPM.
uninstall_rusure=Видалити модуль Perl $1 ? Будуть вилучені наступні файли :
uninstall_rusure2=Видалити модуль Perl $1 і підмодулі $2 ?<br>Будуть вилучені наступні файли :
uninstall_ok=Видалити
uninstalls_emod=$1 не вдалося: $2
uninstalls_enone=Не вибрано
uninstalls_err=Не вдалося видалити модулі
uninstalls_rusure=Ви впевнені, що бажаєте видалити вибрані модулі $1? $2 підмодулі та $3 файли буде видалено.
uninstalls_title=Видалення модулів

View File

@@ -0,0 +1,5 @@
line1=Параметри,11
refresh_days=Період оновлення списку модулів CPAN (днів),0,5
line2=Системні параметри,11
packages=Список модулів Perl CPAN,0
cpan=Базовий URL модулів CPAN,0

View File

@@ -19,6 +19,10 @@ while(@ARGV) {
shift(@ARGV);
$createsig = 1;
}
elsif ($ARGV[0] eq "--key") {
shift(@ARGV);
$keyname = shift(@ARGV);
}
elsif ($ARGV[0] eq "--exclude") {
shift(@ARGV);
push(@exclude, shift(@ARGV));
@@ -98,7 +102,8 @@ if ($file =~ /^(.*)\.gz$/i) {
}
if ($createsig) {
system("rm -f $file-sig.asc");
system("gpg --armor --output $file-sig.asc --detach-sig $file");
system("gpg ".($keyname ? " --default-key $keyname" : "").
" --armor --output $file-sig.asc --detach-sig $file");
}
# read_file(file, &assoc, [&order], [lowercase])

View File

@@ -1556,7 +1556,8 @@ if ($err) {
=head2 cleanup_temp_files
Called from cron to delete old files in the Webmin /tmp directory
Called from cron to delete old files in the Webmin /tmp directory, and also
old lock links directories.
=cut
sub cleanup_temp_files
@@ -1566,27 +1567,47 @@ if (!$gconfig{'tempdelete_days'}) {
print STDERR "Temp file clearing is disabled\n";
return;
}
# Cleanup files in /tmp/.webmin
if ($gconfig{'tempdir'} && !$gconfig{'tempdirdelete'}) {
print STDERR "Temp file clearing is not done for the custom directory $gconfig{'tempdir'}\n";
return;
}
else {
local $tempdir = &transname();
$tempdir =~ s/\/([^\/]+)$//;
if (!$tempdir || $tempdir eq "/") {
$tempdir = "/tmp/.webmin";
}
local $cutoff = time() - $gconfig{'tempdelete_days'}*24*60*60;
opendir(DIR, $tempdir);
foreach my $f (readdir(DIR)) {
next if ($f eq "." || $f eq "..");
local @st = lstat("$tempdir/$f");
if ($st[9] < $cutoff) {
&unlink_file("$tempdir/$f");
}
}
closedir(DIR);
}
local $tempdir = &transname();
$tempdir =~ s/\/([^\/]+)$//;
if (!$tempdir || $tempdir eq "/") {
$tempdir = "/tmp/.webmin";
}
local $cutoff = time() - $gconfig{'tempdelete_days'}*24*60*60;
opendir(DIR, $tempdir);
# Delete stale lock files
my $lockdir = $var_directory."/locks";
opendir(DIR, $lockdir);
foreach my $f (readdir(DIR)) {
next if ($f eq "." || $f eq "..");
local @st = lstat("$tempdir/$f");
if ($st[9] < $cutoff) {
&unlink_file("$tempdir/$f");
next if ($f !~ /^\d+$/);
if (!kill(0, $f)) {
# Process is gone, but never cleaned up!
&unlink_file("$lockdir/$f");
}
}
closedir(DIR);
# Cleanup old websockets
foreach (&get_miniserv_websockets_modules()) {
&cleanup_miniserv_websockets(undef, $_);
}
}
=head2 list_cron_files()

View File

@@ -14,7 +14,7 @@ index_manual=Editiere manuell Cron-Aufträge.
index_return=Cron-Aufträge
index_env=Umgebungsvariable
index_move=Verschieben
index_next=Nächte Ausfürung
index_next=Nächste Ausführung
index_nunknown=Unbekannt
index_run=Läuft?
index_ecmd=Das Kommando $1 um Cron Benutzer Konfigurationen zu bearbeiten wurde nicht gefunden. Vielleicht ist Cron nicht auf Ihrem System installiert?

View File

@@ -22,12 +22,12 @@ else {
# Check if this user is allowed to execute cron jobs
if (&supports_users()) {
&can_use_cron($in{'user'}) ||
&error(&text('save_eallow', $in{'user'}));
&error(&text('save_eallow', &html_escape($in{'user'})));
}
# Check module access control
&can_edit_user(\%access, $in{'user'}) ||
&error(&text('save_ecannot', $in{'user'}));
&error(&text('save_ecannot', &html_escape($in{'user'})));
@files = &unique((map { $_->{'file'} } @jobs),
"$config{'cron_dir'}/$in{'user'}");
@@ -42,7 +42,7 @@ if (&supports_users()) {
&error($text{'save_euser'});
}
if (!defined(getpwnam($in{'user'}))) {
&error(&text('save_euser2', $in{'user'}));
&error(&text('save_euser2', &html_escape($in{'user'})));
}
}
&parse_times_input($job, \%in);

View File

@@ -270,21 +270,21 @@ if ($show_subnet_delete) {
if ($show_subnet_shared) {
if (@ulinks >= $display_max) {
# Could not show all subnets, so show lookup form
print &ui_form_start("lookup_subnet.cgi", "get");
print &ui_table_start(undef, undef, 2);
print &ui_table_row($text{'index_subtoomany'}, &ui_submit($text{'index_sublook2'}));
print &ui_table_row($matches, &ui_textbox("subnet", "", 30));
print &ui_table_end();
print &ui_form_end(undef,undef,1);
print &ui_form_start("lookup_subnet.cgi", "get");
print &ui_table_start(undef, undef, 2);
print &ui_table_row($text{'index_subtoomany'}, &ui_submit($text{'index_sublook2'}));
print &ui_table_row($matches, &ui_textbox("subnet", "", 30));
print &ui_table_end();
print &ui_form_end(undef,undef,1);
}
if (@slinks >= $display_max) {
# Could not show all shared nets, so show lookup form
print &ui_form_start("lookup_shared.cgi", "get");
print &ui_table_start(undef, undef, 2);
print &ui_table_row($text{'index_shatoomany'}, &ui_submit($text{'index_shalook2'}));
print &ui_table_row($matches, &ui_textbox("shared", "", 30));
print &ui_table_end();
print &ui_form_end(undef,undef,1);
print &ui_form_start("lookup_shared.cgi", "get");
print &ui_table_start(undef, undef, 2);
print &ui_table_row($text{'index_shatoomany'}, &ui_submit($text{'index_shalook2'}));
print &ui_table_row($matches, &ui_textbox("shared", "", 30));
print &ui_table_end();
print &ui_form_end(undef,undef,1);
}
}

View File

@@ -4,7 +4,10 @@ BEGIN { push(@INC, ".."); };
use WebminCore;
&init_config();
@supported_auths = ( "anonymous", "plain", "digest-md5", "cram-md5", "apop" );
@supported_auths = ( "anonymous", "plain", "digest-md5", "cram-md5", "apop",
"scram-sha-1", "scram-sha-256", "ntlm", "gss-spnego",
"gssapi", "rpa", "otp", "skey", "external",
"oauthbearer", "xoauth2" );
@mail_envs = ( undef, "maildir:~/Maildir", "mbox:~/mail/:INBOX=/var/mail/%u",
"maildir:~/Maildir:mbox:~/mail/" );
@@ -216,6 +219,11 @@ return wantarray ? @rv : $rv[0];
sub save_directive
{
local ($conf, $name, $value, $sname, $svalue) = @_;
$newconf = [ grep { $_->{'file'} !~ /^\/usr\/share\/dovecot/ &&
$_->{'file'} !~ /^\/opt/ } @$conf ];
if (@$newconf) {
$conf = $newconf;
}
local $dir;
if (ref($name)) {
# Old directive given
@@ -577,5 +585,4 @@ else {
}
1;
r

View File

@@ -29,9 +29,9 @@ else {
"auth", "default"));
}
print &ui_table_row($text{'login_mechs'},
&ui_select("mechs", \@mechs,
[ map { [ $_, $text{'login_'.$_} ] } @supported_auths ],
4, 1, 1));
&ui_select("mechs", \@mechs,
[ map { [ $_, $text{'login_'.$_} || uc($_) ] } @supported_auths ],
4, 1, 1));
print &ui_table_hr();

View File

@@ -10,11 +10,11 @@ print &ui_table_start($text{'mail_header'}, "width=100%", 4);
# Mail file location. Old versions used default_mail_env, new uses mail_location
$envmode = 4;
if (&find("mail_location", $conf, 2)) {
$env = &find_value("mail_location", $conf);
if (&find("default_mail_env", $conf, 2)) {
$env = &find_value("default_mail_env", $conf);
}
else {
$env = &find_value("default_mail_env", $conf);
$env = &find_value("mail_location", $conf);
}
if ($env =~ s/:INDEX=([^:]+)//) {
$index = $1;

View File

@@ -92,6 +92,11 @@ login_plain=Plain-text
login_digest-md5=Digest-MD5
login_cram-md5=Cram-MD5
login_apop=APOP
login_otp=One time password
login_skey=Security key
login_oauthbearer=OAuth2 bearer authentication
login_xoauth2=Google OAuth2 bearer authentication
login_external=External SASL authentication
login_userdb=Data source for users, homes and IDs
login_passwd=Standard Unix user database
login_passwdfile=Custom password file $1

View File

@@ -31,11 +31,11 @@ if ($in{'controlmode'}) {
$env .= ":CONTROL=".$in{'control'};
}
if (&find("mail_location", $conf, 2)) {
&save_directive($conf, "mail_location", $env eq "" ? undef : $env);
if (&find("default_mail_env", $conf, 2)) {
&save_directive($conf, "default_mail_env", $env eq "" ? undef : $env);
}
else {
&save_directive($conf, "default_mail_env", $env eq "" ? undef : $env);
&save_directive($conf, "mail_location", $env eq "" ? undef : $env);
}
# Idle intervals

View File

@@ -1,4 +1,3 @@
line2=System configuration,11
exports_file=Exported filesystems file,0
apply_cmd=Command to apply configuration,3,None
restart_command=Command to restart export server,0

View File

@@ -11,6 +11,7 @@ our (%in, %text);
my $conf = &get_config();
my ($def) = grep { $_->{'name'} eq 'Definition' } @$conf;
$def || &error($text{'config_edef'});
my ($DEF) = grep { $_->{'name'} eq 'DEFAULT' } @$conf;
&ui_print_header(undef, $text{'config_title'}, "");
@@ -36,21 +37,52 @@ my $logtarget = &find_value("logtarget", $def);
my $mode = $logtarget eq "" ? "" :
$logtarget =~ /^STDOUT|STDERR|SYSLOG$/ ? $logtarget : "file";
print &ui_table_row($text{'config_logtarget'},
&ui_radio("logtarget_def", $mode,
[ [ "", $text{'config_default'}."<br>" ],
[ "STDOUT", "STDOUT<br>" ],
[ "STDERR", "STDERR<br>" ],
[ "SYSLOG", $text{'config_syslog'}."<br>" ],
[ "file", $text{'config_file'}." ".
&ui_radio_row('logtarget_def', $mode,
[ [ "", [ $text{'config_default'} ] ],
[ "STDOUT", [ "STDOUT" ] ],
[ "STDERR", [ "STDERR" ] ],
[ "SYSLOG", [ $text{'config_syslog'} ] ],
[ "file", [ $text{'config_file'},
&ui_textbox("logtarget",
$mode eq "file" ? $logtarget : "", 50) ]
]));
$mode eq "file" ? $logtarget : "", 50) ] ]
], 1));
# Socket file
my $socket = &find_value("socket", $def);
print &ui_table_row($text{'config_socket'},
&ui_opt_textbox("socket", $socket, 40, $text{'default'}));
# DB Purge Age
if ($DEF) {
my $dbpurgeage = &find_value("dbpurgeage", $DEF);
my @dbpurgeages = (
[ '', '' ],
[ '900', $text{'config_dbpurgeage_15m'} ],
[ '1800', $text{'config_dbpurgeage_30m'} ],
[ '3600', $text{'config_dbpurgeage_1h'} ],
[ '21600', $text{'config_dbpurgeage_6h'} ],
[ '43200', $text{'config_dbpurgeage_12h'} ],
[ '86400', $text{'config_dbpurgeage_1d'} ],
[ '259200', $text{'config_dbpurgeage_3d'} ],
[ '604800', $text{'config_dbpurgeage_1w'} ],
[ '1209600', $text{'config_dbpurgeage_2w'} ],
[ '2629800', $text{'config_dbpurgeage_1mo'} ] );
# Check of $dbpurgeage is in @dbpurgeages
my $time_in_seconds = &time_to_seconds($dbpurgeage);
my $dbpurgestd = grep { $_->[0] eq $time_in_seconds } @dbpurgeages;
my $dbpurge_def = $time_in_seconds == 86400 ? 1 : $dbpurgestd ? 0 : 2;
my $depurgeagelabeled = $dbpurge_def == 2 ? &seconds_to_time($dbpurgeage) : undef;
print &ui_table_row($text{'config_dbpurgeage'},
&ui_radio_row('dbpurgeage', $dbpurge_def,
[ [ 1, [ $text{'config_dbpurgeagedef'} ] ],
[ 0, [ $text{'config_dbpurgeagesel'},
&ui_select("dbpurgeagesel", $time_in_seconds, \@dbpurgeages) ] ],
[ 2, [ $text{'config_dbpurgeagecus'},
&ui_textbox("dbpurgeagecus", $depurgeagelabeled, 15) ] ]
]));
}
print &ui_table_end();
print &ui_form_end([ [ undef, $text{'save'} ] ]);

View File

@@ -30,15 +30,15 @@ print &ui_hidden("new", $in{'new'});
print &ui_hidden("old", $in{'name'});
print &ui_table_start($text{'jail_header'}, undef, 2);
# Jail name
print &ui_table_row($text{'jail_name'},
&ui_textbox("name", $jail->{'name'}, 30));
# Enabled or disabled?
my $enabled = &find_value("enabled", $jail);
print &ui_table_row($text{'jail_enabled'},
&ui_yesno_radio("enabled", $enabled =~ /true|yes|1/i));
# Jail name
print &ui_table_row($text{'jail_name'},
&ui_textbox("name", $jail->{'name'}, 30));
# Filter to match
my @filters = &list_filters();
my $filter = &find_value("filter", $jail);
@@ -49,6 +49,22 @@ print &ui_table_row($text{'jail_filter'},
map { &filename_to_name($_->[0]->{'file'}) } @filters ],
1, 0, $filter ? 1 : 0));
# Backend
my $backend = &find_value("backend", $jail);
print &ui_table_row($text{'jail_backend'},
&ui_select("backend", $backend || "",
[ [ "", "" ],
[ "auto", $text{'jail_auto'} ],
[ "systemd", $text{'jail_systemd'} ],
[ "polling", $text{'jail_polling'} ],
[ "gamin", $text{'jail_gamin'} ],
[ "pyinotify", $text{'jail_pyinotify'} ] ]));
# Ports to monitor
my $port = &find_value("port", $jail);
print &ui_table_row($text{'jail_ports'},
&ui_textbox("port", $port, 35));
# Actions to run
my $actionlist = &find("action", $jail);
my @actions = &list_actions();

View File

@@ -51,9 +51,11 @@ print &ui_table_row($text{'jail_ignoreip'},
my $backend = &find_value("backend", $jail);
print &ui_table_row($text{'jail_backend'},
&ui_select("backend", $backend || "auto",
[ [ "auto", $text{'jail_auto'} ],
[ "gamin", $text{'jail_gamin'} ],
[ "polling", $text{'jail_polling'} ] ]));
[ [ "auto", $text{'jail_auto'} ],
[ "systemd", $text{'jail_systemd'} ],
[ "polling", $text{'jail_polling'} ],
[ "gamin", $text{'jail_gamin'} ],
[ "pyinotify", $text{'jail_pyinotify'} ] ]));
# Email destination
my $destemail = &find_value("destemail", $jail);

View File

@@ -577,4 +577,83 @@ if ($?) {
}
}
# Convert human readable time to seconds
sub time_to_seconds
{
my ($time) = @_;
my $seconds;
my ($number, $unit) = $time =~ /^(\d+)\s*(year|years|month|months|week|weeks|day|days|hour|hours|min|minute|minutes|sec|second|seconds|y|mo|w|d|h|m|s)$/;
if ($number && $unit) {
$seconds = $number if ($unit =~ /^s/);
$seconds = $number * 60 if ($unit =~ /^m$|^min/);
$seconds = $number * 3600 if ($unit =~ /^h/);
$seconds = $number * 86400 if ($unit =~ /^d/);
$seconds = $number * 604800 if ($unit =~ /^w/);
$seconds = $number * 2629800 if ($unit =~ /^mo/);
$seconds = $number * 31557600 if ($unit =~ /^y/);
}
else {
$seconds = int($time);
}
return $seconds;
}
# Convert seconds to human readable time
sub seconds_to_time {
my ($seconds) = @_;
my ($number, $unit) = $seconds =~ /^(\d+)\s*(year|years|month|months|week|weeks|day|days|hour|hours|min|minute|minutes|sec|second|seconds|y|mo|w|d|h|m|s)$/;
return $seconds if ($unit);
my $time;
if ($seconds >= 31557600) {
my $years = int($seconds / 31557600);
$time = $years . " " .
($years > 1 ? $text{'config_dbpurgeagecusyrs'} :
$text{'config_dbpurgeagecusyr'});
} elsif ($seconds >= 2629800) {
my $months = int($seconds / 2629800);
$time = $months . " " .
($months > 1 ? $text{'config_dbpurgeagecusmos'} :
$text{'config_dbpurgeagecusmo'});
} elsif ($seconds >= 604800) {
my $weeks = int($seconds / 604800);
$time = $weeks . " " .
($weeks > 1 ? $text{'config_dbpurgeagecuswks'} :
$text{'config_dbpurgeagecuswk'});
} elsif ($seconds >= 86400) {
my $days = int($seconds / 86400);
$time = $days . " " .
($days > 1 ? $text{'config_dbpurgeagecusdays'} :
$text{'config_dbpurgeagecusday'});
} elsif ($seconds >= 3600) {
my $hours = int($seconds / 3600);
$time = $hours . " " .
($hours > 1 ? $text{'config_dbpurgeagecushrs'} :
$text{'config_dbpurgeagecushr'});
} elsif ($seconds >= 60) {
my $minutes = int($seconds / 60);
$time = $minutes . " " .
($minutes > 1 ? $text{'config_dbpurgeagecusmins'} :
$text{'config_dbpurgeagecusmin'});
} else {
$time = $seconds . " " .
(int($seconds / 60) > 1 ? $text{'config_dbpurgeagecussecs'} :
$text{'config_dbpurgeagecussec'});
}
return $time;
}
# Test if given format is correct
sub time_to_seconds_error
{
my ($time) = @_;
my ($seconds) = $time =~ /^(\d+)$/;
return 0 if ($seconds);
my ($number, $unit) = $time =~ /^(\d+)\s*(year|years|month|months|week|weeks|day|days|hour|hours|min|minute|minutes|sec|second|seconds|y|mo|w|d|h|m|s)$/;
return 0 if ($number && $unit);
my ($ewrongunit) = $time =~ /^\d+\s*(\S+)\s*$/;
return &text('config_ewrongunit', $ewrongunit) if ($ewrongunit);
return $text{'config_ewrongtime'} if ($time !~ /^(\d+)$/ || $time == 0);
return 0;
}
1;

View File

@@ -114,8 +114,10 @@ jail_efindtime=Vertraging tussen wedstryde moet 'n getal groter as nul wees
jail_ebantime=Die tyd om 'n IP te verbied, moet 'n getal groter as nul wees
jail_backend=Kyk vir bywerkings by die lêer met behulp van
jail_auto=Besluit outomaties
jail_gamin=Gamin-lêerveranderingsmonitor
jail_systemd=sistem
jail_polling=Stembus agtergrond
jail_gamin=Gamin-lêerveranderingsmonitor
jail_pyinotify=piinotifiseer
jail_destemail=Standaard kennisgewing e-pos
jail_none=Geen stel nie
jail_banaction=Verstek aksie om toe te pas

View File

@@ -114,8 +114,10 @@ jail_efindtime=يجب أن يكون التأخير بين التطابقات أ
jail_ebantime=يجب أن يكون وقت حظر IP أكبر من الصفر
jail_backend=تحقق من وجود تحديثات ملف السجل باستخدام
jail_auto=تقرر تلقائيا
jail_gamin=غامين رصد ملف التغيير
jail_systemd=systemd
jail_polling=الاقتراع في الخلفية
jail_gamin=غامين رصد ملف التغيير
jail_pyinotify=pyinotify
jail_destemail=البريد الإلكتروني الإخطار الافتراضي
jail_none=لا شيء مجموعة
jail_banaction=الإجراء الافتراضي للتطبيق

View File

@@ -114,8 +114,10 @@ jail_efindtime=Затрымка паміж матчамі павінна быц
jail_ebantime=Час забароны IP павінна быць лік, большы за нуль
jail_backend=Праверце наяўнасць абнаўленняў файла часопіса
jail_auto=Рашыце аўтаматычна
jail_gamin=Манітор змены файлаў Gamin
jail_systemd=systemd
jail_polling=Фон апытання
jail_gamin=Манітор змены файлаў Gamin
jail_pyinotify=pyinotify
jail_destemail=Паведамленне па змаўчанні па электроннай пошце
jail_none=Не ўстаноўлены
jail_banaction=Дзеянне па змаўчанні прымяняецца

View File

@@ -114,8 +114,10 @@ jail_efindtime=Забавянето между мачовете трябва д
jail_ebantime=Времето за забрана на IP трябва да е число, по-голямо от нула
jail_backend=Проверете за актуализации на файловете на лога чрез
jail_auto=Решете автоматично
jail_gamin=Монитор за промяна на файловете в Gamin
jail_systemd=systemd
jail_polling=Проучване на фона
jail_gamin=Монитор за промяна на файловете в Gamin
jail_pyinotify=pyinotify
jail_destemail=Имейл за уведомяване по подразбиране
jail_none=Няма зададен
jail_banaction=Действие по подразбиране, което трябва да се приложи

View File

@@ -114,8 +114,8 @@ jail_efindtime=L'interval entre coincidències ha de ser més gran que zero
jail_ebantime=El temps a prohibir una IP ha de ser un número més gran que zero
jail_backend=Comprova les actualitzacions de registres utilitzant
jail_auto=Decideix-ho automàticament
jail_gamin=Monitor d'alteració de fitxers Gamin
jail_polling=<i>Polling</i> en segon pla
jail_gamin=Monitor d'alteració de fitxers Gamin
jail_destemail=Correu de notificació per defecte
jail_none=No n'hi ha cap d'establert
jail_banaction=Acció a aplicar per defecte

View File

@@ -1,3 +1,6 @@
jail_systemd=systemd
jail_pyinotify=piinotificar
log_update_filter=Filtre modificat $1
log_update_action=Acció modificada $1
log_update_jail=Presó modificada $1

View File

@@ -114,8 +114,10 @@ jail_efindtime=Prodleva mezi zápasy musí být číslo větší než nula
jail_ebantime=Čas k zákazu IP musí být číslo větší než nula
jail_backend=Zkontrolujte aktualizace souborů protokolu pomocí
jail_auto=Rozhodněte se automaticky
jail_gamin=Sledování změn v gaminových souborech
jail_systemd=systemd
jail_polling=Pozadí dotazování
jail_gamin=Sledování změn v gaminových souborech
jail_pyinotify=pyinotify
jail_destemail=Výchozí oznamovací e-mail
jail_none=Žádná sada
jail_banaction=Výchozí akce použít

View File

@@ -114,8 +114,10 @@ jail_efindtime=Forsinkelse mellem kampe skal være et tal større end nul
jail_ebantime=Tid til at forbyde en IP skal være et tal større end nul
jail_backend=Kontroller for opdateringer af logfil ved hjælp af
jail_auto=Beslut automatisk
jail_gamin=Gamin-filændringsovervågning
jail_systemd=systemd
jail_polling=Polling af baggrunden
jail_gamin=Gamin-filændringsovervågning
jail_pyinotify=pyinotify
jail_destemail=Standard e-mail med anmeldelse
jail_none=Intet sæt
jail_banaction=Standardhandling, der skal anvendes

View File

@@ -114,8 +114,8 @@ jail_efindtime=Verzögerung, zwischen den Treffern, muss eine Zahl größer als
jail_ebantime=Zeit, um eine IP zu verbannen, muss eine Zahl größer als Null sein
jail_backend=Prüfe auf Log-Datei Updates, welche
jail_auto=Entscheide automatisch
jail_gamin=Gamin Datei Alteration Monitor
jail_polling=Hintergrund Abfrage
jail_gamin=Gamin Datei Alteration Monitor
jail_destemail=Standard Benachrichtigungs-E-Mail
jail_none=Keins gesetzt
jail_banaction=Standard Aktion zum anwenden

View File

@@ -1,3 +1,6 @@
jail_systemd=systemd
jail_pyinotify=pyinotifizieren
status_title=Jails-Status und Aktionen
status_title3=Gefängnisblöcke
status_return=Gefängnisstatus

View File

@@ -114,8 +114,10 @@ jail_efindtime=Η καθυστέρηση μεταξύ των αγώνων πρέ
jail_ebantime=Ο χρόνος για την απαγόρευση μιας IP πρέπει να είναι ένας αριθμός μεγαλύτερος από το μηδέν
jail_backend=Ελέγξτε αν υπάρχουν ενημερώσεις αρχείων καταγραφής χρησιμοποιώντας
jail_auto=Αποφασίστε αυτόματα
jail_gamin=Οθόνη αλλαγής αρχείων Gamin
jail_systemd=systemd
jail_polling=Υποβολή ιστορικού
jail_gamin=Οθόνη αλλαγής αρχείων Gamin
jail_pyinotify=pyinotify
jail_destemail=Προεπιλεγμένο μήνυμα ειδοποίησης
jail_none=Δεν έχει οριστεί
jail_banaction=Προεπιλεγμένη ενέργεια για εφαρμογή

View File

@@ -87,6 +87,7 @@ jail_title1=Create Jail
jail_title2=Edit Jail
jail_header=Filter action jail details
jail_name=Jail name
jail_ports=Ports to block
jail_egone=Jail no longer exists!
jail_enabled=Currently enabled?
jail_filter=Filter to search log for
@@ -104,6 +105,8 @@ jail_ignoreip=IP addresses to never ban
jail_err=Failed to save jail
jail_eclash=A jail with the same name already exists
jail_ename=Missing or invalid jail name
jail_ebackend=Invalid backend name
jail_eports=Invalid port name, number or range; use a single port name, number or a range in the form <tt>start:end</tt>; to specify multiple ports, separate them with commas
jail_eaname=Invalid looking name parameter for action $1
jail_eport=Invalid port number for action $1
jail_eactions=No actions selected!
@@ -114,8 +117,10 @@ jail_efindtime=Delay between matches must be a number greater than zero
jail_ebantime=Time to ban an IP must be a number greater than zero
jail_backend=Check for log file updates using
jail_auto=Decide automatically
jail_gamin=Gamin file alteration monitor
jail_polling=Background polling
jail_systemd=systemd
jail_polling=polling
jail_gamin=gamin
jail_pyinotify=pyinotify
jail_destemail=Default notification email
jail_none=None set
jail_banaction=Default action to apply
@@ -162,6 +167,36 @@ config_socket=Socket for communication with server
config_err=Failed to save global configuration
config_elogtarget=File to write logs to must be an absolute path
config_esocket=Socket file must be an absolute path
config_dbpurgeage=Age at which bans should be purged from the database
config_dbpurgeage_15m=15 minutes
config_dbpurgeage_30m=30 minutes
config_dbpurgeage_1h=1 hour
config_dbpurgeage_6h=6 hours
config_dbpurgeage_12h=12 hours
config_dbpurgeage_1d=1 day
config_dbpurgeage_3d=3 days
config_dbpurgeage_1w=1 week
config_dbpurgeage_2w=2 weeks
config_dbpurgeage_1mo=1 month
config_ewrongunit=Invalid unit <tt>$1</tt> for database purge age
config_ewrongtime=Invalid time for database purge age. Time for database purge age must be a number greater than zero
config_dbpurgeagedef=Default
config_dbpurgeagesel=Selected
config_dbpurgeagecus=Custom
config_dbpurgeagecussec=second
config_dbpurgeagecussecs=seconds
config_dbpurgeagecusmin=minute
config_dbpurgeagecusmins=minutes
config_dbpurgeagecushr=hour
config_dbpurgeagecushrs=hours
config_dbpurgeagecusday=day
config_dbpurgeagecusdays=days
config_dbpurgeagecuswk=week
config_dbpurgeagecuswks=weeks
config_dbpurgeagecusmo=month
config_dbpurgeagecusmos=months
config_dbpurgeagecusyr=year
config_dbpurgeagecusyrs=years
manual_title=Edit Config Files
manual_desc=File to edit:

View File

@@ -114,8 +114,10 @@ jail_efindtime=El retraso entre partidos debe ser un número mayor que cero
jail_ebantime=El tiempo para prohibir una IP debe ser un número mayor que cero
jail_backend=Verifique las actualizaciones del archivo de registro usando
jail_auto=Decide automáticamente
jail_gamin=Monitor de alteración de archivos Gamin
jail_systemd=sistemad
jail_polling=Encuesta de fondo
jail_gamin=Monitor de alteración de archivos Gamin
jail_pyinotify=piinotificar
jail_destemail=Correo electrónico de notificación predeterminado
jail_none=Ninguno establecido
jail_banaction=Acción predeterminada para aplicar

View File

@@ -114,8 +114,10 @@ jail_efindtime=Partiden arteko atzerapenak zero baino handiagoa izan behar du
jail_ebantime=IP bat debekatzeko denbora zero baino handiagoa izan behar da
jail_backend=Egiaztatu fitxategiaren eguneraketak eguneratzea erabiliz
jail_auto=Erabaki automatikoki
jail_gamin=Gamin fitxategiaren aldaketaren monitorea
jail_systemd=sistemad
jail_polling=Hondoko galdeketa
jail_gamin=Gamin fitxategiaren aldaketaren monitorea
jail_pyinotify=pinotifatu
jail_destemail=Aurretik jakinarazpen mezu elektronikoa
jail_none=Ez da batere ezarri
jail_banaction=Aplikatu beharreko ekintza lehenetsia

View File

@@ -114,8 +114,10 @@ jail_efindtime=تأخیر بین مسابقات باید عددی بیشتر ا
jail_ebantime=زمان ممنوعیت IP باید عددی بزرگتر از صفر باشد
jail_backend=با استفاده از به روزرسانی فایل ورود به سیستم بررسی کنید
jail_auto=به طور خودکار تصمیم بگیرید
jail_gamin=مانیتور تغییر پرونده گامین
jail_systemd=سیستم شده
jail_polling=نظرسنجی در زمینه
jail_gamin=مانیتور تغییر پرونده گامین
jail_pyinotify=pyinotify کردن
jail_destemail=ایمیل اعلان پیش فرض
jail_none=هیچ مجموعه ای نیست
jail_banaction=اقدام پیش فرض برای اعمال

View File

@@ -114,8 +114,10 @@ jail_efindtime=Ottelun välisen viiveen on oltava suurempi kuin nolla
jail_ebantime=IP: n kieltämisajan on oltava nollaa suurempi luku
jail_backend=Tarkista lokitiedostopäivitykset painikkeella
jail_auto=Päätä automaattisesti
jail_gamin=Gamin-tiedostonmuutosmonitori
jail_systemd=systemd
jail_polling=Taustatutkimus
jail_gamin=Gamin-tiedostonmuutosmonitori
jail_pyinotify=pyinotify
jail_destemail=Oletusilmoitussähköposti
jail_none=Ei asetettu
jail_banaction=Käytettävä oletustoiminto

Some files were not shown because too many files have changed in this diff Show More