* [git.ipfire.org] IPFire 2.x development tree branch, next, updated. d701756a83e3fcf2fda0b85accc601b9799f7a0a
@ 2021-01-07 11:10 Michael Tremer
0 siblings, 0 replies; only message in thread
From: Michael Tremer @ 2021-01-07 11:10 UTC (permalink / raw)
To: ipfire-scm
[-- Attachment #1: Type: text/plain, Size: 63887 bytes --]
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".
The branch, next has been updated
via d701756a83e3fcf2fda0b85accc601b9799f7a0a (commit)
via eb2cf5d0f3971431d60c0d2e8b5807f8f112a983 (commit)
via 0562cdb360b28802427fc9f51d2e467788222109 (commit)
via f6557ced12d4e6137c8d2fa6d1a376aefb2a0052 (commit)
via 7d425e7cfa9767fedc460cf5e452a736163e738a (commit)
via 211b6bc16e3d1c383e63835572c21d8f7ed63822 (commit)
via 02037c964fade3d58b0e4d9a05d3034955e8f5bc (commit)
via 6f20cb9688535efaf22cc490ffdcbed99088e67a (commit)
via 35b8dc552ddf08bd3d2290621076e323859b23cd (commit)
via 8468f164abec32309e7c09bf044face0a153c56a (commit)
via 34866cace5ffbd587bab91a00d763fa18853746b (commit)
via 6ae847429ed258ce3f7f50317bec3d4ed3efe6cc (commit)
via 84e4274e59912b854363597c97602432a9a5f615 (commit)
via 248902f8c9a9ea1a8b549aff87344e024e1a1d8d (commit)
via 1a886f57d865e6cb568bb6bfe3e043cdd7c2dd0f (commit)
via 36f253d2911c56715b435acee2c14dd14a7cc828 (commit)
via 81790c8a002363bd4bddf46c3621e051c549f702 (commit)
via 1a79ef8e43a4e406a79344341055dd9fa79ce57d (commit)
via f0c39f17390ce71960cf3c6fb06498a20634b263 (commit)
via 7908de2a952edc91b1effa6245dbb6dc80b7dafc (commit)
via 5cef36ccb14424270a451c11d235ece4dc3be946 (commit)
via b37678e92231a7497820b2f39f040cccacfd808e (commit)
via 241bf919fc2d056124c1082a0488bfa4c3fe8298 (commit)
from d0a16dba2835fc1c27c1d12765d7461a9d48c04c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit d701756a83e3fcf2fda0b85accc601b9799f7a0a
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 17:27:36 2021 +0000
make.sh: Build gettext earlier
msgmerge is needed by attr
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit eb2cf5d0f3971431d60c0d2e8b5807f8f112a983
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 15:33:36 2021 +0000
core154: Ship ddns.cgi
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 0562cdb360b28802427fc9f51d2e467788222109
Author: Stefan Schantl <stefan.schantl(a)ipfire.org>
Date: Wed Jan 6 15:18:27 2021 +0100
ddns.cgi: Make dealing with auth tokens more user-friendly.
If a provider supports authentication with a token, now
the username and password fileds will be swapped by some
Java Script code in favour of an input field for the token.
Signed-off-by: Stefan Schantl <stefan.schantl(a)ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit f6557ced12d4e6137c8d2fa6d1a376aefb2a0052
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 15:32:41 2021 +0000
core154: Ship ddns
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 7d425e7cfa9767fedc460cf5e452a736163e738a
Author: Stefan Schantl <stefan.schantl(a)ipfire.org>
Date: Wed Jan 6 15:16:41 2021 +0100
ddns: Add latest upstream patches.
* Add patch to support listing of token providers.
* Add fix to proper encode python string.
Signed-off-by: Stefan Schantl <stefan.schantl(a)ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 211b6bc16e3d1c383e63835572c21d8f7ed63822
Author: Jonatan Schlag <jonatan.schlag(a)ipfire.org>
Date: Wed Jan 6 10:16:49 2021 +0000
unbound: keep probing when servers are down
Till now when a server was in the "blocking regime" there was one probe
made every 15 min, to see if this server is up again. In situations
where all servers where down (e.g. because of a massive package loss)
it could take up to 15 min to have a working dns again.
This patch changes this behaviour in a way that a server marked down is
probed every 2 min.
Fixes: #12557
Signed-off-by: Jonatan Schlag <jonatan.schlag(a)ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 02037c964fade3d58b0e4d9a05d3034955e8f5bc
Author: Adolf Belka <ahb.ipfire(a)gmail.com>
Date: Tue Jan 5 15:20:57 2021 +0100
sshfs: Update to 3.7.1
- Update sshfs from 2.2 to 3.7.1
- Changelog is available at https://github.com/libfuse/sshfs/releases
- Build had to be changed from autotools to meson/ninja
- Change in rootfiles
Signed-off-by: Adolf Belka <ahb.ipfire(a)gmail.com>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 6f20cb9688535efaf22cc490ffdcbed99088e67a
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 15:21:32 2021 +0000
core154: Ship fuse
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 35b8dc552ddf08bd3d2290621076e323859b23cd
Author: Adolf Belka <ahb.ipfire(a)gmail.com>
Date: Tue Jan 5 15:21:19 2021 +0100
fuse: Update to 3.10.1
- Update fuse from 2.9.7 to 3.10.1
- Update also required by sshfs update
- Changelog is available at https://github.com/libfuse/libfuse/releases
- Build had to be changed from autools to meson/ninja
- Rootfiles changed
- namespace conflict fix patch no longer required. Fix now built into kernel.h
Signed-off-by: Adolf Belka <ahb.ipfire(a)gmail.com>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 8468f164abec32309e7c09bf044face0a153c56a
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 15:17:50 2021 +0000
core154: Ship iproute2
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 34866cace5ffbd587bab91a00d763fa18853746b
Author: Adolf Belka <ahb.ipfire(a)gmail.com>
Date: Wed Jan 6 14:43:59 2021 +0100
iproute2: Update to 5.10.0
- Update from 5.8.0 to 5.10.0
- No changelog available
- No changes to the rootfiles
Signed-off-by: Adolf Belka <ahb.ipfire(a)gmail.com>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 6ae847429ed258ce3f7f50317bec3d4ed3efe6cc
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 15:15:22 2021 +0000
core154: Ship iptables
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 84e4274e59912b854363597c97602432a9a5f615
Author: Adolf Belka <ahb.ipfire(a)gmail.com>
Date: Wed Jan 6 14:43:27 2021 +0100
iptables: Update to 1.8.6
- Update from 1.8.5 to 1.8.6
- Changelog info
Arturo Borrero Gonzalez (1):
xtables-translate: don't fail if help was requested
Giuseppe Scrivano (1):
iptables: accept lock file name at runtime
Jan Engelhardt (2):
doc: document danger of applying REJECT to INVALID CTs
build: resolve iptables-apply not getting installed
Maciej Żenczykowski (1):
libxtables: compiler warning fixes for NO_SHARED_LIBS
Pablo Neira Ayuso (4):
extensions: libxt_conntrack: provide translation for DNAT and SNAT --ctstate
iptables: replace libnftnl table list by linux list
iptables-nft: fix basechain policy configuration
configure: bump version for 1.8.6 release
Phil Sutter (31):
xtables-restore: Fix verbose mode table flushing
build: Fix for failing 'make uninstall'
xtables-translate: Use proper clear_cs function
tests: shell: Add help output to run-tests.sh
nft: Make table creation purely implicit
nft: Be lazy when flushing
nft: cache: Drop duplicate chain check
nft: Drop pointless nft_xt_builtin_init() call
nft: Turn nft_chain_save() into a foreach-callback
nft: Use nft_chain_find() in two more places
nft: Reorder enum nft_table_type
nft: Eliminate table list from cache
nft: Fix command name in ip6tables error message
tests: shell: Merge and extend return codes test
xtables-monitor: Fix ip6tables rule printing
nft: Fix for ruleset flush while restoring
Makefile: Add missing man pages to CLEANFILES
nft: cache: Check consistency with NFT_CL_FAKE, too
nft: Extend use of nftnl_chain_list_foreach()
nft: Fold nftnl_rule_list_chain_save() into caller
nft: Use nft_chain_find() in nft_chain_builtin_init()
nft: Fix for broken address mask match detection
extensions: libipt_icmp: Fix translation of type 'any'
libxtables: Make sure extensions register in revision order
libxtables: Simplify pending extension registration
libxtables: Register multiple extensions in ascending order
nft: Make batch_add_chain() return the added batch object
nft: Fix error reporting for refreshed transactions
libiptc: Avoid gcc-10 zero-length array warning
nft: Fix for concurrent noflush restore calls
tests: shell: Improve concurrent noflush restore test a bit
- Rootfiles updated
Signed-off-by: Adolf Belka <ahb.ipfire(a)gmail.com>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 248902f8c9a9ea1a8b549aff87344e024e1a1d8d
Author: Adolf Belka <ahb.ipfire(a)gmail.com>
Date: Tue Jan 5 18:35:16 2021 +0100
stunnel: Update to 5.57
- Update of stunnel from 5.56 to 5.57
- Changelog Version 5.57, 2020.10.11, urgency: HIGH
Security bugfixes
The "redirect" option was fixed to properly handle "verifyChain = yes" (thx to Rob Hoes).
OpenSSL DLLs updated to version 1.1.1h.
New features
New securityLevel configuration file option.
FIPS support for RHEL-based distributions.
Support for modern PostgreSQL clients (thx to Bram Geron).
Windows tooltip texts updated to mention "stunnel".
TLS 1.3 configuration updated for better compatibility.
Bugfixes
Fixed a transfer() loop bug.
Fixed memory leaks on configuration reloading errors.
DH/ECDH initialization restored for client sections.
Delay startup with systemd until network is online.
bin\libssp-0.dll removed when uninstalling.
A number of testing framework fixes and improvements.
- No change to rootfiles
Signed-off-by: Adolf Belka <ahb.ipfire(a)gmail.com>
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 1a886f57d865e6cb568bb6bfe3e043cdd7c2dd0f
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 11:51:36 2021 +0000
misc-progs: ipfirereboot: Remove unused cron functions
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 36f253d2911c56715b435acee2c14dd14a7cc828
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 11:39:32 2021 +0000
configroot: Make extrahd.pl executable
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 81790c8a002363bd4bddf46c3621e051c549f702
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Wed Jan 6 11:19:18 2021 +0000
misc-progs: Set some defaults for CONFIG_ROOT and SNAME
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 1a79ef8e43a4e406a79344341055dd9fa79ce57d
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 17:17:33 2021 +0000
misc-progs: Drop unused upnpctrl
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit f0c39f17390ce71960cf3c6fb06498a20634b263
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 17:15:11 2021 +0000
misc-progs: Drop unused updxsetperms
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 7908de2a952edc91b1effa6245dbb6dc80b7dafc
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 17:02:44 2021 +0000
misc-progs: Drop unused ipfiredeath & ipfirerebirth
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 5cef36ccb14424270a451c11d235ece4dc3be946
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 16:59:14 2021 +0000
misc-progs: Drop unused applejuicectrl
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit b37678e92231a7497820b2f39f040cccacfd808e
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 16:53:36 2021 +0000
Package extended attributes in distro.img and Core Updates
System capabilities are stored in extended file system attributes
which are by default not stored in tar balls.
This patch ensures that they are packaged and extracted.
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
commit 241bf919fc2d056124c1082a0488bfa4c3fe8298
Author: Michael Tremer <michael.tremer(a)ipfire.org>
Date: Tue Jan 5 16:09:16 2021 +0000
make.sh: Build acl and attr earlier
These libraries are needed to link tar against them for
extended attribute support
Signed-off-by: Michael Tremer <michael.tremer(a)ipfire.org>
-----------------------------------------------------------------------
Summary of changes:
config/rootfiles/common/configroot | 4 +-
config/rootfiles/common/fuse | 68 ++---
config/rootfiles/common/iptables | 1 +
config/rootfiles/common/misc-progs | 2 -
config/rootfiles/common/sshfs | 2 +
.../{oldcore/104 => core/154}/filelists/ddns | 0
config/rootfiles/core/154/filelists/files | 3 +
.../{oldcore/112 => core/154}/filelists/fuse | 0
.../{oldcore/106 => core/154}/filelists/iproute2 | 0
.../{oldcore/123 => core/154}/filelists/iptables | 0
.../{oldcore/121 => core/154}/filelists/tar | 0
config/rootfiles/core/154/update.sh | 2 +
config/unbound/unbound.conf | 3 +
html/cgi-bin/ddns.cgi | 112 +++++++-
langs/de/cgi-bin/de.pl | 2 +
langs/en/cgi-bin/en.pl | 2 +
lfs/Config | 5 +-
lfs/cdrom | 12 +-
lfs/configroot | 3 +
lfs/core-updates | 7 +-
lfs/ddns | 2 +
lfs/flash-images | 4 +-
lfs/fuse | 20 +-
lfs/iproute2 | 4 +-
lfs/iptables | 4 +-
lfs/sshfs | 14 +-
lfs/stunnel | 6 +-
make.sh | 6 +-
src/installer/main.c | 2 +-
src/misc-progs/Makefile | 5 +-
src/misc-progs/applejuicectrl.c | 44 ----
src/misc-progs/ipfiredeath.c | 25 --
src/misc-progs/ipfirerebirth.c | 25 --
src/misc-progs/ipfirereboot.c | 49 ----
src/misc-progs/setuid.h | 8 +
src/misc-progs/updxsetperms.c | 28 --
src/misc-progs/upnpctrl.c | 54 ----
src/pakfire/lib/functions.sh | 3 +-
...dns-013-add-option-to-list-token-provider.patch | 292 +++++++++++++++++++++
src/patches/ddns-013-proper-encode-string.patch | 24 ++
.../fuse-2.9.2-namespace-conflict-fix.patch | 21 --
41 files changed, 528 insertions(+), 340 deletions(-)
copy config/rootfiles/{oldcore/104 => core/154}/filelists/ddns (100%)
copy config/rootfiles/{oldcore/112 => core/154}/filelists/fuse (100%)
copy config/rootfiles/{oldcore/106 => core/154}/filelists/iproute2 (100%)
copy config/rootfiles/{oldcore/123 => core/154}/filelists/iptables (100%)
copy config/rootfiles/{oldcore/121 => core/154}/filelists/tar (100%)
delete mode 100644 src/misc-progs/applejuicectrl.c
delete mode 100644 src/misc-progs/ipfiredeath.c
delete mode 100644 src/misc-progs/ipfirerebirth.c
delete mode 100644 src/misc-progs/updxsetperms.c
delete mode 100644 src/misc-progs/upnpctrl.c
create mode 100644 src/patches/ddns-013-add-option-to-list-token-provider.patch
create mode 100644 src/patches/ddns-013-proper-encode-string.patch
delete mode 100644 src/patches/fuse-2.9.2-namespace-conflict-fix.patch
Difference in files:
diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot
index 1027b5139..8c91ca5d5 100644
--- a/config/rootfiles/common/configroot
+++ b/config/rootfiles/common/configroot
@@ -51,8 +51,8 @@ var/ipfire/ethernet
#var/ipfire/ethernet/vlans
#var/ipfire/ethernet/wireless
var/ipfire/extrahd
-#var/ipfire/extrahd/bin
-#var/ipfire/extrahd/bin/extrahd.pl
+var/ipfire/extrahd/bin
+var/ipfire/extrahd/bin/extrahd.pl
#var/ipfire/extrahd/devices
#var/ipfire/extrahd/partitions
#var/ipfire/extrahd/scan
diff --git a/config/rootfiles/common/fuse b/config/rootfiles/common/fuse
index 2cd91cb0c..bae55b321 100644
--- a/config/rootfiles/common/fuse
+++ b/config/rootfiles/common/fuse
@@ -1,30 +1,38 @@
-#etc/rc.d/init.d/fuse
-etc/udev/rules.d/99-fuse.rules
-sbin/mount.fuse
-usr/bin/fusermount
-usr/bin/ulockmgr_server
-#usr/include/fuse
-#usr/include/fuse.h
-#usr/include/fuse/cuse_lowlevel.h
-#usr/include/fuse/fuse.h
-#usr/include/fuse/fuse_common.h
-#usr/include/fuse/fuse_common_compat.h
-#usr/include/fuse/fuse_compat.h
-#usr/include/fuse/fuse_lowlevel.h
-#usr/include/fuse/fuse_lowlevel_compat.h
-#usr/include/fuse/fuse_opt.h
-#usr/include/ulockmgr.h
-#usr/lib/libfuse.a
-#usr/lib/libfuse.la
-usr/lib/libfuse.so
-usr/lib/libfuse.so.2
-usr/lib/libfuse.so.2.9.7
-#usr/lib/libulockmgr.a
-#usr/lib/libulockmgr.la
-usr/lib/libulockmgr.so
-usr/lib/libulockmgr.so.1
-usr/lib/libulockmgr.so.1.0.1
-#usr/lib/pkgconfig/fuse.pc
-#usr/share/man/man1/fusermount.1
-#usr/share/man/man1/ulockmgr_server.1
-#usr/share/man/man8/mount.fuse.8
+#etc/rc.d/init.d/fuse3
+#lib/udev/rules.d/99-fuse3.rules
+etc/udev/rules.d/99-fuse3.rules
+sbin/mount.fuse3
+usr/bin/fusermount3
+#usr/local/bin/fusermount3
+#usr/local/etc
+#usr/local/etc/fuse.conf
+#usr/local/include/fuse3
+#usr/local/include/fuse3/cuse_lowlevel.h
+#usr/local/include/fuse3/fuse.h
+#usr/local/include/fuse3/fuse_common.h
+#usr/local/include/fuse3/fuse_log.h
+#usr/local/include/fuse3/fuse_lowlevel.h
+#usr/local/include/fuse3/fuse_opt.h
+#usr/local/lib/libfuse3.so
+#usr/local/lib/libfuse3.so.3
+#usr/local/lib/libfuse3.so.3.10.1
+#usr/local/lib/pkgconfig
+#usr/local/lib/pkgconfig/fuse3.pc
+#usr/local/sbin/mount.fuse3
+#usr/local/share/man/man1/fusermount3.1
+#usr/local/share/man/man8/mount.fuse3.8
+#etc/fuse.conf
+#usr/include/fuse3
+#usr/include/fuse3/cuse_lowlevel.h
+#usr/include/fuse3/fuse.h
+#usr/include/fuse3/fuse_common.h
+#usr/include/fuse3/fuse_log.h
+#usr/include/fuse3/fuse_lowlevel.h
+#usr/include/fuse3/fuse_opt.h
+#usr/lib/libfuse3.so
+usr/lib/libfuse3.so.3
+usr/lib/libfuse3.so.3.10.1
+#usr/lib/pkgconfig/fuse3.pc
+#usr/sbin/mount.fuse3
+#usr/share/man/man1/fusermount3.1
+#usr/share/man/man8/mount.fuse3.8
diff --git a/config/rootfiles/common/iptables b/config/rootfiles/common/iptables
index 2246ee17c..564578216 100644
--- a/config/rootfiles/common/iptables
+++ b/config/rootfiles/common/iptables
@@ -133,6 +133,7 @@ sbin/ip6tables-apply
sbin/ip6tables-restore
sbin/ip6tables-save
sbin/iptables
+sbin/iptables-apply
#sbin/iptables-legacy
#sbin/iptables-legacy-restore
#sbin/iptables-legacy-save
diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/misc-progs
index c48a474b2..a335dba7a 100644
--- a/config/rootfiles/common/misc-progs
+++ b/config/rootfiles/common/misc-progs
@@ -1,5 +1,4 @@
usr/local/bin/addonctrl
-#usr/local/bin/applejuicectrl
usr/local/bin/backupctrl
usr/local/bin/captivectrl
#usr/local/bin/clamavctrl
@@ -34,7 +33,6 @@ usr/local/bin/timectrl
#usr/local/bin/torctrl
usr/local/bin/unboundctrl
usr/local/bin/updxlratorctrl
-usr/local/bin/upnpctrl
usr/local/bin/urlfilterctrl
#usr/local/bin/wiohelper
#usr/local/bin/wioscan
diff --git a/config/rootfiles/common/sshfs b/config/rootfiles/common/sshfs
index 2cafa3e24..579b938f5 100644
--- a/config/rootfiles/common/sshfs
+++ b/config/rootfiles/common/sshfs
@@ -1,2 +1,4 @@
usr/bin/sshfs
+#usr/sbin/mount.fuse.sshfs
+#usr/sbin/mount.sshfs
#usr/share/man/man1/sshfs.1
diff --git a/config/rootfiles/core/154/filelists/ddns b/config/rootfiles/core/154/filelists/ddns
new file mode 120000
index 000000000..739516420
--- /dev/null
+++ b/config/rootfiles/core/154/filelists/ddns
@@ -0,0 +1 @@
+../../../common/ddns
\ No newline at end of file
diff --git a/config/rootfiles/core/154/filelists/files b/config/rootfiles/core/154/filelists/files
index 1861bb925..8151a145a 100644
--- a/config/rootfiles/core/154/filelists/files
+++ b/config/rootfiles/core/154/filelists/files
@@ -1,8 +1,10 @@
etc/system-release
etc/issue
etc/os-release
+opt/pakfire/lib/functions.sh
srv/web/ipfire/cgi-bin/country.cgi
srv/web/ipfire/cgi-bin/credits.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
srv/web/ipfire/cgi-bin/dhcp.cgi
srv/web/ipfire/cgi-bin/extrahd.cgi
srv/web/ipfire/cgi-bin/gpl.cgi
@@ -12,5 +14,6 @@ srv/web/ipfire/cgi-bin/pakfire.cgi
srv/web/ipfire/cgi-bin/remote.cgi
srv/web/ipfire/cgi-bin/services.cgi
usr/local/bin/sshctrl
+var/ipfire/extrahd/bin/extrahd.pl
var/ipfire/general-functions.pl
var/ipfire/langs
diff --git a/config/rootfiles/core/154/filelists/fuse b/config/rootfiles/core/154/filelists/fuse
new file mode 120000
index 000000000..570edaade
--- /dev/null
+++ b/config/rootfiles/core/154/filelists/fuse
@@ -0,0 +1 @@
+../../../common/fuse
\ No newline at end of file
diff --git a/config/rootfiles/core/154/filelists/iproute2 b/config/rootfiles/core/154/filelists/iproute2
new file mode 120000
index 000000000..05f0f71fb
--- /dev/null
+++ b/config/rootfiles/core/154/filelists/iproute2
@@ -0,0 +1 @@
+../../../common/iproute2
\ No newline at end of file
diff --git a/config/rootfiles/core/154/filelists/iptables b/config/rootfiles/core/154/filelists/iptables
new file mode 120000
index 000000000..8caf12bcc
--- /dev/null
+++ b/config/rootfiles/core/154/filelists/iptables
@@ -0,0 +1 @@
+../../../common/iptables
\ No newline at end of file
diff --git a/config/rootfiles/core/154/filelists/tar b/config/rootfiles/core/154/filelists/tar
new file mode 120000
index 000000000..3e585d2eb
--- /dev/null
+++ b/config/rootfiles/core/154/filelists/tar
@@ -0,0 +1 @@
+../../../common/tar
\ No newline at end of file
diff --git a/config/rootfiles/core/154/update.sh b/config/rootfiles/core/154/update.sh
index 37348e0df..a1523f742 100644
--- a/config/rootfiles/core/154/update.sh
+++ b/config/rootfiles/core/154/update.sh
@@ -32,6 +32,8 @@ for (( i=1; i<=$core; i++ )); do
done
# Remove files
+rm -vf \
+ /usr/local/bin/upnpctrl
# Stop services
diff --git a/config/unbound/unbound.conf b/config/unbound/unbound.conf
index 3aab6ea46..f78aaae8c 100644
--- a/config/unbound/unbound.conf
+++ b/config/unbound/unbound.conf
@@ -60,6 +60,9 @@ server:
# Allow access from everywhere
access-control: 0.0.0.0/0 allow
+ # Timeout behaviour
+ infra-keep-probing: yes
+
# Bootstrap root servers
root-hints: "/etc/unbound/root.hints"
diff --git a/html/cgi-bin/ddns.cgi b/html/cgi-bin/ddns.cgi
index 024eaf7f6..9b58db895 100644
--- a/html/cgi-bin/ddns.cgi
+++ b/html/cgi-bin/ddns.cgi
@@ -59,14 +59,18 @@ $settings{'HOSTNAME'} = '';
$settings{'DOMAIN'} = '';
$settings{'LOGIN'} = '';
$settings{'PASSWORD'} = '';
+$settings{'TOKEN'} = '';
$settings{'ENABLED'} = '';
$settings{'PROXY'} = '';
$settings{'SERVICE'} = '';
$settings{'ACTION'} = '';
-# Get supported ddns providers.
-my @providers = &GetProviders();
+# Get all supported ddns providers.
+my @providers = &GetProviders("all");
+
+# Get provider which support a token based authentication mechanism.
+my @token_provider = &GetProviders("token-providers");
# Hook to regenerate the configuration files, if cgi got called from command line.
if ($ENV{"REMOTE_ADDR"} eq "") {
@@ -178,6 +182,11 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
$errormessage = $Lang::tr{'password not set'};
}
+ # Check if a token has been given for provider which support tokens.
+ if (($settings{'SERVICE'} ~~ @token_provider) && ($settings{'TOKEN'} eq '')) {
+ $errormessage = $Lang::tr{'token not set'};
+ }
+
# Go furter if there was no error.
if (!$errormessage) {
# Splitt hostname field into 2 parts for storrage.
@@ -189,6 +198,16 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
$settings{'ENABLED'} = 'off';
}
+ # Handle token provider.
+ if($settings{'SERVICE'} ~~ @token_provider) {
+ # Clear username and password if they contain values.
+ undef($settings{'LOGIN'});
+ undef($settings{'PASSWORD'});
+
+ # Assign the token as a password for saving.
+ $settings{'PASSWORD'} = $settings{'TOKEN'};
+ }
+
# Handle adding new accounts.
if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
# Open /var/ipfire/ddns/config for writing.
@@ -234,7 +253,8 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
# Write out notice to logfile.
&General::log($Lang::tr{'ddns hostname modified'});
}
- undef $settings{'ID'};
+ # Clear settings hash.
+ %settings = '';
# Update ddns config file.
&GenerateDDNSConfigFile();
@@ -307,6 +327,7 @@ if ($settings{'ACTION'} eq $Lang::tr{'edit'}) {
$settings{'WILDCARDS'} = $temp[4];
$settings{'LOGIN'} = $temp[5];
$settings{'PASSWORD'} = $temp[6];
+ $settings{'TOKEN'} = $temp[6];
$settings{'ENABLED'} = $temp[7];
}
@@ -334,6 +355,58 @@ if (!$settings{'ACTION'}) {
}
&Header::openpage($Lang::tr{'dynamic dns'}, 1, '');
+
+### Java Script ###
+print"<script>\n";
+
+# Generate Java Script Array which contains the provider that support token.
+my $line = "";
+$line = join("', '", @token_provider);
+
+print "\t// Array which contains the providers that support token.\n";
+print "\ttoken_provider = ['$line']\;\n\n";
+
+print <<END
+ // Java Script function to swap the text input fields for
+ // username and password or token.
+ var update_auth = function() {
+ if(inArray(\$('#SERVICE').val(), token_provider)) {
+ \$('.username').hide();
+ \$('.password').hide();
+ \$('.token').show();
+ } else {
+ \$('.username').show();
+ \$('.password').show();
+ \$('.token').hide();
+ }
+ };
+
+ // Java Script function to check if a given value is part of
+ // an array.
+ function inArray(value,array) {
+ var count=array.length;
+
+ for(var i=0;i<count;i++) {
+ if(array[i]===value){
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ // JQuery function to call corresponding function when
+ // the service provider is changed or the page is loaded for showing/hiding
+ // the username/password or token area.
+ \$(document).ready(function() {
+ \$('#SERVICE').change(update_auth);
+ update_auth();
+ });
+
+</script>
+END
+;
+
&Header::openbigbox('100%', 'left', '', $errormessage);
# Read file for general ddns settings.
@@ -414,7 +487,7 @@ print <<END
END
;
# Generate dropdown menu for service selection.
- print"<select size='1' name='SERVICE'>\n";
+ print"<select size='1' name='SERVICE' id='SERVICE'>\n";
my $selected;
@@ -440,11 +513,15 @@ print <<END
<tr>
<td class='base'>$Lang::tr{'enabled'}</td>
<td><input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>
- <td class='base'>$Lang::tr{'username'}</td>
- <td><input type='text' name='LOGIN' value='$settings{'LOGIN'}' /></td>
+
+ <td class='username'>$Lang::tr{'username'}</td>
+ <td class='username'><input type='text' name='LOGIN' value='$settings{'LOGIN'}' /></td>
+
+ <td class='token' style='display:none'>$Lang::tr{'token'}</td>
+ <td class='token' style='display:none'><input type='text' name='TOKEN' value='$settings{'TOKEN'}' /></td>
</tr>
- <tr>
+ <tr class='password'>
<td class='base'></td>
<td></td>
<td class='base'>$Lang::tr{'password'}</td>
@@ -665,8 +742,8 @@ sub GenerateDDNSConfigFile {
my $use_token = 0;
- # Check if token based auth is configured.
- if ($username eq "token") {
+ # Handle token based auth for various providers.
+ if ($provider ~~ @token_provider) {
$use_token = 1;
}
@@ -707,9 +784,20 @@ sub GenerateDDNSConfigFile {
}
# Function which generates an array (@providers) which contains the supported providers.
-sub GetProviders {
- # Get supported providers.
- open(PROVIDERS, "/usr/bin/ddns list-providers |");
+sub GetProviders ($) {
+ my ($type) = @_;
+
+ # Set default type to get all providers
+ $type = $type ? $type : "all";
+
+ # Check if the requested type is "token-providers".
+ if ($type eq "token-providers") {
+ # Call ddns util to only get providers which supports token based auth.
+ open(PROVIDERS, "/usr/bin/ddns list-token-providers |");
+ } else {
+ # Get all supported providers.
+ open(PROVIDERS, "/usr/bin/ddns list-providers |");
+ }
# Create new array to store the providers.
my @providers = ();
diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl
index 87181c184..307b8a97c 100644
--- a/langs/de/cgi-bin/de.pl
+++ b/langs/de/cgi-bin/de.pl
@@ -2374,6 +2374,8 @@
'to warn email bad' => 'An E-Mail-Adresse ist nicht gültig',
'toggle' => 'Pause/Resume',
'toggle enable disable' => 'Aktivieren oder Deaktivieren',
+'token' => 'Token:',
+'token not set' => 'Kein Token angegeben.',
'tone' => 'Ton',
'tone dial' => 'Tonwahl:',
'too long 80 char max' => ' ist zu lang, es sind maximal 80 Zeichen erlaubt',
diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl
index 625c6899f..4d23f7aac 100644
--- a/langs/en/cgi-bin/en.pl
+++ b/langs/en/cgi-bin/en.pl
@@ -2412,6 +2412,8 @@
'to warn email bad' => 'To e-mail address is not valid',
'toggle' => 'pause/resume',
'toggle enable disable' => 'Enable or disable',
+'token' => 'Token:',
+'token not set' => 'No Token has been given.',
'tone' => 'Tone',
'tone dial' => 'Tone dial:',
'too long 80 char max' => ' is too long, maximum allowed is 80 characters',
diff --git a/lfs/Config b/lfs/Config
index b16da91bd..524ba35c0 100644
--- a/lfs/Config
+++ b/lfs/Config
@@ -70,7 +70,10 @@ else
PREFIX = /usr
endif
-TAR_OPTIONS = --xz
+TAR_OPTIONS = \
+ --format=pax \
+ --acls \
+ --xattrs --xattrs-include='*'
# URLs that are common sources of downloads. If you're having trouble with
# a site you should change its URL to that of a suitable mirror site.
diff --git a/lfs/cdrom b/lfs/cdrom
index f18b80a03..a764416d0 100644
--- a/lfs/cdrom
+++ b/lfs/cdrom
@@ -32,12 +32,6 @@ TARGET = $(DIR_INFO)/$(THISAPP)
# Fail when there is an error in the tar pipe
SHELL=/bin/bash -o pipefail
-ifeq "$(BUILD_PLATFORM)" "arm"
- TAR_OPTIONS =
-else
- TAR_OPTIONS = --lzma
-endif
-
HAS_MEMTEST = 0
HAS_IPXE = 0
HAS_ISOLINUX = 0
@@ -166,12 +160,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
# Compress root filesystem
# Reason for this tar+untar+tar is removing of entries listed two or more in src/ROOTFILES
rm -rf $(DIR_TMP)/root && mkdir -p $(DIR_TMP)/root
- tar -c --exclude='#*' --exclude='proc/*' --exclude='dev/pts/*' --exclude='tmp/*' \
+ tar $(TAR_OPTIONS) -c --exclude='#*' --exclude='proc/*' --exclude='dev/pts/*' --exclude='tmp/*' \
--exclude='__pycache__' \
- -C / --files-from=$(DIR_TMP)/ROOTFILES | tar -x -C $(DIR_TMP)/root
+ -C / --files-from=$(DIR_TMP)/ROOTFILES | tar $(TAR_OPTIONS) -x -C $(DIR_TMP)/root
rm -f $(DIR_TMP)/ROOTFILES
mkdir $(DIR_TMP)/root/sys
- cd $(DIR_TMP)/root && tar cf - * | xz $(XZ_OPT) > $(DIR_TMP)/cdrom/distro.img
+ cd $(DIR_TMP)/root && tar $(TAR_OPTIONS) -cf - * | xz $(XZ_OPT) > $(DIR_TMP)/cdrom/distro.img
rm -rf $(DIR_TMP)/root
# Other files
diff --git a/lfs/configroot b/lfs/configroot
index a37c2c401..bc8c0283f 100644
--- a/lfs/configroot
+++ b/lfs/configroot
@@ -151,6 +151,9 @@ $(TARGET) :
# set converters executable
chmod 755 /usr/sbin/convert-*
+ # Make extrahd.pl executable
+ chmod 755 /var/ipfire/extrahd/bin/extrahd.pl
+
# Modify variables in header.pl
sed -i -e "s+CONFIG_ROOT+$(CONFIG_ROOT)+g" \
-e "s+VERSION+$(VERSION)+g" \
diff --git a/lfs/core-updates b/lfs/core-updates
index e0dfa69f4..fa8b36d50 100644
--- a/lfs/core-updates
+++ b/lfs/core-updates
@@ -28,7 +28,6 @@ VER = ipfire
THISAPP = core-updates
TARGET = $(DIR_INFO)/$(THISAPP)
-TAR_OPTIONS = --xz
###############################################################################
# Top-level Rules
@@ -72,13 +71,13 @@ core/%:
sed -e "s/KVER/$(KVER)/g" -i /tmp/ROOTFILES
#Remove doubled files with tar/untar/tar to save space
- tar -c --exclude='proc/*' --exclude='tmp/ROOTFILES' --exclude='__pycache__' --exclude='#*' --exclude='dev/pts/*' \
+ tar $(TAR_OPTIONS) -c --exclude='proc/*' --exclude='tmp/ROOTFILES' --exclude='__pycache__' --exclude='#*' --exclude='dev/pts/*' \
--exclude-from=$(DIR_SRC)/config/rootfiles/$@/exclude \
-C / --files-from=/tmp/ROOTFILES -f /$(SNAME).tar
mv -f /tmp/ROOTFILES /install/packages/package/ROOTFILES
- tar -p --numeric-owner -x -C /tmp -f /$(SNAME).tar
+ tar $(TAR_OPTIONS) -p --numeric-owner -x -C /tmp -f /$(SNAME).tar
rm -f /$(SNAME).tar
- cd /tmp && XZ_OPT="$(XZ_OPT)" tar cJf /install/packages/package/files.tar.xz $(TAR_OPTIONS) * && rm -rf *
+ cd /tmp && XZ_OPT="$(XZ_OPT)" tar $(TAR_OPTIONS) -cJf /install/packages/package/files.tar.xz $(TAR_OPTIONS) * && rm -rf *
cat /install/packages/package/ROOTFILES | grep -v "#" > /install/packages/package/ROOTFILES.tmp
rm /install/packages/package/ROOTFILES
mv /install/packages/package/ROOTFILES.tmp /install/packages/package/ROOTFILES
diff --git a/lfs/ddns b/lfs/ddns
index 2a6dbca2b..98b374ed1 100644
--- a/lfs/ddns
+++ b/lfs/ddns
@@ -75,6 +75,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ddns-013-dyfi-use-https.patch
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ddns-013-ddnss-fix-unhandled-exeption-on-update-patch
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ddns-013-duckdns-new-api.patch
+ cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ddns-013-add-option-to-list-token-provider.patch
+ cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ddns-013-proper-encode-string.patch
cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
cd $(DIR_APP) && ./configure \
diff --git a/lfs/flash-images b/lfs/flash-images
index 5f39c488f..9fd925055 100644
--- a/lfs/flash-images
+++ b/lfs/flash-images
@@ -152,9 +152,9 @@ endif
# Install IPFire
ifneq "$(BUILD_PLATFORM)" "arm"
- tar -x --xz -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
+ tar $(TAR_OPTIONS) -x --xz -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
else
- tar -x -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
+ tar $(TAR_OPTIONS) -x -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
endif
-touch $(MNThdd)/lib/modules/$(KVER)-ipfire/modules.dep
mkdir $(MNThdd)/proc
diff --git a/lfs/fuse b/lfs/fuse
index db649a880..167612f68 100644
--- a/lfs/fuse
+++ b/lfs/fuse
@@ -24,10 +24,10 @@
include Config
-VER = 2.9.7
+VER = 3.10.1
THISAPP = fuse-$(VER)
-DL_FILE = $(THISAPP).tar.gz
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 9bd4ce8184745fd3d000ca2692adacdb
+$(DL_FILE)_MD5 = e973012119e98b048307558271b5b296
install : $(TARGET)
@@ -72,12 +72,14 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fuse-2.9.2-namespace-conflict-fix.patch
- cd $(DIR_APP) && ./configure \
- --prefix=/usr
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+ cd $(DIR_APP) && meson --prefix=/usr builddir && cd builddir && ninja && ninja install
+
+ # Move mount.fuse3 to same location as mount.fuse was in previous version
+ mv -v /usr/sbin/mount.fuse3 /sbin
+
+ # Move 99-fuse3 rules to same udev location as in previous version of fuse
+ mv -v /lib/udev/rules.d/99-fuse3.rules /etc/udev/rules.d
- cd $(DIR_APP) && make $(MAKETUNING)
- cd $(DIR_APP) && make install
@rm -rf $(DIR_APP)
@$(POSTBUILD)
diff --git a/lfs/iproute2 b/lfs/iproute2
index 53fd4a59e..27e246d23 100644
--- a/lfs/iproute2
+++ b/lfs/iproute2
@@ -24,7 +24,7 @@
include Config
-VER = 5.8.0
+VER = 5.10.0
THISAPP = iproute2-$(VER)
DL_FILE = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e2016acc07d91b2508916c459a8435af
+$(DL_FILE)_MD5 = 19ffea480a21e600453776b7225f3319
install : $(TARGET)
diff --git a/lfs/iptables b/lfs/iptables
index afe452f10..852cde6cc 100644
--- a/lfs/iptables
+++ b/lfs/iptables
@@ -24,7 +24,7 @@
include Config
-VER = 1.8.5
+VER = 1.8.6
THISAPP = iptables-$(VER)
DL_FILE = $(THISAPP).tar.bz2
@@ -41,7 +41,7 @@ objects = $(DL_FILE) \
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
netfilter-layer7-v2.23.tar.gz = $(URL_IPFIRE)/netfilter-layer7-v2.23.tar.gz
-$(DL_FILE)_MD5 = 42cfa96d4ac5eb93ee7ed8dd85cfe8fb
+$(DL_FILE)_MD5 = bc0f0adccc93c09dc5b7507ccba93148
netfilter-layer7-v2.23.tar.gz_MD5 = 10910b6173d18e426cb56ae7e1300eeb
install : $(TARGET)
diff --git a/lfs/sshfs b/lfs/sshfs
index 23fbd18ca..1e7706194 100644
--- a/lfs/sshfs
+++ b/lfs/sshfs
@@ -24,10 +24,10 @@
include Config
-VER = 2.2
+VER = 3.7.1
-THISAPP = sshfs-fuse-$(VER)
-DL_FILE = $(THISAPP).tar.gz
+THISAPP = sshfs-$(VER)
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 26e9206eb5169e87e6f95f54bc005a4f
+$(DL_FILE)_MD5 = 22ac23d05ca7c56fb568627f086374d0
install : $(TARGET)
@@ -72,9 +72,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && ./configure --prefix=/usr
- cd $(DIR_APP) && make $(MAKETUNING)
- cd $(DIR_APP) && make install
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+ cd $(DIR_APP) && meson --prefix=/usr builddir && cd builddir && ninja && ninja install
@rm -rf $(DIR_APP)
@$(POSTBUILD)
diff --git a/lfs/stunnel b/lfs/stunnel
index 1ddb2a963..eab56e721 100644
--- a/lfs/stunnel
+++ b/lfs/stunnel
@@ -24,7 +24,7 @@
include Config
-VER = 5.56
+VER = 5.57
THISAPP = stunnel-$(VER)
DL_FILE = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = stunnel
-PAK_VER = 5
+PAK_VER = 6
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 01b0ca9e071f582ff803a85d5ed72166
+$(DL_FILE)_MD5 = 6bbe921f8d2ab4967dc7ff42f6e5d45a
install : $(TARGET)
diff --git a/make.sh b/make.sh
index cf4e779e4..86359ce15 100755
--- a/make.sh
+++ b/make.sh
@@ -1104,6 +1104,9 @@ buildbase() {
lfsmake2 xz
lfsmake2 pcre
lfsmake2 pcre-compat
+ lfsmake2 gettext
+ lfsmake2 attr
+ lfsmake2 acl
lfsmake2 bash
lfsmake2 diffutils
lfsmake2 e2fsprogs
@@ -1111,7 +1114,6 @@ buildbase() {
lfsmake2 findutils
lfsmake2 flex
lfsmake2 gawk
- lfsmake2 gettext
lfsmake2 go
lfsmake2 grep
lfsmake2 groff
@@ -1269,8 +1271,6 @@ buildipfire() {
lfsmake2 slang
lfsmake2 newt
lfsmake2 libsmooth
- lfsmake2 attr
- lfsmake2 acl
lfsmake2 libcap
lfsmake2 libcap-ng
lfsmake2 pciutils
diff --git a/src/installer/main.c b/src/installer/main.c
index 3eff481b0..00d172888 100644
--- a/src/installer/main.c
+++ b/src/installer/main.c
@@ -781,7 +781,7 @@ int main(int argc, char *argv[]) {
// Extract files...
snprintf(commandstring, STRING_SIZE,
- "/bin/tar -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null");
+ "/bin/tar --acls --xattrs --xattrs-include='*' -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null");
if (runcommandwithprogress(60, 4, title, commandstring, INST_FILECOUNT,
_("Installing the system..."), logfile)) {
diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile
index bea54e773..896b1e916 100644
--- a/src/misc-progs/Makefile
+++ b/src/misc-progs/Makefile
@@ -25,15 +25,14 @@ LIBS = -lsmooth -lnewt
PROGS = iowrap
SUID_PROGS = squidctrl sshctrl ipfirereboot \
ipsecctrl timectrl dhcpctrl suricatactrl \
- applejuicectrl rebuildhosts backupctrl collectdctrl \
+ rebuildhosts backupctrl collectdctrl \
logwatch wioscan wiohelper openvpnctrl firewallctrl \
wirelessctrl getipstat qosctrl launch-ether-wake \
- redctrl syslogdctrl extrahdctrl sambactrl upnpctrl \
+ redctrl syslogdctrl extrahdctrl sambactrl \
smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \
getconntracktable wirelessclient torctrl ddnsctrl unboundctrl \
captivectrl
-SUID_UPDX = updxsetperms
OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS))
diff --git a/src/misc-progs/applejuicectrl.c b/src/misc-progs/applejuicectrl.c
deleted file mode 100644
index 9d63e51f2..000000000
--- a/src/misc-progs/applejuicectrl.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/* This file is part of the IPFire Firewall.
- *
- * This program is distributed under the terms of the GNU General Public
- * Licence. See the file COPYING for details.
- *
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include "setuid.h"
-
-int main(int argc, char *argv[]) {
-
- if (!(initsetuid()))
- exit(1);
-
- if (argc < 2) {
- fprintf(stderr, "\nNo argument given.\n\napplejuicectrl (start|stop|restart)\n\n");
- exit(1);
- }
-
- if (strcmp(argv[1], "start") == 0) {
- safe_system("/etc/rc.d/init.d/applejuice start");
- } else if (strcmp(argv[1], "stop") == 0) {
- safe_system("/etc/rc.d/init.d/applejuice stop");
- } else if (strcmp(argv[1], "restart") == 0) {
- safe_system("/etc/rc.d/init.d/applejuice restart");
- } else if (strcmp(argv[1], "enable") == 0) {
- safe_system("ln -fs ../init.d/applejuice /etc/rc.d/rc3.d/S99applejuice >/dev/null 2>&1");
- safe_system("ln -fs ../init.d/applejuice /etc/rc.d/rc0.d/K00applejuice >/dev/null 2>&1");
- safe_system("ln -fs ../init.d/applejuice /etc/rc.d/rc6.d/K00applejuice >/dev/null 2>&1");
- } else if (strcmp(argv[1], "disable") == 0) {
- safe_system("rm -f /etc/rc.d/rc*.d/*applejuice >/dev/null 2>&1");
- } else {
- fprintf(stderr, "\nBad argument given.\n\napplejuicectrl (start|stop|restart)\n\n");
- exit(1);
- }
-
- return 0;
-}
diff --git a/src/misc-progs/ipfiredeath.c b/src/misc-progs/ipfiredeath.c
deleted file mode 100644
index 8a13fa60a..000000000
--- a/src/misc-progs/ipfiredeath.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* SmoothWall helper program - smoothiedeath
- *
- * This program is distributed under the terms of the GNU General Public
- * Licence. See the file COPYING for details.
- *
- * (c) Lawrence Manning, 2001
- * Simple program intended to be installed setuid(0) that can be used for
- * starting shutdown.
- *
- * $Id: ipcopdeath.c,v 1.2 2003/12/11 10:57:34 riddles Exp $
- *
- */
-
-#include <stdlib.h>
-#include "setuid.h"
-
-int main(void)
-{
- if (!(initsetuid()))
- exit(1);
-
- safe_system("/sbin/shutdown -h now");
-
- return 0;
-}
diff --git a/src/misc-progs/ipfirerebirth.c b/src/misc-progs/ipfirerebirth.c
deleted file mode 100644
index 10230c3e1..000000000
--- a/src/misc-progs/ipfirerebirth.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* SmoothWall helper program - smoothierebirth
- *
- * This program is distributed under the terms of the GNU General Public
- * Licence. See the file COPYING for details.
- *
- * (c) Lawrence Manning, 2001
- * Simple program intended to be installed setuid(0) that can be used for
- * starting reboot.
- *
- * $Id: ipcoprebirth.c,v 1.2 2003/12/11 10:57:34 riddles Exp $
- *
- */
-
-#include <stdlib.h>
-#include "setuid.h"
-
-int main(void)
-{
- if (!(initsetuid()))
- exit(1);
-
- safe_system("/sbin/shutdown -r now");
-
- return 0;
-}
diff --git a/src/misc-progs/ipfirereboot.c b/src/misc-progs/ipfirereboot.c
index 5e758791c..6f5ecf89a 100644
--- a/src/misc-progs/ipfirereboot.c
+++ b/src/misc-progs/ipfirereboot.c
@@ -31,9 +31,6 @@
#define OP_REBOOT "boot"
#define OP_REBOOT_FS "bootfs" // add filesystem check option (not yet in GUI)
#define OP_SHUTDOWN "down"
-#define OP_SCHEDULE_ADD "cron+"
-#define OP_SCHEDULE_REM "cron-"
-#define OP_SCHEDULE_GET "cron?"
int main(int argc, char**argv)
{
@@ -66,52 +63,6 @@ int main(int argc, char**argv)
return 0;
}
- // output schedule to stdout
- if (argc==2 && strcmp(argv[1], OP_SCHEDULE_GET)==0)
- {
- safe_system("/bin/grep /sbin/shutdown /var/spool/cron/root.orig");
- return 0;
- }
-
- if (argc==2 && strcmp(argv[1], OP_SCHEDULE_REM)==0)
- {
- safe_system("/usr/bin/perl -i -p -e 's/^.*\\/sbin\\/shutdown.*$//s' /var/spool/cron/root.orig");
- safe_system("/usr/bin/fcrontab -u root -z");
- return 0;
- }
-
- if (argc==6 && strcmp(argv[1], OP_SCHEDULE_ADD)==0)
- {
- // check args
- if (!( strlen(argv[2])<3 &&
- strspn(argv[2], "0123456789") == strlen (argv[2]) &&
- strlen(argv[3])<3 &&
- strspn(argv[3], "0123456789") == strlen (argv[3]) &&
- strlen(argv[4])<14 &&
- strspn(argv[4], "1234567,*") == strlen (argv[4]) &&
- ((strcmp(argv[5], "-r")==0) || //reboot
- (strcmp(argv[5], "-h")==0)) ) //hangup
- ) {
- fprintf (stderr, "Bad cron+ parameters!\n");
- return 1;
- }
-
- // remove old entry
- safe_system("/usr/bin/perl -i -p -e 's/^.*\\/sbin\\/shutdown.*$//s' /var/spool/cron/root.orig");
-
- // add new entry
- FILE *fd = NULL;
- if ((fd = fopen("/var/spool/cron/root.orig", "a")))
- {
- fprintf (fd,"%s %s * * %s /sbin/shutdown %s 1\n",argv[2],argv[3],argv[4],argv[5]);
- fclose (fd);
- }
-
- // inform cron
- safe_system("/usr/bin/fcrontab -u root -z");
- return 0;
- }
-
fprintf (stderr, "Bad reboot command!\n");
return 1;
}
diff --git a/src/misc-progs/setuid.h b/src/misc-progs/setuid.h
index 2e90537a6..7f3fda308 100644
--- a/src/misc-progs/setuid.h
+++ b/src/misc-progs/setuid.h
@@ -18,6 +18,14 @@
#define STRING_SIZE 1024
#endif
+#ifndef CONFIG_ROOT
+#define CONFIG_ROOT "/var/ipfire"
+#endif
+
+#ifndef SNAME
+#define SNAME "SNAME to be filled"
+#endif
+
extern char * trusted_env[4];
int system_core(char* command, uid_t uid, gid_t gid, char *error);
diff --git a/src/misc-progs/updxsetperms.c b/src/misc-progs/updxsetperms.c
deleted file mode 100644
index be7d0e171..000000000
--- a/src/misc-progs/updxsetperms.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* This file is part of the IPFire Firewall.
- *
- * This program is distributed under the terms of the GNU General Public
- * Licence. See the file COPYING for details.
- *
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include "setuid.h"
-
-int main(int argc, char *argv[]) {
-
- if (!(initsetuid()))
- exit(1);
-
- if (argc > 1) {
- fprintf(stderr, "\nNo argument should be given.\n");
- exit(1);
- }
-
- safe_system("/etc/rc.d/init.d/squid setperms");
- return 0;
-}
diff --git a/src/misc-progs/upnpctrl.c b/src/misc-progs/upnpctrl.c
deleted file mode 100644
index f42502ddd..000000000
--- a/src/misc-progs/upnpctrl.c
+++ /dev/null
@@ -1,54 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include "setuid.h"
-
-#define BUFFER_SIZE 1024
-
-char command[BUFFER_SIZE];
-
-int main(int argc, char *argv[])
-{
-
- if (!(initsetuid()))
- exit(1);
-
- // Check what command is asked
- if (argc==1)
- {
- fprintf (stderr, "Missing smbctrl command!\n");
- return 1;
- }
-
- if (strcmp(argv[1], "upnpstart")==0)
- {
- snprintf(command, BUFFER_SIZE-1, "route add -net 239.0.0.0 netmask 255.0.0.0 %s", argv[3]);
- safe_system(command);
- printf(command);
- snprintf(command, BUFFER_SIZE-1, "/usr/sbin/upnpd %s %s", argv[2], argv[3] );
- safe_system(command);
- printf(command);
- return 0;
- }
-
- if (strcmp(argv[1], "upnpstop")==0)
- {
- snprintf(command, BUFFER_SIZE-1, "killall upnpd");
- safe_system(command);
- printf(command);
- snprintf(command, BUFFER_SIZE-1, "route del -net 239.0.0.0 netmask 255.0.0.0 %s", argv[3]);
- safe_system(command);
- printf(command);
- return 0;
- }
- if (strcmp(argv[1], "upnpxml")==0)
- {
- snprintf(command, BUFFER_SIZE-1, "sed 's/\<friendlyName\>.*\<\/friendlyName\>/\<friendlyName\>%s\<\/friendlyName\>/gi' %s/%s > tmp && mv tmp %s/%s", argv[2], argv[3], argv[4], argv[3], argv[4]);
- safe_system(command);
- printf(command);
- return 0;
- }
-}
diff --git a/src/pakfire/lib/functions.sh b/src/pakfire/lib/functions.sh
index 375169760..5918649db 100644
--- a/src/pakfire/lib/functions.sh
+++ b/src/pakfire/lib/functions.sh
@@ -24,7 +24,8 @@
extract_files() {
echo "Extracting files..."
- tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
+ tar --acls --xattrs --xattrs-include='*' \
+ -xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
echo "...Finished."
}
diff --git a/src/patches/ddns-013-add-option-to-list-token-provider.patch b/src/patches/ddns-013-add-option-to-list-token-provider.patch
new file mode 100644
index 000000000..7603422a2
--- /dev/null
+++ b/src/patches/ddns-013-add-option-to-list-token-provider.patch
@@ -0,0 +1,292 @@
+commit 287b2bfe7bf5e0639da9227a8c7893ce40d298ae
+Author: Stefan Schantl <stefan.schantl(a)ipfire.org>
+Date: Wed Dec 2 20:31:19 2020 +0100
+
+ Add option to list provider with token support.
+
+ This option can be used to get a list of all known provider which support
+ a token based authentication method.
+
+ In order to provide this feature the provider details has been extended
+ to contain the information if a provider supports this authentication
+ method or not.
+
+ Signed-off-by: Stefan Schantl <stefan.schantl(a)ipfire.org>
+
+diff --git a/ddns.in b/ddns.in
+old mode 100644
+new mode 100755
+index 0e377e7..538e4b0
+--- a/ddns.in
++++ b/ddns.in
+@@ -49,6 +49,10 @@ def main():
+ p_list_providers = subparsers.add_parser("list-providers",
+ help=_("List all available providers"))
+
++ # list-token-provider
++ p_list_token_provider = subparsers.add_parser("list-token-provider",
++ help=_("List all providers which supports authentication via token"))
++
+ # update
+ p_update = subparsers.add_parser("update", help=_("Update DNS record"))
+ p_update.add_argument("hostname")
+@@ -85,6 +89,10 @@ def main():
+ provider_names = d.get_provider_names()
+ print("\n".join(provider_names))
+
++ elif args.subparsers_name == "list-token-providers":
++ token_provider = d.get_provider_with_token_support()
++ print("\n".join(token_provider))
++
+ elif args.subparsers_name == "update":
+ d.updateone(hostname=args.hostname, force=args.force)
+
+diff --git a/src/ddns/__init__.py b/src/ddns/__init__.py
+index 3e43fa7..ca232bf 100644
+--- a/src/ddns/__init__.py
++++ b/src/ddns/__init__.py
+@@ -86,6 +86,20 @@ class DDNSCore(object):
+ """
+ return sorted(self.providers.keys())
+
++ def get_provider_with_token_support(self):
++ """
++ Returns a list with names of all registered providers
++ which support token based authtentication.
++ """
++
++ token_provider = []
++
++ for handle, provider in sorted(self.providers.items()):
++ if provider.supports_token_auth is True:
++ token_provider.append(handle)
++
++ return sorted(token_provider)
++
+ def load_configuration(self, filename):
+ logger.debug(_("Loading configuration file %s") % filename)
+
+diff --git a/src/ddns/providers.py b/src/ddns/providers.py
+index a1ca3f3..b0066d5 100644
+--- a/src/ddns/providers.py
++++ b/src/ddns/providers.py
+@@ -73,6 +73,10 @@ class DDNSProvider(object):
+ # Required to remove AAAA records if IPv6 is absent again.
+ can_remove_records = True
+
++ # True if the provider supports authentication via a random
++ # generated token instead of username and password.
++ supports_token_auth = True
++
+ @staticmethod
+ def supported():
+ """
+@@ -352,6 +356,10 @@ class DDNSProtocolDynDNS2(object):
+ # The DynDNS protocol version 2 does not allow to remove records
+ can_remove_records = False
+
++ # The DynDNS protocol version 2 only supports authentication via
++ # username and password.
++ supports_token_auth = False
++
+ def prepare_request_data(self, proto):
+ data = {
+ "hostname" : self.hostname,
+@@ -440,6 +448,7 @@ class DDNSProviderAllInkl(DDNSProvider):
+
+ url = "http://dyndns.kasserver.com"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update(self):
+ # There is no additional data required so we directly can
+@@ -464,6 +473,8 @@ class DDNSProviderBindNsupdate(DDNSProvider):
+
+ DEFAULT_TTL = 60
+
++ supports_token_auth = False
++
+ @staticmethod
+ def supported():
+ # Search if the nsupdate utility is available
+@@ -550,6 +561,7 @@ class DDNSProviderChangeIP(DDNSProvider):
+
+ url = "https://nic.changeip.com/nic/update"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -616,6 +628,7 @@ class DDNSProviderDDNSS(DDNSProvider):
+
+ url = "http://www.ddnss.de/upd.php"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -678,6 +691,7 @@ class DDNSProviderDHS(DDNSProvider):
+
+ url = "http://members.dhs.org/nic/hosts"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -710,6 +724,7 @@ class DDNSProviderDNSpark(DDNSProvider):
+
+ url = "https://control.dnspark.com/api/dynamic/update.php"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -758,6 +773,7 @@ class DDNSProviderDtDNS(DDNSProvider):
+
+ url = "https://www.dtdns.com/api/autodns.cfm"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -813,6 +829,7 @@ class DDNSProviderDuckDNS(DDNSProvider):
+
+ url = "https://www.duckdns.org/update"
+ can_remove_records = False
++ supports_token_auth = True
+
+ def update(self):
+ # Raise an error if no auth details are given.
+@@ -914,6 +931,7 @@ class DDNSProviderDynUp(DDNSProvider):
+
+ url = "https://dynup.de/dyn.php"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -979,6 +997,8 @@ class DDNSProviderEasyDNS(DDNSProvider):
+
+ url = "http://api.cp.easydns.com/dyn/tomato.php"
+
++ supports_token_auth = False
++
+ def update_protocol(self, proto):
+ data = {
+ "myip" : self.get_address(proto, "-"),
+@@ -1032,6 +1052,7 @@ class DDNSProviderDynsNet(DDNSProvider):
+ website = "http://www.dyns.net/"
+ protocols = ("ipv4",)
+ can_remove_records = False
++ supports_token_auth = False
+
+ # There is very detailed informatio about how to send the update request and
+ # the possible response codes. (Currently we are using the v1.1 proto)
+@@ -1083,6 +1104,7 @@ class DDNSProviderEnomCom(DDNSResponseParserXML, DDNSProvider):
+
+ url = "https://dynamic.name-services.com/interface.asp"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -1125,6 +1147,7 @@ class DDNSProviderEntryDNS(DDNSProvider):
+ # here: https://entrydns.net/help
+ url = "https://entrydns.net/records/modify"
+ can_remove_records = False
++ supports_token_auth = True
+
+ def update_protocol(self, proto):
+ data = {
+@@ -1165,6 +1188,7 @@ class DDNSProviderFreeDNSAfraidOrg(DDNSProvider):
+ # page. All used values have been collected by testing.
+ url = "https://freedns.afraid.org/dynamic/update.php"
+ can_remove_records = False
++ supports_token_auth = True
+
+ def update_protocol(self, proto):
+ data = {
+@@ -1246,6 +1270,7 @@ class DDNSProviderKEYSYSTEMS(DDNSProvider):
+
+ url = "https://dynamicdns.key-systems.net/update.php"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ address = self.get_address(proto)
+@@ -1297,6 +1322,8 @@ class DDNSProviderLightningWireLabs(DDNSProvider):
+ # Information about the format of the HTTPS request is to be found
+ # https://dns.lightningwirelabs.com/knowledge-base/api/ddns
+
++ supports_token_auth = True
++
+ url = "https://dns.lightningwirelabs.com/update"
+
+ def update(self):
+@@ -1365,6 +1392,7 @@ class DDNSProviderNamecheap(DDNSResponseParserXML, DDNSProvider):
+
+ url = "https://dynamicdns.park-your-domain.com/update"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ # Namecheap requires the hostname splitted into a host and domain part.
+@@ -1458,6 +1486,8 @@ class DDNSProviderNsupdateINFO(DDNSProtocolDynDNS2, DDNSProvider):
+ # has not been implemented here, yet.
+ can_remove_records = False
+
++ supports_token_auth = True
++
+ # After a failed update, there will be no retries
+ # https://bugzilla.ipfire.org/show_bug.cgi?id=10603
+ holdoff_failure_days = None
+@@ -1534,6 +1564,7 @@ class DDNSProviderRegfish(DDNSProvider):
+
+ url = "https://dyndns.regfish.de/"
+ can_remove_records = False
++ supports_token_auth = True
+
+ def update(self):
+ data = {
+@@ -1630,6 +1661,7 @@ class DDNSProviderServercow(DDNSProvider):
+
+ url = "https://www.servercow.de/dnsupdate/update.php"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -1671,6 +1703,8 @@ class DDNSProviderSPDNS(DDNSProtocolDynDNS2, DDNSProvider):
+
+ url = "https://update.spdyn.de/nic/update"
+
++ supports_token_auth = True
++
+ @property
+ def username(self):
+ return self.get("username") or self.hostname
+@@ -1774,6 +1808,8 @@ class DDNSProviderZoneedit(DDNSProvider):
+ website = "http://www.zoneedit.com"
+ protocols = ("ipv4",)
+
++ supports_token_auth = False
++
+ # Detailed information about the request and the response codes can be
+ # obtained here:
+ # http://www.zoneedit.com/doc/api/other.html
+@@ -1821,6 +1857,7 @@ class DDNSProviderDNSmadeEasy(DDNSProvider):
+
+ url = "https://cp.dnsmadeeasy.com/servlet/updateip?"
+ can_remove_records = False
++ supports_token_auth = False
+
+ def update_protocol(self, proto):
+ data = {
+@@ -1871,6 +1908,7 @@ class DDNSProviderZZZZ(DDNSProvider):
+
+ url = "https://zzzz.io/api/v1/update"
+ can_remove_records = False
++ supports_token_auth = True
+
+ def update_protocol(self, proto):
+ data = {
diff --git a/src/patches/ddns-013-proper-encode-string.patch b/src/patches/ddns-013-proper-encode-string.patch
new file mode 100644
index 000000000..b101913e8
--- /dev/null
+++ b/src/patches/ddns-013-proper-encode-string.patch
@@ -0,0 +1,24 @@
+commit 27aea61ba3c8e561c4a5921aeb0ea0986d4d234c
+Author: Johannes Schwietzke <johannes.schwietzke(a)web.de>
+Date: Tue Dec 29 12:07:19 2020 +0100
+
+ providers.py: Proper encode string.
+
+ Python 3 memoryview requires an encoded string.
+
+ Signed-off-by: Johannes Schwietzke <johannes.schwietzke(a)web.de>
+ Signed-off-by: Stefan Schantl <stefan.schantl(a)ipfire.org>
+
+diff --git a/src/ddns/providers.py b/src/ddns/providers.py
+index b0066d5..56e6620 100644
+--- a/src/ddns/providers.py
++++ b/src/ddns/providers.py
+@@ -547,7 +547,7 @@ class DDNSProviderBindNsupdate(DDNSProvider):
+
+ logger.debug(" %s" % line)
+
+- return "\n".join(scriptlet)
++ return "\n".join(scriptlet).encode()
+
+
+ class DDNSProviderChangeIP(DDNSProvider):
diff --git a/src/patches/fuse-2.9.2-namespace-conflict-fix.patch b/src/patches/fuse-2.9.2-namespace-conflict-fix.patch
deleted file mode 100644
index ae67e7d45..000000000
--- a/src/patches/fuse-2.9.2-namespace-conflict-fix.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -up fuse-2.9.2/include/fuse_kernel.h.conflictfix fuse-2.9.2/include/fuse_kernel.h
---- fuse-2.9.2/include/fuse_kernel.h.conflictfix 2013-06-26 09:31:57.862198038 -0400
-+++ fuse-2.9.2/include/fuse_kernel.h 2013-06-26 09:32:19.679198365 -0400
-@@ -88,12 +88,16 @@
- #ifndef _LINUX_FUSE_H
- #define _LINUX_FUSE_H
-
--#include <sys/types.h>
-+#ifdef __linux__
-+#include <linux/types.h>
-+#else
-+#include <stdint.h>
- #define __u64 uint64_t
- #define __s64 int64_t
- #define __u32 uint32_t
- #define __s32 int32_t
- #define __u16 uint16_t
-+#endif
-
- /*
- * Version negotiation:
hooks/post-receive
--
IPFire 2.x development tree
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-01-07 11:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-07 11:10 [git.ipfire.org] IPFire 2.x development tree branch, next, updated. d701756a83e3fcf2fda0b85accc601b9799f7a0a Michael Tremer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox