From dd38b7d7a267e81bf59cb61a15e4f511e82ff799 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 4 Feb 2021 08:53:28 +0100 Subject: [PATCH 01/36] net/haproxy: lint pass et al, bump revision to denote changes --- LICENSE | 1 + net/haproxy/Makefile | 1 + .../opnsense/scripts/OPNsense/HAProxy/lib/haproxy/__init__.py | 0 .../src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/cmds.py | 0 .../src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/conn.py | 0 .../src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/const.py | 0 .../scripts/OPNsense/HAProxy/lib/haproxy/tests/__init__.py | 0 .../scripts/OPNsense/HAProxy/lib/haproxy/tests/test_cmds.py | 0 .../scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py | 2 +- .../src/opnsense/service/conf/actions.d/actions_haproxy.conf | 2 +- 10 files changed, 4 insertions(+), 2 deletions(-) mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/__init__.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/cmds.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/conn.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/const.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/__init__.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_cmds.py mode change 100644 => 100755 net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py diff --git a/LICENSE b/LICENSE index 6e7b1da52..e045225ed 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,5 @@ Copyright (c) 2015-2020 Ad Schellevis +Copyright (c) 2021 Andreas Stuerz Copyright (c) 2019 Cloudfence - Julio Camargo (JCC) Copyright (c) 2005-2006 Colin Smith Copyright (c) 2020 D. Domig diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 98aea3903..3fcb8e78a 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= haproxy PLUGIN_VERSION= 2.26 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Reliable, high performance TCP/HTTP load balancer PLUGIN_DEPENDS= haproxy20 PLUGIN_MAINTAINER= opnsense@moov.de diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/__init__.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/__init__.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/cmds.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/cmds.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/conn.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/conn.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/const.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/const.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/__init__.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/__init__.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_cmds.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_cmds.py old mode 100644 new mode 100755 diff --git a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py old mode 100644 new mode 100755 index fc6aac966..ea8c15f60 --- a/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py +++ b/net/haproxy/src/opnsense/scripts/OPNsense/HAProxy/lib/haproxy/tests/test_conn.py @@ -56,4 +56,4 @@ class TestConnection(unittest.TestCase): pass if __name__ == '__main__': - unittest.main() \ No newline at end of file + unittest.main() diff --git a/net/haproxy/src/opnsense/service/conf/actions.d/actions_haproxy.conf b/net/haproxy/src/opnsense/service/conf/actions.d/actions_haproxy.conf index ce1ef790b..d286d73bf 100644 --- a/net/haproxy/src/opnsense/service/conf/actions.d/actions_haproxy.conf +++ b/net/haproxy/src/opnsense/service/conf/actions.d/actions_haproxy.conf @@ -74,4 +74,4 @@ message:change haproxy state for multiple server command:/usr/local/opnsense/scripts/OPNsense/HAProxy/socketCommand.py parameters: set-server-weight --server-ids %s --value %s type:script_output -message:change haproxy weight for multiple server \ No newline at end of file +message:change haproxy weight for multiple server From d17f76185ad52e4271b3c71da7424c3c1794758d Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 4 Feb 2021 09:01:23 +0100 Subject: [PATCH 02/36] dns/dyndns: bump revision after change --- dns/dyndns/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/dns/dyndns/Makefile b/dns/dyndns/Makefile index 2553b19f5..71ce6cee7 100644 --- a/dns/dyndns/Makefile +++ b/dns/dyndns/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= dyndns PLUGIN_VERSION= 1.23 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Dynamic DNS Support PLUGIN_MAINTAINER= franco@opnsense.org From b3e2e8633a26ee57be11cc00414d1ec8bc6d81fe Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 4 Feb 2021 22:35:26 +0100 Subject: [PATCH 03/36] vendor/sunnyvalley: add proper PLUGIN_WWW --- vendor/sunnyvalley/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/vendor/sunnyvalley/Makefile b/vendor/sunnyvalley/Makefile index e2687ad99..58fc4cc31 100644 --- a/vendor/sunnyvalley/Makefile +++ b/vendor/sunnyvalley/Makefile @@ -2,6 +2,7 @@ PLUGIN_NAME= sunnyvalley PLUGIN_VERSION= 1.2 PLUGIN_COMMENT= Vendor repository for Sensei (Next Generation Firewall Extensions) PLUGIN_MAINTAINER= opensource@sunnyvalley.io +PLUGIN_WWW= https://www.sunnyvalley.io PLUGIN_DEPENDS= ${PLUGIN_FLAVOUR:tl} .include "../../Mk/plugins.mk" From e06826bf9e71e2a8f8825cc3dd0bc1e00ba8c2e4 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 4 Feb 2021 22:58:17 +0100 Subject: [PATCH 04/36] Framework: support version meta data JSON file --- Mk/defaults.mk | 15 +++++++++++++-- Mk/plugins.mk | 21 +++++++++++++++------ Scripts/version.sh | 34 ++++++++++++++++++++++++++++++++++ Templates/version | 11 +++++++++++ 4 files changed, 73 insertions(+), 8 deletions(-) create mode 100755 Scripts/version.sh create mode 100644 Templates/version diff --git a/Mk/defaults.mk b/Mk/defaults.mk index 089cdc705..1ec722ffe 100644 --- a/Mk/defaults.mk +++ b/Mk/defaults.mk @@ -26,9 +26,14 @@ LOCALBASE?= /usr/local PAGER?= less -PKG!= which pkg || echo true +PKG= ${LOCALBASE}/sbin/pkg +.if ! exists(${PKG}) +PKG= true +.endif GIT!= which git || echo true +GITVERSION= ${SCRIPTSDIR}/version.sh + _PLUGIN_ARCH!= uname -p PLUGIN_ARCH?= ${_PLUGIN_ARCH} @@ -64,7 +69,13 @@ PLUGIN_PYTHON?= 37 REPLACEMENTS= PLUGIN_ABI \ PLUGIN_ARCH \ - PLUGIN_FLAVOUR + PLUGIN_FLAVOUR \ + PLUGIN_HASH \ + PLUGIN_MAINTAINER \ + PLUGIN_NAME \ + PLUGIN_PKGNAME \ + PLUGIN_PKGVERSION \ + PLUGIN_WWW SED_REPLACE= # empty diff --git a/Mk/plugins.mk b/Mk/plugins.mk index b1eff4775..119380b03 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -27,13 +27,22 @@ all: check .include "defaults.mk" +PLUGINSDIR= ${.CURDIR}/../.. +TEMPLATESDIR= ${PLUGINSDIR}/Templates +SCRIPTSDIR= ${PLUGINSDIR}/Scripts + +.if exists(${GIT}) && exists(${GITVERSION}) +PLUGIN_COMMIT!= ${GITVERSION} +.else +PLUGIN_COMMIT= unknown 0 undefined +.endif + +PLUGIN_HASH?= ${PLUGIN_COMMIT:[3]} + PLUGIN_DESC= pkg-descr PLUGIN_SCRIPTS= +PRE_INSTALL +POST_INSTALL \ +PRE_DEINSTALL +POST_DEINSTALL -PLUGINSDIR= ${.CURDIR}/../.. -TEMPLATESDIR= ${PLUGINSDIR}/Templates - PLUGIN_WWW?= https://opnsense.org/ PLUGIN_REVISION?= 0 @@ -183,7 +192,7 @@ install: check mv "${DESTDIR}${LOCALBASE}/$${FILE}" "${DESTDIR}${LOCALBASE}/$${FILE%%.in}"; \ fi; \ done - @echo "${PLUGIN_PKGVERSION}" > "${DESTDIR}${LOCALBASE}/opnsense/version/${PLUGIN_NAME}" + cat ${TEMPLATESDIR}/version | sed ${SED_REPLACE} > "${DESTDIR}${LOCALBASE}/opnsense/version/${PLUGIN_NAME}" plist: check @(cd ${.CURDIR}/src; find * -type f) | while read FILE; do \ @@ -312,9 +321,9 @@ sweep: check fi find ${.CURDIR}/src ! -name "*.min.*" ! -name "*.svg" \ ! -name "*.ser" -type f -print0 | \ - xargs -0 -n1 ${.CURDIR}/../../Scripts/cleanfile + xargs -0 -n1 ${SCRIPTSDIR}/cleanfile find ${.CURDIR} -type f -depth 1 -print0 | \ - xargs -0 -n1 ${.CURDIR}/../../Scripts/cleanfile + xargs -0 -n1 ${SCRIPTSDIRs/cleanfile STYLEDIRS?= src/etc/inc src/opnsense diff --git a/Scripts/version.sh b/Scripts/version.sh new file mode 100755 index 000000000..402d84083 --- /dev/null +++ b/Scripts/version.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# Copyright (c) 2015 Franco Fichtner +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. + +set -e + +VERSION=$(git describe --abbrev=0 --always ${1}) +REVISION=$(git rev-list ${VERSION}.. --count) +HASH=$(git rev-list HEAD --max-count=1 | cut -c1-9) + +echo ${VERSION} ${REVISION} ${HASH} diff --git a/Templates/version b/Templates/version new file mode 100644 index 000000000..95baa8fe0 --- /dev/null +++ b/Templates/version @@ -0,0 +1,11 @@ +{ + "product_abi": "%%PLUGIN_ABI%%", + "product_arch": "%%PLUGIN_ARCH%%", + "product_email": "%%PLUGIN_MAINTAINER%%", + "product_flavour": "%%PLUGIN_FLAVOUR%%", + "product_hash": "%%PLUGIN_HASH%%", + "product_id": "%%PLUGIN_PKGNAME%%", + "product_name": "%%PLUGIN_NAME%%", + "product_version": "%%PLUGIN_PKGVERSION%%", + "product_website": "%%PLUGIN_WWW%%" +} From 629eb160cef153831509d3d80b0d42ec64735420 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 4 Feb 2021 23:04:03 +0100 Subject: [PATCH 05/36] Framework: small tweaks on previous --- Mk/plugins.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Mk/plugins.mk b/Mk/plugins.mk index 119380b03..51de1e95e 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -192,7 +192,7 @@ install: check mv "${DESTDIR}${LOCALBASE}/$${FILE}" "${DESTDIR}${LOCALBASE}/$${FILE%%.in}"; \ fi; \ done - cat ${TEMPLATESDIR}/version | sed ${SED_REPLACE} > "${DESTDIR}${LOCALBASE}/opnsense/version/${PLUGIN_NAME}" + @cat ${TEMPLATESDIR}/version | sed ${SED_REPLACE} > "${DESTDIR}${LOCALBASE}/opnsense/version/${PLUGIN_NAME}" plist: check @(cd ${.CURDIR}/src; find * -type f) | while read FILE; do \ @@ -246,6 +246,8 @@ package: check @echo -n ">>> Staging files for ${PLUGIN_PKGNAME}-${PLUGIN_PKGVERSION}..." @${MAKE} DESTDIR=${WRKSRC} install @echo " done" + @echo ">>> Generated version info for ${PLUGIN_PKGNAME}-${PLUGIN_PKGVERSION}:" + @cat ${WRKSRC}/usr/local/opnsense/version/${PLUGIN_NAME} @echo ">>> Packaging files for ${PLUGIN_PKGNAME}-${PLUGIN_PKGVERSION}:" @${PKG} create -v -m ${WRKSRC} -r ${WRKSRC} \ -p ${WRKSRC}/plist -o ${PKGDIR} From 94493cb32ce5a55340952c08e95cbd37dddea6df Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Fri, 5 Feb 2021 09:30:40 +0100 Subject: [PATCH 06/36] Framework: exclude txz archives --- Mk/plugins.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mk/plugins.mk b/Mk/plugins.mk index 51de1e95e..48bca3e95 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -308,7 +308,7 @@ lint-php: check ! -name "*.xml" ! -name "*.xml.sample" ! -name "*.eot" \ ! -name "*.svg" ! -name "*.woff" ! -name "*.woff2" \ ! -name "*.otf" ! -name "*.png" ! -name "*.js" ! -name "*.md" \ - ! -name "*.scss" ! -name "*.py" ! -name "*.ttf" \ + ! -name "*.scss" ! -name "*.py" ! -name "*.ttf" ! -name "*.txz" \ ! -name "*.tgz" ! -name "*.xml.dist" ! -name "*.sh" \ -type f -print0 | xargs -0 -n1 php -l From 8793d16effea39a8f05affb7f5b2a0437bd7668e Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Fri, 5 Feb 2021 10:01:14 +0100 Subject: [PATCH 07/36] Framework: allow manual PLUGINSDIR and use it everywhere --- Mk/plugins.mk | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Mk/plugins.mk b/Mk/plugins.mk index 48bca3e95..ac202ae30 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -1,4 +1,4 @@ -# Copyright (c) 2015-2020 Franco Fichtner +# Copyright (c) 2015-2021 Franco Fichtner # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -27,9 +27,9 @@ all: check .include "defaults.mk" -PLUGINSDIR= ${.CURDIR}/../.. -TEMPLATESDIR= ${PLUGINSDIR}/Templates +PLUGINSDIR?= ${.CURDIR}/../.. SCRIPTSDIR= ${PLUGINSDIR}/Scripts +TEMPLATESDIR= ${PLUGINSDIR}/Templates .if exists(${GIT}) && exists(${GITVERSION}) PLUGIN_COMMIT!= ${GITVERSION} @@ -333,7 +333,7 @@ style: check @: > ${.CURDIR}/.style.out .for STYLEDIR in ${STYLEDIRS} @if [ -d ${.CURDIR}/${STYLEDIR} ]; then \ - (phpcs --standard=${.CURDIR}/../../ruleset.xml \ + (phpcs --standard=${PLUGINSDIR}/ruleset.xml \ ${.CURDIR}/${STYLEDIR} || true) > \ ${.CURDIR}/.style.out; \ fi @@ -348,7 +348,7 @@ style: check style-fix: check .for STYLEDIR in ${STYLEDIRS} @if [ -d ${.CURDIR}/${STYLEDIR} ]; then \ - phpcbf --standard=${.CURDIR}/../../ruleset.xml \ + phpcbf --standard=${PLUGINSDIR}/ruleset.xml \ ${.CURDIR}/${STYLEDIR} || true; \ fi .endfor From 3e72b0f5b7d9d10a62e1d29e5887abce1e9d8ef2 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Mon, 8 Feb 2021 22:52:00 +0100 Subject: [PATCH 08/36] security/acme-client: fix missing "--ecc" parameter, closes #2223 --- security/acme-client/pkg-descr | 5 +++++ .../app/library/OPNsense/AcmeClient/LeValidation/Base.php | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr index ef9766b16..72ac1d1b4 100644 --- a/security/acme-client/pkg-descr +++ b/security/acme-client/pkg-descr @@ -8,6 +8,11 @@ WWW: https://github.com/acmesh-official/acme.sh Plugin Changelog ================ +2.4 + +Fixed: +* fix missing "--ecc" parameter when renewing ECC certs (#2223) + 2.3 Added: diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeValidation/Base.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeValidation/Base.php index 5f2eb9169..a541584ac 100644 --- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeValidation/Base.php +++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeValidation/Base.php @@ -137,7 +137,7 @@ abstract class Base extends \OPNsense\AcmeClient\LeCommon if ($this->cert_keylength == 'ec256' || $this->cert_keylength == 'ec384') { if ($renew == true) { // If it's a renew then pass --ecc to acme client to locate the correct cert directory - $acme_args[] = '--ecc'; + $this->acme_args[] = '--ecc'; } } From 4593ef3f9f6c248aa804181f4b09d5d62c8ffe61 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Mon, 8 Feb 2021 22:54:26 +0100 Subject: [PATCH 09/36] security/acme-client: bump version --- security/acme-client/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/security/acme-client/Makefile b/security/acme-client/Makefile index 86b2e519e..86b992e8d 100644 --- a/security/acme-client/Makefile +++ b/security/acme-client/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= acme-client -PLUGIN_VERSION= 2.3 +PLUGIN_VERSION= 2.4 PLUGIN_COMMENT= Let's Encrypt client PLUGIN_MAINTAINER= opnsense@moov.de PLUGIN_DEPENDS= acme.sh py${PLUGIN_PYTHON}-dns-lexicon From 7fafce17c13a20a0fb4915e6fd6eb24018a96449 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 11 Feb 2021 09:12:33 +0100 Subject: [PATCH 10/36] security/tor: close enough, eh?! --- security/tor/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/security/tor/Makefile b/security/tor/Makefile index c1ae5fbb8..32b6d40eb 100644 --- a/security/tor/Makefile +++ b/security/tor/Makefile @@ -3,6 +3,6 @@ PLUGIN_VERSION= 1.8 PLUGIN_REVISION= 1 PLUGIN_COMMENT= The Onion Router PLUGIN_DEPENDS= tor ruby -PLUGIN_MAINTAINER= ranz.fabian.94@gmail.com +PLUGIN_MAINTAINER= franz.fabian.94@gmail.com .include "../../Mk/plugins.mk" From 5897bee7bea103cedb15043ad354accce9c119cf Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 11 Feb 2021 10:40:50 +0100 Subject: [PATCH 11/36] security/acme-client: use mod_deflate PR: https://forum.opnsense.org/index.php?topic=21432.0 --- .../templates/OPNsense/AcmeClient/lighttpd-acme-challenge.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/security/acme-client/src/opnsense/service/templates/OPNsense/AcmeClient/lighttpd-acme-challenge.conf b/security/acme-client/src/opnsense/service/templates/OPNsense/AcmeClient/lighttpd-acme-challenge.conf index d88517cad..c5746dddf 100644 --- a/security/acme-client/src/opnsense/service/templates/OPNsense/AcmeClient/lighttpd-acme-challenge.conf +++ b/security/acme-client/src/opnsense/service/templates/OPNsense/AcmeClient/lighttpd-acme-challenge.conf @@ -10,7 +10,7 @@ server.network-backend = "writev" #server.use-ipv6 = "enable" # modules to load -server.modules = ( "mod_access", "mod_expire", "mod_compress", "mod_redirect", +server.modules = ( "mod_access", "mod_expire", "mod_deflate", "mod_redirect", "mod_alias", "mod_rewrite" ) From 3a029db4000584f51422b1f5e2d91c3bab5f64a8 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Fri, 12 Feb 2021 23:01:32 +0100 Subject: [PATCH 12/36] security/acme-client: fix log file location, closes #2227 --- security/acme-client/pkg-descr | 1 + .../opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php | 2 ++ 2 files changed, 3 insertions(+) diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr index 72ac1d1b4..bacc33ad1 100644 --- a/security/acme-client/pkg-descr +++ b/security/acme-client/pkg-descr @@ -12,6 +12,7 @@ Plugin Changelog Fixed: * fix missing "--ecc" parameter when renewing ECC certs (#2223) +* fix log file location (#2227) 2.3 diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php index c3ae40817..0a6fbba49 100644 --- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php +++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php @@ -123,6 +123,8 @@ abstract class LeCommon // Store config objects $this->config = $obj; $this->model = $model; + // Set log file + $this->acme_args[] = LeUtils::execSafe('--log %s', self::ACME_LOG_FILE); return true; } From 988829bdd0f98c59188cccefe1c4fdfe34f6fe80 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Mon, 15 Feb 2021 00:55:26 +0100 Subject: [PATCH 13/36] security/acme-client: revamp logs page --- security/acme-client/pkg-descr | 9 ++ .../src/etc/inc/plugins.inc.d/acmeclient.inc | 9 ++ .../OPNsense/AcmeClient/LogsController.php | 45 ++++++ .../library/OPNsense/AcmeClient/LeCommon.php | 12 +- .../models/OPNsense/AcmeClient/Menu/Menu.xml | 5 +- .../app/views/OPNsense/AcmeClient/logs.volt | 130 ++++++++++++++++++ .../systemhealth/logformats/acmeclient.py | 63 +++++++++ .../src/www/diag_logs_acmeclient.php | 7 - .../www/diag_logs_template_acme-client.inc | 117 ---------------- 9 files changed, 270 insertions(+), 127 deletions(-) create mode 100644 security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/LogsController.php create mode 100644 security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/logs.volt create mode 100755 security/acme-client/src/opnsense/scripts/systemhealth/logformats/acmeclient.py delete mode 100644 security/acme-client/src/www/diag_logs_acmeclient.php delete mode 100644 security/acme-client/src/www/diag_logs_template_acme-client.inc diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr index bacc33ad1..2d89753b0 100644 --- a/security/acme-client/pkg-descr +++ b/security/acme-client/pkg-descr @@ -10,9 +10,18 @@ Plugin Changelog 2.4 +Added: +* add new page to show AcmeClient entries from system log + Fixed: * fix missing "--ecc" parameter when renewing ECC certs (#2223) * fix log file location (#2227) +* fix GUI log formatting (by using the syslog log) + +Changed: +* let acme.sh log through syslog +* revamp logs page, move acme.sh log to a sub tab +* remove legacy logs page 2.3 diff --git a/security/acme-client/src/etc/inc/plugins.inc.d/acmeclient.inc b/security/acme-client/src/etc/inc/plugins.inc.d/acmeclient.inc index a210c2f85..801a1fb07 100644 --- a/security/acme-client/src/etc/inc/plugins.inc.d/acmeclient.inc +++ b/security/acme-client/src/etc/inc/plugins.inc.d/acmeclient.inc @@ -71,6 +71,15 @@ function acmeclient_services() return $services; } +function acmeclient_syslog() +{ + $logfacilities = array(); + $logfacilities['acmeclient'] = array( + 'facility' => array('acmeclient', 'acme.sh') + ); + return $logfacilities; +} + /** * NOTE: Does NOT support configuration sync (xmlrpc). The required acme.sh * state files are missing on the secondary node and thus all attempts diff --git a/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/LogsController.php b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/LogsController.php new file mode 100644 index 000000000..927e31f9d --- /dev/null +++ b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/LogsController.php @@ -0,0 +1,45 @@ +view->pick('OPNsense/AcmeClient/logs'); + } +} diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php index 0a6fbba49..151445d0c 100644 --- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php +++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCommon.php @@ -123,8 +123,6 @@ abstract class LeCommon // Store config objects $this->config = $obj; $this->model = $model; - // Set log file - $this->acme_args[] = LeUtils::execSafe('--log %s', self::ACME_LOG_FILE); return true; } @@ -155,26 +153,36 @@ abstract class LeCommon switch ($loglevel) { case 'extended': + $this->acme_args[] = '--syslog 6'; $this->acme_args[] = '--log-level 2'; $this->debug = false; break; case 'debug': + $this->acme_args[] = '--syslog 7'; $this->acme_args[] = '--debug'; $this->debug = true; break; case 'debug2': + $this->acme_args[] = '--syslog 7'; $this->acme_args[] = '--debug 2'; $this->debug = true; break; case 'debug3': + $this->acme_args[] = '--syslog 7'; $this->acme_args[] = '--debug 3'; $this->debug = true; break; default: + $this->acme_args[] = '--syslog 6'; $this->acme_args[] = '--log-level 1'; $this->debug = false; break; } + + // Set log file + // NOTE: This log file is no longer exposed to the GUI. However, it may + // still turn out to be useful for debug purposes in rare egde cases. + $this->acme_args[] = LeUtils::execSafe('--log %s', self::ACME_LOG_FILE); } /** diff --git a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/Menu/Menu.xml b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/Menu/Menu.xml index 79a8f7cf8..33a92cfb5 100644 --- a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/Menu/Menu.xml +++ b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/Menu/Menu.xml @@ -9,7 +9,10 @@ - + + + + diff --git a/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/logs.volt b/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/logs.volt new file mode 100644 index 000000000..ae057bc86 --- /dev/null +++ b/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/logs.volt @@ -0,0 +1,130 @@ +{# + # Copyright (c) 2019 Deciso B.V. + # All rights reserved. + # + # Redistribution and use in source and binary forms, with or without modification, + # are permitted provided that the following conditions are met: + # + # 1. Redistributions of source code must retain the above copyright notice, + # this list of conditions and the following disclaimer. + # + # 2. Redistributions in binary form must reproduce the above copyright notice, + # this list of conditions and the following disclaimer in the documentation + # and/or other materials provided with the distribution. + # + # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + # AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + # AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + # POSSIBILITY OF SUCH DAMAGE. + #} + + + + + + +
+ +
+
+
+ + + + + + + + + + +
{{ lang._('Date') }}{{ lang._('Process') }}{{ lang._('Line') }}
+
+
+
+ +
+
+
+ + + + + + + + + + +
{{ lang._('Date') }}{{ lang._('Process') }}{{ lang._('Line') }}
+
+
+
+ +
diff --git a/security/acme-client/src/opnsense/scripts/systemhealth/logformats/acmeclient.py b/security/acme-client/src/opnsense/scripts/systemhealth/logformats/acmeclient.py new file mode 100755 index 000000000..a311773ec --- /dev/null +++ b/security/acme-client/src/opnsense/scripts/systemhealth/logformats/acmeclient.py @@ -0,0 +1,63 @@ +""" + Copyright (c) 2021 Frank Wall + Copyright (c) 2020 Ad Schellevis + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. +""" +import re +import datetime +from . import BaseLogFormat + +class AcmeclientLogFormat(BaseLogFormat): + def __init__(self, filename): + super(AcmeclientLogFormat, self).__init__(filename) + # XXX This is ugly, but it's the only way to override the line() method. + self._priority = 1 + self._startup_timestamp = datetime.datetime.now() + + def match(self, line): + return self._filename.find('acmeclient') > -1 and len(line) > 15 and re.match(r'(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)', line[7:15]) + + def timestamp(self, line): + # syslog format, strip timestamp and return actual log data + ts = datetime.datetime.strptime("%s %s" % (self._startup_timestamp.year, line[0:15]), "%Y %b %d %H:%M:%S") + ts = ts.replace(year=self._startup_timestamp.year) + if (self._startup_timestamp - ts).days < 0: + # likely previous year, (month for this year not reached yet) + ts = ts.replace(year=ts.year - 1) + return ts.isoformat() + + @staticmethod + def line(line): + # parse [date] [hostname] [process_name] [line] format + response = line[16:] + tmp = response.find(':') + pre = response[tmp+1:].strip() if tmp > -1 else response[response.find(' ')+1:].strip() + # strip the duplicate date from the line + return pre[30:].strip() + + @staticmethod + def process_name(line): + response = line[16:] + tmp = response.find(':') + return response[:tmp].strip().split()[-1] if tmp > -1 else "" diff --git a/security/acme-client/src/www/diag_logs_acmeclient.php b/security/acme-client/src/www/diag_logs_acmeclient.php deleted file mode 100644 index e5d406e95..000000000 --- a/security/acme-client/src/www/diag_logs_acmeclient.php +++ /dev/null @@ -1,7 +0,0 @@ - - * Copyright (C) 2004-2009 Scott Ullrich - * Copyright (C) 2003-2004 Manuel Kasper - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -require_once("guiconfig.inc"); -require_once("system.inc"); -require_once("interfaces.inc"); - -/* expects $logfile to point to the system path */ -/* expects $logclog to be true or false */ - -require_once 'diag_logs_common.inc'; - -$filtertext = ''; -$nentries = 50; - -if (isset($config['syslog']['nentries'])) { - $nentries = $config['syslog']['nentries']; -} - -if (!empty($_POST['clear'])) { - if ($logclog) { - system_clear_clog($logfile); - } else { - system_clear_log($logfile); - } -} - -if (isset($_POST['filtertext'])) { - $filtertext = $_POST['filtertext']; -} - -include("head.inc"); -?> - - - -
-
-
-
-

-

-
-
- -
-
-

-
- - - - - - - - - - - - - - -
- -
-
- - - - -
-
-
-
-
-
-
- From 82f54924915d8e71756f18cea795d6f130ed9dfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9?= <34602360+opnsenseuser@users.noreply.github.com> Date: Mon, 15 Feb 2021 08:47:44 +0100 Subject: [PATCH 14/36] Themes Cicada/Vicuna/Tukan updates (#2238) a few color fixes for Cicada a few color fixes and traffic widget color fix for vicuna a few color fixes for sensei and "pick a color" fix for Tukan --- misc/theme-cicada/Makefile | 2 +- .../cicada/assets/stylesheets/main.scss | 266 +++++------------- .../www/themes/cicada/build/css/main.css | 18 +- .../build/css/pick-a-color-1.2.3.min.css | 2 +- misc/theme-tukan/Makefile | 2 +- .../themes/tukan/assets/stylesheets/main.scss | 4 + .../www/themes/tukan/build/css/main.css | 4 + .../build/css/pick-a-color-1.2.3.min.css | 86 ++++++ misc/theme-vicuna/Makefile | 2 +- .../vicuna/assets/stylesheets/main.scss | 12 +- .../vicuna/assets/stylesheets/tokenizer2.scss | 2 +- .../www/themes/vicuna/build/css/main.css | 12 +- .../www/themes/vicuna/build/css/nv.d3.css | 5 - .../build/css/pick-a-color-1.2.3.min.css | 2 +- .../www/themes/vicuna/build/css/tokenize2.css | 2 +- 15 files changed, 199 insertions(+), 222 deletions(-) create mode 100644 misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/pick-a-color-1.2.3.min.css diff --git a/misc/theme-cicada/Makefile b/misc/theme-cicada/Makefile index af5a7440a..bfe671f7d 100644 --- a/misc/theme-cicada/Makefile +++ b/misc/theme-cicada/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= theme-cicada -PLUGIN_VERSION= 1.26 +PLUGIN_VERSION= 1.27 PLUGIN_COMMENT= The cicada theme - dark grey PLUGIN_MAINTAINER= rene@team-rebellion.net diff --git a/misc/theme-cicada/src/opnsense/www/themes/cicada/assets/stylesheets/main.scss b/misc/theme-cicada/src/opnsense/www/themes/cicada/assets/stylesheets/main.scss index 8621584cd..2e4f3edf7 100644 --- a/misc/theme-cicada/src/opnsense/www/themes/cicada/assets/stylesheets/main.scss +++ b/misc/theme-cicada/src/opnsense/www/themes/cicada/assets/stylesheets/main.scss @@ -3495,297 +3495,231 @@ input { select { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] select { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } textarea { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] textarea { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="text"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="text"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="password"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="password"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="datetime"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="datetime"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="datetime-local"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="datetime-local"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="date"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="date"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="month"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="month"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="time"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="time"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="week"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="week"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="number"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="number"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="email"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="email"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="url"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="url"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="search"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="search"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="tel"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="tel"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } input[type="color"] { &[disabled], &[readonly] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } } fieldset[disabled] input[type="color"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none !important; border-color: #191919; } select { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3794,9 +3728,7 @@ select { fieldset[disabled]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3805,9 +3737,7 @@ fieldset[disabled]:hover { textarea { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3816,9 +3746,7 @@ textarea { fieldset[disabled]:hover textarea:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3827,9 +3755,7 @@ fieldset[disabled]:hover textarea:hover { input[type="text"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3838,9 +3764,7 @@ input[type="text"] { fieldset[disabled]:hover input[type="text"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3849,9 +3773,7 @@ fieldset[disabled]:hover input[type="text"]:hover { input[type="password"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3860,9 +3782,7 @@ input[type="password"] { fieldset[disabled]:hover input[type="password"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3871,9 +3791,7 @@ fieldset[disabled]:hover input[type="password"]:hover { input[type="datetime"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3882,9 +3800,7 @@ input[type="datetime"] { fieldset[disabled]:hover input[type="datetime"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3893,9 +3809,7 @@ fieldset[disabled]:hover input[type="datetime"]:hover { input[type="datetime-local"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3904,9 +3818,7 @@ input[type="datetime-local"] { fieldset[disabled]:hover input[type="datetime-local"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3915,9 +3827,7 @@ fieldset[disabled]:hover input[type="datetime-local"]:hover { input[type="date"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3926,9 +3836,7 @@ input[type="date"] { fieldset[disabled]:hover input[type="date"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3937,9 +3845,7 @@ fieldset[disabled]:hover input[type="date"]:hover { input[type="month"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3948,9 +3854,7 @@ input[type="month"] { fieldset[disabled]:hover input[type="month"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3959,9 +3863,7 @@ fieldset[disabled]:hover input[type="month"]:hover { input[type="time"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3970,9 +3872,7 @@ input[type="time"] { fieldset[disabled]:hover input[type="time"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3981,9 +3881,7 @@ fieldset[disabled]:hover input[type="time"]:hover { input[type="week"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -3992,9 +3890,7 @@ input[type="week"] { fieldset[disabled]:hover input[type="week"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4003,9 +3899,7 @@ fieldset[disabled]:hover input[type="week"]:hover { input[type="number"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4014,9 +3908,7 @@ input[type="number"] { fieldset[disabled]:hover input[type="number"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4025,9 +3917,7 @@ fieldset[disabled]:hover input[type="number"]:hover { input[type="email"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4036,9 +3926,7 @@ input[type="email"] { fieldset[disabled]:hover input[type="email"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4047,9 +3935,7 @@ fieldset[disabled]:hover input[type="email"]:hover { input[type="url"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4058,9 +3944,7 @@ input[type="url"] { fieldset[disabled]:hover input[type="url"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4069,9 +3953,7 @@ fieldset[disabled]:hover input[type="url"]:hover { input[type="search"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4080,9 +3962,7 @@ input[type="search"] { fieldset[disabled]:hover input[type="search"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4091,9 +3971,7 @@ fieldset[disabled]:hover input[type="search"]:hover { input[type="tel"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4102,9 +3980,7 @@ input[type="tel"] { fieldset[disabled]:hover input[type="tel"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4113,9 +3989,7 @@ fieldset[disabled]:hover input[type="tel"]:hover { input[type="color"] { &[disabled]:hover, &[readonly]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -4124,9 +3998,7 @@ input[type="color"] { fieldset[disabled]:hover input[type="color"]:hover { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity = 80); + background-color: none; border: 1px solid #191919; -webkit-box-shadow: none; box-shadow: none; @@ -10411,10 +10283,10 @@ label > input { .ipsec-tab { background-color: #3a3a3a !important; - color: #928873 !important; + color: #FFF !important; &.activetab { - background-color: #262626 !important; + background-color: #2d2d2d !important; color: #dd630d !important; } } @@ -10752,7 +10624,7 @@ ul.jqtree-tree { } .interface-table { - background-color: #242424 !important; + background-color: #191919 !important; } .modal-side-settings { @@ -10767,3 +10639,7 @@ ul.jqtree-tree { background-color: #d77610 !important; color: #FFF !important; } + +.table.border { + border: 1px solid #191919 !important; +} diff --git a/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/main.css b/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/main.css index 59211a51f..919e308ea 100644 --- a/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/main.css +++ b/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/main.css @@ -2472,9 +2472,7 @@ input[type="color"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity=80); + background-color: none !important; border-color: #191919; } select[disabled]:hover, select[readonly]:hover, fieldset[disabled]:hover, @@ -2526,9 +2524,7 @@ input[type="color"] { cursor: not-allowed; - background-color: #686868; - opacity: 0.8; - filter: alpha(opacity=80); + background-color: none; border:1px solid #191919; -webkit-box-shadow: none; box-shadow: none; } @@ -6331,11 +6327,11 @@ label > input[type="radio"] { #ipsec .ipsec-tab { background-color: #3a3a3a !important; - color: #928873 !important; + color: #FFF !important; } #ipsec .ipsec-tab.activetab { - background-color: #262626 !important; + background-color: #2d2d2d !important; color: #dd630d !important; } .fw_pass { @@ -6605,7 +6601,7 @@ ul.jqtree-tree .jqtree-title { } .interface-table { - background-color: #242424 !important; + background-color: #191919 !important; } .modal-side-settings { @@ -6620,3 +6616,7 @@ ul.jqtree-tree .jqtree-title { background-color: #d77610 !important; color: #FFF !important; } + +.table.border { + border: 1px solid #191919 !important; +} diff --git a/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/pick-a-color-1.2.3.min.css b/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/pick-a-color-1.2.3.min.css index 91c803374..8010d43e5 100644 --- a/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/pick-a-color-1.2.3.min.css +++ b/misc/theme-cicada/src/opnsense/www/themes/cicada/build/css/pick-a-color-1.2.3.min.css @@ -22,7 +22,7 @@ .pick-a-color-markup .color-menu .color-preview.violet{background-color:#ee81ee} .pick-a-color-markup .color-menu .color-preview.purple{background-color:#80007f} .pick-a-color-markup .color-menu .color-preview.black{background-color:#000} -.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{padding:5px 15px 3px 15px;cursor:default;min-height:25px;color:#fff}.pick-a-color-markup .color-menu .basicColors-content li>a:hover,.pick-a-color-markup .color-menu .savedColors-content li>a:hover{background-color:transparent} +.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{padding:5px 15px 3px 15px;cursor:default;min-height:25px;color:#fff}.pick-a-color-markup .color-menu .basicColors-content li>a:hover,.pick-a-color-markup .color-menu .savedColors-content li>a:hover{background-color:none} @media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{min-height:40px}} .pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{color:#dd630d;background-image:none;filter:none;text-decoration:none;font-weight:bold}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{background-color:#fff;font-weight:normal}} .pick-a-color-markup .color-menu .btn.color-select{margin:0px 5px;height:20px;padding:0px 5px;margin-top:0px;line-height:1.5px;border-radius:4px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .btn.color-select{height:35px}} diff --git a/misc/theme-tukan/Makefile b/misc/theme-tukan/Makefile index ef96f6a11..9408a172a 100644 --- a/misc/theme-tukan/Makefile +++ b/misc/theme-tukan/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= theme-tukan -PLUGIN_VERSION= 1.23 +PLUGIN_VERSION= 1.24 PLUGIN_COMMENT= The tukan theme - blue/white PLUGIN_MAINTAINER= rene@team-rebellion.net diff --git a/misc/theme-tukan/src/opnsense/www/themes/tukan/assets/stylesheets/main.scss b/misc/theme-tukan/src/opnsense/www/themes/tukan/assets/stylesheets/main.scss index fffb043fd..9319aaa62 100644 --- a/misc/theme-tukan/src/opnsense/www/themes/tukan/assets/stylesheets/main.scss +++ b/misc/theme-tukan/src/opnsense/www/themes/tukan/assets/stylesheets/main.scss @@ -10679,3 +10679,7 @@ input[type="checkbox"] { label.btn.au-target { color: #FFF !important; } + +.table.border { + border: 1px solid #bdbdbd; +} diff --git a/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/main.css b/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/main.css index 36f257724..df4a0ea04 100644 --- a/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/main.css +++ b/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/main.css @@ -6513,3 +6513,7 @@ input[type="checkbox"].checkbox-switch:checked + i::before, input[type="checkbox label.btn.au-target { color: #FFF !important; } + +.table.border { + border: 1px solid #bdbdbd; +} diff --git a/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/pick-a-color-1.2.3.min.css b/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/pick-a-color-1.2.3.min.css new file mode 100644 index 000000000..0606f04c5 --- /dev/null +++ b/misc/theme-tukan/src/opnsense/www/themes/tukan/build/css/pick-a-color-1.2.3.min.css @@ -0,0 +1,86 @@ + +.pick-a-color-markup *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box} +.pick-a-color-markup .hex-pound{padding-left:8px;padding-right:8px}@media screen and (max-width:991px){.pick-a-color-markup .hex-pound{padding:3px 5px 0px 5px;min-height:30px}} +.pick-a-color-markup .pick-a-color{padding:5px}@media screen and (max-width:991px){.pick-a-color-markup .pick-a-color{width:100%;font-size:18px;padding:9px;min-width:222px;height:47px}} +.pick-a-color-markup .input-group-btn .color-dropdown{padding:6px 5px}.pick-a-color-markup .input-group-btn .color-dropdown.no-hex{border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .input-group-btn .color-dropdown:focus{background-color:#fff} +@media screen and (max-width:991px){.pick-a-color-markup .input-group-btn .color-dropdown{height:47px}} +.pick-a-color-markup .color-preview{border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 0 2px 2px rgba(0,0,0,0.075);box-shadow:inset 0 0 2px 2px rgba(0,0,0,0.075);height:1.429em;width:1.429em;display:inline-block;cursor:pointer;margin-right:5px}.pick-a-color-markup .color-preview.current-color{margin-bottom:-5px} +@media screen and (max-width:991px){.pick-a-color-markup .color-preview{height:1.875em;width:1.875em}} +.pick-a-color-markup .color-menu{text-align:left;padding:5px 0px;width:330px;font-size:14px;left:auto;}.pick-a-color-markup .color-menu.color-menu--inline{left:-285px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu.color-menu--inline{left:-242px}} +@media screen and (max-width:991px){.pick-a-color-markup .color-menu{left:-242px;width:293px}}.pick-a-color-markup .color-menu.small{width:100px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu.small{left:-105px}} +.pick-a-color-markup .color-menu.no-hex{left:0px} +.pick-a-color-markup .color-menu ul{padding:0px;margin:0px} +.pick-a-color-markup .color-menu li{list-style-type:none;padding:5px 0px;margin:0px} +.pick-a-color-markup .color-menu .color-preview{vertical-align:middle;margin:0px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .color-preview{height:35px;width:35px}}.pick-a-color-markup .color-menu .color-preview.current-color,.pick-a-color-markup .color-menu .color-preview.white{background-color:#fff} +.pick-a-color-markup .color-menu .color-preview.red{background-color:#f00} +.pick-a-color-markup .color-menu .color-preview.orange{background-color:#f60} +.pick-a-color-markup .color-menu .color-preview.yellow{background-color:#ff0} +.pick-a-color-markup .color-menu .color-preview.green{background-color:#008000} +.pick-a-color-markup .color-menu .color-preview.blue{background-color:#00f} +.pick-a-color-markup .color-menu .color-preview.indigo{background-color:#4a0080} +.pick-a-color-markup .color-menu .color-preview.violet{background-color:#ee81ee} +.pick-a-color-markup .color-menu .color-preview.purple{background-color:#80007f} +.pick-a-color-markup .color-menu .color-preview.black{background-color:#000} +.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{padding:5px 15px 3px 15px;cursor:default;min-height:25px;color:#FFF}.pick-a-color-markup .color-menu .basicColors-content li>a:hover,.pick-a-color-markup .color-menu .savedColors-content li>a:hover{background-color:none} +@media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{min-height:40px}} +.pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{color:#FFF;background-image:none;filter:none;text-decoration:none;font-weight:bold}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{background-color:#fff;font-weight:normal}} +.pick-a-color-markup .color-menu .btn.color-select{margin:0px 5px;height:20px;padding:0px 5px;margin-top:0px;line-height:1.5px;border-radius:4px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .btn.color-select{height:35px}} +.pick-a-color-markup .caret{margin-bottom:3px;color: #000;} +.pick-a-color-markup .color-menu-instructions,.pick-a-color-markup .advanced-instructions{text-align:center;padding:0px 6px;margin:0px;font-size:14px;font-weight:normal}@media screen and (min-width:992px){.pick-a-color-markup .color-menu-instructions,.pick-a-color-markup .advanced-instructions{display:none}} +.pick-a-color-markup .color-label{vertical-align:middle;margin:0px;margin-left:10px;cursor:pointer}@media screen and (max-width:991px){.pick-a-color-markup .color-label{margin-left:8px}} +.pick-a-color-markup .color-box{height:20px;width:200px;position:absolute;left:115px;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 0 2px 2px rgba(0,0,0,0.075);box-shadow:inset 0 0 2px 2px rgba(0,0,0,0.075);cursor:pointer}@media screen and (max-width:991px){.pick-a-color-markup .color-box{width:160px;height:35px}} +.pick-a-color-markup .black .highlight-band-stripe{background-color:#fff} +.pick-a-color-markup .spectrum-white{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#fff), to(#808080));background-image:-webkit-linear-gradient(left, color-stop(#fff 0), color-stop(#808080 100%));background-image:-moz-linear-gradient(left, #fff 0, #808080 100%);background-image:linear-gradient(to right, #fff 0, #808080 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ff808080', GradientType=1)}.pick-a-color-markup .spectrum-white .highlight-band{left:0px} +.pick-a-color-markup .spectrum-red{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(.5, #f00), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #fff 0, #f00 50%, #000 100%);background-image:-webkit-linear-gradient(left, #fff 0, #f00 50%, #000 100%);background-image:-o-linear-gradient(left, #fff 0, #f00 50%, #000 100%);background-image:linear-gradient(to right, #fff 0, #f00 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-orange{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(.5, #f60), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #fff 0, #f60 50%, #000 100%);background-image:-webkit-linear-gradient(left, #fff 0, #f60 50%, #000 100%);background-image:-o-linear-gradient(left, #fff 0, #f60 50%, #000 100%);background-image:linear-gradient(to right, #fff 0, #f60 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-yellow{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(.5, #ff0), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #fff 0, #ff0 50%, #000 100%);background-image:-webkit-linear-gradient(left, #fff 0, #ff0 50%, #000 100%);background-image:-o-linear-gradient(left, #fff 0, #ff0 50%, #000 100%);background-image:linear-gradient(to right, #fff 0, #ff0 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-green{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #80ff80), color-stop(.5, #008000), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #80ff80 0, #008000 50%, #000 100%);background-image:-webkit-linear-gradient(left, #80ff80 0, #008000 50%, #000 100%);background-image:-o-linear-gradient(left, #80ff80 0, #008000 50%, #000 100%);background-image:linear-gradient(to right, #80ff80 0, #008000 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-blue{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(.5, #00f), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #fff 0, #00f 50%, #000 100%);background-image:-webkit-linear-gradient(left, #fff 0, #00f 50%, #000 100%);background-image:-o-linear-gradient(left, #fff 0, #00f 50%, #000 100%);background-image:linear-gradient(to right, #fff 0, #00f 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-purple{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #ff80ff), color-stop(.5, #80007f), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #ff80ff 0, #80007f 50%, #000 100%);background-image:-webkit-linear-gradient(left, #ff80ff 0, #80007f 50%, #000 100%);background-image:-o-linear-gradient(left, #ff80ff 0, #80007f 50%, #000 100%);background-image:linear-gradient(to right, #ff80ff 0, #80007f 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .spectrum-black{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#000), to(#808080));background-image:-webkit-linear-gradient(left, color-stop(#000 0), color-stop(#808080 100%));background-image:-moz-linear-gradient(left, #000 0, #808080 100%);background-image:linear-gradient(to right, #000 0, #808080 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff000000', endColorstr='#ff808080', GradientType=1)}.pick-a-color-markup .spectrum-black .highlight-band{left:0px;border:1px solid #808080} +.pick-a-color-markup .ie-spectrum{height:20px;width:100px;display:inline-block;top:-1}.pick-a-color-markup .ie-spectrum.hue{width:50.5px}@media screen and (max-width:991px){.pick-a-color-markup .ie-spectrum.hue{width:45.5px}} +@media screen and (max-width:991px){.pick-a-color-markup .ie-spectrum{width:80px;height:35px}} +.pick-a-color-markup .red-spectrum-0,.pick-a-color-markup .lightness-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#fff), to(#f00));background-image:-webkit-linear-gradient(left, color-stop(#fff 0), color-stop(#f00 100%));background-image:-moz-linear-gradient(left, #fff 0, #f00 100%);background-image:linear-gradient(to right, #fff 0, #f00 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffff0000', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .red-spectrum-1,.pick-a-color-markup .lightness-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#f00), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#f00 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #f00 0, #000 100%);background-image:linear-gradient(to right, #f00 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff0000', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .lightness-spectrum-0,.pick-a-color-markup .lightness-spectrum-1{width:150px}@media screen and (max-width:991px){.pick-a-color-markup .lightness-spectrum-0,.pick-a-color-markup .lightness-spectrum-1{width:135px}} +.pick-a-color-markup .orange-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#fff), to(#f60));background-image:-webkit-linear-gradient(left, color-stop(#fff 0), color-stop(#f60 100%));background-image:-moz-linear-gradient(left, #fff 0, #f60 100%);background-image:linear-gradient(to right, #fff 0, #f60 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffff6600', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .orange-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#f60), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#f60 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #f60 0, #000 100%);background-image:linear-gradient(to right, #f60 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff6600', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .yellow-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#fff), to(#ff0));background-image:-webkit-linear-gradient(left, color-stop(#fff 0), color-stop(#ff0 100%));background-image:-moz-linear-gradient(left, #fff 0, #ff0 100%);background-image:linear-gradient(to right, #fff 0, #ff0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffffff00', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .yellow-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#ff0), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#ff0 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #ff0 0, #000 100%);background-image:linear-gradient(to right, #ff0 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff00', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .green-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#80ff80), to(#008000));background-image:-webkit-linear-gradient(left, color-stop(#80ff80 0), color-stop(#008000 100%));background-image:-moz-linear-gradient(left, #80ff80 0, #008000 100%);background-image:linear-gradient(to right, #80ff80 0, #008000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff80ff80', endColorstr='#ff008000', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .green-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#008000), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#008000 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #008000 0, #000 100%);background-image:linear-gradient(to right, #008000 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff008000', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .blue-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#fff), to(#00f));background-image:-webkit-linear-gradient(left, color-stop(#fff 0), color-stop(#00f 100%));background-image:-moz-linear-gradient(left, #fff 0, #00f 100%);background-image:linear-gradient(to right, #fff 0, #00f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ff0000ff', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .blue-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#00f), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#00f 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #00f 0, #000 100%);background-image:linear-gradient(to right, #00f 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000ff', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .purple-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#ff80ff), to(#80007f));background-image:-webkit-linear-gradient(left, color-stop(#ff80ff 0), color-stop(#80007f 100%));background-image:-moz-linear-gradient(left, #ff80ff 0, #80007f 100%);background-image:linear-gradient(to right, #ff80ff 0, #80007f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff80ff', endColorstr='#ff80007f', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .purple-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#80007f), to(#000));background-image:-webkit-linear-gradient(left, color-stop(#80007f 0), color-stop(#000 100%));background-image:-moz-linear-gradient(left, #80007f 0, #000 100%);background-image:linear-gradient(to right, #80007f 0, #000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff80007f', endColorstr='#ff000000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px} +.pick-a-color-markup .saturation-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#808080), to(#bf4040));background-image:-webkit-linear-gradient(left, color-stop(#808080 0), color-stop(#bf4040 100%));background-image:-moz-linear-gradient(left, #808080 0, #bf4040 100%);background-image:linear-gradient(to right, #808080 0, #bf4040 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff808080', endColorstr='#ffbf4040', GradientType=1);border-bottom-left-radius:4px;border-top-left-radius:4px;width:150px}@media screen and (max-width:991px){.pick-a-color-markup .saturation-spectrum-0{width:135px}} +.pick-a-color-markup .saturation-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#bf4040), to(#f00));background-image:-webkit-linear-gradient(left, color-stop(#bf4040 0), color-stop(#f00 100%));background-image:-moz-linear-gradient(left, #bf4040 0, #f00 100%);background-image:linear-gradient(to right, #bf4040 0, #f00 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffbf4040', endColorstr='#ffff0000', GradientType=1);border-bottom-right-radius:4px;border-top-right-radius:4px;width:150px}@media screen and (max-width:991px){.pick-a-color-markup .saturation-spectrum-1{width:135px}} +.pick-a-color-markup .hue-spectrum-0{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#f00), to(#ff0));background-image:-webkit-linear-gradient(left, color-stop(#f00 0), color-stop(#ff0 100%));background-image:-moz-linear-gradient(left, #f00 0, #ff0 100%);background-image:linear-gradient(to right, #f00 0, #ff0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff0000', endColorstr='#ffffff00', GradientType=1)} +.pick-a-color-markup .hue-spectrum-1{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#ff0), to(#0f0));background-image:-webkit-linear-gradient(left, color-stop(#ff0 0), color-stop(#0f0 100%));background-image:-moz-linear-gradient(left, #ff0 0, #0f0 100%);background-image:linear-gradient(to right, #ff0 0, #0f0 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff00', endColorstr='#ff00ff00', GradientType=1)} +.pick-a-color-markup .hue-spectrum-2{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#0f0), to(#0ff));background-image:-webkit-linear-gradient(left, color-stop(#0f0 0), color-stop(#0ff 100%));background-image:-moz-linear-gradient(left, #0f0 0, #0ff 100%);background-image:linear-gradient(to right, #0f0 0, #0ff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff00', endColorstr='#ff00ffff', GradientType=1);left:-1px;position:relative} +.pick-a-color-markup .hue-spectrum-3{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#0ff), to(#00f));background-image:-webkit-linear-gradient(left, color-stop(#0ff 0), color-stop(#00f 100%));background-image:-moz-linear-gradient(left, #0ff 0, #00f 100%);background-image:linear-gradient(to right, #0ff 0, #00f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ffff', endColorstr='#ff0000ff', GradientType=1);left:-1px;position:relative} +.pick-a-color-markup .hue-spectrum-4{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#00f), to(#f0f));background-image:-webkit-linear-gradient(left, color-stop(#00f 0), color-stop(#f0f 100%));background-image:-moz-linear-gradient(left, #00f 0, #f0f 100%);background-image:linear-gradient(to right, #00f 0, #f0f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000ff', endColorstr='#ffff00ff', GradientType=1);left:-1px;position:relative} +.pick-a-color-markup .hue-spectrum-5{background-image:-webkit-gradient(linear, 0 top, 100% top, from(#f0f), to(#f00));background-image:-webkit-linear-gradient(left, color-stop(#f0f 0), color-stop(#f00 100%));background-image:-moz-linear-gradient(left, #f0f 0, #f00 100%);background-image:linear-gradient(to right, #f0f 0, #f00 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00ff', endColorstr='#ffff0000', GradientType=1);left:-2px;position:relative} +.pick-a-color-markup .highlight-band{border:1px solid #222;border-radius:2px;-webkit-box-shadow:1px 1px 1px #333;box-shadow:1px 1px 1px #333;height:19px;width:11px;display:inline-block;cursor:pointer;cursor:-webkit-grab;cursor:-moz-grab;position:absolute;top:-1px;left:94.5px;text-align:center}@media screen and (max-width:991px){.pick-a-color-markup .highlight-band{width:21px;left:69.5px;height:34px}} +.pick-a-color-markup .highlight-band-stripe{min-height:80%;min-width:1px;background-color:#000;opacity:0.40;margin:2px 1px;display:inline-block;-webkit-box-shadow:1px 0 2px 0 #fff;box-shadow:1px 0 2px 0 #fff}@media screen and (max-width:991px){.pick-a-color-markup .highlight-band-stripe{margin:4px 2px}} +.pick-a-color-markup .color-menu-tabs{padding:5px 3px 3px 10px;font-size:12px;color:#333;border-bottom:1px solid #ccc;margin-bottom:5px}.pick-a-color-markup .color-menu-tabs .tab{padding:4px 5px;margin:5px;border-left:1px solid #fff;border-right:1px solid #fff;cursor:pointer;background-color:#fff}.pick-a-color-markup .color-menu-tabs .tab:hover{padding-bottom:6px;border-top:1px solid #ccc;border-right:1px solid #ccc;border-left:1px solid #ccc;border-top-right-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .color-menu-tabs a{color:#333;text-decoration:none} +.pick-a-color-markup .color-menu-tabs .tab-active{border-bottom:3px solid #fff;padding-bottom:5px;border-top:1px solid #ccc;border-right:1px solid #ccc;border-left:1px solid #ccc;border-top-right-radius:4px;border-top-left-radius:4px} +.pick-a-color-markup .active-content{display:block} +.pick-a-color-markup .inactive-content{display:none} +.pick-a-color-markup .savedColors-content{padding:5px 15px;white-space:normal}.pick-a-color-markup .savedColors-content li.color-item>a{margin-left:7px;padding-left:8px;border-radius:4px} +.pick-a-color-markup .saved-color-col{position:relative;left:-15px;float:left;width:149px}@media screen and (max-width:991px){.pick-a-color-markup .saved-color-col{width:130px}} +.pick-a-color-markup .advanced-content ul{margin-top:10px} +.pick-a-color-markup .advanced-content li{padding:5px 15px 3px 15px;cursor:default;min-height:25px;height:50px;position:relative}@media screen and (max-width:991px){.pick-a-color-markup .advanced-content li{min-height:70px}} +.pick-a-color-markup .advanced-content .color-preview{height:50px;width:300px;float:left;margin:0px 0px 10px 0px;background-color:#f00;text-align:center}.pick-a-color-markup .advanced-content .color-preview .color-select.btn.advanced{margin-top:15px;display:none}@media screen and (max-width:991px){.pick-a-color-markup .advanced-content .color-preview .color-select.btn.advanced{display:inline;margin-top:7px}} +.pick-a-color-markup .advanced-content .color-preview:hover .color-select.btn.advanced{display:inline} +@media screen and (max-width:991px){.pick-a-color-markup .advanced-content .color-preview{width:270px;margin-left:-10px}} +.pick-a-color-markup .advanced-content .spectrum-hue{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #f00), color-stop(17%, #ff0), color-stop(34%, #0f0), color-stop(51%, #0ff), color-stop(68%, #00f), color-stop(85%, #f0f), color-stop(100%, #f00));background-image:-moz-linear-gradient(left center, #f00 0, #ff0 17%, #0f0 24%, #0ff 51%, #00f 68%, #f0f 85%, #f00 100%);background-image:-webkit-linear-gradient(left, #f00 0, #ff0 17%, #0f0 24%, #0ff 51%, #00f 68%, #f0f 85%, #f00 100%);background-image:-o-linear-gradient(left, #f00 0, #ff0 17%, #0f0 24%, #0ff 51%, #00f 68%, #f0f 85%, #f00 100%);background-image:linear-gradient(to right, #f00 0, #ff0 17%, #0f0 24%, #0ff 51%, #00f 68%, #f0f 85%, #f00 100%);background-repeat:repeat-x}.pick-a-color-markup .advanced-content .spectrum-hue .highlight-band{left:0px} +.pick-a-color-markup .advanced-content .spectrum-lightness{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(.5, #f00), color-stop(1, #000));background-image:-moz-linear-gradient(left center, #fff 0, #f00 50%, #000 100%);background-image:-webkit-linear-gradient(left, #fff 0, #f00 50%, #000 100%);background-image:-o-linear-gradient(left, #fff 0, #f00 50%, #000 100%);background-image:linear-gradient(to right, #fff 0, #f00 50%, #000 100%);background-repeat:repeat-x} +.pick-a-color-markup .advanced-content .spectrum-saturation{background-image:-webkit-gradient(linear, left top, right top, color-stop(0, #808080), color-stop(.5, #f00), color-stop(1, #f00));background-image:-moz-linear-gradient(left center, #808080 0, #f00 50%, #f00 100%);background-image:-webkit-linear-gradient(left, #808080 0, #f00 50%, #f00 100%);background-image:-o-linear-gradient(left, #808080 0, #f00 50%, #f00 100%);background-image:linear-gradient(to right, #808080 0, #f00 50%, #f00 100%);background-repeat:repeat-x}.pick-a-color-markup .advanced-content .spectrum-saturation .highlight-band{left:287px}@media screen and (max-width:991px){.pick-a-color-markup .advanced-content .spectrum-saturation .highlight-band{left:247px}} +.pick-a-color-markup .advanced-content .spectrum-lightness .highlight-band{left:143.5px}@media screen and (max-width:991px){.pick-a-color-markup .advanced-content .spectrum-lightness .highlight-band{left:123.5px}} +.pick-a-color-markup .advanced-content .lightness-text,.pick-a-color-markup .advanced-content .hue-text,.pick-a-color-markup .advanced-content .saturation-text,.pick-a-color-markup .advanced-content .preview-text{vertical-align:middle;text-align:center;display:block} +.pick-a-color-markup .advanced-content .color-box{left:15px;top:25px;width:300px}@media screen and (max-width:991px){.pick-a-color-markup .advanced-content .color-box{width:270px;left:10px}} +.pick-a-color-markup .advanced-content .preview-item{height:80px} +@-moz-document url-prefix(){@media screen and (max-width:991px){div.pick-a-color-markup .color-menu{left:0px}}} diff --git a/misc/theme-vicuna/Makefile b/misc/theme-vicuna/Makefile index 4f2a6fac8..7c1be4db2 100644 --- a/misc/theme-vicuna/Makefile +++ b/misc/theme-vicuna/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= theme-vicuna -PLUGIN_VERSION= 1.2 +PLUGIN_VERSION= 1.3 PLUGIN_COMMENT= The vicuna theme - dark anthrazit PLUGIN_MAINTAINER= rene@team-rebellion.net diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/main.scss b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/main.scss index 4b118209c..3d05ec02f 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/main.scss +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/main.scss @@ -10434,12 +10434,14 @@ label > input { } .ipsec-tab { - background-color: #839caa !important; + background-color: #202f3a !important; color: #FFF !important; + opacity: 0.5; &.activetab { - background-color: #315a71 !important; - color: #FFF !important; + background-color: #202f3a !important; + color: #D77610 !important; + opacity: 1; } } } @@ -10760,3 +10762,7 @@ ul.jqtree-tree { background-color: #d77610 !important; color: #FFF !important; } + +.table.border { + border: 1px solid #181818 !important; +} diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/tokenizer2.scss b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/tokenizer2.scss index 4df1e1901..789bae6c2 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/tokenizer2.scss +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/assets/stylesheets/tokenizer2.scss @@ -38,7 +38,7 @@ > { .token { padding: 0 1.2em 0 5px; - background-color: #d7af10; + background-color: #d77610; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/main.css b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/main.css index f9406046c..8234f124a 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/main.css +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/main.css @@ -6333,13 +6333,15 @@ label > input[type="radio"] { } #ipsec .ipsec-tab { - background-color: #839caa !important; + background-color: #202f3a !important; color: #FFF !important; + opacity: 0.5; } #ipsec .ipsec-tab.activetab { - background-color: #315a71 !important; - color: #FFF !important; + background-color: #202f3a !important; + color: #D77610 !important; + opacity: 1; } .fw_pass { background-color: #203a23 !important; @@ -6577,3 +6579,7 @@ ul.jqtree-tree .jqtree-title { background-color: #d77610 !important; color: #FFF !important; } + +.table.border { + border: 1px solid #181818 !important; +} diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/nv.d3.css b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/nv.d3.css index 5f3eea002..ea4b9f5e0 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/nv.d3.css +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/nv.d3.css @@ -335,11 +335,6 @@ svg.nvd3-svg { fill-opacity: .7; } -circle.nv-legend-symbol { - fill: rgb(151, 151, 151) !important; - stroke: rgb(151, 151, 151) !important; -} - /********** * Print */ diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/pick-a-color-1.2.3.min.css b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/pick-a-color-1.2.3.min.css index 74517c454..8e3bcc16c 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/pick-a-color-1.2.3.min.css +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/pick-a-color-1.2.3.min.css @@ -22,7 +22,7 @@ .pick-a-color-markup .color-menu .color-preview.violet{background-color:#ee81ee} .pick-a-color-markup .color-menu .color-preview.purple{background-color:#80007f} .pick-a-color-markup .color-menu .color-preview.black{background-color:#000} -.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{padding:5px 15px 3px 15px;cursor:default;min-height:25px;color:#fff}.pick-a-color-markup .color-menu .basicColors-content li>a:hover,.pick-a-color-markup .color-menu .savedColors-content li>a:hover{background-color:transparent} +.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{padding:5px 15px 3px 15px;cursor:default;min-height:25px;color:#fff}.pick-a-color-markup .color-menu .basicColors-content li>a:hover,.pick-a-color-markup .color-menu .savedColors-content li>a:hover{background-color:none} @media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li>a,.pick-a-color-markup .color-menu .savedColors-content li>a{min-height:40px}} .pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{color:#dd630d;background-image:none;filter:none;text-decoration:none;font-weight:bold}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .basicColors-content li:hover a,.pick-a-color-markup .color-menu .savedColors-content li:hover a{background-color:#fff;font-weight:normal}} .pick-a-color-markup .color-menu .btn.color-select{margin:0px 5px;height:20px;padding:0px 5px;margin-top:0px;line-height:1.5px;border-radius:4px}@media screen and (max-width:991px){.pick-a-color-markup .color-menu .btn.color-select{height:35px}} diff --git a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/tokenize2.css b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/tokenize2.css index c2403aa47..f1fbdbbca 100644 --- a/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/tokenize2.css +++ b/misc/theme-vicuna/src/opnsense/www/themes/vicuna/build/css/tokenize2.css @@ -35,7 +35,7 @@ .tokenize > .tokens-container > .token { padding: 0 1.2em 0 5px; - background-color: #d7af10; + background-color: #d77610; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; From 4ab914ceaf4443bb222f72d14d69f930d13f6add Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 09:52:10 +0100 Subject: [PATCH 15/36] Framework: add revision bump helper and fix a typo --- Makefile | 2 +- Mk/plugins.mk | 5 ++++- Scripts/revbump.sh | 16 ++++++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100755 Scripts/revbump.sh diff --git a/Makefile b/Makefile index 6c21da0d9..82aa061e9 100644 --- a/Makefile +++ b/Makefile @@ -43,7 +43,7 @@ list: .endfor # shared targets that are sane to run from the root directory -TARGETS= clean lint style style-fix style-python sweep test +TARGETS= clean lint revision style style-fix style-python sweep test .for TARGET in ${TARGETS} ${TARGET}: diff --git a/Mk/plugins.mk b/Mk/plugins.mk index ac202ae30..56ff42e2d 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -325,7 +325,10 @@ sweep: check ! -name "*.ser" -type f -print0 | \ xargs -0 -n1 ${SCRIPTSDIR}/cleanfile find ${.CURDIR} -type f -depth 1 -print0 | \ - xargs -0 -n1 ${SCRIPTSDIRs/cleanfile + xargs -0 -n1 ${SCRIPTSDIR}/cleanfile + +revision: + ${SCRIPTSDIR}/revbump.sh ${.CURDIR} STYLEDIRS?= src/etc/inc src/opnsense diff --git a/Scripts/revbump.sh b/Scripts/revbump.sh new file mode 100755 index 000000000..135168df5 --- /dev/null +++ b/Scripts/revbump.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +set -e + +DIR=${1} + +if [ -z "${DIR}" ]; then + DIR=. +fi + +REV=$(make -C ${DIR} -V PLUGIN_REVISION) +REV=$(expr ${REV} \+ 1) + +grep -v ^PLUGIN_REVISION ${DIR}/Makefile > ${DIR}/Makefile.tmp +sed -e "s/^\(PLUGIN_VERSION.*\)/\1\nPLUGIN_REVISION= ${REV}/g" ${DIR}/Makefile.tmp > ${DIR}/Makefile +rm -f ${DIR}/Makefile.tmp From df1e33afa6f4f4659ca4d644cadb91acb8c27547 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 09:55:38 +0100 Subject: [PATCH 16/36] Framework: mute script invoke --- Mk/plugins.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mk/plugins.mk b/Mk/plugins.mk index 56ff42e2d..01a35264c 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -328,7 +328,7 @@ sweep: check xargs -0 -n1 ${SCRIPTSDIR}/cleanfile revision: - ${SCRIPTSDIR}/revbump.sh ${.CURDIR} + @${SCRIPTSDIR}/revbump.sh ${.CURDIR} STYLEDIRS?= src/etc/inc src/opnsense From 3e02a4c67c78c85b7583947841cee04583df6496 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:10:07 +0100 Subject: [PATCH 17/36] Framework: tedious work on FreeBSD... --- Scripts/revbump.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Scripts/revbump.sh b/Scripts/revbump.sh index 135168df5..120b0fce4 100755 --- a/Scripts/revbump.sh +++ b/Scripts/revbump.sh @@ -12,5 +12,6 @@ REV=$(make -C ${DIR} -V PLUGIN_REVISION) REV=$(expr ${REV} \+ 1) grep -v ^PLUGIN_REVISION ${DIR}/Makefile > ${DIR}/Makefile.tmp -sed -e "s/^\(PLUGIN_VERSION.*\)/\1\nPLUGIN_REVISION= ${REV}/g" ${DIR}/Makefile.tmp > ${DIR}/Makefile +sed -e "s/^\(PLUGIN_VERSION.*\)/\1%PLUGIN_REVISION= ${REV}/g" \ + ${DIR}/Makefile.tmp | tr '%' '\n' > ${DIR}/Makefile rm -f ${DIR}/Makefile.tmp From 96ffd1ec9071fce339e829fc5fa3b2dd2aaf8a9a Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:32:44 +0100 Subject: [PATCH 18/36] misc/theme-rebellion: revision bump --- misc/theme-rebellion/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/misc/theme-rebellion/Makefile b/misc/theme-rebellion/Makefile index d64b12ab9..97bd1578d 100644 --- a/misc/theme-rebellion/Makefile +++ b/misc/theme-rebellion/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= theme-rebellion PLUGIN_VERSION= 1.8.6 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= A suitably dark theme PLUGIN_MAINTAINER= team-rebellion@queens-park.com From 2782d51eae2cd5829c1cea65c35308e9f070d144 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:35:27 +0100 Subject: [PATCH 19/36] www: revision bump --- www/c-icap/Makefile | 1 + www/cache/Makefile | 1 + www/nginx/Makefile | 2 +- www/web-proxy-sso/Makefile | 2 +- www/web-proxy-useracl/Makefile | 2 +- 5 files changed, 5 insertions(+), 3 deletions(-) diff --git a/www/c-icap/Makefile b/www/c-icap/Makefile index ae60824d7..4d7407750 100644 --- a/www/c-icap/Makefile +++ b/www/c-icap/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= c-icap PLUGIN_VERSION= 1.7 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= c-icap connects the web proxy with a virus scanner PLUGIN_DEPENDS= c-icap c-icap-modules PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/www/cache/Makefile b/www/cache/Makefile index 65dbb3d28..4cb74de41 100644 --- a/www/cache/Makefile +++ b/www/cache/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= cache PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Webserver cache PLUGIN_DEPENDS= php${PLUGIN_PHP}-opcache PLUGIN_MAINTAINER= ad@opnsense.org diff --git a/www/nginx/Makefile b/www/nginx/Makefile index 94215b98e..c9df402b3 100644 --- a/www/nginx/Makefile +++ b/www/nginx/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= nginx PLUGIN_VERSION= 1.20 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Nginx HTTP server and reverse proxy PLUGIN_DEPENDS= nginx PLUGIN_MAINTAINER= franz.fabian.94@gmail.com diff --git a/www/web-proxy-sso/Makefile b/www/web-proxy-sso/Makefile index dabf63449..7eb73383a 100644 --- a/www/web-proxy-sso/Makefile +++ b/www/web-proxy-sso/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= web-proxy-sso PLUGIN_VERSION= 2.2 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Kerberos authentication module PLUGIN_DEPENDS= msktutil cyrus-sasl-gssapi PLUGIN_MAINTAINER= evbevz@gmail.com diff --git a/www/web-proxy-useracl/Makefile b/www/web-proxy-useracl/Makefile index e80e2166c..a2374138c 100644 --- a/www/web-proxy-useracl/Makefile +++ b/www/web-proxy-useracl/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= web-proxy-useracl PLUGIN_VERSION= 1.1 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Group and user ACL for the web proxy PLUGIN_MAINTAINER= kekek2@ya.ru PLUGIN_WWW= https://smart-soft.ru From eccb081fc41bdb3f42835347c4b95788c24df5d1 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:36:25 +0100 Subject: [PATCH 20/36] vendor: revision bump --- vendor/sunnyvalley/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/vendor/sunnyvalley/Makefile b/vendor/sunnyvalley/Makefile index 58fc4cc31..6d082409e 100644 --- a/vendor/sunnyvalley/Makefile +++ b/vendor/sunnyvalley/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= sunnyvalley PLUGIN_VERSION= 1.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Vendor repository for Sensei (Next Generation Firewall Extensions) PLUGIN_MAINTAINER= opensource@sunnyvalley.io PLUGIN_WWW= https://www.sunnyvalley.io From 360eb16b0f445aa4caaa2cb5f4972ee86d077370 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:38:02 +0100 Subject: [PATCH 21/36] sysutils: revision bump --- sysutils/api-backup/Makefile | 1 + sysutils/apuled/Makefile | 1 + sysutils/boot-delay/Makefile | 1 + sysutils/dmidecode/Makefile | 1 + sysutils/git-backup/Makefile | 11 ++++++----- sysutils/hw-probe/Makefile | 1 + sysutils/lcdproc-sdeclcd/Makefile | 1 + sysutils/mail-backup/Makefile | 1 + sysutils/munin-node/Makefile | 1 + sysutils/node_exporter/Makefile | 1 + sysutils/nut/Makefile | 1 + sysutils/smart/Makefile | 2 +- sysutils/virtualbox/Makefile | 1 + sysutils/vmware/Makefile | 1 + sysutils/xen/Makefile | 1 + 15 files changed, 20 insertions(+), 6 deletions(-) diff --git a/sysutils/api-backup/Makefile b/sysutils/api-backup/Makefile index 418499d5e..d1a243984 100644 --- a/sysutils/api-backup/Makefile +++ b/sysutils/api-backup/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= api-backup PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Provide the functionality to download the config.xml PLUGIN_MAINTAINER= franz.fabian.94@gmail.com diff --git a/sysutils/apuled/Makefile b/sysutils/apuled/Makefile index 4ecabf721..7dc896fa7 100644 --- a/sysutils/apuled/Makefile +++ b/sysutils/apuled/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= apuled PLUGIN_VERSION= 0.2 +PLUGIN_REVISION= 1 PLUGIN_DEVEL= yes PLUGIN_COMMENT= PC Engine APU LED control PLUGIN_MAINTAINER= julio@cloudfence.com.br diff --git a/sysutils/boot-delay/Makefile b/sysutils/boot-delay/Makefile index be3331711..38582b59c 100644 --- a/sysutils/boot-delay/Makefile +++ b/sysutils/boot-delay/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= boot-delay PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Apply a persistent 10 second boot delay PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/sysutils/dmidecode/Makefile b/sysutils/dmidecode/Makefile index 55c0cc39e..428d1621a 100644 --- a/sysutils/dmidecode/Makefile +++ b/sysutils/dmidecode/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= dmidecode PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Display hardware information on the dashboard PLUGIN_DEPENDS= dmidecode PLUGIN_MAINTAINER= evbevz@gmail.com diff --git a/sysutils/git-backup/Makefile b/sysutils/git-backup/Makefile index 2948e1fb1..da33116f5 100644 --- a/sysutils/git-backup/Makefile +++ b/sysutils/git-backup/Makefile @@ -1,7 +1,8 @@ -PLUGIN_NAME= git-backup -PLUGIN_VERSION= 1.0 -PLUGIN_COMMENT= Track config changes using git -PLUGIN_DEPENDS= git -PLUGIN_MAINTAINER= ad@opnsense.org +PLUGIN_NAME= git-backup +PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 +PLUGIN_COMMENT= Track config changes using git +PLUGIN_DEPENDS= git +PLUGIN_MAINTAINER= ad@opnsense.org .include "../../Mk/plugins.mk" diff --git a/sysutils/hw-probe/Makefile b/sysutils/hw-probe/Makefile index eaf0ab3b2..34b17c90b 100644 --- a/sysutils/hw-probe/Makefile +++ b/sysutils/hw-probe/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= hw-probe PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Collect hardware diagnostics PLUGIN_DEPENDS= hw-probe PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/sysutils/lcdproc-sdeclcd/Makefile b/sysutils/lcdproc-sdeclcd/Makefile index 94a4eabe5..a709853da 100644 --- a/sysutils/lcdproc-sdeclcd/Makefile +++ b/sysutils/lcdproc-sdeclcd/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= lcdproc-sdeclcd PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= LCDProc for SDEC LCD devices PLUGIN_DEPENDS= lcdproc PLUGIN_MAINTAINER= ad@opnsense.org diff --git a/sysutils/mail-backup/Makefile b/sysutils/mail-backup/Makefile index 27fa1a4fa..fc3e7b560 100644 --- a/sysutils/mail-backup/Makefile +++ b/sysutils/mail-backup/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= mail-backup PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Send configuration file backup by e-mail PLUGIN_DEPENDS= gnupg phpmailer PLUGIN_MAINTAINER= machadovilaca@gmail.com diff --git a/sysutils/munin-node/Makefile b/sysutils/munin-node/Makefile index 4540d03cc..9012e1040 100644 --- a/sysutils/munin-node/Makefile +++ b/sysutils/munin-node/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= munin-node PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Munin monitorin agent PLUGIN_DEPENDS= munin-node PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/sysutils/node_exporter/Makefile b/sysutils/node_exporter/Makefile index a6cc24adb..025219420 100644 --- a/sysutils/node_exporter/Makefile +++ b/sysutils/node_exporter/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= node_exporter PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Prometheus exporter for machine metrics PLUGIN_DEPENDS= node_exporter PLUGIN_MAINTAINER= dharrigan@gmail.com diff --git a/sysutils/nut/Makefile b/sysutils/nut/Makefile index 2262b7e18..52fe1c9c9 100644 --- a/sysutils/nut/Makefile +++ b/sysutils/nut/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= nut PLUGIN_VERSION= 1.7 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Network UPS Tools PLUGIN_DEPENDS= nut PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/sysutils/smart/Makefile b/sysutils/smart/Makefile index 1f1005606..a02589a0b 100644 --- a/sysutils/smart/Makefile +++ b/sysutils/smart/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= smart PLUGIN_VERSION= 2.1 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= SMART tools PLUGIN_DEPENDS= smartmontools PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/sysutils/virtualbox/Makefile b/sysutils/virtualbox/Makefile index 54bfb253e..19a947dbc 100644 --- a/sysutils/virtualbox/Makefile +++ b/sysutils/virtualbox/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= virtualbox PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= VirtualBox guest additions PLUGIN_DEPENDS= virtualbox-ose-additions-nox11 PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/sysutils/vmware/Makefile b/sysutils/vmware/Makefile index cc2eda97b..307d0f9bf 100644 --- a/sysutils/vmware/Makefile +++ b/sysutils/vmware/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= vmware PLUGIN_VERSION= 1.5 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= VMware tools PLUGIN_DEPENDS= open-vm-tools-nox11 PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/sysutils/xen/Makefile b/sysutils/xen/Makefile index 8d7380355..a807b5b1c 100644 --- a/sysutils/xen/Makefile +++ b/sysutils/xen/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= xen PLUGIN_VERSION= 1.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Xen guest utilities PLUGIN_DEPENDS= xe-guest-utilities PLUGIN_MAINTAINER= franco@opnsense.org From ff935d691d2f3b194d9082b192d5c6fc2ffee205 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 15 Feb 2021 10:39:22 +0100 Subject: [PATCH 22/36] benchmarks|databases|devel: revision bump --- benchmarks/iperf/Makefile | 1 + databases/redis/Makefile | 1 + devel/debug/Makefile | 1 + devel/grid_example/Makefile | 1 + devel/helloworld/Makefile | 1 + 5 files changed, 5 insertions(+) diff --git a/benchmarks/iperf/Makefile b/benchmarks/iperf/Makefile index e32555da3..4c7243069 100644 --- a/benchmarks/iperf/Makefile +++ b/benchmarks/iperf/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= iperf PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Connection speed tester PLUGIN_DEPENDS= iperf3 ruby PLUGIN_MAINTAINER= franz.fabian.94@gmail.com diff --git a/databases/redis/Makefile b/databases/redis/Makefile index 35faf0478..c63351820 100644 --- a/databases/redis/Makefile +++ b/databases/redis/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= redis PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Redis DB PLUGIN_DEPENDS= redis PLUGIN_MAINTAINER= franz.fabian.94@gmail.com diff --git a/devel/debug/Makefile b/devel/debug/Makefile index 1f821dd59..13fe7f3d9 100644 --- a/devel/debug/Makefile +++ b/devel/debug/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= debug PLUGIN_VERSION= 1.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Debugging Tools PLUGIN_DEPENDS= php${PLUGIN_PHP}-pear-PHP_CodeSniffer \ php${PLUGIN_PHP}-pecl-xdebug \ diff --git a/devel/grid_example/Makefile b/devel/grid_example/Makefile index dfc4cf776..3b7bda5db 100644 --- a/devel/grid_example/Makefile +++ b/devel/grid_example/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= grid_example PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= A sample framework application PLUGIN_MAINTAINER= ad@opnsense.org diff --git a/devel/helloworld/Makefile b/devel/helloworld/Makefile index de639c35d..bf22cc416 100644 --- a/devel/helloworld/Makefile +++ b/devel/helloworld/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= helloworld PLUGIN_VERSION= 1.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= A sample framework application PLUGIN_MAINTAINER= ad@opnsense.org From b6bbd6a32e60e55f6cddb62598853645ee644922 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Mon, 15 Feb 2021 21:57:56 +0100 Subject: [PATCH 23/36] security/acme-client: fix OCSP setting not honored, closes #2234 --- security/acme-client/pkg-descr | 1 + .../OPNsense/AcmeClient/LeCertificate.php | 1 + .../OPNsense/AcmeClient/.AcmeClient.xml.swp | Bin 0 -> 16384 bytes 3 files changed, 2 insertions(+) create mode 100644 security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr index 2d89753b0..213eb1121 100644 --- a/security/acme-client/pkg-descr +++ b/security/acme-client/pkg-descr @@ -17,6 +17,7 @@ Fixed: * fix missing "--ecc" parameter when renewing ECC certs (#2223) * fix log file location (#2227) * fix GUI log formatting (by using the syslog log) +* fix OCSP setting not honored (#2234) Changed: * let acme.sh log through syslog diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php index 8e0be409e..6855acb3b 100644 --- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php +++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php @@ -656,6 +656,7 @@ class LeCertificate extends LeCommon $val->setNames($this->config->name, $this->config->altNames, $this->config->aliasmode, $this->config->domainalias, $this->config->challengealias); $val->setRenewal((int)$this->config->renewInterval); $val->setForce($this->force); + $val->setOcsp((string)$this->config->ocsp == 1 ? true : false); // strip prefix from key value $val->setKey(substr($this->config->keyLength, 4)); $val->prepare(); diff --git a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp new file mode 100644 index 0000000000000000000000000000000000000000..cb9344443839d7d3a58e6d925c166511fd93baf8 GIT binary patch literal 16384 zcmeI3Uu+yl9mgk>HYu%B6hK1aWs)?FP2yeKu_ISZH*rj&B#N8JP9p`Man`$Y=Oz2+ zx;yJXO#@PqkZ6hu4^)**Zy=;t0JQn%uwW=t0$wIDYi18&@1Z(j#ugp(9px)AIPB?Qaj`%jIWRIjB(>eWYbX88j)y)j ziWhno7AP!GSfH>#VS&N|g#`)=6c#8f01JrfcJd9JKcTE~UY)lzo&TqfEMxdell(&^ zKdH*EHpxFw@-wRZMw9$~B|oOhPpA%L{rInvA6D`wo8kCb^{+O`|J5Ylaa&q3YyaJ*`#VS&N|g#`)=FqT-IgN{NdOMxotei^tI0o%_P;l*cDFI z<+9q^=hkZHOxLlK4o&eWGArCjI>>E$eBzAMf<{SSs2>Pg4r1TdnBIC(Yr}e?ZEOFN z&f#?tsbG{ZPO8{WRCUc&!#6$7^z2*9ePmsEFh_7NGE}=-dS-fBN|Gu$zgQH+p~a2t zWfV;*ot>GkD&)4n+G@dal+VIqCi892Q88i3z_~S|!c6+I$x)Fuy7^I|+SStY&5nw; zT6BtviOjbfhziUpx57j*F?nj! z7kgNEVs4Bd934VG8_F6wD`$E(<@mKrhGqTwg4X((+6QIZ*_VcDtWg`Ke_|0H=C9}0 zqUpNaukbTLxLN8S92+|@)~os>qg@+d^uXA7TN5-W)QttWzvP60@8NyW9QW&|t8z_C z{Mu%yvq)5o8DZiz(+WLWYYl5N1Pu;?+mnM~|79E4zSwcPOx0aRXO(Z~n4VN4>Y}w1 z>)a=n#fH4PO{B=SY9p_0XtO%wC|joY&JU)Cs@SRVNm#R0?b_WsZwp(uZrOg%Lc5zh ze?J`an746jVj{ilxT51eFsT-V4!m#ZwfBQ{rmI3CYvdhl-L_e_tF(D!g-#NQ-ETF& z7A!;>e)YbNNDpfA*E-wFcIL}nLu$dHBB_gP!;D2R&3(RXx}74bZTw2JuMLOcHe-R+ z-9>e+P07!yd4@aj9K zr?}V~VS=*4)vBQBd-2jFwW{gGGVj5ZXN+h=8oHQ$O@$sZEMe$*Z^t8zON4}ZGLJNf z%>VZx2c49;DDwa8@5`?v$A1Pq0;a%y;5u^qYv89K1}DK6z*Xe-SHK(?0k?yz$nC!e zEHDnXfgd5K{}wn42EYyE^4|v$cmV7GzeFByfme~YKMgD}4*raM{oCL#$j@H`SHJ~u zC-^yX^Si-2$j6@pkAZ#QP2}MkxDEUsx%czn2-po?hrZ8%$AAmYgHu4-;RxvAkTy+h zDPyf=AT#_kgIt}OX0WU{Cqi{A@XJmmCwP+^tflK6=jfzr>pVTfU2X|#QY-L0)3<3k z3_L0pIdz>#beENl=Q*yRDt(Jj$0J5YbLpQM>Gr5dG^sbSMJDaup=rOSsk zeQCVClnTg*tO9zqCwqq zfs19%eL9?U4fdzdTWO-@D$hJKx@aWcoh|95(%isoX}M(2mj(}OCH>OnJ((l>58daA zFYQ#7?$u)l!$w}4-)wh5&e}Lix%(_%5#2i3GV^66Eyan6o_)^3F2SI=jC5V+t{az=YxrE+{Tu7_ Date: Mon, 15 Feb 2021 22:11:16 +0100 Subject: [PATCH 24/36] security/acme-client: add tooltips for certificate command buttons, closes #2188 --- security/acme-client/pkg-descr | 1 + .../views/OPNsense/AcmeClient/certificates.volt | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/security/acme-client/pkg-descr b/security/acme-client/pkg-descr index 213eb1121..f830046bf 100644 --- a/security/acme-client/pkg-descr +++ b/security/acme-client/pkg-descr @@ -12,6 +12,7 @@ Plugin Changelog Added: * add new page to show AcmeClient entries from system log +* add tooltips for certificate command buttons (#2188) Fixed: * fix missing "--ecc" parameter when renewing ECC certs (#2223) diff --git a/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/certificates.volt b/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/certificates.volt index 2d172eb01..c30891a76 100644 --- a/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/certificates.volt +++ b/security/acme-client/src/opnsense/mvc/app/views/OPNsense/AcmeClient/certificates.volt @@ -59,13 +59,13 @@ POSSIBILITY OF SUCH DAMAGE. url: '/api/acmeclient/certificates/search', formatters: { "commands": function (column, row) { - return " " + - "" + - "" + - "" + - "" + - "" + - ""; + return " " + + "" + + "" + + "" + + "" + + "" + + ""; }, "rowtoggle": function (column, row) { if (parseInt(row[column.id], 2) == 1) { From 429eda9b1c2c21cfd47ee7b50ed286b2d393b071 Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Mon, 15 Feb 2021 22:25:22 +0100 Subject: [PATCH 25/36] security/acme-client: remove temp file --- .../OPNsense/AcmeClient/.AcmeClient.xml.swp | Bin 16384 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp diff --git a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/.AcmeClient.xml.swp deleted file mode 100644 index cb9344443839d7d3a58e6d925c166511fd93baf8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 zcmeI3Uu+yl9mgk>HYu%B6hK1aWs)?FP2yeKu_ISZH*rj&B#N8JP9p`Man`$Y=Oz2+ zx;yJXO#@PqkZ6hu4^)**Zy=;t0JQn%uwW=t0$wIDYi18&@1Z(j#ugp(9px)AIPB?Qaj`%jIWRIjB(>eWYbX88j)y)j ziWhno7AP!GSfH>#VS&N|g#`)=6c#8f01JrfcJd9JKcTE~UY)lzo&TqfEMxdell(&^ zKdH*EHpxFw@-wRZMw9$~B|oOhPpA%L{rInvA6D`wo8kCb^{+O`|J5Ylaa&q3YyaJ*`#VS&N|g#`)=FqT-IgN{NdOMxotei^tI0o%_P;l*cDFI z<+9q^=hkZHOxLlK4o&eWGArCjI>>E$eBzAMf<{SSs2>Pg4r1TdnBIC(Yr}e?ZEOFN z&f#?tsbG{ZPO8{WRCUc&!#6$7^z2*9ePmsEFh_7NGE}=-dS-fBN|Gu$zgQH+p~a2t zWfV;*ot>GkD&)4n+G@dal+VIqCi892Q88i3z_~S|!c6+I$x)Fuy7^I|+SStY&5nw; zT6BtviOjbfhziUpx57j*F?nj! z7kgNEVs4Bd934VG8_F6wD`$E(<@mKrhGqTwg4X((+6QIZ*_VcDtWg`Ke_|0H=C9}0 zqUpNaukbTLxLN8S92+|@)~os>qg@+d^uXA7TN5-W)QttWzvP60@8NyW9QW&|t8z_C z{Mu%yvq)5o8DZiz(+WLWYYl5N1Pu;?+mnM~|79E4zSwcPOx0aRXO(Z~n4VN4>Y}w1 z>)a=n#fH4PO{B=SY9p_0XtO%wC|joY&JU)Cs@SRVNm#R0?b_WsZwp(uZrOg%Lc5zh ze?J`an746jVj{ilxT51eFsT-V4!m#ZwfBQ{rmI3CYvdhl-L_e_tF(D!g-#NQ-ETF& z7A!;>e)YbNNDpfA*E-wFcIL}nLu$dHBB_gP!;D2R&3(RXx}74bZTw2JuMLOcHe-R+ z-9>e+P07!yd4@aj9K zr?}V~VS=*4)vBQBd-2jFwW{gGGVj5ZXN+h=8oHQ$O@$sZEMe$*Z^t8zON4}ZGLJNf z%>VZx2c49;DDwa8@5`?v$A1Pq0;a%y;5u^qYv89K1}DK6z*Xe-SHK(?0k?yz$nC!e zEHDnXfgd5K{}wn42EYyE^4|v$cmV7GzeFByfme~YKMgD}4*raM{oCL#$j@H`SHJ~u zC-^yX^Si-2$j6@pkAZ#QP2}MkxDEUsx%czn2-po?hrZ8%$AAmYgHu4-;RxvAkTy+h zDPyf=AT#_kgIt}OX0WU{Cqi{A@XJmmCwP+^tflK6=jfzr>pVTfU2X|#QY-L0)3<3k z3_L0pIdz>#beENl=Q*yRDt(Jj$0J5YbLpQM>Gr5dG^sbSMJDaup=rOSsk zeQCVClnTg*tO9zqCwqq zfs19%eL9?U4fdzdTWO-@D$hJKx@aWcoh|95(%isoX}M(2mj(}OCH>OnJ((l>58daA zFYQ#7?$u)l!$w}4-)wh5&e}Lix%(_%5#2i3GV^66Eyan6o_)^3F2SI=jC5V+t{az=YxrE+{Tu7_ Date: Tue, 16 Feb 2021 15:17:29 +0100 Subject: [PATCH 26/36] plugins: style sweep --- .../src/etc/inc/plugins.inc.d/dyndns/phpDynDNS.inc | 8 ++++---- .../OPNsense/Quagga/Api/DiagnosticsController.php | 4 ++-- .../app/library/OPNsense/AcmeClient/LeCertificate.php | 8 ++++---- www/nginx/src/opnsense/scripts/nginx/setup.php | 11 ++++++----- 4 files changed, 16 insertions(+), 15 deletions(-) diff --git a/dns/dyndns/src/etc/inc/plugins.inc.d/dyndns/phpDynDNS.inc b/dns/dyndns/src/etc/inc/plugins.inc.d/dyndns/phpDynDNS.inc index df3cb8ce1..67c250a3a 100644 --- a/dns/dyndns/src/etc/inc/plugins.inc.d/dyndns/phpDynDNS.inc +++ b/dns/dyndns/src/etc/inc/plugins.inc.d/dyndns/phpDynDNS.inc @@ -883,11 +883,11 @@ class updatedns case 'gratisdns': $server = "https://admin.gratisdns.com/ddns.php"; curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); - if(substr_count($this->_dnsHost, ".") < 2) { - $domain = $this->_dnsHost; - $hostname = $this->_dnsHost; + if (substr_count($this->_dnsHost, ".") < 2) { + $domain = $this->_dnsHost; + $hostname = $this->_dnsHost; } else { - list($hostname, $domain) = explode(".", $this->_dnsHost, 2); + list($hostname, $domain) = explode(".", $this->_dnsHost, 2); } curl_setopt($ch, CURLOPT_URL, $server . '?u=' . urlencode($this->_dnsUser) . '&p=' . $this->_dnsPass . '&h=' . $this->_dnsHost . '&d=' . $domain . '&i=' . $this->_dnsIP); break; diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/DiagnosticsController.php b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/DiagnosticsController.php index 7426a5f53..a92a3d8e0 100644 --- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/DiagnosticsController.php +++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/DiagnosticsController.php @@ -44,7 +44,7 @@ class DiagnosticsController extends ApiControllerBase private function getInformation(string $daemon, string $name, string $format): array { $backend = new Backend(); - $response = $backend->configdRun("quagga diagnostics ".$daemon."_".$name.($format === "json" ? "_json" : "")); + $response = $backend->configdRun("quagga diagnostics " . $daemon . "_" . $name . ($format === "json" ? "_json" : "")); return array("response" => ($format === "json" ? json_decode($response) : $response)); } @@ -60,7 +60,7 @@ class DiagnosticsController extends ApiControllerBase if ($format === "json") { return array("response" => array("ipv4" => $routes4, "ipv6" => $routes6)); } else { - return array("response" => $routes4.$routes6); + return array("response" => $routes4 . $routes6); } } diff --git a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php index 6855acb3b..97b4d2364 100644 --- a/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php +++ b/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeCertificate.php @@ -344,11 +344,11 @@ class LeCertificate extends LeCommon // Check if called by auto renewal process. if (($acme_action == 'renew') and ($this->cron == 1) and ($auto_renewal == 0)) { - LeUtils::log('auto renewal is globally disabled, skipping certificate: ' . (string)$this->config->name); - return false; + LeUtils::log('auto renewal is globally disabled, skipping certificate: ' . (string)$this->config->name); + return false; } elseif (($acme_action == 'renew') and ($this->cron == 1) and ((string)$this->config->autoRenewal == 0)) { - LeUtils::log('auto renewal is disabled for certificate: ' . (string)$this->config->name); - return false; + LeUtils::log('auto renewal is disabled for certificate: ' . (string)$this->config->name); + return false; } LeUtils::log("${acme_action} certificate: " . (string)$this->config->name); diff --git a/www/nginx/src/opnsense/scripts/nginx/setup.php b/www/nginx/src/opnsense/scripts/nginx/setup.php index 8623106bd..d8452c804 100755 --- a/www/nginx/src/opnsense/scripts/nginx/setup.php +++ b/www/nginx/src/opnsense/scripts/nginx/setup.php @@ -200,13 +200,14 @@ if (isset($nginx['upstream'])) { $cas = array(); $carefs = explode(",", $upstream['tls_trusted_certificate']); foreach ($carefs as $caref) { - $ca = find_ca($caref); - if (isset($ca)) { - $cas[] = base64_decode($ca['crt']); - } + $ca = find_ca($caref); + if (isset($ca)) { + $cas[] = base64_decode($ca['crt']); + } } export_pem_file( - '/usr/local/etc/nginx/key/trust_upstream_' . $upstream_uuid . '.pem','', + '/usr/local/etc/nginx/key/trust_upstream_' . $upstream_uuid . '.pem', + '', implode("\n", $cas) ); } From 41147352172bcf3da69ffc291277fe7be6b94a1b Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 16 Feb 2021 15:21:09 +0100 Subject: [PATCH 27/36] dns/dyndns: bump revision --- dns/dyndns/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dns/dyndns/Makefile b/dns/dyndns/Makefile index 71ce6cee7..451840d02 100644 --- a/dns/dyndns/Makefile +++ b/dns/dyndns/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= dyndns PLUGIN_VERSION= 1.23 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Dynamic DNS Support PLUGIN_MAINTAINER= franco@opnsense.org From 1cb7f4640b8e13e38a882db62bdedf13ab43d269 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 16 Feb 2021 15:22:23 +0100 Subject: [PATCH 28/36] LICENSE: sync --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index e045225ed..7079730ae 100644 --- a/LICENSE +++ b/LICENSE @@ -24,7 +24,7 @@ Copyright (c) 2020 Marc Leuser Copyright (c) 2020 Martin Wasley Copyright (c) 2017-2020 Michael Muenz Copyright (c) 2004-2012 Scott Ullrich -Copyright (c) 2010-2012 Seth Mos +Copyright (c) 2010 Seth Mos Copyright (c) 2008 Shrew Soft Inc. Copyright (c) 2017-2019 Smart-Soft Copyright (c) 2013 Stanley P. Miller \ stan-qaz From 70afeb30954aafa2c0c5600fa24cdde074a217d4 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 16 Feb 2021 15:24:32 +0100 Subject: [PATCH 29/36] dns: bump revision --- dns/bind/Makefile | 1 + dns/dnscrypt-proxy/Makefile | 2 +- dns/rfc2136/Makefile | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/dns/bind/Makefile b/dns/bind/Makefile index 96f13f860..e16959f8e 100644 --- a/dns/bind/Makefile +++ b/dns/bind/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= bind PLUGIN_VERSION= 1.16 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= BIND domain name service PLUGIN_DEPENDS= bind916 PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/dns/dnscrypt-proxy/Makefile b/dns/dnscrypt-proxy/Makefile index e120fa912..54b2cc4b2 100644 --- a/dns/dnscrypt-proxy/Makefile +++ b/dns/dnscrypt-proxy/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= dnscrypt-proxy PLUGIN_VERSION= 1.8 -PLUGIN_REVISIOM= 1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Flexible DNS proxy supporting DNSCrypt and DoH PLUGIN_DEPENDS= dnscrypt-proxy2 PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/dns/rfc2136/Makefile b/dns/rfc2136/Makefile index 39ebb0855..c186e4856 100644 --- a/dns/rfc2136/Makefile +++ b/dns/rfc2136/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= rfc2136 PLUGIN_VERSION= 1.6 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= RFC-2136 Support PLUGIN_MAINTAINER= franco@opnsense.org PLUGIN_DEPENDS= bind-tools From c1f19dc659e1a6a5cbc454c6025ef9ce9a34808e Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 16 Feb 2021 15:29:12 +0100 Subject: [PATCH 30/36] security/tor: bump revision --- security/tor/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/security/tor/Makefile b/security/tor/Makefile index 32b6d40eb..e13b2366c 100644 --- a/security/tor/Makefile +++ b/security/tor/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= tor PLUGIN_VERSION= 1.8 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= The Onion Router PLUGIN_DEPENDS= tor ruby PLUGIN_MAINTAINER= franz.fabian.94@gmail.com From 33b855d5f51348e2c8ff63e9f7265ce7de05f096 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 16 Feb 2021 15:31:45 +0100 Subject: [PATCH 31/36] net/frr: bump revision --- net/frr/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/frr/Makefile b/net/frr/Makefile index 880012ffc..9172a4a4a 100644 --- a/net/frr/Makefile +++ b/net/frr/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= frr PLUGIN_VERSION= 1.21 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= The FRRouting Protocol Suite PLUGIN_DEPENDS= frr7 PLUGIN_MAINTAINER= franz.fabian.94@gmail.com From c9e718f6c82b302f1d29cf38bc2c135fc7d3f555 Mon Sep 17 00:00:00 2001 From: jkellerer Date: Sun, 21 Feb 2021 23:05:42 +0100 Subject: [PATCH 32/36] Nginx: Refactored "ngx_autoblock" to reduce cpu consumption (#1773) * Nginx/Autoblock: Refactored "ngx_autoblock.php" to reduce resource & cpu consumption. Also fixed issues: - $is_ten_minutes triggered always except every 10 minutes. - IPs are not just added but also removed (fixes race conditions between UI and script-invocation). * Nginx/Autoblock: Fixed errors caused by concurrent invocation. Improved resilience against calling the script while another instance is still running. --- .../opnsense/scripts/nginx/ngx_autoblock.php | 328 +++++++++++++----- 1 file changed, 246 insertions(+), 82 deletions(-) diff --git a/www/nginx/src/opnsense/scripts/nginx/ngx_autoblock.php b/www/nginx/src/opnsense/scripts/nginx/ngx_autoblock.php index 0cd607499..4c7b712da 100755 --- a/www/nginx/src/opnsense/scripts/nginx/ngx_autoblock.php +++ b/www/nginx/src/opnsense/scripts/nginx/ngx_autoblock.php @@ -42,6 +42,7 @@ function nginx_print_error($msg) array('status' => 'error', 'message' => $msg) ); } + function exec_hidden($command): void { $descriptorspec = array( @@ -55,110 +56,273 @@ function exec_hidden($command): void proc_close($process); } } -function add_to_blocklist($tablename, $ip) + +function modify_blocklist($tablename, array $allIps, $operation = "add"): void { - $escaped = escapeshellarg($ip); - exec_hidden("/sbin/pfctl -t ${tablename} -T add ${escaped}"); + if (empty($allIps) || !in_array($operation, ["add", "delete"])) + return; + + $tablename = escapeshellarg($tablename); + $operation = escapeshellarg($operation); + + $longestIp = array_reduce($allIps, function ($length, $ip) { + return max($length, strlen(escapeshellarg($ip))); + }, 0); + + $chunkSize = floor(4096 / ($longestIp + 1)); + $chunkSize = min(128, max(4, $chunkSize)); + + foreach (array_chunk($allIps, $chunkSize) as $ips) { + $escapedIps = join(" ", array_map("escapeshellarg", $ips)); + + exec_hidden("/sbin/pfctl -t ${tablename} -T ${operation} ${escapedIps}"); + } } +function read_all_from_blocklist($tablename) +{ + $tablename = escapeshellarg($tablename); + + $descriptorspec = [ + 1 => ['pipe', 'w'], + 2 => ['file', "/dev/null", "w"], + ]; + + $process = proc_open("/sbin/pfctl -t ${tablename} -T show", $descriptorspec, $pipes); + if (is_resource($process)) { + $ips = []; + while ($ip = fgets($pipes[1], 96)) + $ips[] = strtolower(trim($ip)); + + fclose($pipes[1]); + proc_close($process); + + return $ips; + } else { + return false; + } +} + +function get_files_lastmodified(array $files): array +{ + // Maps [file => filemtime] + // File times of special files: + // - Non existing => random mtime + // - No content => -1 + $times = []; + foreach ($files as $file) { + $mtime = @filemtime($file) ?: rand(); + $times[$file] = @filesize($file) === 0 ? -1 : $mtime; + } + return $times; +} function reopen_logs() { exec_hidden('/usr/local/sbin/nginx -s reopen'); } -$permanent_ban_file = '/var/log/nginx/permanentban.access.log'; -$permanent_ban_file_work = $permanent_ban_file . '.work'; -$autoblock_alias_name = 'nginx_autoblock'; -define('CRON_RUN_TEN_MINUTES', 10); -$is_ten_minutes = intval(date('i')) % CRON_RUN_TEN_MINUTES != 0; +const STATE_FILE = '/tmp/ngx_autoblock.state.json'; +const CONFIG_FILE = '/conf/config.xml'; +const PERMANENT_BAN_FILE = '/var/log/nginx/permanentban.access.log'; +const PERMANENT_BAN_FILE_WORK = PERMANENT_BAN_FILE . '.work'; + +const TLS_HANDSHAKE_FILE = '/var/log/nginx/tls_handshake.log'; +const TLS_HANDSHAKE_FILE_WORK = TLS_HANDSHAKE_FILE . '.work'; +const TLS_HANDSHAKE_PROCESSING_TASK = '/usr/local/opnsense/scripts/nginx/tls_ua_fingerprint.php'; + +const AUTOBLOCK_ALIAS_NAME = 'nginx_autoblock'; + +const CRON_RUN_TEN_MINUTES = 10; +$is_ten_minutes = intval(date('i')) % CRON_RUN_TEN_MINUTES == 0; + +// Move log files and inform Nginx that we deleted them +function create_work_files($include_tls_handshake) +{ + $mapping = [PERMANENT_BAN_FILE => PERMANENT_BAN_FILE_WORK]; + if ($include_tls_handshake) { + $mapping[TLS_HANDSHAKE_FILE] = TLS_HANDSHAKE_FILE_WORK; + } + + $existing_sources = array_filter(array_keys($mapping), "file_exists"); + $work_files = []; + + if (count($existing_sources) == count($mapping)) { + foreach ($mapping as $source => $target) { + // Check if we already processing $target in another process and skip it if not stale + if (file_exists($target)) { + if (time() - (@filemtime($target) ?: 0) > (5 * 60)) + @unlink($target); + else + continue; + } + + // Try to create work and log on failure + if (@rename($source, $target)) { + @touch($target); + $work_files[] = $target; + } else { + log_error("Failed renaming '$source' to '$target'. Skipping source for next run."); + } + } + } else { + //Concurrent invocation. Can be silently ignored since no work files are collected. + //log_error("Skipping processing. Missing: " . join(", ", array_diff(array_keys($mapping), $existing_sources))); + } -if (!file_exists($permanent_ban_file)) { - nginx_print_error('No Log exists - nothing to do'); - // let create it reopen_logs(); + register_shutdown_function("cleanup_work_files", $work_files); + + return $work_files; +} + +function cleanup_work_files($work_files) +{ + foreach ($work_files as $file) + @unlink($file); +} + +// Checking if our sources are modified and create work files as needed (do nothing if sources are unchanged) +$work_files = (function () use ($is_ten_minutes) { + $sources = get_files_lastmodified([CONFIG_FILE, PERMANENT_BAN_FILE]); + + $state = @json_decode(@file_get_contents(STATE_FILE), true); + $changed = empty($state) + || !isset($state["sources"]) + || $state["sources"] != $sources; + + if ($changed || $is_ten_minutes) { + // Rename sources to ".work" and tell nginx to reopen logs. + // Triggering TLS-handshake processor every 10 minutes. + $work_files = create_work_files($is_ten_minutes); + + // Store state + if (!empty($work_files)) { + if (!is_array($state)) + $state = []; + $state["sources"] = get_files_lastmodified(array_keys($sources)); + @file_put_contents(STATE_FILE, json_encode($state)); + } + + return $work_files; + } else { + // Sources are not modified, nothing to do when not in "$is_ten_minutes". + exit(0); + } +})(); + +// Triggering TLS-handshake processor when corresponding work file exists. +if (in_array(TLS_HANDSHAKE_FILE_WORK, $work_files)) { + mwexec(TLS_HANDSHAKE_PROCESSING_TASK); +} + +// Abort if permanent ban file is missing +if (!in_array(PERMANENT_BAN_FILE_WORK, $work_files)) { + nginx_print_error('No Log exists - nothing to do'); exit(0); } -// move the file, and inform nginx that we deleted the file -rename($permanent_ban_file, $permanent_ban_file_work); -if ($is_ten_minutes) { - rename('/var/log/nginx/tls_handshake.log', '/var/log/nginx/tls_handshake.log.work'); -} -reopen_logs(); -if ($is_ten_minutes) { - mwexec_bg('/usr/local/opnsense/scripts/nginx/tls_ua_fingerprint.php'); -} +// Verifing autoblock fw-alias and adding it if missing +(function () { + $model = new Alias(); -$log_parser = new AccessLogParser($permanent_ban_file_work); - -$log_lines = $log_parser->get_result(); - -$model = new Alias(); - -$blacklist_element = null; -foreach ($model->aliases->alias->iterateItems() as $alias) { - if ((string)$alias->name == $autoblock_alias_name) { - if ((string)$alias->type != 'external') { - nginx_print_error('alias is misconfigured - exiting'); - exit(0); - } else { - $blacklist_element = $alias; - break; + $blacklist_element = null; + foreach ($model->aliases->alias->iterateItems() as $alias) { + if ((string)$alias->name == AUTOBLOCK_ALIAS_NAME) { + if ((string)$alias->type != 'external') { + nginx_print_error('alias is misconfigured - exiting'); + exit(0); + } else { + $blacklist_element = $alias; + break; + } } } -} -// does not exist yet, create it -if ($blacklist_element == null) { - $blacklist_element = $model->aliases->alias->Add(); - $blacklist_element->name = $autoblock_alias_name; - $blacklist_element->type = "external"; - $model->serializeToConfig(); -} + // does not exist yet, create it + if ($blacklist_element == null) { + $blacklist_element = $model->aliases->alias->Add(); + $blacklist_element->name = AUTOBLOCK_ALIAS_NAME; + $blacklist_element->type = "external"; + $model->serializeToConfig(); + } +})(); -$model = new Nginx(); -$alias_ips = []; -foreach ($model->ban->iterateItems() as $entry) { - $alias_ips[] = (string)$entry->ip; -} - -$new_ips = array_unique( - array_map(function ($row) { - if (stripos($row->remote_ip, '.') !== false) { - return $row->remote_ip; - } - // in case of IPv6, we have to use the network address instead - // danger of DoS because the attacker should have at least 2 ** 64 IPs - return Net_IPv6::getNetmask($row->remote_ip, 64) . '/64'; - }, $log_lines) -); - -$change_required = false; - -foreach (array_diff($new_ips, $alias_ips) as $new_ip) { - $entry = $model->ban->Add(); - $entry->ip = $new_ip; - $entry->time = time(); - $change_required = true; -} - -if ($change_required) { - $val_result = $model->performValidation(false); - if (count($val_result) !== 0) { - print_r($val_result); - exit(1); +// Getting new banned IPs list +$banned_ips = (function () { + // Reading stored banned IPs from config + $model = new Nginx(); + $alias_ips = []; + foreach ($model->ban->iterateItems() as $entry) { + $alias_ips[] = (string)$entry->ip; } - $model->serializeToConfig(); - Config::getInstance()->save(); -} + // Collecting all new IPs from ban file not yet in $alias_ips. + $new_ips = (function () use ($alias_ips) { + // Read IPs from the log file + $log_parser = new AccessLogParser(PERMANENT_BAN_FILE_WORK); + $log_lines = $log_parser->get_result(); + $new_ips = array_unique( + array_map(function ($row) { + if (stripos($row->remote_ip, '.') !== false) { + return $row->remote_ip; + } + // in case of IPv6, we have to use the network address instead + // danger of DoS because the attacker should have at least 2 ** 64 IPs + return Net_IPv6::getNetmask($row->remote_ip, 64) . '/64'; + }, $log_lines) + ); + + // Return only IPs not yet in $alias_ips + return array_diff($new_ips, $alias_ips); + })(); + + // Transfering new IPs into $alias_ips and store them permanently. + $new_and_alias_ips = (function () use ($model, $new_ips, $alias_ips) { + $change_required = false; + + foreach ($new_ips as $new_ip) { + $alias_ips[] = $new_ip; + + $entry = $model->ban->Add(); + $entry->ip = $new_ip; + $entry->time = time(); + $change_required = true; + } + + if ($change_required) { + $val_result = $model->performValidation(false); + if (count($val_result) !== 0) { + print_r($val_result); + exit(1); + } + + $model->serializeToConfig(); + Config::getInstance()->save(); + } + + return $alias_ips; + })(); + + // Returning banned IPs (= combination of (new_ips + alias_ips)) + return $new_and_alias_ips; +})(); + echo '{"status":"saved"}'; -// all ips are used because the others may not be set for some reason -foreach ($model->ban->iterateItems() as $entry) { - add_to_blocklist($autoblock_alias_name, (string)$entry->ip); -} +// Updating PF table with banned IPs +(function () use ($banned_ips) { + $ips_to_add = $banned_ips; + $ips_to_remove = []; -@unlink($permanent_ban_file_work); + // Checking which IPs are in the table and apply changes + $ips_in_table = read_all_from_blocklist(AUTOBLOCK_ALIAS_NAME); + if (!empty($ips_in_table)) { + $ips_to_add = array_diff($banned_ips, $ips_in_table); + $ips_to_remove = array_diff($ips_in_table, $banned_ips); + } + + modify_blocklist(AUTOBLOCK_ALIAS_NAME, $ips_to_add, "add"); + modify_blocklist(AUTOBLOCK_ALIAS_NAME, $ips_to_remove, "delete"); +})(); From 4b7238cbc22e8e4985282918a83d61cce502c5fb Mon Sep 17 00:00:00 2001 From: Fabian Franz Date: Sun, 21 Feb 2021 23:21:56 +0100 Subject: [PATCH 33/36] www/nginx: add release note for nginx autoban feature --- www/nginx/Makefile | 2 +- www/nginx/pkg-descr | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/www/nginx/Makefile b/www/nginx/Makefile index c9df402b3..4964118c0 100644 --- a/www/nginx/Makefile +++ b/www/nginx/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= nginx -PLUGIN_VERSION= 1.20 +PLUGIN_VERSION= 1.21 PLUGIN_REVISION= 2 PLUGIN_COMMENT= Nginx HTTP server and reverse proxy PLUGIN_DEPENDS= nginx diff --git a/www/nginx/pkg-descr b/www/nginx/pkg-descr index 7940a9828..f4dc18e6a 100644 --- a/www/nginx/pkg-descr +++ b/www/nginx/pkg-descr @@ -8,6 +8,10 @@ reuse, SSL offload and HTTP media streaming. Plugin Changelog ================ +1.21 + +* fix performance issue with autoban feature (contributed by jkellerer) + 1.20 * User interface improvements of NAXSI configuration (contributed by 8191) From cdd4d15db74a0f4c9489e0c3b82d8fdd4f25cbd5 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 22 Feb 2021 15:14:03 +0100 Subject: [PATCH 34/36] security: bump revision numbers --- security/clamav/Makefile | 1 + security/etpro-telemetry/Makefile | 2 +- security/intrusion-detection-content-et-pro/Makefile | 1 + security/intrusion-detection-content-pt-open/Makefile | 1 + security/intrusion-detection-content-snort-vrt/Makefile | 1 + security/maltrail/Makefile | 1 + security/openconnect/Makefile | 1 + security/softether/Makefile | 1 + security/stunnel/Makefile | 1 + security/tinc/Makefile | 2 +- 10 files changed, 10 insertions(+), 2 deletions(-) diff --git a/security/clamav/Makefile b/security/clamav/Makefile index 0010bcb43..668ca3fd0 100644 --- a/security/clamav/Makefile +++ b/security/clamav/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= clamav PLUGIN_VERSION= 1.7 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Antivirus engine for detecting malicious threats PLUGIN_DEPENDS= clamav PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/security/etpro-telemetry/Makefile b/security/etpro-telemetry/Makefile index 3a959c084..6c41f6a7c 100644 --- a/security/etpro-telemetry/Makefile +++ b/security/etpro-telemetry/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= etpro-telemetry PLUGIN_VERSION= 1.4 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= ET Pro Telemetry Edition PLUGIN_MAINTAINER= ad@opnsense.org PLUGIN_WWW= https://docs.opnsense.org/manual/etpro_telemetry.html diff --git a/security/intrusion-detection-content-et-pro/Makefile b/security/intrusion-detection-content-et-pro/Makefile index fafdd5cfd..f9c5095c0 100644 --- a/security/intrusion-detection-content-et-pro/Makefile +++ b/security/intrusion-detection-content-et-pro/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= intrusion-detection-content-et-pro PLUGIN_VERSION= 1.0.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= IDS Proofpoint ET Pro ruleset (needs a valid subscription) PLUGIN_MAINTAINER= ad@opnsense.org PLUGIN_WWW= https://www.proofpoint.com/us/threat-insight/et-pro-ruleset diff --git a/security/intrusion-detection-content-pt-open/Makefile b/security/intrusion-detection-content-pt-open/Makefile index 8e7246d5f..255baf5fe 100644 --- a/security/intrusion-detection-content-pt-open/Makefile +++ b/security/intrusion-detection-content-pt-open/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= intrusion-detection-content-pt-open PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= IDS PT Research ruleset (only for non-commercial use) PLUGIN_MAINTAINER= ad@opnsense.org PLUGIN_WWW= https://www.ptsecurity.com/ww-en/ diff --git a/security/intrusion-detection-content-snort-vrt/Makefile b/security/intrusion-detection-content-snort-vrt/Makefile index d4e31d894..a2f900e6b 100644 --- a/security/intrusion-detection-content-snort-vrt/Makefile +++ b/security/intrusion-detection-content-snort-vrt/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= intrusion-detection-content-snort-vrt PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= IDS Snort VRT ruleset (needs registration or subscription) PLUGIN_MAINTAINER= ad@opnsense.org PLUGIN_WWW= https://www.snort.org/downloads#rules diff --git a/security/maltrail/Makefile b/security/maltrail/Makefile index 874f9d5de..9371d8512 100644 --- a/security/maltrail/Makefile +++ b/security/maltrail/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= maltrail PLUGIN_VERSION= 1.6 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Malicious traffic detection system PLUGIN_DEPENDS= maltrail PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/security/openconnect/Makefile b/security/openconnect/Makefile index e922426b2..afd5f9a20 100644 --- a/security/openconnect/Makefile +++ b/security/openconnect/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= openconnect PLUGIN_VERSION= 1.4.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= OpenConnect Client PLUGIN_DEPENDS= openconnect PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/security/softether/Makefile b/security/softether/Makefile index 81341b10a..e1e595bcc 100644 --- a/security/softether/Makefile +++ b/security/softether/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= softether PLUGIN_VERSION= 0.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Cross-platform Multi-protocol VPN Program PLUGIN_DEPENDS= softether PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/security/stunnel/Makefile b/security/stunnel/Makefile index ed8d72bbb..4cbdf5bc4 100644 --- a/security/stunnel/Makefile +++ b/security/stunnel/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= stunnel PLUGIN_VERSION= 1.0.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= stunnel TLS proxy PLUGIN_MAINTAINER= ad@opnsense.org PLUGIN_DEPENDS= stunnel diff --git a/security/tinc/Makefile b/security/tinc/Makefile index 45b3c7279..4e6a8afaf 100644 --- a/security/tinc/Makefile +++ b/security/tinc/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= tinc PLUGIN_VERSION= 1.6 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Tinc VPN PLUGIN_DEPENDS= tinc PLUGIN_MAINTAINER= ad@opnsense.org From a9d1b8b7417d966d63104837e11a6cc511b72b5d Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 22 Feb 2021 15:22:40 +0100 Subject: [PATCH 35/36] net: revision bumps --- net/chrony/Makefile | 1 + net/firewall/Makefile | 1 + net/freeradius/Makefile | 1 + net/ftp-proxy/Makefile | 2 +- net/google-cloud-sdk/Makefile | 1 + net/igmp-proxy/Makefile | 1 + net/mdns-repeater/Makefile | 11 ++++++----- net/ntopng/Makefile | 1 + net/relayd/Makefile | 1 + net/shadowsocks/Makefile | 2 +- net/siproxd/Makefile | 1 + net/tayga/Makefile | 1 + net/udpbroadcastrelay/Makefile | 1 + net/upnp/Makefile | 1 + net/vnstat/Makefile | 1 + net/wireguard/Makefile | 2 +- net/wol/Makefile | 1 + net/zerotier/Makefile | 2 +- 18 files changed, 23 insertions(+), 9 deletions(-) diff --git a/net/chrony/Makefile b/net/chrony/Makefile index 0601f4f24..a905579e2 100644 --- a/net/chrony/Makefile +++ b/net/chrony/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= chrony PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Chrony time synchronisation PLUGIN_DEPENDS= chrony PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/firewall/Makefile b/net/firewall/Makefile index 5c667b1ee..4b40f0f05 100644 --- a/net/firewall/Makefile +++ b/net/firewall/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= firewall PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Firewall API supplemental package PLUGIN_MAINTAINER= ad@opnsense.org diff --git a/net/freeradius/Makefile b/net/freeradius/Makefile index a473a81ae..a62c2a0d5 100644 --- a/net/freeradius/Makefile +++ b/net/freeradius/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= freeradius PLUGIN_VERSION= 1.9.9 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= RADIUS Authentication, Authorization and Accounting Server PLUGIN_DEPENDS= freeradius3 PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/ftp-proxy/Makefile b/net/ftp-proxy/Makefile index 20403a1da..78c8fc10b 100644 --- a/net/ftp-proxy/Makefile +++ b/net/ftp-proxy/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= ftp-proxy PLUGIN_VERSION= 1.0 -PLUGIN_REVISION= 2 +PLUGIN_REVISION= 3 PLUGIN_COMMENT= Control ftp-proxy processes PLUGIN_MAINTAINER= frank.brendel@eurolog.com diff --git a/net/google-cloud-sdk/Makefile b/net/google-cloud-sdk/Makefile index 6e832d056..c83686310 100644 --- a/net/google-cloud-sdk/Makefile +++ b/net/google-cloud-sdk/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= google-cloud-sdk PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Google Cloud SDK PLUGIN_DEPENDS= google-cloud-sdk PLUGIN_MAINTAINER= opnsense@moov.de diff --git a/net/igmp-proxy/Makefile b/net/igmp-proxy/Makefile index 4284a2b46..d5546cdb1 100644 --- a/net/igmp-proxy/Makefile +++ b/net/igmp-proxy/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= igmp-proxy PLUGIN_VERSION= 1.5 +PLUGIN_REVISION= 1 PLUGIN_DEPENDS= igmpproxy PLUGIN_COMMENT= IGMP-Proxy Service PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/net/mdns-repeater/Makefile b/net/mdns-repeater/Makefile index 3843c85d9..2c17394c8 100644 --- a/net/mdns-repeater/Makefile +++ b/net/mdns-repeater/Makefile @@ -1,7 +1,8 @@ -PLUGIN_NAME= mdns-repeater -PLUGIN_VERSION= 1.0 -PLUGIN_COMMENT= Proxy multicast DNS between networks -PLUGIN_MAINTAINER= franz.fabian.94@gmail.com -PLUGIN_DEPENDS= mdns-repeater +PLUGIN_NAME= mdns-repeater +PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 +PLUGIN_COMMENT= Proxy multicast DNS between networks +PLUGIN_MAINTAINER= franz.fabian.94@gmail.com +PLUGIN_DEPENDS= mdns-repeater .include "../../Mk/plugins.mk" diff --git a/net/ntopng/Makefile b/net/ntopng/Makefile index c31a99740..fdced159b 100644 --- a/net/ntopng/Makefile +++ b/net/ntopng/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= ntopng PLUGIN_VERSION= 1.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Traffic Analysis and Flow Collection PLUGIN_DEPENDS= ntopng PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/relayd/Makefile b/net/relayd/Makefile index 0a357bf30..c7bd04749 100644 --- a/net/relayd/Makefile +++ b/net/relayd/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= relayd PLUGIN_VERSION= 2.4 +PLUGIN_REVISION= 1 PLUGIN_DEPENDS= relayd PLUGIN_COMMENT= Relayd Load Balancer PLUGIN_MAINTAINER= frank.brendel@eurolog.com diff --git a/net/shadowsocks/Makefile b/net/shadowsocks/Makefile index 7a1b462f9..478086ece 100644 --- a/net/shadowsocks/Makefile +++ b/net/shadowsocks/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= shadowsocks PLUGIN_VERSION= 1.0 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Secure socks5 proxy PLUGIN_DEPENDS= shadowsocks-libev PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/siproxd/Makefile b/net/siproxd/Makefile index 79394e6b0..d10bb8f39 100644 --- a/net/siproxd/Makefile +++ b/net/siproxd/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= siproxd PLUGIN_VERSION= 1.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Siproxd is a proxy daemon for the SIP protocol PLUGIN_DEPENDS= siproxd PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/tayga/Makefile b/net/tayga/Makefile index 694549832..33f54830f 100644 --- a/net/tayga/Makefile +++ b/net/tayga/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= tayga PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Tayga NAT64 PLUGIN_DEPENDS= tayga PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/udpbroadcastrelay/Makefile b/net/udpbroadcastrelay/Makefile index 0977354b3..b8aa04860 100644 --- a/net/udpbroadcastrelay/Makefile +++ b/net/udpbroadcastrelay/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= udpbroadcastrelay PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Control ubpbroadcastrelay processes PLUGIN_DEPENDS= udpbroadcastrelay PLUGIN_MAINTAINER= mjwasley@gmail.com diff --git a/net/upnp/Makefile b/net/upnp/Makefile index cd7ac4249..9dca9a4c4 100644 --- a/net/upnp/Makefile +++ b/net/upnp/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= upnp PLUGIN_VERSION= 1.4 +PLUGIN_REVISION= 1 PLUGIN_DEPENDS= miniupnpd PLUGIN_COMMENT= Universal Plug and Play Service PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/net/vnstat/Makefile b/net/vnstat/Makefile index 59374556b..bd8388bee 100644 --- a/net/vnstat/Makefile +++ b/net/vnstat/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= vnstat PLUGIN_VERSION= 1.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= vnStat is a console-based network traffic monitor PLUGIN_DEPENDS= vnstat PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/wireguard/Makefile b/net/wireguard/Makefile index fe52b80fb..9a3654e78 100644 --- a/net/wireguard/Makefile +++ b/net/wireguard/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= wireguard PLUGIN_VERSION= 1.4 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= WireGuard VPN service PLUGIN_DEPENDS= wireguard PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net/wol/Makefile b/net/wol/Makefile index bbae997f3..7f29a872c 100644 --- a/net/wol/Makefile +++ b/net/wol/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= wol PLUGIN_VERSION= 2.3 +PLUGIN_REVISION= 1 PLUGIN_DEPENDS= wol PLUGIN_COMMENT= Wake on LAN Service PLUGIN_MAINTAINER= franco@opnsense.org diff --git a/net/zerotier/Makefile b/net/zerotier/Makefile index 6efe44df9..bc69d92c7 100644 --- a/net/zerotier/Makefile +++ b/net/zerotier/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= zerotier PLUGIN_VERSION= 1.3.2 -PLUGIN_REVISION= 2 +PLUGIN_REVISION= 3 PLUGIN_COMMENT= Virtual Networks That Just Work PLUGIN_DEPENDS= zerotier PLUGIN_MAINTAINER= dharrigan@gmail.com From 5f70df6b3a633813c48c87a0203d698ce6421295 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Mon, 22 Feb 2021 15:24:06 +0100 Subject: [PATCH 36/36] net-mgmt: bump revision --- net-mgmt/collectd/Makefile | 1 + net-mgmt/lldpd/Makefile | 1 + net-mgmt/net-snmp/Makefile | 1 + net-mgmt/netdata/Makefile | 1 + net-mgmt/nrpe/Makefile | 2 +- net-mgmt/telegraf/Makefile | 1 + net-mgmt/zabbix-agent/Makefile | 1 + net-mgmt/zabbix4-proxy/Makefile | 1 + net-mgmt/zabbix5-proxy/Makefile | 1 + 9 files changed, 9 insertions(+), 1 deletion(-) diff --git a/net-mgmt/collectd/Makefile b/net-mgmt/collectd/Makefile index a67fb7212..d4a91d185 100644 --- a/net-mgmt/collectd/Makefile +++ b/net-mgmt/collectd/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= collectd PLUGIN_VERSION= 1.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Collect system and application performance metrics periodically PLUGIN_DEPENDS= collectd5 PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/lldpd/Makefile b/net-mgmt/lldpd/Makefile index fe282e13e..0b778bcae 100644 --- a/net-mgmt/lldpd/Makefile +++ b/net-mgmt/lldpd/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= lldpd PLUGIN_VERSION= 1.1 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= LLDP allows you to know exactly on which port is a server PLUGIN_DEPENDS= lldpd PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/net-snmp/Makefile b/net-mgmt/net-snmp/Makefile index bd26747fa..77c00a3b9 100644 --- a/net-mgmt/net-snmp/Makefile +++ b/net-mgmt/net-snmp/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= net-snmp PLUGIN_VERSION= 1.4 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Net-SNMP is a daemon for the SNMP protocol PLUGIN_DEPENDS= net-snmp PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/netdata/Makefile b/net-mgmt/netdata/Makefile index 0a4b8cf34..3c5fd6b74 100644 --- a/net-mgmt/netdata/Makefile +++ b/net-mgmt/netdata/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= netdata PLUGIN_VERSION= 1.0 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Real-time performance monitoring PLUGIN_DEPENDS= netdata PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/nrpe/Makefile b/net-mgmt/nrpe/Makefile index e23a519ff..b6c26d948 100644 --- a/net-mgmt/nrpe/Makefile +++ b/net-mgmt/nrpe/Makefile @@ -1,6 +1,6 @@ PLUGIN_NAME= nrpe PLUGIN_VERSION= 1.0 -PLUGIN_REVISION= 1 +PLUGIN_REVISION= 2 PLUGIN_COMMENT= Execute nagios plugins PLUGIN_DEPENDS= nrpe3 PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/telegraf/Makefile b/net-mgmt/telegraf/Makefile index 32f0fd602..284cc8f35 100644 --- a/net-mgmt/telegraf/Makefile +++ b/net-mgmt/telegraf/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= telegraf PLUGIN_VERSION= 1.8.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Agent for collecting metrics and data PLUGIN_DEPENDS= telegraf PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/zabbix-agent/Makefile b/net-mgmt/zabbix-agent/Makefile index 148ae72c1..af1be6611 100644 --- a/net-mgmt/zabbix-agent/Makefile +++ b/net-mgmt/zabbix-agent/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= zabbix-agent PLUGIN_VERSION= 1.8 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Zabbix monitoring agent PLUGIN_DEPENDS= zabbix5-agent PLUGIN_MAINTAINER= opnsense@moov.de diff --git a/net-mgmt/zabbix4-proxy/Makefile b/net-mgmt/zabbix4-proxy/Makefile index ae1fd3930..d9ece0f6f 100644 --- a/net-mgmt/zabbix4-proxy/Makefile +++ b/net-mgmt/zabbix4-proxy/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= zabbix4-proxy PLUGIN_VERSION= 1.2 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Zabbix Proxy enables decentralized monitoring PLUGIN_DEPENDS= zabbix4-proxy PLUGIN_CONFLICTS= zabbix5-proxy diff --git a/net-mgmt/zabbix5-proxy/Makefile b/net-mgmt/zabbix5-proxy/Makefile index 89d4d33dd..fd8d3942b 100644 --- a/net-mgmt/zabbix5-proxy/Makefile +++ b/net-mgmt/zabbix5-proxy/Makefile @@ -1,5 +1,6 @@ PLUGIN_NAME= zabbix5-proxy PLUGIN_VERSION= 1.3 +PLUGIN_REVISION= 1 PLUGIN_COMMENT= Zabbix Proxy enables decentralized monitoring PLUGIN_DEPENDS= zabbix5-proxy PLUGIN_CONFLICTS= zabbix4-proxy