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, master has been updated via 86667d0c7a32054bea49dcbf1f90803b6170a581 (commit) via 96473f525dcec4115b9bab0b305ff5b92194b134 (commit) via 6920fbe86df2cacefc1a91b9590d84a495734e65 (commit) via 13e6019b926169ddadeb3fe6f3fc77f69f6a66d3 (commit) via 9324732071de3b33db6a30452b3ab1134c4bd5e2 (commit) via a3f77ded659c607ea1c00e9500aece0418ec5c4a (commit) via cd4437eaa76be37161820c37725dd788f57c0ac2 (commit) via 901e172c91a4a74de635d931839effd03851418d (commit) via 9f9d4e3c74ba61783dad3ddcedbc9b920b67a327 (commit) via 1b4d5ad9af5d3603331f31aef5dca67833808694 (commit) via b06187f5b65b6911ea90f0daa20ec0a50682070f (commit) via 693928d781bee3151d5108a6f68a464202e78eeb (commit) via 0fa8a4e98e3c7b44f0e66f9958693a66bbb7fdeb (commit) via 11ecfb92a0b9b9020c646e66f15dd1a5b2720f7c (commit) via d221f41fbe38e32afc2fd0bab6ee80aa94b9f1a4 (commit) via 3a6752d9282ba78283f8a31564f359868662ff79 (commit) via d653b433ec6ffbc92a448766852fa4202586be9a (commit) via 86c9deb2ea39001c488b7b65f6dfac6fe88a1a35 (commit) via 998e880b61b4c201a9483a0beafc6d139a29f0db (commit) via 5eeea642371892e0ecdd6064746a1f6c38bd32a5 (commit) via 3a52755b973a21ac15b033f4b39a3ff4c82b0be4 (commit) via b32a8aefa2dea0146df34bf6e4e785afec1600b4 (commit) via 58c2333bdc4494c34197432791f6d67d974f3588 (commit) via f824cd285b72ca1e2837614607b15e93bf6d5819 (commit) via 0807ce69eead5a35cdb699b61a48bffdf81ebcc4 (commit) via 0d7ca700bd2c8eafbedf2261038496d4588bd5b7 (commit) via e22bcd38d6857cd1ee7292cbf634db80d0dd813c (commit) via 71cf56fe53a1f561a8d11f2f354a0cc91bfe37ba (commit) via eef9b2529c3cab522dac4f4bcfa1a0075376514e (commit) via 574ee681d21b394cbc4d4b498bd4dba9a2a8ebf8 (commit) via e3a90a5736be84bd4292a05c006802aa26ffcc0d (commit) via a48a2034f5320baf32c10ec877d0c3c53cf4c699 (commit) via 9aa7b0469da00d4ba745b682f0c5874ffa8ac92d (commit) via f75c279b97552118ee06ae660230465d0a469bc8 (commit) via 350e29c26fe9d6cb8c075f47674db04a81f4ddc7 (commit) via c5f633c91712e4e1f5bb68633f4d55f030aed8a6 (commit) via 52587edac4f6e3fba0923cb808740de6c5cbd61e (commit) via 64602fdf7da260801cdf6d07b5390ab41129e32b (commit) via 642b831b72b42c7ecab4ac05828db2ebc29c3845 (commit) via e24d6112bb364697d925ca436dddd5436448b477 (commit) via 5edc06b701548df78adf746bb4023ef61460d957 (commit) via cc60329d88d647a425812b8fb1ff31bb6752f576 (commit) via b29c97b1685c4eafdbc30841f5eae358befc8343 (commit) via f58002a83f279246cdd58bfb5e9dfbf9d5aa99c7 (commit) via 9f50355a8c192e453998b6bd15c26b94eabcc72f (commit) via a1de9f6fc9cd011cc33708bae31a731394b6d26a (commit) via 80bc60228b53635aa3e742467195b63adff30c59 (commit) via 46d8d50f459be1cc2220b8b0a0de9c6943e9ab1f (commit) via da314725051fe0ebf56fd9d28dae78ab7406c6f4 (commit) via 60fc489b045bc35ff50b15c9b263ca9a3b7d4247 (commit) via 829435bea3eee286cd1b1c73a81d53fcd0336c07 (commit) via 3cf764f338da36c28b348c46db1dbbdff8c97d5b (commit) via b547554aea406f99740eeee8c31584708a4f000f (commit) via dee3be75f908e083f865f6275b4f2ce7692d0f26 (commit) via 92aebbcddd16a0969ab5c2f5fcd4d7217a68e3e4 (commit) via 01176164b5c1989cf37afad36fe967ddfe0f3612 (commit) via de48b89ca140fff432754ef8e83c9c5acbd717fe (commit) via e26a93322da5dc6d0c1537c0122b24a6dd63119d (commit) via 59bddc7989e44800b7a855e88e28d6a6eb69e9b1 (commit) via feba68e4af48630d0c5dcd16bd799a0e02db2b36 (commit) via b8987235d26e4bdf99fa1c4a574a3da0c7674d07 (commit) via 724c0b8e4b244bd3627d9beacb3771abc0f46a72 (commit) via 4141e0aad1652d85daef1bafee85d155f8eb9129 (commit) via 78c3ea61b29ed527e4854f2f03ca0614888f5dd1 (commit) via def1ad3e948a8473c2443985b234180238aaf66a (commit) via 053c554822e9d7342bf21535ccae4812100f94c5 (commit) via e70d2dc27d388e8598791e043c4c2f62937d4b04 (commit) via 1031bcee2040803ba88126220dbb447ade2ac3c8 (commit) via 54a59fd89212fee8783146ed1ae168e578440b05 (commit) via 96f333a627176a8e9880250855dec6b76ce10661 (commit) via 2429b9210f65d875155861a3369df7bd0617c2f2 (commit) via 3fc734f0f9e64ffeaea8b5c4b1c26951456979a7 (commit) via 0e7699cbb5855728f32ea3180e95997fa9e00654 (commit) via 087fee9c6a782c7e566de9505ea2b1d272bb0993 (commit) via 6f36046c814a8cae5306ad9e28c45e40adf2d68c (commit) via b4b56b4f5c224398c7e29093babe352aed10d8e5 (commit) via cde96f746a3bffd98bc3e2b2e0787b849136436b (commit) via 1c7a3c56ef10d5bc2bb2905846210606bfe1cd9c (commit) via 345f1f3c0bbb8e8e82783475d4c3f189f3020b0b (commit) via b48a6c971e24f4eb991781df4108e5d4c3826207 (commit) via 35f37bf02b6de4a4b2bd15c672e6dd408ea56564 (commit) via a7054dd83c5f8c79ad2a5001f914a4638e75e562 (commit) via 282dfe0bb9780fa39dac5d2285719497f6a9f3d5 (commit) via b48c31167bef08f6a2b41e5b72a1cf7016f7331c (commit) via 7c54847dc2909297afcbc905a6759a9ced3a570e (commit) via 2ac05ca54c6a49e7f4a82aae57d1924fa7c998b2 (commit) via 702bd2cd9834181276cbb772e637dd53e8e79392 (commit) via e0b76ebc55ebacf0745e1086824dec83278e1f77 (commit) via 4c8f144e582dc5bd7d3415777cf496efb68697b0 (commit) via 3ce76624346e0ce66a6f1fc3f6b37feeab1a25b2 (commit) via 8029c2a899b3b70e5e35f8461daddc288b9abe75 (commit) via f5275b5930016b466e136dd6fb8ce535be618c4a (commit) via bbe8e009b824aef745c9ab9718dce9a1b557f5fc (commit) via f5ab60e9aa9d77fd9ef4b29f082eb6b00cb211f3 (commit) via 48b1876a48ae485f371fe6baa5fe3c1d000ef7d8 (commit) via 3f1b94b9faf319ef82f1fde727563b02c9772c6b (commit) via d20ef9d703dd4f4c16d8ce68f6b093d21d1a04ca (commit) via 74a5ab67fef3726f1d47bee6181423cd9d18a2c1 (commit) via b8dd42b9a6b42d69bcabbedb962bc13ecc44d22a (commit) via ccba93959baf64aefe8c63d4e44888bb7500b036 (commit) via 077ea717e035aa5fa37ce670957d3312fcaabcf1 (commit) via 811f3d3050c713c9e86572c922734a5f44d70797 (commit) via cc53e7ef230255bbf2ebf6ed6af8206d88206e8e (commit) via 36792be6ce3775b86a58e4696f793ead2dc97e7f (commit) via 6f5d8f0cce3c8eeab754f00ad2e367ffc83112b2 (commit) via a66c4880d9a43893933bdaf19ca64654a6ebe210 (commit) via 266735a12faddf4635d2b3a772c4f4e9a472763c (commit) via 4e63727d2d3f71760b09e4be9e6d7543ce0a24ea (commit) via a80606ecb568f9def80015ed961362a276f1e4aa (commit) via 69f8d8ee6cc005c7ca9e0f5bdb0ea017f7a7c0c7 (commit) via 5fba8a0b1ebcb29340e225707193c0147c4cb64a (commit) via b658a451fbb2f551f4e2765ab14eac34e0eca7b1 (commit) via 3364c93e37c65ed8544066ed55afe1941b2b6f8d (commit) via 3943a54036fcce71d57b1bbd2c2759c64c5f1f86 (commit) via d996e17ab80ce674e3facc04aaa6e918e4d66fbb (commit) via 457367e13d23ac774ba62005e9ec6b294a935527 (commit) via 5e358816c5aca1fd62ab307235cc1f1278a4fa70 (commit) via bfce482806f59fc178aeec48e84d5f330ddd7bf5 (commit) via 0542a945703fd7a20e0001b0d9daa2ca4ec8a410 (commit) via 71434e5b4abd45f59a9ab9d519c38f29d471dbc2 (commit) via 53aad60d6f35b622ea571faf3fc1c5d4ee28e1f0 (commit) via d8e31f431168d8eb56fb314a2d0f5e9e7e90fadc (commit) via a59e2e1c65c8061627acfaddf7a44f5f716071e4 (commit) via 616edca2ba4cfe8d8ad6d628d9d2cab4a91cd047 (commit) via d8efad249a19fb3a9a43b087685aabde7b534de9 (commit) via a07b8a2d554234780b95b0f2d005e5fa3a8df8ac (commit) via cf5c7c9f2bb5dd2af43ab3ff39a4fd06efaaef24 (commit) via ae2919a502a0a2f26f2e849e6fe4e9e42cda3b80 (commit) via b4255d757f98cc5bd6cf60ac245c60b78871849f (commit) via 47c3e83253693f80a5ef38af6e9cdd276bf9a5da (commit) via 6302a24890f8530924e4468daca575e7336f4a87 (commit) via 1b4f2493a5beeb38336c6d98a4dd3bc6a24b1aa4 (commit) via df7340d2f3232a87ae6e3e11a6cb4e15b74e55a3 (commit) via 9625be6f24f73a40f987b9a79657f026405f9c29 (commit) via 61b4250af56cdd8cb97187098ed5b4b6b93acb85 (commit) via b8f5eda86b6d1c7270e858214a96e5eded18876a (commit) via 0fbd7c3c81ca0740cf8e6f4c47253ff4dd48e7df (commit) via cb21683968ddc0d5eab4c131c69aa665ff5d7dc8 (commit) via c648dd88f57309f08d2703bdb4596aaa75d776aa (commit) via 76f5c54236fdb2714fbb6d890a7b079d5aa4f9fc (commit) via 89b0810b240967e4ae4101ad2736b74792a3c80a (commit) via 08f6cdcf828aa6e03e59b9054b68eede80a13ebe (commit) via d0e5f71f77e5bcbeef1edbded3ca0a0bd564a34f (commit) from 2d850c7944bf0fd7bfac91436151dcecafe3f623 (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 86667d0c7a32054bea49dcbf1f90803b6170a581 Author: Arne Fitzenreiter arne_f@ipfire.org Date: Sat Oct 15 23:52:07 2016 +0200
core106: set version to 106
Signed-off-by: Arne Fitzenreiter arne_f@ipfire.org
commit 96473f525dcec4115b9bab0b305ff5b92194b134 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 22:38:01 2016 +0100
Revert "setup: Store passwords in SHA format"
This reverts commit eef9b2529c3cab522dac4f4bcfa1a0075376514e.
It appears that htpasswd is not salting any passwords that are stored with the SHA (-s) algorithm. MD5 passwords however are salted.
That leads us to the conclusion that the "MD5 algorithm" in htpasswd is more secure than the "SHA algorithm" although the hash function itself should be stronger.
With a rainbow table, cracking "SHA" is easily done.
A rainbow table for "MD5" + salt would be way too large to be efficiently stored.
Hence this commit is reverted to old behaviour to avoid the clear failure of design in SHA.
Signed-off-by: Michael Tremer michael.tremer@ipfire.org Signed-off-by: Arne Fitzenreiter arne.fitzenreiter@ipfire.org
commit 6920fbe86df2cacefc1a91b9590d84a495734e65 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 22:32:21 2016 +0100
unbound: Omit reverse PTRs if address equals GREEN
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit 13e6019b926169ddadeb3fe6f3fc77f69f6a66d3 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 22:32:05 2016 +0100
unbound-dhcp-bridge: Make leases unique by IP address
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit 9324732071de3b33db6a30452b3ab1134c4bd5e2 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 19:17:44 2016 +0200
unbound-dhcp-bridge: Only update cache when lease was added/removed
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit a3f77ded659c607ea1c00e9500aece0418ec5c4a Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 19:08:22 2016 +0200
unbound-dhcp-bridge: Rewrite update algorithm
Before the bridge tries reading any existing leases from unbound but this makes it difficult to destinguish between what is a DHCP lease, static host entry or anything else.
This patch will change the bridge back to just remember what has been added to the cache already which makes it easier to keep track.
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit cd4437eaa76be37161820c37725dd788f57c0ac2 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 19:06:27 2016 +0200
unbound-dhcp-bridge: Skip processing leases with empty hostname
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit 901e172c91a4a74de635d931839effd03851418d Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Oct 15 17:03:31 2016 +0200
unbound-dhcp-bridge: Reading in static hosts
Signed-off-by: Michael Tremer michael.tremer@ipfire.org
commit 9f9d4e3c74ba61783dad3ddcedbc9b920b67a327 Author: Arne Fitzenreiter arne_f@ipfire.org Date: Thu Oct 13 17:21:28 2016 +0200
unbound/dhcp: stop lease bridge if dhcp was needed to killed
Signed-off-by: Arne Fitzenreiter arne_f@ipfire.org Signed-off-by: Michael Tremer michael.tremer@ipfire.org
-----------------------------------------------------------------------
Summary of changes: config/backup/include | 1 + config/cfgroot/net-traffic-admin.pl | 257 -------- config/cfgroot/net-traffic-lib.pl | 518 ---------------- config/cron/crontab | 3 + config/etc/group | 1 - config/etc/passwd | 1 - config/guardian/guardian.de.pl | 45 ++ config/guardian/guardian.en.pl | 45 ++ config/guardian/guardian.es.pl | 23 + config/guardian/guardian.fr.pl | 23 + config/guardian/guardian.it.pl | 24 + config/guardian/guardian.nl.pl | 23 + config/guardian/guardian.pl.pl | 23 + config/guardian/guardian.ru.pl | 24 + config/guardian/guardian.tr.pl | 24 + config/rootfiles/common/armv5tel/initscripts | 11 +- config/rootfiles/common/attr | 57 +- config/rootfiles/common/configroot | 5 - config/rootfiles/common/diffutils | 11 +- config/rootfiles/common/dnsmasq | 2 - config/rootfiles/common/ed | 1 + config/rootfiles/common/expat | 13 +- config/rootfiles/common/flex | 24 +- config/rootfiles/common/gawk | 1 + config/rootfiles/common/gettext | 259 +++++++- config/rootfiles/common/gnupg | 2 - config/rootfiles/common/i586/initscripts | 11 +- config/rootfiles/common/i586/strongswan-padlock | 1 + config/rootfiles/common/iproute2 | 42 +- config/rootfiles/common/libgpg-error | 2 +- config/rootfiles/common/libidn | 3 +- config/rootfiles/common/libmnl | 2 +- config/rootfiles/common/libnetfilter_conntrack | 2 +- config/rootfiles/common/misc-progs | 2 +- config/rootfiles/common/mpfr | 2 +- config/rootfiles/common/python-daemon | 19 + config/rootfiles/common/python-docutils | 320 ++++++++++ config/rootfiles/common/python-inotify | 20 + config/rootfiles/common/python-ipaddress | 8 + config/rootfiles/common/stage2 | 1 - config/rootfiles/common/strongswan | 40 +- config/rootfiles/common/tcl | 666 +++++++++++++++++---- config/rootfiles/common/unbound | 60 ++ config/rootfiles/common/usb_modeswitch_data | 149 ++++- config/rootfiles/common/x86_64/initscripts | 11 +- config/rootfiles/common/x86_64/stage2 | 1 - config/rootfiles/core/{105 => 106}/exclude | 0 .../{oldcore/44 => core/106}/filelists/attr | 0 .../{oldcore/103 => core/106}/filelists/diffutils | 0 config/rootfiles/core/106/filelists/ed | 1 + .../{oldcore/90 => core/106}/filelists/expat | 0 .../{oldcore/94 => core/106}/filelists/file | 0 config/rootfiles/core/106/filelists/files | 25 + config/rootfiles/core/106/filelists/flex | 1 + .../{oldcore/66 => core/106}/filelists/gawk | 0 .../{oldcore/66 => core/106}/filelists/gettext | 0 .../{oldcore/89 => core/106}/filelists/gnupg | 0 .../core/{105 => 106}/filelists/i586/openssl-sse2 | 0 .../106}/filelists/i586/strongswan-padlock | 0 .../{oldcore/94 => core/106}/filelists/iproute2 | 0 .../{oldcore/95 => core/106}/filelists/ipset | 0 .../94 => core/106}/filelists/libgpg-error | 0 config/rootfiles/core/106/filelists/libidn | 1 + .../{oldcore/66 => core/106}/filelists/libmnl | 0 .../106}/filelists/libnetfilter_conntrack | 0 .../{oldcore/87 => core/106}/filelists/misc-progs | 0 .../100 => core/106}/filelists/mt7601u-firmware | 0 .../rootfiles/core/{105 => 106}/filelists/openssl | 0 config/rootfiles/core/106/filelists/python-daemon | 1 + .../rootfiles/core/106/filelists/python-docutils | 1 + config/rootfiles/core/106/filelists/python-inotify | 1 + .../rootfiles/core/106/filelists/python-ipaddress | 1 + .../89 => core/106}/filelists/smartmontools | 0 .../{oldcore/94 => core/106}/filelists/squid | 0 .../{oldcore/96 => core/106}/filelists/strongswan | 0 config/rootfiles/core/106/filelists/unbound | 1 + .../77 => core/106}/filelists/usb_modeswitch | 0 .../77 => core/106}/filelists/usb_modeswitch_data | 0 config/rootfiles/core/{105 => 106}/meta | 0 config/rootfiles/core/{105 => 106}/update.sh | 41 +- config/rootfiles/oldcore/{104 => 105}/exclude | 0 .../{core => oldcore}/105/filelists/files | 0 .../{99 => 105}/filelists/i586/openssl-sse2 | 0 .../{core => oldcore}/105/filelists/libgcrypt | 0 .../oldcore/{99 => 105}/filelists/openssl | 0 config/rootfiles/oldcore/{99 => 105}/meta | 0 config/rootfiles/{core => oldcore}/105/update.sh | 0 config/rootfiles/packages/asterisk | 19 +- config/rootfiles/packages/guardian | 9 + config/rootfiles/packages/krb5 | 20 +- config/rootfiles/packages/libassuan | 2 +- config/rootfiles/packages/mc | 2 + config/rootfiles/packages/transmission | 17 +- config/rootfiles/packages/vdr_vnsiserver3 | 4 - config/shadow/limits | 30 + config/shadow/login.access | 54 ++ config/shadow/login.defs | 316 ++++++++++ config/unbound/icannbundle.pem | 317 ++++++++++ config/unbound/root.hints | 90 +++ config/unbound/root.key | 1 + config/unbound/unbound-dhcp-leases-bridge | 583 ++++++++++++++++++ config/unbound/unbound.conf | 96 +++ doc/language_issues.de | 37 ++ doc/language_issues.en | 39 +- doc/language_issues.es | 19 +- doc/language_issues.fr | 19 +- doc/language_issues.it | 20 +- doc/language_issues.nl | 19 +- doc/language_issues.pl | 19 +- doc/language_issues.ru | 19 +- doc/language_issues.tr | 19 +- doc/language_missings | 88 --- html/cgi-bin/dns.cgi | 2 +- html/cgi-bin/dnsforward.cgi | 12 +- html/cgi-bin/firewall.cgi | 10 - html/cgi-bin/guardian.cgi | 80 +-- html/cgi-bin/hosts.cgi | 1 + html/cgi-bin/index.cgi | 20 +- html/cgi-bin/iptables.cgi | 12 +- html/cgi-bin/logs.cgi/log.dat | 2 +- html/cgi-bin/pppsetup.cgi | 7 +- html/cgi-bin/samba.cgi | 4 +- html/cgi-bin/services.cgi | 2 +- html/cgi-bin/traffic.cgi | 2 - langs/de/cgi-bin/de.pl | 24 - langs/en/cgi-bin/en.pl | 26 - langs/es/cgi-bin/es.pl | 6 - langs/fr/cgi-bin/fr.pl | 6 - langs/it/cgi-bin/it.pl | 7 - langs/nl/cgi-bin/nl.pl | 6 - langs/pl/cgi-bin/pl.pl | 6 - langs/ru/cgi-bin/ru.pl | 6 - langs/tr/cgi-bin/tr.pl | 6 - lfs/asterisk | 14 +- lfs/attr | 9 +- lfs/configroot | 6 +- lfs/dejagnu | 6 +- lfs/diffutils | 12 +- lfs/dnsmasq | 102 ---- lfs/expat | 14 +- lfs/file | 6 +- lfs/flex | 10 +- lfs/gettext | 9 +- lfs/gnupg | 6 +- lfs/guardian | 9 +- lfs/initscripts | 5 +- lfs/iproute2 | 7 +- lfs/ipset | 6 +- lfs/krb5 | 7 +- lfs/libassuan | 8 +- lfs/libgpg-error | 6 +- lfs/libidn | 6 +- lfs/libmnl | 6 +- lfs/libnetfilter_conntrack | 6 +- lfs/make | 10 +- lfs/mc | 6 +- lfs/monit | 8 +- lfs/nano | 6 +- lfs/openssl | 4 +- lfs/pkg-config | 2 +- lfs/{file => python-daemon} | 12 +- lfs/{file => python-docutils} | 12 +- lfs/{file => python-inotify} | 12 +- lfs/{file => python-ipaddress} | 12 +- lfs/samba | 2 +- lfs/shadow | 12 +- lfs/smartmontools | 6 +- lfs/squid | 12 +- lfs/stage2 | 2 +- lfs/strongswan | 5 +- lfs/tcl | 10 +- lfs/transmission | 8 +- lfs/{mc => unbound} | 52 +- lfs/usb_modeswitch | 6 +- lfs/usb_modeswitch_data | 6 +- lfs/vdr_vnsiserver3 | 99 --- make.sh | 16 +- src/initscripts/helper/writeipac.pl | 67 --- src/initscripts/init.d/dhcp | 13 +- src/initscripts/init.d/dnsmasq | 145 ----- src/initscripts/init.d/localnet | 10 + src/initscripts/init.d/network | 9 - .../networking/red.down/05-update-dns-forwarders | 4 + .../networking/red.up/05-update-dns-forwarders | 13 + src/initscripts/init.d/networking/red.up/40-ipac | 6 - src/initscripts/init.d/ntp | 3 +- src/initscripts/init.d/setclock | 20 +- src/initscripts/init.d/unbound | 407 +++++++++++++ src/misc-progs/Makefile | 2 +- src/misc-progs/rebuildhosts.c | 79 --- src/misc-progs/{dnsmasqctrl.c => unboundctrl.c} | 6 +- ...q-Add-support-to-read-ISC-DHCP-lease-file.patch | 363 ----------- ...late_length_of_TFTP_error_reply_correctly.patch | 65 -- .../dnsmasq/002-Zero_newly_malloc_ed_memory.patch | 36 -- .../003-Check_return_of_expand_always.patch | 44 -- .../004-Fix_editing_error_on_man_page.patch | 40 -- src/patches/dnsmasq/005-Manpage_typo.patch | 25 - ...aviour_with_some_DHCP_option_arrangements.patch | 49 -- ...007-Fix_logic_error_in_Linux_netlink_code.patch | 55 -- .../008-Fix_problem_with_--dnssec-timestamp.patch | 93 --- .../009-malloc_memset_calloc_for_efficiency.patch | 46 -- ...put_to_reduce_risk_of_information_leakage.patch | 169 ------ ...on_transmission_in_case_of_retransmission.patch | 54 -- ...n_buffer_sizes_for_leasefile_parsing_code.patch | 103 ---- ...allow_to_exclude_ip_addresses_from_answer.patch | 184 ------ ...rial_when_reloading_etc_hosts_and_friends.patch | 41 -- src/patches/iproute2-4.7.0_remove_arpd.patch | 176 ++++++ src/patches/mitkrb-1.12.1-db2_fix-1.patch | 175 ------ .../shadow-4.2.1-SHA512_password_hashing.patch | 38 -- ...patch => smartmontools-6.5-exit_segfault.patch} | 12 +- ...=> squid-3.5.21-fix-max-file-descriptors.patch} | 4 +- src/patches/squid/squid-3.5-14051.patch | 63 -- src/patches/squid/squid-3.5-14052.patch | 34 -- src/patches/squid/squid-3.5-14053.patch | 46 -- src/patches/squid/squid-3.5-14054.patch | 37 -- src/patches/squid/squid-3.5-14055.patch | 39 -- src/patches/squid/squid-3.5-14056.patch | 36 -- ...n-event-when-deleting-redundant-CHILD_SAs.patch | 56 -- src/setup/networking.c | 2 + 219 files changed, 4474 insertions(+), 3937 deletions(-) delete mode 100644 config/cfgroot/net-traffic-admin.pl delete mode 100644 config/cfgroot/net-traffic-lib.pl create mode 100644 config/guardian/guardian.de.pl create mode 100644 config/guardian/guardian.en.pl create mode 100644 config/guardian/guardian.es.pl create mode 100644 config/guardian/guardian.fr.pl create mode 100644 config/guardian/guardian.it.pl create mode 100644 config/guardian/guardian.nl.pl create mode 100644 config/guardian/guardian.pl.pl create mode 100644 config/guardian/guardian.ru.pl create mode 100644 config/guardian/guardian.tr.pl delete mode 100644 config/rootfiles/common/dnsmasq create mode 100644 config/rootfiles/common/python-daemon create mode 100644 config/rootfiles/common/python-docutils create mode 100644 config/rootfiles/common/python-inotify create mode 100644 config/rootfiles/common/python-ipaddress create mode 100644 config/rootfiles/common/unbound rename config/rootfiles/core/{105 => 106}/exclude (100%) copy config/rootfiles/{oldcore/44 => core/106}/filelists/attr (100%) copy config/rootfiles/{oldcore/103 => core/106}/filelists/diffutils (100%) create mode 120000 config/rootfiles/core/106/filelists/ed copy config/rootfiles/{oldcore/90 => core/106}/filelists/expat (100%) copy config/rootfiles/{oldcore/94 => core/106}/filelists/file (100%) create mode 100644 config/rootfiles/core/106/filelists/files create mode 120000 config/rootfiles/core/106/filelists/flex copy config/rootfiles/{oldcore/66 => core/106}/filelists/gawk (100%) copy config/rootfiles/{oldcore/66 => core/106}/filelists/gettext (100%) copy config/rootfiles/{oldcore/89 => core/106}/filelists/gnupg (100%) rename config/rootfiles/core/{105 => 106}/filelists/i586/openssl-sse2 (100%) copy config/rootfiles/{oldcore/96 => core/106}/filelists/i586/strongswan-padlock (100%) copy config/rootfiles/{oldcore/94 => core/106}/filelists/iproute2 (100%) copy config/rootfiles/{oldcore/95 => core/106}/filelists/ipset (100%) copy config/rootfiles/{oldcore/94 => core/106}/filelists/libgpg-error (100%) create mode 120000 config/rootfiles/core/106/filelists/libidn copy config/rootfiles/{oldcore/66 => core/106}/filelists/libmnl (100%) copy config/rootfiles/{oldcore/92 => core/106}/filelists/libnetfilter_conntrack (100%) copy config/rootfiles/{oldcore/87 => core/106}/filelists/misc-progs (100%) copy config/rootfiles/{oldcore/100 => core/106}/filelists/mt7601u-firmware (100%) rename config/rootfiles/core/{105 => 106}/filelists/openssl (100%) create mode 120000 config/rootfiles/core/106/filelists/python-daemon create mode 120000 config/rootfiles/core/106/filelists/python-docutils create mode 120000 config/rootfiles/core/106/filelists/python-inotify create mode 120000 config/rootfiles/core/106/filelists/python-ipaddress copy config/rootfiles/{oldcore/89 => core/106}/filelists/smartmontools (100%) copy config/rootfiles/{oldcore/94 => core/106}/filelists/squid (100%) copy config/rootfiles/{oldcore/96 => core/106}/filelists/strongswan (100%) create mode 120000 config/rootfiles/core/106/filelists/unbound copy config/rootfiles/{oldcore/77 => core/106}/filelists/usb_modeswitch (100%) copy config/rootfiles/{oldcore/77 => core/106}/filelists/usb_modeswitch_data (100%) rename config/rootfiles/core/{105 => 106}/meta (100%) copy config/rootfiles/core/{105 => 106}/update.sh (70%) copy config/rootfiles/oldcore/{104 => 105}/exclude (100%) rename config/rootfiles/{core => oldcore}/105/filelists/files (100%) copy config/rootfiles/oldcore/{99 => 105}/filelists/i586/openssl-sse2 (100%) rename config/rootfiles/{core => oldcore}/105/filelists/libgcrypt (100%) copy config/rootfiles/oldcore/{99 => 105}/filelists/openssl (100%) copy config/rootfiles/oldcore/{99 => 105}/meta (100%) rename config/rootfiles/{core => oldcore}/105/update.sh (100%) delete mode 100644 config/rootfiles/packages/vdr_vnsiserver3 create mode 100644 config/shadow/limits create mode 100644 config/shadow/login.access create mode 100644 config/shadow/login.defs create mode 100644 config/unbound/icannbundle.pem create mode 100644 config/unbound/root.hints create mode 100644 config/unbound/root.key create mode 100644 config/unbound/unbound-dhcp-leases-bridge create mode 100644 config/unbound/unbound.conf delete mode 100644 lfs/dnsmasq copy lfs/{file => python-daemon} (91%) copy lfs/{file => python-docutils} (91%) copy lfs/{file => python-inotify} (91%) copy lfs/{file => python-ipaddress} (91%) copy lfs/{mc => unbound} (72%) delete mode 100644 lfs/vdr_vnsiserver3 delete mode 100644 src/initscripts/helper/writeipac.pl delete mode 100644 src/initscripts/init.d/dnsmasq create mode 100644 src/initscripts/init.d/networking/red.down/05-update-dns-forwarders create mode 100644 src/initscripts/init.d/networking/red.up/05-update-dns-forwarders delete mode 100644 src/initscripts/init.d/networking/red.up/40-ipac create mode 100644 src/initscripts/init.d/unbound rename src/misc-progs/{dnsmasqctrl.c => unboundctrl.c} (74%) delete mode 100644 src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch delete mode 100644 src/patches/dnsmasq/001-Calculate_length_of_TFTP_error_reply_correctly.patch delete mode 100644 src/patches/dnsmasq/002-Zero_newly_malloc_ed_memory.patch delete mode 100644 src/patches/dnsmasq/003-Check_return_of_expand_always.patch delete mode 100644 src/patches/dnsmasq/004-Fix_editing_error_on_man_page.patch delete mode 100644 src/patches/dnsmasq/005-Manpage_typo.patch delete mode 100644 src/patches/dnsmasq/006-Fix_bad_behaviour_with_some_DHCP_option_arrangements.patch delete mode 100644 src/patches/dnsmasq/007-Fix_logic_error_in_Linux_netlink_code.patch delete mode 100644 src/patches/dnsmasq/008-Fix_problem_with_--dnssec-timestamp.patch delete mode 100644 src/patches/dnsmasq/009-malloc_memset_calloc_for_efficiency.patch delete mode 100644 src/patches/dnsmasq/010-Zero_packet_buffers_before_building_output_to_reduce_risk_of_information_leakage.patch delete mode 100644 src/patches/dnsmasq/011-Dont_reset_packet_length_on_transmission_in_case_of_retransmission.patch delete mode 100644 src/patches/dnsmasq/012-Compile-time_check_on_buffer_sizes_for_leasefile_parsing_code.patch delete mode 100644 src/patches/dnsmasq/013-auth-zone_allow_to_exclude_ip_addresses_from_answer.patch delete mode 100644 src/patches/dnsmasq/014-Bump_auth_zone_serial_when_reloading_etc_hosts_and_friends.patch create mode 100644 src/patches/iproute2-4.7.0_remove_arpd.patch delete mode 100644 src/patches/mitkrb-1.12.1-db2_fix-1.patch delete mode 100644 src/patches/shadow-4.2.1-SHA512_password_hashing.patch rename src/patches/{smartmontools-5.39-exit_segfault.patch => smartmontools-6.5-exit_segfault.patch} (50%) rename src/patches/{squid-3.5.17-fix-max-file-descriptors.patch => squid-3.5.21-fix-max-file-descriptors.patch} (92%) delete mode 100644 src/patches/squid/squid-3.5-14051.patch delete mode 100644 src/patches/squid/squid-3.5-14052.patch delete mode 100644 src/patches/squid/squid-3.5-14053.patch delete mode 100644 src/patches/squid/squid-3.5-14054.patch delete mode 100644 src/patches/squid/squid-3.5-14055.patch delete mode 100644 src/patches/squid/squid-3.5-14056.patch delete mode 100644 src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch
Difference in files: diff --git a/config/backup/include b/config/backup/include index eb76ebf..e1edeff 100644 --- a/config/backup/include +++ b/config/backup/include @@ -5,6 +5,7 @@ /var/ipfire/*/enable /var/ipfire/*/*enable* /var/ipfire/ovpn/collectd.vpn +/etc/unbound /etc/passwd /etc/shadow /etc/group diff --git a/config/cfgroot/net-traffic-admin.pl b/config/cfgroot/net-traffic-admin.pl deleted file mode 100644 index 9638ad9..0000000 --- a/config/cfgroot/net-traffic-admin.pl +++ /dev/null @@ -1,257 +0,0 @@ -#!/usr/bin/perl -# -# This file is a library file for the Net-Traffic Addon. -# -# Copyright (C) 2006 Achim Weber dotzball@users.sourceforge.net -# -# $Id: net-traffic-admin.pl,v 1.13 2006/12/10 13:46:00 dotzball Exp $ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -package NETTRAFF; - -use strict; -use LWP::UserAgent; - -require '/var/ipfire/general-functions.pl'; -require "${General::swroot}/lang.pl"; -require "${General::swroot}/header.pl"; - -$|=1; # line buffering - -my $updateUrl = "http://blockouttraffic.de/version/Net-Traffic.latest"; -my $latestVersionFile = "${General::swroot}/net-traffic/latestVersion"; - -%NETTRAFF::settings; - - -$NETTRAFF::settingsfile = "${General::swroot}/net-traffic/settings"; -$NETTRAFF::versionfile = "${General::swroot}/net-traffic/version"; -$NETTRAFF::logfile = "/var/log/net-traffic.log"; -$NETTRAFF::colorOk = '#00FF00'; -$NETTRAFF::colorWarn = '#FFFF00'; -$NETTRAFF::colorMax = '#FF0000'; - - -#~ $NETTRAFF::settingsCGI = '/cgi-bin/fwrulesadm.cgi'; -#~ $NETTRAFF::configCGI = '/cgi-bin/fwrules.cgi'; -#~ $NETTRAFF::advConfCGI = '/cgi-bin/fwadvconf.cgi'; - - -@NETTRAFF::longmonths = ( $Lang::tr{'january'}, $Lang::tr{'february'}, $Lang::tr{'march'}, - $Lang::tr{'april'}, $Lang::tr{'may'}, $Lang::tr{'june'}, $Lang::tr{'july'}, $Lang::tr{'august'}, - $Lang::tr{'september'}, $Lang::tr{'october'}, $Lang::tr{'november'}, - $Lang::tr{'december'} ); - -@NETTRAFF::months = ( 0,1,2,3,4,5,6,7,8,9,10,11 ); - -@NETTRAFF::years=("2001","2002","2003","2004","2005","2006","2007","2008","2009"); - -#workaround to suppress a warning when a variable is used only once -my @dummy = ( $General::version ); -undef (@dummy); - - -# Init Settings -$NETTRAFF::settings{'MONTHLY_VOLUME_ON'} = 'off'; -$NETTRAFF::settings{'MONTHLY_VOLUME'} = '1'; -$NETTRAFF::settings{'STARTDAY'} = '1'; -$NETTRAFF::settings{'WARN_ON'} = 'off'; -$NETTRAFF::settings{'WARN'} = '80'; -$NETTRAFF::settings{'CALC_INTERVAL'} = '60'; -$NETTRAFF::settings{'SHOW_AT_HOME'} = 'on'; -$NETTRAFF::settings{'SEND_EMAIL_ON'} = 'off'; -$NETTRAFF::settings{'EMAIL_TO'} = ''; -$NETTRAFF::settings{'EMAIL_FROM'} = ''; -$NETTRAFF::settings{'EMAIL_USR'} = ''; -$NETTRAFF::settings{'EMAIL_PW'} = ''; -$NETTRAFF::settings{'EMAIL_SERVER'} = ''; -$NETTRAFF::settings{'VERSION_CHECK_ON'} = 'off'; - -&NETTRAFF::readSettings(); - - -sub readSettings -{ - &General::readhash($NETTRAFF::settingsfile, %NETTRAFF::settings); -} - - -sub showNetTrafficVersion -{ - my %versionSettings = (); - - &General::readhash($NETTRAFF::versionfile, %versionSettings); - - print <<END; - <a href="http://$versionSettings{'URL'}" target="_blank"> - <b>Net-Traffic $versionSettings{'VERSION_INSTALLED'} - - -END - print "Build $versionSettings{'BUILD_INSTALLED'}"; - - if ($versionSettings{'IS_TESTVERSION'} == 1) { - print " - Testversion $versionSettings{'TESTVERSION'}"; - } - print "</b></a><br /><br />\n"; - - # check for new version - &checkForNewVersion(); -} - -sub traffPercentbar -{ - my $percent = $_[0]; - my $fg = '#a0a0a0'; - my $bg = '#e2e2e2'; - - if ($percent =~ m/^(\d+)%$/ ) - { - print <<END; - <table width='100%' border='1' cellspacing='0' cellpadding='0' style='border-width:1px;border-style:solid;border-color:$fg;width:100%;height:10px;'> - <tr> -END - - if ($percent eq "100%" || $1 > 100) - { - $fg = $NETTRAFF::colorMax; - print "<td width='100%' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'>" - } - elsif ($percent eq "0%") - { - print "<td width='100%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>" - } - else - { - if($NETTRAFF::settings{'WARN_ON'} eq 'on' - && $1 >= $NETTRAFF::settings{'WARN'}) - { - $fg = $NETTRAFF::colorWarn; - } - - print "<td width='$percent' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'></td><td width='" . (100-$1) . "%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>" - } - print <<END; - <img src='/images/null.gif' width='1' height='1' alt='' /> - </td> - </tr> - </table> -END - - } -} - - -sub checkForNewVersion -{ - if ($NETTRAFF::settings{'VERSION_CHECK_ON'} ne 'on') - { - return; - } - - # download latest version - &downloadLatestVersionInfo(); - - if(-e $latestVersionFile) - { - my %versionSettings = (); - &General::readhash($NETTRAFF::versionfile, %versionSettings); - - my %latestVersion = (); - &General::readhash($latestVersionFile, %latestVersion); - - if( $versionSettings{'VERSION_INSTALLED'} lt $latestVersion{'VERSION_AVAILABLE'} - || ( $versionSettings{'VERSION_INSTALLED'} le $latestVersion{'VERSION_AVAILABLE'} - && $versionSettings{'BUILD_INSTALLED'} lt $latestVersion{'BUILD_AVAILABLE'} ) ) - { - &Header::openbox('100%', 'left', $Lang::tr{'info'}); - print <<END; - <table width="100%"> - <tr> - <td> - $Lang::tr{'net traffic newversion'} - <a href="$latestVersion{'URL_UPDATE'}" target="_blank"> - <b>$latestVersion{'URL_UPDATE'}</b> - </a> - </td> - </tr> - <tr> - <td> - <b>v$latestVersion{'VERSION_AVAILABLE'} - Build $latestVersion{'BUILD_AVAILABLE'} - </table> -END - - &Header::closebox(); - } - } -} - -sub downloadLatestVersionInfo -{ - # only check if we are online - if (! -e '/var/ipfire/red/active') - { - return; - } - - # download latest version file if it is not existing or outdated (i.e. 5 days old) - if((! -e $latestVersionFile) || (int(-M $latestVersionFile) > 5)) - { - my %versionSettings = (); - &General::readhash($NETTRAFF::versionfile, %versionSettings); - - my $ua = LWP::UserAgent->new; - $ua->timeout(120); - $ua->agent("Mozilla/4.0 (compatible; IPFire $General::version; $versionSettings{'VERSION_INSTALLED'})"); - my $content = $ua->get($updateUrl); - - if ( $content->is_success ) - { -#~ open(FILE, ">$latestVersionFile") or die "Could not write file: $latestVersionFile"; -#~ flock (FILE, 2); -#~ print FILE "$content->content\n"; -#~ close(FILE); - - my %latestVersion = (); - - # latest versions, format is: MOD_VERSION="1.3.0" - $content->content =~ /MOD_VERSION="(.+?)"/; - $latestVersion{'VERSION_AVAILABLE'} = $1; - - # latest build, format is: MOD_BUILD="0" - $content->content =~ /MOD_BUILD="(.+?)"/; - $latestVersion{'BUILD_AVAILABLE'} = $1; - - # URL format is: MOD_URL="http://blockouttraffic.de/nt_index.php" - $content->content =~ /MOD_URL="(.+?)"/; - $latestVersion{'URL_UPDATE'} = $1; - - &General::writehash($latestVersionFile, %latestVersion); - } - } -} - - -sub getFormatedDate -{ - my $time = shift; - my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($time); - - return sprintf("%04d-%02d-%02d, %02d:%02d", 1900+$year, $mon+1, $mday, $hour, $min);; - -} -# always return 1; -1; -# EOF diff --git a/config/cfgroot/net-traffic-lib.pl b/config/cfgroot/net-traffic-lib.pl deleted file mode 100644 index 37afdbf..0000000 --- a/config/cfgroot/net-traffic-lib.pl +++ /dev/null @@ -1,518 +0,0 @@ -#!/usr/bin/perl -# -# $Id: net-traffic-lib.pl,v 1.10 2007/01/09 19:00:35 dotzball Exp $ -# -# Summarize all IP accounting files from start to end time -# -# Copyright (C) 1997 - 2000 Moritz Both -# 2001 - 2002 Al Zaharov -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# The author can be reached via email: moritz@daneben.de, or by -# snail mail: Moritz Both, Im Moore 26, 30167 Hannover, -# Germany. Phone: +49-511-1610129 -# -# -# 22 June 2004 By Achim Weber dotzball@users.sourceforge.net -# - changed to use it with Net-Traffic Addon -# - renamed to avoid issues when calling this file or original ipacsum -# - this file is net-traffic-lib.pl for IPCop 1.4.0 -# - -package Traffic; - -use 5.000; -use Getopt::Long; -use POSIX qw(strftime); -use Time::Local; -use Socket; -use IO::Handle; -#use warnings; -#use strict; - -$|=1; # line buffering - -my @moff = (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 ); - -# =()<$datdelim="@<DATDELIM>@";>()= -my $datdelim="#-#-#-#-#"; -# =()<$prefix="@<prefix>@";>()= -my $prefix="/usr"; -# =()<$exec_prefix="@<exec_prefix>@";>()= -my $exec_prefix="${prefix}"; -# =()<$INSTALLPATH="@<INSTALLPATH>@";>()= -my $INSTALLPATH="${exec_prefix}/sbin"; -my $datdir="/var/log/ip-acct"; - -my $me=$0; -$me =~ s|^.*/([^/]+)$|$1|; -my $now = time; -my $fetchipac="$INSTALLPATH/fetchipac"; -my $rule_regex = ".*"; # match rules with this regex only -my $machine_name; -my $fetchipac_options; -my ($newest_timestamp_before_starttime, $oldest_timestamp_after_endtime); -my (%rule_firstfile, %rule_lastfile); -my $count; -my @timestamps; -my $rulenumber; -my ($starttime, $endtime); - -## Net-Traffic variables ## -my %allDays; -my $allDaysBytes; -my $tzoffset = 0; -my $displayMode = "daily"; -my ($curMonth, $curYear); -${Traffic::blue_in} = 'incoming BLUE'; -${Traffic::green_in} = 'incoming GREEN'; -${Traffic::orange_in} = 'incoming ORANGE'; -${Traffic::red_in} = 'incoming RED'; -${Traffic::blue_out} = 'outgoing BLUE'; -${Traffic::green_out} = 'outgoing GREEN'; -${Traffic::orange_out} = 'outgoing ORANGE'; -${Traffic::red_out} = 'outgoing RED'; - - -sub calcTraffic{ - $allDaysBytes = shift; - $starttime = shift; - $endtime = shift; - $displayMode = shift; - - # init - %allDays = (); - $starttime =~ /^(\d\d\d\d)(\d\d)/; - $curYear = $1; - $curMonth = $2; - - # calculate time zone offset in seconds - use difference of output of date - # command and time function, round it - $tzoffset = time-timegm(localtime()); - $machine_name = undef; - - if($displayMode ne "exactTimeframe") - { - $starttime = makeunixtime($starttime); - if($displayMode ne 'exactEnd') { - $endtime = makeunixtime($endtime); - } - } - $endtime -= 1; - - # options that we need to pass to fetchipac if we call it. - $fetchipac_options = "--directory=$datdir"; - - $endtime = $now if ($endtime > $now); - $starttime = 0 if ($starttime < 0); -#~ $mystarttime = &makemydailytime($starttime); -#~ $myendtime = &makemydailytime($endtime); - %rule_firstfile = ( ); - %rule_lastfile = ( ); - @timestamps = (); - - # find out which timestamps we need to read. - # remember newest timestamp before starttime so we know when data for - # the first file starts - # also remember oldest timestamp after end time - $newest_timestamp_before_starttime = ""; - $oldest_timestamp_after_endtime = ""; - open(DATA, "$fetchipac $fetchipac_options --timestamps=$starttime,$endtime ". - "--machine-output-format|") || die "$me: cant run $fetchipac\n"; - # the first thing is the timestamp count - $count=<DATA>; - if ($count == 0) { - return (); - } - while(<DATA>) - { - if (/^(.)\s(\d+)$/) { - my $ts = $2; - if ($1 eq "-") { - $newest_timestamp_before_starttime=$ts; - } - elsif ($1 eq "+") { - $oldest_timestamp_after_endtime=$ts; - } - elsif ($1 eq "*") { - push(@timestamps, $ts); - } - else { - die "$me: illegal output from $fetchipac: "$_"\n"; - } - } - else { - die "$me: illegal output from $fetchipac: "$_"\n"; - } - } - close DATA; - - push(@timestamps, $oldest_timestamp_after_endtime) - if ($oldest_timestamp_after_endtime); - unshift(@timestamps, $newest_timestamp_before_starttime) - if ($newest_timestamp_before_starttime); - - $rulenumber = 0; - - # read all data we need and put the data into memory. - &read_data; - - my @days_sorted = sort keys %allDays; - return @days_sorted; -} -########################## -# END OF MAIN PROGRAM -########################## - -# read all data (@timestmaps contains the timestamps, must be sorted!) -# and put the data into our global memory data -# structures. special care must be taken with data of the first and -# the last timestamps we read, since we only want data which is from our -# time frame. Furthermore, data from before and after this time frame -# must be preserved in special data structures because we might replace -# them (option --replace) and have to write extra data for these times -# then. -sub read_data { - my $run_s; - my $s; - my $i; - my $in_time = 0; - my $after_time = 0; - - my $curDay = $starttime; - - # feed the timestamp list to fetchipac on its stdin. - socketpair(CHILD, PARENT, AF_UNIX, SOCK_STREAM, PF_UNSPEC) - or die "socketpair: $!"; - CHILD->autoflush(1); - PARENT->autoflush(1); - my $pid = open(CHILD, "-|"); - die "$me: can't fork: $!\n" unless defined $pid; - if ($pid == 0) { - # child - close CHILD; - open(FETCHIPAC, "|$fetchipac $fetchipac_options --record " - ."--machine-output-format") - or die "$me: cant exec fetchipac\n"; - -#this is much more efficient than the original code (Manfred Weihs) -# and it adds more troubles than solves (Al Zakharov) - if ($timestamps[0] == $newest_timestamp_before_starttime) { - print(FETCHIPAC $timestamps[1],"-",$timestamps[$count],"\n"); - } else { - print(FETCHIPAC $timestamps[0],"-",$timestamps[$count-1],"\n"); - } - close(FETCHIPAC); - close(PARENT); - exit; - } - close PARENT; - - my $laststamp = undef; - $laststamp = $newest_timestamp_before_starttime - if ($newest_timestamp_before_starttime); - $i = 0; - $i++ if ($laststamp); - while (<CHILD>) { - # first line of fetchipac output: "ADD" - /^ADD\s*$/i or die "$me: bad line from fetchipac: $_\n"; - # second line of fetchipac output: timestamp no_of_records - $_ = <CHILD> || last; - /^(\d+)\s(\d+)$/ or die "$me: bad line from fetchipac: $_\n"; - my $timestamp = int $1; - my $number_of_records = int $2; - my $do_collect = 1; - - if ($displayMode =~ /^daily/) { - # increment Day aslong current timestamp is not in current Day - while ( ($timestamp-$curDay) > 86399) { - $curDay += 86400; - } - } - else - { - my @dummy = localtime($timestamp); - # increment Month aslong current timestamp is not in current Month - while ($curMonth < ($dummy[4]+1) || $curYear<($dummy[5]+1900)) { - $curMonth++; - if ($curMonth > 12) { - $curMonth = 1; - $curYear++; - } - my $newMonth = $curYear; - $newMonth .= $curMonth < 10 ? "0".$curMonth."01" : $curMonth."01"; - $newMonth .= "01"; - $curDay = &makeunixtime($newMonth); - } - } - - if ($timestamp < $starttime) { - # this record is too old, we dont need the data. - # However, the timestamp gives us a clue on the - # time period the next item covers. - $do_collect = 0; - } - - my $irec; - # read each record - my $data = &read_data_record(CHILD, $number_of_records); - - if ($do_collect && $in_time == 0) { - # the data is from after starttime. if it is the - # first one, split the data (if we know for how - # long this data is valid, and if $laststamp is not - # equal to $starttime in which case the split is - # redundant). If we don't have a clue about the - # last file time before our first file was created, - # we do not know how much of the file data is in our - # time frame. we assume everything belongs to us. - $in_time = 1; -# if ($laststamp && $laststamp != $starttime) { - if ($laststamp && $laststamp != $newest_timestamp_before_starttime) { - my $newdata = &split_data($data, - $laststamp, $timestamp, $starttime); -#~ $glb_data_before = $data; - $data = $newdata; - $laststamp = $starttime; - } - } - - if ($timestamp > $endtime) { - # this data is too new, but the data in it may have - # begun within our time frame. (if endtime eq laststamp - # we do a redundant split here, too - it works for now - # and --replace relies on it, but it is ugly.) - if ($after_time == 0) { - $after_time = 1; - if ($laststamp) { -#~ $glb_data_after = -#~ &split_data($data,$laststamp,$timestamp,$endtime); - &split_data($data,$laststamp,$timestamp,$endtime); - } else { - $do_collect = 0; - } - } else { - $do_collect = 0; # just too new. - } - } - - if ($do_collect) { - &collect_data($data, $i, $curDay); - } - $laststamp = $timestamp; - $i++; - } - close CHILD; - wait; -} - -# split the data in $1 (format as from read_data) into a pair of two -# such data sets. The set referenced to as $1 will afterwards contain -# the first part of the data, another set which is returned contains -# the second part of the data. -# interpret the data as having start time=$2 and end time=$3 and split -# time=$4 -sub split_data { - my $data = shift; - my $mstart = shift; - my $mend = shift; - my $msplit = shift; - - # calculate factors for multiplications - my $ust = $mstart; - my $uperiod = $mend - $ust; - my $usplit = $msplit - $ust; - - if ($uperiod < 0) { - # hmmm? die Daten sind rueckwaerts??? - $uperiod = -$uperiod; - } - my $fac1; - if ($usplit < 0) { - $fac1 = 0; - } - elsif ($usplit > $uperiod) { - $fac1 = 1; - } - else { - $fac1 = $usplit / $uperiod; - } - - # $fac1 now says us how much weight the first result has. - # initialize the set we will return. - my @ret = ( ); - - foreach my $set (@$data) { - my ($rule, $bytes, $pkts) = @$set; - $$set[1] = int($bytes * $fac1 + 0.5); - $$set[2] = int($pkts * $fac1 + 0.5); - push(@ret, [ $rule, $bytes - $$set[1], $pkts - $$set[2] ]); - } - return @ret; -} - -# put data from one file into global data structures -# must be called in correct sorted file name order to set rules_lastfile -# and rules_firstfile (which are currently useless) -# arguments: -# $1=index number of file; $2 = reference to array with data from file -sub collect_data { - my($filedata, $ifile, $i, $day); - - $filedata = shift; - $ifile=shift; - $day =shift; - - # if day first appeared in this file, initialize its - # life. - if (!defined($allDays{$day})) { - return if (&init_filter_id($day)); - $allDays{$day} = $rulenumber++; - } - - for ($i=0; $i<=$#$filedata; $i++) { - my $set = $$filedata[$i]; - my $rule = $$set[0]; - my $bytes = $$set[1]; - my $pkts = $$set[2]; - - $_ = $rule; - /^(.*) (.*$/; - $_ = $1; - /^forwarded (.*)$/; - $rule = $1; - $allDaysBytes->{$day}{$rule} += $bytes; - } -} - -# initialize data variables for a new rule - if it is new -sub init_filter_id { - my($s, $ifile) = @_; - - if (!defined $allDaysBytes->{$s}) { - if ($displayMode =~ /^daily/) { - my $newDay = &makemydailytime($s); - $newDay =~ /^\d\d\d\d-(\d\d)-\d\d$/; - - return 1 if ($1 > $curMonth && $displayMode ne "daily_multi"); - - $allDaysBytes->{$s}{'Day'} = $newDay; - } - else { - $allDaysBytes->{$s}{'Day'} = &makemymonthlytime($s); - } - $allDaysBytes->{$s}{${Traffic::blue_in}} = int(0); - $allDaysBytes->{$s}{${Traffic::green_in}} = int(0); - $allDaysBytes->{$s}{${Traffic::orange_in}} = int(0); - $allDaysBytes->{$s}{${Traffic::red_in}} = int(0); - $allDaysBytes->{$s}{${Traffic::blue_out}} = int(0); - $allDaysBytes->{$s}{${Traffic::green_out}} = int(0); - $allDaysBytes->{$s}{${Traffic::orange_out}} = int(0); - $allDaysBytes->{$s}{${Traffic::red_out}} = int(0); - } - return 0; -} - -# read data record from filehandle $1 -# number of records is $2 -# Return value: reference to array a of length n; -# n is the number of rules -# each field in a is an array aa with 3 fields -# the fields in arrays aa are: [0]=name of rule; [1]=byte count; -# [2]=packet count -# function does not use global variables -sub read_data_record { - my($file, $number_of_records, $beforedata, $indata, $i, $irec); - my($pkts, $bytes, $rule); - my(@result); - - $file=shift; - $number_of_records = shift; - $indata=0; - $beforedata=1; - - for($irec = 0; $irec < $number_of_records; $irec++) { - $_ = <$file>; - chop; - /^(\s*(.*)$/ or die "$me: bad line from fetchipac (expecting machine name): $_\n"; - $machine_name = $1; # remember final machine name - while(<$file>) { - last if (/^)$/); # terminating line ')' - /^(\d+)\s(\d+)\s|(.*)|$/ - or die "$me: bad line from fetchipac (expecting rule item): $_\n"; - $bytes = $1; - $pkts = $2; - $rule = $3; - if ($rule =~ /$rule_regex/) { - push(@result, [ $rule, $bytes, $pkts]); - } - } - } - # read another emtpy line (data format consistency) - $_ = <$file>; - die "$me: bad data from fetchipac (expected emtpy line): $_\n" - if ($_ !~ /^$/); - @result; -} - -# given a string in format YYYYMMDD[hh[mm[ss]]], make unix time -# use time zone offset $tzoffset (input=wall clock time, output=UTC) -sub makeunixtime { - my($y, $m, $d, $h, $i, $e); - my $s = shift; - - $h=0; $i=0; $e=0; - if ($s =~ /^(\d\d\d\d)(\d\d)(\d\d)/) { - ($y, $m, $d) = ($1, $2, $3); - if ($s =~ /^\d\d\d\d\d\d\d\d-?(\d\d)/) { - $h=$1; - if ($s =~ /^\d\d\d\d\d\d\d\d-?\d\d(\d\d)/) { - $i=$1; - if ($s =~ /^\d\d\d\d\d\d\d\d-?\d\d\d\d(\d\d)/) { - $e=$1; - } - } - } - } - else { - return 0; - } - - $y-=1970; - $s = (($y)*365) + int(($y+2)/4) + $moff[$m-1] + $d-1; - $s-- if (($y+2)%4 == 0 && $m < 3); - $s*86400 + $h*3600 + $i*60 + $e + $tzoffset; -} - -# return the given unix time in localtime in "mydaily" time format -sub makemydailytime { - my($s)=shift; - - my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = - localtime($s); - return sprintf("%04d-%02d-%02d", 1900+$year, $mon+1, $mday); -} - -# return the given unix time in localtime in "mymonthly" time format -sub makemymonthlytime { - my($s)=shift; - - my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = - localtime($s); - return sprintf("%04d-%02d", 1900+$year, $mon+1); -} - -# EOF diff --git a/config/cron/crontab b/config/cron/crontab index c42c650..c6d8a72 100644 --- a/config/cron/crontab +++ b/config/cron/crontab @@ -67,3 +67,6 @@ HOME=/
# Cleanup the mail spool directory %weekly * * /usr/sbin/dma-cleanup-spool + +# Update DNS trust anchor +%daily,random * * @runas(nobody) /usr/sbin/unbound-anchor -a /var/lib/unbound/root.key -c /etc/unbound/icannbundle.pem diff --git a/config/etc/group b/config/etc/group index 51334aa..e4897db 100644 --- a/config/etc/group +++ b/config/etc/group @@ -30,7 +30,6 @@ nobody:x:99: users:x:100: snort:x:101: logwatch:x:102: -dnsmasq:x:103: cron:x:104: syslogd:x:105: klogd:x:106: diff --git a/config/etc/passwd b/config/etc/passwd index 0c2527c..542e3bf 100644 --- a/config/etc/passwd +++ b/config/etc/passwd @@ -14,7 +14,6 @@ nobody:x:99:99:Nobody:/home/nobody:/bin/false postfix:x:100:100::/var/spool/postfix:/bin/false snort:x:101:101:ftp:/var/log/snort:/bin/false logwatch:x:102:102::/var/log/logwatch:/bin/false -dnsmasq:x:103:103::/:/bin/false cron:x:104:104::/:/bin/false syslogd:x:105:105:/var/empty:/bin/false klogd:x:106:106:/var/empty:/bin/false diff --git a/config/guardian/guardian.de.pl b/config/guardian/guardian.de.pl new file mode 100644 index 0000000..344d045 --- /dev/null +++ b/config/guardian/guardian.de.pl @@ -0,0 +1,45 @@ +%tr = ( +%tr, + +'guardian' => 'Guardian', +'guardian block a host' => 'Host blocken', +'guardian block httpd brute-force' => 'httpd-Brute-Force-Erkennung', +'guardian block owncloud brute-force' => 'Owncloud-Brute-Force-Erkennung', +'guardian block ssh brute-force' => 'SSH-Brute-Force-Erkennung', +'guardian blockcount' => 'Trefferschwelle (Snort)', +'guardian blocked hosts' => 'Aktuell geblockte Hosts', +'guardian blocking of this address is not allowed' => 'Diese Addresse darf nicht geblockt werden.', +'guardian blocktime' => 'Blockzeit (Sekunden)', +'guardian common settings' => 'Allgemeine Einstellungen', +'guardian configuration' => 'Guardian-Konfiguration', +'guardian daemon' => 'Daemon', +'guardian empty input' => 'Fehlende Angabe: Bitte geben Sie einen gültigen Host oder ein gültiges Netzwerk an.', +'guardian enabled' => 'Guardian aktivieren', +'guardian firewallaction' => 'Firewall-Aktion', +'guardian ignored hosts' => 'Ignorierte Hosts', +'guardian invalid address or subnet' => 'Ungültige Host-Addresse oder Netzwerk.', +'guardian invalid blockcount' => 'Ungültige Anzahl: Bitte verwenden Sie eine natürliche Zahl größer als Null.', +'guardian invalid blocktime' => 'Ungültige Blockzeit: Bitte verwenden Sie eine natürliche Zahl größer als Null.', +'guardian invalid logfile' => 'Der angegebene Pfad zum "Ignore file" ist ungültig.', +'guardian logfacility' => 'Logziel', +'guardian logfile' => 'Logdatei', +'guardian loglevel' => 'Loglevel', +'guardian loglevel_off' => 'Aus', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'Datei', +'guardian logtarget_console' => 'Konsole', +'guardian no entries' => 'Keine Einträge vorhanden.', +'guardian not running no hosts can be blocked' => 'Guardian läuft nicht. Es werden keine Hosts geblockt.', +'guardian priolevel_high' => '1 - Hoch', +'guardian priolevel_medium' => '2 - Mittel', +'guardian priolevel_low' => '3 - Niedrig', +'guardian priolevel_very_low' => '4 - Sehr niedrig', +'guardian priority level' => 'Prioritätslevel (Snort)', +'guardian service' => 'Guardian-Dienst', +'guardian watch snort alertfile' => 'Snort-Alarme auswerten', + +); + +#EOF diff --git a/config/guardian/guardian.en.pl b/config/guardian/guardian.en.pl new file mode 100644 index 0000000..f6be865 --- /dev/null +++ b/config/guardian/guardian.en.pl @@ -0,0 +1,45 @@ +%tr = ( +%tr, + +'guardian' => 'Guardian', +'guardian block a host' => 'Block host', +'guardian block httpd brute-force' => 'httpd Brute Force Detection', +'guardian block owncloud brute-force' => 'Owncloud Brute Force detection', +'guardian block ssh brute-force' => 'SSH Brute Force Detection', +'guardian blockcount' => 'Strike Threshold (Snort)', +'guardian blocked hosts' => 'Currently blocked hosts', +'guardian blocking of this address is not allowed' => 'Blocking of the given address is not allowed.', +'guardian blocktime' => 'Block Time (seconds)', +'guardian common settings' => 'Common Settings', +'guardian configuration' => 'Guardian Configuration', +'guardian daemon' => 'Daemon', +'guardian empty input' => 'Empty input: Please enter a valid host address or subnet.', +'guardian enabled' => 'Enable Guardian', +'guardian firewallaction' => 'Firewall Action', +'guardian ignored hosts' => 'Ignored Hosts', +'guardian invalid address or subnet' => 'Invalid host address or subnet.', +'guardian invalid blockcount' => 'Invalid BlockCount: Please provide a natural number higher than zero.', +'guardian invalid blocktime' => 'Invalid BlockTime: Please provide a natural number higher than zero.', +'guardian invalid logfile' => 'The provided path for the logfile is not valid.', +'guardian logfacility' => 'Log Facility', +'guardian logfile' => 'Log File', +'guardian loglevel' => 'Log Level', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian no entries' => 'No entries at the moment.', +'guardian not running no hosts can be blocked' => 'Guardian is not running. No hosts will be blocked.', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian priority level' => 'Priority Level (Snort)', +'guardian service' => 'Guardian Service', +'guardian watch snort alertfile' => 'Monitor Snort Alert File', + +); + +#EOF diff --git a/config/guardian/guardian.es.pl b/config/guardian/guardian.es.pl new file mode 100644 index 0000000..89ffb52 --- /dev/null +++ b/config/guardian/guardian.es.pl @@ -0,0 +1,23 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Archivo de alerta', +'guardian configuration' => 'Configuración de Guardian', +'guardian ignorefile' => 'Archivo Ignorefile', +'guardian interface' => 'Interfaz', +'guardian logfile' => 'Archivo de registro', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Límite de tiempo', + +); + +#EOF diff --git a/config/guardian/guardian.fr.pl b/config/guardian/guardian.fr.pl new file mode 100644 index 0000000..82e5736 --- /dev/null +++ b/config/guardian/guardian.fr.pl @@ -0,0 +1,23 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Fichier d'alerte', +'guardian configuration' => 'Configuration du gardien', +'guardian ignorefile' => 'Fichier d'ignorés', +'guardian interface' => 'Interface', +'guardian logfile' => 'Fichier log', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Délai maximum', + +); + +#EOF diff --git a/config/guardian/guardian.it.pl b/config/guardian/guardian.it.pl new file mode 100644 index 0000000..9b89a52 --- /dev/null +++ b/config/guardian/guardian.it.pl @@ -0,0 +1,24 @@ +%tr = ( +%tr, + +'guaranteed bandwith' => 'Guaranteed bandwith', +'guardian alertfile' => 'Alertfile', +'guardian configuration' => 'Guardian Configuration', +'guardian ignorefile' => 'Ignorefile', +'guardian interface' => 'Interface', +'guardian logfile' => 'Logfile', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Timelimit', + +); + +#EOF diff --git a/config/guardian/guardian.nl.pl b/config/guardian/guardian.nl.pl new file mode 100644 index 0000000..d71a91f --- /dev/null +++ b/config/guardian/guardian.nl.pl @@ -0,0 +1,23 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Meldingenbestand', +'guardian configuration' => 'Guardian configuratie', +'guardian ignorefile' => 'Negeerbestand', +'guardian interface' => 'Interface', +'guardian logfile' => 'Logbestand', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Tijdlimiet', + +); + +#EOF diff --git a/config/guardian/guardian.pl.pl b/config/guardian/guardian.pl.pl new file mode 100644 index 0000000..18cb396 --- /dev/null +++ b/config/guardian/guardian.pl.pl @@ -0,0 +1,23 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Plik alertów', +'guardian configuration' => 'Konfiguracja Guardian'a', +'guardian ignorefile' => 'Plik ignorowanych', +'guardian interface' => 'Interfejs', +'guardian logfile' => 'Plik Log', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Ograniczenie czasowe', + +); + +#EOF diff --git a/config/guardian/guardian.ru.pl b/config/guardian/guardian.ru.pl new file mode 100644 index 0000000..34b8928 --- /dev/null +++ b/config/guardian/guardian.ru.pl @@ -0,0 +1,24 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Alertfile', +'guardian configuration' => 'Настройки защиты', +'guardian ignorefile' => 'Ignorefile', +'guardian interface' => 'Интерфейс', +'guardian logfile' => 'Logfile', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Ограничение времени', + +); + +#EOF + diff --git a/config/guardian/guardian.tr.pl b/config/guardian/guardian.tr.pl new file mode 100644 index 0000000..701dc15 --- /dev/null +++ b/config/guardian/guardian.tr.pl @@ -0,0 +1,24 @@ +%tr = ( +%tr, + +'guardian alertfile' => 'Uyarı dosyası', +'guardian configuration' => 'Koruyucu Yapılandırması', +'guardian ignorefile' => 'Yoksayılan dosya', +'guardian interface' => 'Ara birim', +'guardian logfile' => 'Günlük dosyası', +'guardian loglevel_off' => 'Off', +'guardian loglevel_info' => 'Info', +'guardian loglevel_debug' => 'Debug', +'guardian logtarget_syslog' => 'Systemlog', +'guardian logtarget_file' => 'File', +'guardian logtarget_console' => 'Console', +'guardian priolevel_high' => '1 - High', +'guardian priolevel_medium' => '2 - Medium', +'guardian priolevel_low' => '3 - Low', +'guardian priolevel_very_low' => '4 - Very low', +'guardian timelimit' => 'Zaman sınırlaması', + +); + +#EOF + diff --git a/config/rootfiles/common/armv5tel/initscripts b/config/rootfiles/common/armv5tel/initscripts index 29b3290..a807760 100644 --- a/config/rootfiles/common/armv5tel/initscripts +++ b/config/rootfiles/common/armv5tel/initscripts @@ -2,7 +2,6 @@ etc/init.d #etc/rc.d #etc/rc.d/helper etc/rc.d/helper/getdnsfromdhcpc.pl -etc/rc.d/helper/writeipac.pl #etc/rc.d/init.d #etc/rc.d/init.d/alsa #etc/rc.d/init.d/amavisd @@ -26,7 +25,6 @@ etc/rc.d/init.d/console etc/rc.d/init.d/dhcp etc/rc.d/init.d/dhcrelay #etc/rc.d/init.d/dnsdist -etc/rc.d/init.d/dnsmasq etc/rc.d/init.d/fcron #etc/rc.d/init.d/fetchmail etc/rc.d/init.d/fireinfo @@ -76,7 +74,7 @@ etc/rc.d/init.d/networking/green etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down -etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.down/05-update-dns-forwarders etc/rc.d/init.d/networking/red.down/10-ipsec etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn @@ -84,7 +82,7 @@ etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes @@ -94,7 +92,6 @@ etc/rc.d/init.d/networking/red.up/24-RS-qos etc/rc.d/init.d/networking/red.up/27-RS-squid etc/rc.d/init.d/networking/red.up/30-ddns #etc/rc.d/init.d/networking/red.up/35-guardian -etc/rc.d/init.d/networking/red.up/40-ipac etc/rc.d/init.d/networking/red.up/50-ipsec etc/rc.d/init.d/networking/red.up/50-ovpn etc/rc.d/init.d/networking/red.up/98-leds @@ -137,6 +134,7 @@ etc/rc.d/init.d/template #etc/rc.d/init.d/transmission etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry +etc/rc.d/init.d/unbound etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin @@ -162,6 +160,7 @@ etc/rc.d/rc0.d/K49cyrus-sasl etc/rc.d/rc0.d/K51vnstat etc/rc.d/rc0.d/K78snort etc/rc.d/rc0.d/K79leds +etc/rc.d/rc0.d/K79unbound etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient #etc/rc.d/rc0.d/K84bluetooth @@ -182,6 +181,7 @@ etc/rc.d/rc3.d/S15fireinfo etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient etc/rc.d/rc3.d/S20network +etc/rc.d/rc3.d/S11unbound etc/rc.d/rc3.d/S21leds etc/rc.d/rc3.d/S24cyrus-sasl etc/rc.d/rc3.d/S25random @@ -211,6 +211,7 @@ etc/rc.d/rc6.d/K49cyrus-sasl etc/rc.d/rc6.d/K51vnstat etc/rc.d/rc6.d/K78snort etc/rc.d/rc6.d/K79leds +etc/rc.d/rc6.d/K79unbound etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient #etc/rc.d/rc6.d/K84bluetooth diff --git a/config/rootfiles/common/attr b/config/rootfiles/common/attr index 1d9cfc0..d24d133 100644 --- a/config/rootfiles/common/attr +++ b/config/rootfiles/common/attr @@ -11,40 +11,10 @@ usr/bin/setfattr usr/lib/libattr.so usr/lib/libattr.so.1 usr/lib/libattr.so.1.1.0 -#usr/libexec -#usr/libexec/libattr.a -#usr/libexec/libattr.la -usr/libexec/libattr.so -#usr/man/man1/attr.1 -#usr/man/man1/getfattr.1 -#usr/man/man1/setfattr.1 -#usr/man/man2 -#usr/man/man2/fgetxattr.2 -#usr/man/man2/flistxattr.2 -#usr/man/man2/fremovexattr.2 -#usr/man/man2/fsetxattr.2 -#usr/man/man2/getxattr.2 -#usr/man/man2/lgetxattr.2 -#usr/man/man2/listxattr.2 -#usr/man/man2/llistxattr.2 -#usr/man/man2/lremovexattr.2 -#usr/man/man2/lsetxattr.2 -#usr/man/man2/removexattr.2 -#usr/man/man2/setxattr.2 -#usr/man/man3/attr_get.3 -#usr/man/man3/attr_getf.3 -#usr/man/man3/attr_list.3 -#usr/man/man3/attr_listf.3 -#usr/man/man3/attr_multi.3 -#usr/man/man3/attr_multif.3 -#usr/man/man3/attr_remove.3 -#usr/man/man3/attr_removef.3 -#usr/man/man3/attr_set.3 -#usr/man/man3/attr_setf.3 -#usr/man/man5/attr.5 #usr/share/doc/attr #usr/share/doc/attr/CHANGES.gz #usr/share/doc/attr/COPYING +#usr/share/doc/attr/COPYING.LGPL #usr/share/doc/attr/PORTING #usr/share/doc/attr/README #usr/share/locale/cs/LC_MESSAGES/attr.mo @@ -55,3 +25,28 @@ usr/libexec/libattr.so #usr/share/locale/nl/LC_MESSAGES/attr.mo #usr/share/locale/pl/LC_MESSAGES/attr.mo #usr/share/locale/sv/LC_MESSAGES/attr.mo +#usr/share/man/man1/attr.1 +#usr/share/man/man1/getfattr.1 +#usr/share/man/man1/setfattr.1 +#usr/share/man/man2/fgetxattr.2 +#usr/share/man/man2/fremovexattr.2 +#usr/share/man/man2/fsetxattr.2 +#usr/share/man/man2/getxattr.2 +#usr/share/man/man2/llistxattr.2 +#usr/share/man/man2/lgetxattr.2 +#usr/share/man/man2/listxattr.2 +#usr/share/man/man2/lremovexattr.2 +#usr/share/man/man2/lsetxattr.2 +#usr/share/man/man2/removexattr.2 +#usr/share/man/man2/setxattr.2 +#usr/share/man/man3/attr_get.3 +#usr/share/man/man3/attr_getf.3 +#usr/share/man/man3/attr_list.3 +#usr/share/man/man3/attr_listf.3 +#usr/share/man/man3/attr_multi.3 +#usr/share/man/man3/attr_multif.3 +#usr/share/man/man3/attr_remove.3 +#usr/share/man/man3/attr_removef.3 +#usr/share/man/man3/attr_set.3 +#usr/share/man/man3/attr_setf.3 +#usr/share/man/man5/attr.5 diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot index 7552b96..8b5d9f4 100644 --- a/config/rootfiles/common/configroot +++ b/config/rootfiles/common/configroot @@ -121,11 +121,6 @@ var/ipfire/modem #var/ipfire/modem/settings var/ipfire/modem-lib.pl var/ipfire/network-functions.pl -var/ipfire/net-traffic -#var/ipfire/net-traffic/net-traffic-admin.pl -#var/ipfire/net-traffic/net-traffic-lib.pl -#var/ipfire/net-traffic/settings -#var/ipfire/net-traffic/templates #var/ipfire/nfs #var/ipfire/nfs/nfs-server var/ipfire/optionsfw diff --git a/config/rootfiles/common/diffutils b/config/rootfiles/common/diffutils index b00abdb..bb02f1b 100644 --- a/config/rootfiles/common/diffutils +++ b/config/rootfiles/common/diffutils @@ -2,10 +2,7 @@ usr/bin/cmp usr/bin/diff #usr/bin/diff3 #usr/bin/sdiff -#usr/info -#usr/info/diff.info -#usr/info/dir -#usr/man/man1/cmp.1 -#usr/man/man1/diff.1 -#usr/man/man1/diff3.1 -#usr/man/man1/sdiff.1 +#usr/share/info/diffutils.info +#usr/share/man/man1/cmp.1 +#usr/share/man/man1/diff3.1 +#usr/share/man/man1/sdiff.1 diff --git a/config/rootfiles/common/dnsmasq b/config/rootfiles/common/dnsmasq deleted file mode 100644 index 1e90012..0000000 --- a/config/rootfiles/common/dnsmasq +++ /dev/null @@ -1,2 +0,0 @@ -usr/sbin/dnsmasq -#usr/share/man/man8/dnsmasq.8 diff --git a/config/rootfiles/common/ed b/config/rootfiles/common/ed index c76501a..0779fcf 100644 --- a/config/rootfiles/common/ed +++ b/config/rootfiles/common/ed @@ -1,5 +1,6 @@ #bin/ed #bin/red +#usr/info #usr/info/ed.info #usr/man/man1/ed.1 #usr/man/man1/red.1 diff --git a/config/rootfiles/common/expat b/config/rootfiles/common/expat index aaa8265..81a8ba7 100644 --- a/config/rootfiles/common/expat +++ b/config/rootfiles/common/expat @@ -1,15 +1,16 @@ #usr/bin/xmlwf #usr/include/expat.h +#usr/include/expat_config.h #usr/include/expat_external.h #usr/lib/libexpat.a #usr/lib/libexpat.la usr/lib/libexpat.so usr/lib/libexpat.so.1 -usr/lib/libexpat.so.1.6.0 +usr/lib/libexpat.so.1.6.2 #usr/lib/pkgconfig/expat.pc -#usr/share/doc/expat-2.1.0 -#usr/share/doc/expat-2.1.0/expat.png -#usr/share/doc/expat-2.1.0/reference.html -#usr/share/doc/expat-2.1.0/style.css -#usr/share/doc/expat-2.1.0/valid-xhtml10.png +#usr/share/doc/expat-2.2.0 +#usr/share/doc/expat-2.2.0/expat.png +#usr/share/doc/expat-2.2.0/reference.html +#usr/share/doc/expat-2.2.0/style.css +#usr/share/doc/expat-2.2.0/valid-xhtml10.png #usr/share/man/man1/xmlwf.1 diff --git a/config/rootfiles/common/flex b/config/rootfiles/common/flex index 9b97b57..65b5588 100644 --- a/config/rootfiles/common/flex +++ b/config/rootfiles/common/flex @@ -1,11 +1,25 @@ #usr/bin/flex +#usr/bin/flex++ #usr/bin/lex #usr/include/FlexLexer.h -#usr/info/dir -#usr/info/flex.info -#usr/info/flex.info-1 -#usr/info/flex.info-2 #usr/lib/libfl.a +#usr/lib/libfl.la +#usr/lib/libfl.so +usr/lib/libfl.so.2 +usr/lib/libfl.so.2.0.0 #usr/lib/libfl_pic.a +#usr/lib/libfl_pic.la +#usr/lib/libfl_pic.so +usr/lib/libfl_pic.so.2 +usr/lib/libfl_pic.so.2.0.0 #usr/lib/libl.a -#usr/man/man1/flex.1 +#usr/share/doc/flex +#usr/share/doc/flex/AUTHORS +#usr/share/doc/flex/COPYING +#usr/share/doc/flex/NEWS +#usr/share/doc/flex/ONEWS +#usr/share/doc/flex/README +#usr/share/info/flex.info +#usr/share/info/flex.info-1 +#usr/share/info/flex.info-2 +#usr/share/man/man1/flex.1 diff --git a/config/rootfiles/common/gawk b/config/rootfiles/common/gawk index e07cdf3..2a39be6 100644 --- a/config/rootfiles/common/gawk +++ b/config/rootfiles/common/gawk @@ -4,6 +4,7 @@ usr/bin/gawk #usr/bin/igawk #usr/bin/pgawk #usr/bin/pgawk-3.1.5 +#usr/info/dir #usr/info/gawk.info #usr/info/gawkinet.info #usr/lib/awk diff --git a/config/rootfiles/common/gettext b/config/rootfiles/common/gettext index d3b2140..359b8f7 100644 --- a/config/rootfiles/common/gettext +++ b/config/rootfiles/common/gettext @@ -23,6 +23,7 @@ usr/bin/gettext.sh #usr/include/autosprintf.h #usr/include/gettext-po.h #usr/lib/gettext +#usr/lib/gettext/cldr-plurals #usr/lib/gettext/hostname #usr/lib/gettext/project-id #usr/lib/gettext/urlget @@ -32,19 +33,20 @@ usr/bin/gettext.sh #usr/lib/libasprintf.so usr/lib/libasprintf.so.0 usr/lib/libasprintf.so.0.0.0 -usr/lib/libgettextlib-0.18.1.so +usr/lib/libgettextlib-0.19.8.1.so #usr/lib/libgettextlib.la #usr/lib/libgettextlib.so #usr/lib/libgettextpo.a #usr/lib/libgettextpo.la #usr/lib/libgettextpo.so usr/lib/libgettextpo.so.0 -usr/lib/libgettextpo.so.0.5.1 -usr/lib/libgettextsrc-0.18.1.so +usr/lib/libgettextpo.so.0.5.4 +usr/lib/libgettextsrc-0.19.8.1.so #usr/lib/libgettextsrc.la usr/lib/libgettextsrc.so usr/lib/preloadable_libintl.so #usr/share/aclocal/codeset.m4 +#usr/share/aclocal/extern-inline.m4 #usr/share/aclocal/fcntl-o.m4 #usr/share/aclocal/gettext.m4 #usr/share/aclocal/glibc2.m4 @@ -125,6 +127,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-gnome/po/ast.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/bg.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/ca.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/cs.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/da.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/de.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/el.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/eo.po @@ -132,6 +136,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-gnome/po/fi.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/fr.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/ga.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/gl.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/hr.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/hu.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/id.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/it.po @@ -140,9 +146,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-gnome/po/lv.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/ms.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/mt.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/nb.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/nl.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/pl.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/pt.po +#usr/share/doc/gettext/examples/hello-c++-gnome/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/ro.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/ru.po #usr/share/doc/gettext/examples/hello-c++-gnome/po/sk.po @@ -200,6 +208,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-kde/po/ast.po #usr/share/doc/gettext/examples/hello-c++-kde/po/bg.po #usr/share/doc/gettext/examples/hello-c++-kde/po/ca.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/cs.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/da.po #usr/share/doc/gettext/examples/hello-c++-kde/po/de.po #usr/share/doc/gettext/examples/hello-c++-kde/po/el.po #usr/share/doc/gettext/examples/hello-c++-kde/po/eo.po @@ -207,6 +217,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-kde/po/fi.po #usr/share/doc/gettext/examples/hello-c++-kde/po/fr.po #usr/share/doc/gettext/examples/hello-c++-kde/po/ga.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/gl.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/hr.po #usr/share/doc/gettext/examples/hello-c++-kde/po/hu.po #usr/share/doc/gettext/examples/hello-c++-kde/po/id.po #usr/share/doc/gettext/examples/hello-c++-kde/po/it.po @@ -215,9 +227,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-kde/po/lv.po #usr/share/doc/gettext/examples/hello-c++-kde/po/ms.po #usr/share/doc/gettext/examples/hello-c++-kde/po/mt.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/nb.po #usr/share/doc/gettext/examples/hello-c++-kde/po/nl.po #usr/share/doc/gettext/examples/hello-c++-kde/po/pl.po #usr/share/doc/gettext/examples/hello-c++-kde/po/pt.po +#usr/share/doc/gettext/examples/hello-c++-kde/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c++-kde/po/ro.po #usr/share/doc/gettext/examples/hello-c++-kde/po/ru.po #usr/share/doc/gettext/examples/hello-c++-kde/po/sk.po @@ -248,6 +262,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-qt/po/ast.po #usr/share/doc/gettext/examples/hello-c++-qt/po/bg.po #usr/share/doc/gettext/examples/hello-c++-qt/po/ca.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/cs.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/da.po #usr/share/doc/gettext/examples/hello-c++-qt/po/de.po #usr/share/doc/gettext/examples/hello-c++-qt/po/el.po #usr/share/doc/gettext/examples/hello-c++-qt/po/eo.po @@ -255,6 +271,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-qt/po/fi.po #usr/share/doc/gettext/examples/hello-c++-qt/po/fr.po #usr/share/doc/gettext/examples/hello-c++-qt/po/ga.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/gl.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/hr.po #usr/share/doc/gettext/examples/hello-c++-qt/po/hu.po #usr/share/doc/gettext/examples/hello-c++-qt/po/id.po #usr/share/doc/gettext/examples/hello-c++-qt/po/it.po @@ -263,9 +281,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-qt/po/lv.po #usr/share/doc/gettext/examples/hello-c++-qt/po/ms.po #usr/share/doc/gettext/examples/hello-c++-qt/po/mt.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/nb.po #usr/share/doc/gettext/examples/hello-c++-qt/po/nl.po #usr/share/doc/gettext/examples/hello-c++-qt/po/pl.po #usr/share/doc/gettext/examples/hello-c++-qt/po/pt.po +#usr/share/doc/gettext/examples/hello-c++-qt/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c++-qt/po/ro.po #usr/share/doc/gettext/examples/hello-c++-qt/po/ru.po #usr/share/doc/gettext/examples/hello-c++-qt/po/sk.po @@ -295,6 +315,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ast.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/bg.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ca.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/cs.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/da.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/de.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/el.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/eo.po @@ -302,6 +324,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/fi.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/fr.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ga.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/gl.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/hr.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/hu.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/id.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/it.po @@ -310,9 +334,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/lv.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ms.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/mt.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/nb.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/nl.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/pl.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/pt.po +#usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ro.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/ru.po #usr/share/doc/gettext/examples/hello-c++-wxwidgets/po/sk.po @@ -341,6 +367,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++/po/ast.po #usr/share/doc/gettext/examples/hello-c++/po/bg.po #usr/share/doc/gettext/examples/hello-c++/po/ca.po +#usr/share/doc/gettext/examples/hello-c++/po/cs.po +#usr/share/doc/gettext/examples/hello-c++/po/da.po #usr/share/doc/gettext/examples/hello-c++/po/de.po #usr/share/doc/gettext/examples/hello-c++/po/el.po #usr/share/doc/gettext/examples/hello-c++/po/eo.po @@ -348,6 +376,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++/po/fi.po #usr/share/doc/gettext/examples/hello-c++/po/fr.po #usr/share/doc/gettext/examples/hello-c++/po/ga.po +#usr/share/doc/gettext/examples/hello-c++/po/gl.po +#usr/share/doc/gettext/examples/hello-c++/po/hr.po #usr/share/doc/gettext/examples/hello-c++/po/hu.po #usr/share/doc/gettext/examples/hello-c++/po/id.po #usr/share/doc/gettext/examples/hello-c++/po/it.po @@ -356,9 +386,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c++/po/lv.po #usr/share/doc/gettext/examples/hello-c++/po/ms.po #usr/share/doc/gettext/examples/hello-c++/po/mt.po +#usr/share/doc/gettext/examples/hello-c++/po/nb.po #usr/share/doc/gettext/examples/hello-c++/po/nl.po #usr/share/doc/gettext/examples/hello-c++/po/pl.po #usr/share/doc/gettext/examples/hello-c++/po/pt.po +#usr/share/doc/gettext/examples/hello-c++/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c++/po/ro.po #usr/share/doc/gettext/examples/hello-c++/po/ru.po #usr/share/doc/gettext/examples/hello-c++/po/sk.po @@ -391,6 +423,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c-gnome/po/ast.po #usr/share/doc/gettext/examples/hello-c-gnome/po/bg.po #usr/share/doc/gettext/examples/hello-c-gnome/po/ca.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/cs.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/da.po #usr/share/doc/gettext/examples/hello-c-gnome/po/de.po #usr/share/doc/gettext/examples/hello-c-gnome/po/el.po #usr/share/doc/gettext/examples/hello-c-gnome/po/eo.po @@ -398,6 +432,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c-gnome/po/fi.po #usr/share/doc/gettext/examples/hello-c-gnome/po/fr.po #usr/share/doc/gettext/examples/hello-c-gnome/po/ga.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/gl.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/hr.po #usr/share/doc/gettext/examples/hello-c-gnome/po/hu.po #usr/share/doc/gettext/examples/hello-c-gnome/po/id.po #usr/share/doc/gettext/examples/hello-c-gnome/po/it.po @@ -406,9 +442,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c-gnome/po/lv.po #usr/share/doc/gettext/examples/hello-c-gnome/po/ms.po #usr/share/doc/gettext/examples/hello-c-gnome/po/mt.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/nb.po #usr/share/doc/gettext/examples/hello-c-gnome/po/nl.po #usr/share/doc/gettext/examples/hello-c-gnome/po/pl.po #usr/share/doc/gettext/examples/hello-c-gnome/po/pt.po +#usr/share/doc/gettext/examples/hello-c-gnome/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c-gnome/po/ro.po #usr/share/doc/gettext/examples/hello-c-gnome/po/ru.po #usr/share/doc/gettext/examples/hello-c-gnome/po/sk.po @@ -421,6 +459,63 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c-gnome/po/zh_CN.po #usr/share/doc/gettext/examples/hello-c-gnome/po/zh_HK.po #usr/share/doc/gettext/examples/hello-c-gnome/po/zh_TW.po +#usr/share/doc/gettext/examples/hello-c-gnome3 +#usr/share/doc/gettext/examples/hello-c-gnome3/INSTALL +#usr/share/doc/gettext/examples/hello-c-gnome3/Makefile.am +#usr/share/doc/gettext/examples/hello-c-gnome3/autoclean.sh +#usr/share/doc/gettext/examples/hello-c-gnome3/autogen.sh +#usr/share/doc/gettext/examples/hello-c-gnome3/configure.ac +#usr/share/doc/gettext/examples/hello-c-gnome3/hello.c +#usr/share/doc/gettext/examples/hello-c-gnome3/hello.desktop.in.in +#usr/share/doc/gettext/examples/hello-c-gnome3/hello.gresource.xml +#usr/share/doc/gettext/examples/hello-c-gnome3/hello.gschema.xml +#usr/share/doc/gettext/examples/hello-c-gnome3/hello.ui +#usr/share/doc/gettext/examples/hello-c-gnome3/m4 +#usr/share/doc/gettext/examples/hello-c-gnome3/m4/Makefile.am +#usr/share/doc/gettext/examples/hello-c-gnome3/po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/LINGUAS +#usr/share/doc/gettext/examples/hello-c-gnome3/po/Makevars +#usr/share/doc/gettext/examples/hello-c-gnome3/po/POTFILES.in +#usr/share/doc/gettext/examples/hello-c-gnome3/po/af.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ast.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/bg.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ca.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/cs.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/da.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/de.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/el.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/eo.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/es.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/fi.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/fr.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ga.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/gl.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/hr.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/hu.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/id.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/it.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ja.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ky.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/lv.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ms.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/mt.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/nb.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/nl.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/pl.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/pt.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/pt_BR.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ro.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/ru.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/sk.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/sl.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/sr.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/sv.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/tr.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/uk.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/vi.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/zh_CN.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/zh_HK.po +#usr/share/doc/gettext/examples/hello-c-gnome3/po/zh_TW.po #usr/share/doc/gettext/examples/hello-c/INSTALL #usr/share/doc/gettext/examples/hello-c/Makefile.am #usr/share/doc/gettext/examples/hello-c/autoclean.sh @@ -437,6 +532,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c/po/ast.po #usr/share/doc/gettext/examples/hello-c/po/bg.po #usr/share/doc/gettext/examples/hello-c/po/ca.po +#usr/share/doc/gettext/examples/hello-c/po/cs.po +#usr/share/doc/gettext/examples/hello-c/po/da.po #usr/share/doc/gettext/examples/hello-c/po/de.po #usr/share/doc/gettext/examples/hello-c/po/el.po #usr/share/doc/gettext/examples/hello-c/po/eo.po @@ -444,6 +541,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c/po/fi.po #usr/share/doc/gettext/examples/hello-c/po/fr.po #usr/share/doc/gettext/examples/hello-c/po/ga.po +#usr/share/doc/gettext/examples/hello-c/po/gl.po +#usr/share/doc/gettext/examples/hello-c/po/hr.po #usr/share/doc/gettext/examples/hello-c/po/hu.po #usr/share/doc/gettext/examples/hello-c/po/id.po #usr/share/doc/gettext/examples/hello-c/po/it.po @@ -452,9 +551,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-c/po/lv.po #usr/share/doc/gettext/examples/hello-c/po/ms.po #usr/share/doc/gettext/examples/hello-c/po/mt.po +#usr/share/doc/gettext/examples/hello-c/po/nb.po #usr/share/doc/gettext/examples/hello-c/po/nl.po #usr/share/doc/gettext/examples/hello-c/po/pl.po #usr/share/doc/gettext/examples/hello-c/po/pt.po +#usr/share/doc/gettext/examples/hello-c/po/pt_BR.po #usr/share/doc/gettext/examples/hello-c/po/ro.po #usr/share/doc/gettext/examples/hello-c/po/ru.po #usr/share/doc/gettext/examples/hello-c/po/sk.po @@ -483,6 +584,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-clisp/po/ast.po #usr/share/doc/gettext/examples/hello-clisp/po/bg.po #usr/share/doc/gettext/examples/hello-clisp/po/ca.po +#usr/share/doc/gettext/examples/hello-clisp/po/cs.po +#usr/share/doc/gettext/examples/hello-clisp/po/da.po #usr/share/doc/gettext/examples/hello-clisp/po/de.po #usr/share/doc/gettext/examples/hello-clisp/po/el.po #usr/share/doc/gettext/examples/hello-clisp/po/eo.po @@ -490,6 +593,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-clisp/po/fi.po #usr/share/doc/gettext/examples/hello-clisp/po/fr.po #usr/share/doc/gettext/examples/hello-clisp/po/ga.po +#usr/share/doc/gettext/examples/hello-clisp/po/gl.po +#usr/share/doc/gettext/examples/hello-clisp/po/hr.po #usr/share/doc/gettext/examples/hello-clisp/po/hu.po #usr/share/doc/gettext/examples/hello-clisp/po/id.po #usr/share/doc/gettext/examples/hello-clisp/po/it.po @@ -498,9 +603,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-clisp/po/lv.po #usr/share/doc/gettext/examples/hello-clisp/po/ms.po #usr/share/doc/gettext/examples/hello-clisp/po/mt.po +#usr/share/doc/gettext/examples/hello-clisp/po/nb.po #usr/share/doc/gettext/examples/hello-clisp/po/nl.po #usr/share/doc/gettext/examples/hello-clisp/po/pl.po #usr/share/doc/gettext/examples/hello-clisp/po/pt.po +#usr/share/doc/gettext/examples/hello-clisp/po/pt_BR.po #usr/share/doc/gettext/examples/hello-clisp/po/ro.po #usr/share/doc/gettext/examples/hello-clisp/po/ru.po #usr/share/doc/gettext/examples/hello-clisp/po/sk.po @@ -532,6 +639,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp-forms/po/ast.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/bg.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/ca.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/cs.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/da.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/de.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/el.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/eo.po @@ -539,6 +648,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp-forms/po/fi.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/fr.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/ga.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/gl.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/hr.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/hu.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/id.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/it.po @@ -547,9 +658,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp-forms/po/lv.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/ms.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/mt.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/nb.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/nl.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/pl.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/pt.po +#usr/share/doc/gettext/examples/hello-csharp-forms/po/pt_BR.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/ro.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/ru.po #usr/share/doc/gettext/examples/hello-csharp-forms/po/sk.po @@ -577,6 +690,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp/po/ast.po #usr/share/doc/gettext/examples/hello-csharp/po/bg.po #usr/share/doc/gettext/examples/hello-csharp/po/ca.po +#usr/share/doc/gettext/examples/hello-csharp/po/cs.po +#usr/share/doc/gettext/examples/hello-csharp/po/da.po #usr/share/doc/gettext/examples/hello-csharp/po/de.po #usr/share/doc/gettext/examples/hello-csharp/po/el.po #usr/share/doc/gettext/examples/hello-csharp/po/eo.po @@ -584,6 +699,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp/po/fi.po #usr/share/doc/gettext/examples/hello-csharp/po/fr.po #usr/share/doc/gettext/examples/hello-csharp/po/ga.po +#usr/share/doc/gettext/examples/hello-csharp/po/gl.po +#usr/share/doc/gettext/examples/hello-csharp/po/hr.po #usr/share/doc/gettext/examples/hello-csharp/po/hu.po #usr/share/doc/gettext/examples/hello-csharp/po/id.po #usr/share/doc/gettext/examples/hello-csharp/po/it.po @@ -592,9 +709,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-csharp/po/lv.po #usr/share/doc/gettext/examples/hello-csharp/po/ms.po #usr/share/doc/gettext/examples/hello-csharp/po/mt.po +#usr/share/doc/gettext/examples/hello-csharp/po/nb.po #usr/share/doc/gettext/examples/hello-csharp/po/nl.po #usr/share/doc/gettext/examples/hello-csharp/po/pl.po #usr/share/doc/gettext/examples/hello-csharp/po/pt.po +#usr/share/doc/gettext/examples/hello-csharp/po/pt_BR.po #usr/share/doc/gettext/examples/hello-csharp/po/ro.po #usr/share/doc/gettext/examples/hello-csharp/po/ru.po #usr/share/doc/gettext/examples/hello-csharp/po/sk.po @@ -623,6 +742,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-gawk/po/ast.po #usr/share/doc/gettext/examples/hello-gawk/po/bg.po #usr/share/doc/gettext/examples/hello-gawk/po/ca.po +#usr/share/doc/gettext/examples/hello-gawk/po/cs.po +#usr/share/doc/gettext/examples/hello-gawk/po/da.po #usr/share/doc/gettext/examples/hello-gawk/po/de.po #usr/share/doc/gettext/examples/hello-gawk/po/el.po #usr/share/doc/gettext/examples/hello-gawk/po/eo.po @@ -630,6 +751,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-gawk/po/fi.po #usr/share/doc/gettext/examples/hello-gawk/po/fr.po #usr/share/doc/gettext/examples/hello-gawk/po/ga.po +#usr/share/doc/gettext/examples/hello-gawk/po/gl.po +#usr/share/doc/gettext/examples/hello-gawk/po/hr.po #usr/share/doc/gettext/examples/hello-gawk/po/hu.po #usr/share/doc/gettext/examples/hello-gawk/po/id.po #usr/share/doc/gettext/examples/hello-gawk/po/it.po @@ -638,9 +761,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-gawk/po/lv.po #usr/share/doc/gettext/examples/hello-gawk/po/ms.po #usr/share/doc/gettext/examples/hello-gawk/po/mt.po +#usr/share/doc/gettext/examples/hello-gawk/po/nb.po #usr/share/doc/gettext/examples/hello-gawk/po/nl.po #usr/share/doc/gettext/examples/hello-gawk/po/pl.po #usr/share/doc/gettext/examples/hello-gawk/po/pt.po +#usr/share/doc/gettext/examples/hello-gawk/po/pt_BR.po #usr/share/doc/gettext/examples/hello-gawk/po/ro.po #usr/share/doc/gettext/examples/hello-gawk/po/ru.po #usr/share/doc/gettext/examples/hello-gawk/po/sk.po @@ -669,6 +794,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-guile/po/ast.po #usr/share/doc/gettext/examples/hello-guile/po/bg.po #usr/share/doc/gettext/examples/hello-guile/po/ca.po +#usr/share/doc/gettext/examples/hello-guile/po/cs.po +#usr/share/doc/gettext/examples/hello-guile/po/da.po #usr/share/doc/gettext/examples/hello-guile/po/de.po #usr/share/doc/gettext/examples/hello-guile/po/el.po #usr/share/doc/gettext/examples/hello-guile/po/eo.po @@ -676,6 +803,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-guile/po/fi.po #usr/share/doc/gettext/examples/hello-guile/po/fr.po #usr/share/doc/gettext/examples/hello-guile/po/ga.po +#usr/share/doc/gettext/examples/hello-guile/po/gl.po +#usr/share/doc/gettext/examples/hello-guile/po/hr.po #usr/share/doc/gettext/examples/hello-guile/po/hu.po #usr/share/doc/gettext/examples/hello-guile/po/id.po #usr/share/doc/gettext/examples/hello-guile/po/it.po @@ -684,9 +813,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-guile/po/lv.po #usr/share/doc/gettext/examples/hello-guile/po/ms.po #usr/share/doc/gettext/examples/hello-guile/po/mt.po +#usr/share/doc/gettext/examples/hello-guile/po/nb.po #usr/share/doc/gettext/examples/hello-guile/po/nl.po #usr/share/doc/gettext/examples/hello-guile/po/pl.po #usr/share/doc/gettext/examples/hello-guile/po/pt.po +#usr/share/doc/gettext/examples/hello-guile/po/pt_BR.po #usr/share/doc/gettext/examples/hello-guile/po/ro.po #usr/share/doc/gettext/examples/hello-guile/po/ru.po #usr/share/doc/gettext/examples/hello-guile/po/sk.po @@ -719,6 +850,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-awt/po/ast.po #usr/share/doc/gettext/examples/hello-java-awt/po/bg.po #usr/share/doc/gettext/examples/hello-java-awt/po/ca.po +#usr/share/doc/gettext/examples/hello-java-awt/po/cs.po +#usr/share/doc/gettext/examples/hello-java-awt/po/da.po #usr/share/doc/gettext/examples/hello-java-awt/po/de.po #usr/share/doc/gettext/examples/hello-java-awt/po/el.po #usr/share/doc/gettext/examples/hello-java-awt/po/eo.po @@ -726,6 +859,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-awt/po/fi.po #usr/share/doc/gettext/examples/hello-java-awt/po/fr.po #usr/share/doc/gettext/examples/hello-java-awt/po/ga.po +#usr/share/doc/gettext/examples/hello-java-awt/po/gl.po +#usr/share/doc/gettext/examples/hello-java-awt/po/hr.po #usr/share/doc/gettext/examples/hello-java-awt/po/hu.po #usr/share/doc/gettext/examples/hello-java-awt/po/id.po #usr/share/doc/gettext/examples/hello-java-awt/po/it.po @@ -734,9 +869,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-awt/po/lv.po #usr/share/doc/gettext/examples/hello-java-awt/po/ms.po #usr/share/doc/gettext/examples/hello-java-awt/po/mt.po +#usr/share/doc/gettext/examples/hello-java-awt/po/nb.po #usr/share/doc/gettext/examples/hello-java-awt/po/nl.po #usr/share/doc/gettext/examples/hello-java-awt/po/pl.po #usr/share/doc/gettext/examples/hello-java-awt/po/pt.po +#usr/share/doc/gettext/examples/hello-java-awt/po/pt_BR.po #usr/share/doc/gettext/examples/hello-java-awt/po/ro.po #usr/share/doc/gettext/examples/hello-java-awt/po/ru.po #usr/share/doc/gettext/examples/hello-java-awt/po/sk.po @@ -768,6 +905,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ast.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/bg.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ca.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/cs.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/da.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/de.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/el.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/eo.po @@ -775,6 +914,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-qtjambi/po/fi.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/fr.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ga.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/gl.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/hr.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/hu.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/id.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/it.po @@ -783,9 +924,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-qtjambi/po/lv.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ms.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/mt.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/nb.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/nl.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/pl.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/pt.po +#usr/share/doc/gettext/examples/hello-java-qtjambi/po/pt_BR.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ro.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/ru.po #usr/share/doc/gettext/examples/hello-java-qtjambi/po/sk.po @@ -817,6 +960,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-swing/po/ast.po #usr/share/doc/gettext/examples/hello-java-swing/po/bg.po #usr/share/doc/gettext/examples/hello-java-swing/po/ca.po +#usr/share/doc/gettext/examples/hello-java-swing/po/cs.po +#usr/share/doc/gettext/examples/hello-java-swing/po/da.po #usr/share/doc/gettext/examples/hello-java-swing/po/de.po #usr/share/doc/gettext/examples/hello-java-swing/po/el.po #usr/share/doc/gettext/examples/hello-java-swing/po/eo.po @@ -824,6 +969,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-swing/po/fi.po #usr/share/doc/gettext/examples/hello-java-swing/po/fr.po #usr/share/doc/gettext/examples/hello-java-swing/po/ga.po +#usr/share/doc/gettext/examples/hello-java-swing/po/gl.po +#usr/share/doc/gettext/examples/hello-java-swing/po/hr.po #usr/share/doc/gettext/examples/hello-java-swing/po/hu.po #usr/share/doc/gettext/examples/hello-java-swing/po/id.po #usr/share/doc/gettext/examples/hello-java-swing/po/it.po @@ -832,9 +979,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java-swing/po/lv.po #usr/share/doc/gettext/examples/hello-java-swing/po/ms.po #usr/share/doc/gettext/examples/hello-java-swing/po/mt.po +#usr/share/doc/gettext/examples/hello-java-swing/po/nb.po #usr/share/doc/gettext/examples/hello-java-swing/po/nl.po #usr/share/doc/gettext/examples/hello-java-swing/po/pl.po #usr/share/doc/gettext/examples/hello-java-swing/po/pt.po +#usr/share/doc/gettext/examples/hello-java-swing/po/pt_BR.po #usr/share/doc/gettext/examples/hello-java-swing/po/ro.po #usr/share/doc/gettext/examples/hello-java-swing/po/ru.po #usr/share/doc/gettext/examples/hello-java-swing/po/sk.po @@ -862,6 +1011,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java/po/ast.po #usr/share/doc/gettext/examples/hello-java/po/bg.po #usr/share/doc/gettext/examples/hello-java/po/ca.po +#usr/share/doc/gettext/examples/hello-java/po/cs.po +#usr/share/doc/gettext/examples/hello-java/po/da.po #usr/share/doc/gettext/examples/hello-java/po/de.po #usr/share/doc/gettext/examples/hello-java/po/el.po #usr/share/doc/gettext/examples/hello-java/po/eo.po @@ -869,6 +1020,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java/po/fi.po #usr/share/doc/gettext/examples/hello-java/po/fr.po #usr/share/doc/gettext/examples/hello-java/po/ga.po +#usr/share/doc/gettext/examples/hello-java/po/gl.po +#usr/share/doc/gettext/examples/hello-java/po/hr.po #usr/share/doc/gettext/examples/hello-java/po/hu.po #usr/share/doc/gettext/examples/hello-java/po/id.po #usr/share/doc/gettext/examples/hello-java/po/it.po @@ -877,9 +1030,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-java/po/lv.po #usr/share/doc/gettext/examples/hello-java/po/ms.po #usr/share/doc/gettext/examples/hello-java/po/mt.po +#usr/share/doc/gettext/examples/hello-java/po/nb.po #usr/share/doc/gettext/examples/hello-java/po/nl.po #usr/share/doc/gettext/examples/hello-java/po/pl.po #usr/share/doc/gettext/examples/hello-java/po/pt.po +#usr/share/doc/gettext/examples/hello-java/po/pt_BR.po #usr/share/doc/gettext/examples/hello-java/po/ro.po #usr/share/doc/gettext/examples/hello-java/po/ru.po #usr/share/doc/gettext/examples/hello-java/po/sk.po @@ -908,6 +1063,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-librep/po/ast.po #usr/share/doc/gettext/examples/hello-librep/po/bg.po #usr/share/doc/gettext/examples/hello-librep/po/ca.po +#usr/share/doc/gettext/examples/hello-librep/po/cs.po +#usr/share/doc/gettext/examples/hello-librep/po/da.po #usr/share/doc/gettext/examples/hello-librep/po/de.po #usr/share/doc/gettext/examples/hello-librep/po/el.po #usr/share/doc/gettext/examples/hello-librep/po/eo.po @@ -915,6 +1072,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-librep/po/fi.po #usr/share/doc/gettext/examples/hello-librep/po/fr.po #usr/share/doc/gettext/examples/hello-librep/po/ga.po +#usr/share/doc/gettext/examples/hello-librep/po/gl.po +#usr/share/doc/gettext/examples/hello-librep/po/hr.po #usr/share/doc/gettext/examples/hello-librep/po/hu.po #usr/share/doc/gettext/examples/hello-librep/po/id.po #usr/share/doc/gettext/examples/hello-librep/po/it.po @@ -923,9 +1082,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-librep/po/lv.po #usr/share/doc/gettext/examples/hello-librep/po/ms.po #usr/share/doc/gettext/examples/hello-librep/po/mt.po +#usr/share/doc/gettext/examples/hello-librep/po/nb.po #usr/share/doc/gettext/examples/hello-librep/po/nl.po #usr/share/doc/gettext/examples/hello-librep/po/pl.po #usr/share/doc/gettext/examples/hello-librep/po/pt.po +#usr/share/doc/gettext/examples/hello-librep/po/pt_BR.po #usr/share/doc/gettext/examples/hello-librep/po/ro.po #usr/share/doc/gettext/examples/hello-librep/po/ru.po #usr/share/doc/gettext/examples/hello-librep/po/sk.po @@ -959,6 +1120,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnome/po/ast.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/bg.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/ca.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/cs.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/da.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/de.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/el.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/eo.po @@ -966,6 +1129,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnome/po/fi.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/fr.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/ga.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/gl.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/hr.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/hu.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/id.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/it.po @@ -974,9 +1139,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnome/po/lv.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/ms.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/mt.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/nb.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/nl.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/pl.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/pt.po +#usr/share/doc/gettext/examples/hello-objc-gnome/po/pt_BR.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/ro.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/ru.po #usr/share/doc/gettext/examples/hello-objc-gnome/po/sk.po @@ -1008,6 +1175,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ast.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/bg.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ca.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/cs.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/da.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/de.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/el.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/eo.po @@ -1015,6 +1184,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnustep/po/fi.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/fr.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ga.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/gl.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/hr.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/hu.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/id.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/it.po @@ -1023,9 +1194,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc-gnustep/po/lv.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ms.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/mt.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/nb.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/nl.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/pl.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/pt.po +#usr/share/doc/gettext/examples/hello-objc-gnustep/po/pt_BR.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ro.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/ru.po #usr/share/doc/gettext/examples/hello-objc-gnustep/po/sk.po @@ -1054,6 +1227,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc/po/ast.po #usr/share/doc/gettext/examples/hello-objc/po/bg.po #usr/share/doc/gettext/examples/hello-objc/po/ca.po +#usr/share/doc/gettext/examples/hello-objc/po/cs.po +#usr/share/doc/gettext/examples/hello-objc/po/da.po #usr/share/doc/gettext/examples/hello-objc/po/de.po #usr/share/doc/gettext/examples/hello-objc/po/el.po #usr/share/doc/gettext/examples/hello-objc/po/eo.po @@ -1061,6 +1236,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc/po/fi.po #usr/share/doc/gettext/examples/hello-objc/po/fr.po #usr/share/doc/gettext/examples/hello-objc/po/ga.po +#usr/share/doc/gettext/examples/hello-objc/po/gl.po +#usr/share/doc/gettext/examples/hello-objc/po/hr.po #usr/share/doc/gettext/examples/hello-objc/po/hu.po #usr/share/doc/gettext/examples/hello-objc/po/id.po #usr/share/doc/gettext/examples/hello-objc/po/it.po @@ -1069,9 +1246,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-objc/po/lv.po #usr/share/doc/gettext/examples/hello-objc/po/ms.po #usr/share/doc/gettext/examples/hello-objc/po/mt.po +#usr/share/doc/gettext/examples/hello-objc/po/nb.po #usr/share/doc/gettext/examples/hello-objc/po/nl.po #usr/share/doc/gettext/examples/hello-objc/po/pl.po #usr/share/doc/gettext/examples/hello-objc/po/pt.po +#usr/share/doc/gettext/examples/hello-objc/po/pt_BR.po #usr/share/doc/gettext/examples/hello-objc/po/ro.po #usr/share/doc/gettext/examples/hello-objc/po/ru.po #usr/share/doc/gettext/examples/hello-objc/po/sk.po @@ -1101,6 +1280,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-pascal/po/ast.po #usr/share/doc/gettext/examples/hello-pascal/po/bg.po #usr/share/doc/gettext/examples/hello-pascal/po/ca.po +#usr/share/doc/gettext/examples/hello-pascal/po/cs.po +#usr/share/doc/gettext/examples/hello-pascal/po/da.po #usr/share/doc/gettext/examples/hello-pascal/po/de.po #usr/share/doc/gettext/examples/hello-pascal/po/el.po #usr/share/doc/gettext/examples/hello-pascal/po/eo.po @@ -1108,6 +1289,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-pascal/po/fi.po #usr/share/doc/gettext/examples/hello-pascal/po/fr.po #usr/share/doc/gettext/examples/hello-pascal/po/ga.po +#usr/share/doc/gettext/examples/hello-pascal/po/gl.po +#usr/share/doc/gettext/examples/hello-pascal/po/hr.po #usr/share/doc/gettext/examples/hello-pascal/po/hu.po #usr/share/doc/gettext/examples/hello-pascal/po/id.po #usr/share/doc/gettext/examples/hello-pascal/po/it.po @@ -1116,9 +1299,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-pascal/po/lv.po #usr/share/doc/gettext/examples/hello-pascal/po/ms.po #usr/share/doc/gettext/examples/hello-pascal/po/mt.po +#usr/share/doc/gettext/examples/hello-pascal/po/nb.po #usr/share/doc/gettext/examples/hello-pascal/po/nl.po #usr/share/doc/gettext/examples/hello-pascal/po/pl.po #usr/share/doc/gettext/examples/hello-pascal/po/pt.po +#usr/share/doc/gettext/examples/hello-pascal/po/pt_BR.po #usr/share/doc/gettext/examples/hello-pascal/po/ro.po #usr/share/doc/gettext/examples/hello-pascal/po/ru.po #usr/share/doc/gettext/examples/hello-pascal/po/sk.po @@ -1148,6 +1333,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-perl/po/ast.po #usr/share/doc/gettext/examples/hello-perl/po/bg.po #usr/share/doc/gettext/examples/hello-perl/po/ca.po +#usr/share/doc/gettext/examples/hello-perl/po/cs.po +#usr/share/doc/gettext/examples/hello-perl/po/da.po #usr/share/doc/gettext/examples/hello-perl/po/de.po #usr/share/doc/gettext/examples/hello-perl/po/el.po #usr/share/doc/gettext/examples/hello-perl/po/eo.po @@ -1155,6 +1342,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-perl/po/fi.po #usr/share/doc/gettext/examples/hello-perl/po/fr.po #usr/share/doc/gettext/examples/hello-perl/po/ga.po +#usr/share/doc/gettext/examples/hello-perl/po/gl.po +#usr/share/doc/gettext/examples/hello-perl/po/hr.po #usr/share/doc/gettext/examples/hello-perl/po/hu.po #usr/share/doc/gettext/examples/hello-perl/po/id.po #usr/share/doc/gettext/examples/hello-perl/po/it.po @@ -1163,9 +1352,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-perl/po/lv.po #usr/share/doc/gettext/examples/hello-perl/po/ms.po #usr/share/doc/gettext/examples/hello-perl/po/mt.po +#usr/share/doc/gettext/examples/hello-perl/po/nb.po #usr/share/doc/gettext/examples/hello-perl/po/nl.po #usr/share/doc/gettext/examples/hello-perl/po/pl.po #usr/share/doc/gettext/examples/hello-perl/po/pt.po +#usr/share/doc/gettext/examples/hello-perl/po/pt_BR.po #usr/share/doc/gettext/examples/hello-perl/po/ro.po #usr/share/doc/gettext/examples/hello-perl/po/ru.po #usr/share/doc/gettext/examples/hello-perl/po/sk.po @@ -1195,6 +1386,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-php/po/ast.po #usr/share/doc/gettext/examples/hello-php/po/bg.po #usr/share/doc/gettext/examples/hello-php/po/ca.po +#usr/share/doc/gettext/examples/hello-php/po/cs.po +#usr/share/doc/gettext/examples/hello-php/po/da.po #usr/share/doc/gettext/examples/hello-php/po/de.po #usr/share/doc/gettext/examples/hello-php/po/el.po #usr/share/doc/gettext/examples/hello-php/po/eo.po @@ -1202,6 +1395,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-php/po/fi.po #usr/share/doc/gettext/examples/hello-php/po/fr.po #usr/share/doc/gettext/examples/hello-php/po/ga.po +#usr/share/doc/gettext/examples/hello-php/po/gl.po +#usr/share/doc/gettext/examples/hello-php/po/hr.po #usr/share/doc/gettext/examples/hello-php/po/hu.po #usr/share/doc/gettext/examples/hello-php/po/id.po #usr/share/doc/gettext/examples/hello-php/po/it.po @@ -1210,9 +1405,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-php/po/lv.po #usr/share/doc/gettext/examples/hello-php/po/ms.po #usr/share/doc/gettext/examples/hello-php/po/mt.po +#usr/share/doc/gettext/examples/hello-php/po/nb.po #usr/share/doc/gettext/examples/hello-php/po/nl.po #usr/share/doc/gettext/examples/hello-php/po/pl.po #usr/share/doc/gettext/examples/hello-php/po/pt.po +#usr/share/doc/gettext/examples/hello-php/po/pt_BR.po #usr/share/doc/gettext/examples/hello-php/po/ro.po #usr/share/doc/gettext/examples/hello-php/po/ru.po #usr/share/doc/gettext/examples/hello-php/po/sk.po @@ -1241,6 +1438,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-python/po/ast.po #usr/share/doc/gettext/examples/hello-python/po/bg.po #usr/share/doc/gettext/examples/hello-python/po/ca.po +#usr/share/doc/gettext/examples/hello-python/po/cs.po +#usr/share/doc/gettext/examples/hello-python/po/da.po #usr/share/doc/gettext/examples/hello-python/po/de.po #usr/share/doc/gettext/examples/hello-python/po/el.po #usr/share/doc/gettext/examples/hello-python/po/eo.po @@ -1248,6 +1447,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-python/po/fi.po #usr/share/doc/gettext/examples/hello-python/po/fr.po #usr/share/doc/gettext/examples/hello-python/po/ga.po +#usr/share/doc/gettext/examples/hello-python/po/gl.po +#usr/share/doc/gettext/examples/hello-python/po/hr.po #usr/share/doc/gettext/examples/hello-python/po/hu.po #usr/share/doc/gettext/examples/hello-python/po/id.po #usr/share/doc/gettext/examples/hello-python/po/it.po @@ -1256,9 +1457,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-python/po/lv.po #usr/share/doc/gettext/examples/hello-python/po/ms.po #usr/share/doc/gettext/examples/hello-python/po/mt.po +#usr/share/doc/gettext/examples/hello-python/po/nb.po #usr/share/doc/gettext/examples/hello-python/po/nl.po #usr/share/doc/gettext/examples/hello-python/po/pl.po #usr/share/doc/gettext/examples/hello-python/po/pt.po +#usr/share/doc/gettext/examples/hello-python/po/pt_BR.po #usr/share/doc/gettext/examples/hello-python/po/ro.po #usr/share/doc/gettext/examples/hello-python/po/ru.po #usr/share/doc/gettext/examples/hello-python/po/sk.po @@ -1287,6 +1490,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-sh/po/ast.po #usr/share/doc/gettext/examples/hello-sh/po/bg.po #usr/share/doc/gettext/examples/hello-sh/po/ca.po +#usr/share/doc/gettext/examples/hello-sh/po/cs.po +#usr/share/doc/gettext/examples/hello-sh/po/da.po #usr/share/doc/gettext/examples/hello-sh/po/de.po #usr/share/doc/gettext/examples/hello-sh/po/el.po #usr/share/doc/gettext/examples/hello-sh/po/eo.po @@ -1294,6 +1499,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-sh/po/fi.po #usr/share/doc/gettext/examples/hello-sh/po/fr.po #usr/share/doc/gettext/examples/hello-sh/po/ga.po +#usr/share/doc/gettext/examples/hello-sh/po/gl.po +#usr/share/doc/gettext/examples/hello-sh/po/hr.po #usr/share/doc/gettext/examples/hello-sh/po/hu.po #usr/share/doc/gettext/examples/hello-sh/po/id.po #usr/share/doc/gettext/examples/hello-sh/po/it.po @@ -1302,9 +1509,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-sh/po/lv.po #usr/share/doc/gettext/examples/hello-sh/po/ms.po #usr/share/doc/gettext/examples/hello-sh/po/mt.po +#usr/share/doc/gettext/examples/hello-sh/po/nb.po #usr/share/doc/gettext/examples/hello-sh/po/nl.po #usr/share/doc/gettext/examples/hello-sh/po/pl.po #usr/share/doc/gettext/examples/hello-sh/po/pt.po +#usr/share/doc/gettext/examples/hello-sh/po/pt_BR.po #usr/share/doc/gettext/examples/hello-sh/po/ro.po #usr/share/doc/gettext/examples/hello-sh/po/ru.po #usr/share/doc/gettext/examples/hello-sh/po/sk.po @@ -1333,6 +1542,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-smalltalk/po/ast.po #usr/share/doc/gettext/examples/hello-smalltalk/po/bg.po #usr/share/doc/gettext/examples/hello-smalltalk/po/ca.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/cs.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/da.po #usr/share/doc/gettext/examples/hello-smalltalk/po/de.po #usr/share/doc/gettext/examples/hello-smalltalk/po/el.po #usr/share/doc/gettext/examples/hello-smalltalk/po/eo.po @@ -1340,6 +1551,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-smalltalk/po/fi.po #usr/share/doc/gettext/examples/hello-smalltalk/po/fr.po #usr/share/doc/gettext/examples/hello-smalltalk/po/ga.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/gl.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/hr.po #usr/share/doc/gettext/examples/hello-smalltalk/po/hu.po #usr/share/doc/gettext/examples/hello-smalltalk/po/id.po #usr/share/doc/gettext/examples/hello-smalltalk/po/it.po @@ -1348,9 +1561,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-smalltalk/po/lv.po #usr/share/doc/gettext/examples/hello-smalltalk/po/ms.po #usr/share/doc/gettext/examples/hello-smalltalk/po/mt.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/nb.po #usr/share/doc/gettext/examples/hello-smalltalk/po/nl.po #usr/share/doc/gettext/examples/hello-smalltalk/po/pl.po #usr/share/doc/gettext/examples/hello-smalltalk/po/pt.po +#usr/share/doc/gettext/examples/hello-smalltalk/po/pt_BR.po #usr/share/doc/gettext/examples/hello-smalltalk/po/ro.po #usr/share/doc/gettext/examples/hello-smalltalk/po/ru.po #usr/share/doc/gettext/examples/hello-smalltalk/po/sk.po @@ -1380,6 +1595,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl-tk/po/ast.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/bg.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/ca.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/cs.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/da.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/de.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/el.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/eo.po @@ -1387,6 +1604,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl-tk/po/fi.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/fr.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/ga.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/gl.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/hr.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/hu.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/id.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/it.po @@ -1395,9 +1614,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl-tk/po/lv.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/ms.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/mt.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/nb.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/nl.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/pl.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/pt.po +#usr/share/doc/gettext/examples/hello-tcl-tk/po/pt_BR.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/ro.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/ru.po #usr/share/doc/gettext/examples/hello-tcl-tk/po/sk.po @@ -1425,6 +1646,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl/po/ast.po #usr/share/doc/gettext/examples/hello-tcl/po/bg.po #usr/share/doc/gettext/examples/hello-tcl/po/ca.po +#usr/share/doc/gettext/examples/hello-tcl/po/cs.po +#usr/share/doc/gettext/examples/hello-tcl/po/da.po #usr/share/doc/gettext/examples/hello-tcl/po/de.po #usr/share/doc/gettext/examples/hello-tcl/po/el.po #usr/share/doc/gettext/examples/hello-tcl/po/eo.po @@ -1432,6 +1655,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl/po/fi.po #usr/share/doc/gettext/examples/hello-tcl/po/fr.po #usr/share/doc/gettext/examples/hello-tcl/po/ga.po +#usr/share/doc/gettext/examples/hello-tcl/po/gl.po +#usr/share/doc/gettext/examples/hello-tcl/po/hr.po #usr/share/doc/gettext/examples/hello-tcl/po/hu.po #usr/share/doc/gettext/examples/hello-tcl/po/id.po #usr/share/doc/gettext/examples/hello-tcl/po/it.po @@ -1440,9 +1665,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-tcl/po/lv.po #usr/share/doc/gettext/examples/hello-tcl/po/ms.po #usr/share/doc/gettext/examples/hello-tcl/po/mt.po +#usr/share/doc/gettext/examples/hello-tcl/po/nb.po #usr/share/doc/gettext/examples/hello-tcl/po/nl.po #usr/share/doc/gettext/examples/hello-tcl/po/pl.po #usr/share/doc/gettext/examples/hello-tcl/po/pt.po +#usr/share/doc/gettext/examples/hello-tcl/po/pt_BR.po #usr/share/doc/gettext/examples/hello-tcl/po/ro.po #usr/share/doc/gettext/examples/hello-tcl/po/ru.po #usr/share/doc/gettext/examples/hello-tcl/po/sk.po @@ -1471,6 +1698,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-ycp/po/ast.po #usr/share/doc/gettext/examples/hello-ycp/po/bg.po #usr/share/doc/gettext/examples/hello-ycp/po/ca.po +#usr/share/doc/gettext/examples/hello-ycp/po/cs.po +#usr/share/doc/gettext/examples/hello-ycp/po/da.po #usr/share/doc/gettext/examples/hello-ycp/po/de.po #usr/share/doc/gettext/examples/hello-ycp/po/el.po #usr/share/doc/gettext/examples/hello-ycp/po/eo.po @@ -1478,6 +1707,8 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-ycp/po/fi.po #usr/share/doc/gettext/examples/hello-ycp/po/fr.po #usr/share/doc/gettext/examples/hello-ycp/po/ga.po +#usr/share/doc/gettext/examples/hello-ycp/po/gl.po +#usr/share/doc/gettext/examples/hello-ycp/po/hr.po #usr/share/doc/gettext/examples/hello-ycp/po/hu.po #usr/share/doc/gettext/examples/hello-ycp/po/id.po #usr/share/doc/gettext/examples/hello-ycp/po/it.po @@ -1486,9 +1717,11 @@ usr/lib/preloadable_libintl.so #usr/share/doc/gettext/examples/hello-ycp/po/lv.po #usr/share/doc/gettext/examples/hello-ycp/po/ms.po #usr/share/doc/gettext/examples/hello-ycp/po/mt.po +#usr/share/doc/gettext/examples/hello-ycp/po/nb.po #usr/share/doc/gettext/examples/hello-ycp/po/nl.po #usr/share/doc/gettext/examples/hello-ycp/po/pl.po #usr/share/doc/gettext/examples/hello-ycp/po/pt.po +#usr/share/doc/gettext/examples/hello-ycp/po/pt_BR.po #usr/share/doc/gettext/examples/hello-ycp/po/ro.po #usr/share/doc/gettext/examples/hello-ycp/po/ru.po #usr/share/doc/gettext/examples/hello-ycp/po/sk.po @@ -1572,14 +1805,22 @@ usr/lib/preloadable_libintl.so #usr/share/doc/libasprintf #usr/share/doc/libasprintf/autosprintf_all.html #usr/share/gettext +#usr/share/gettext-0.19.8 +#usr/share/gettext-0.19.8/its +#usr/share/gettext-0.19.8/its/appdata.its +#usr/share/gettext-0.19.8/its/appdata.loc +#usr/share/gettext-0.19.8/its/glade.loc +#usr/share/gettext-0.19.8/its/glade1.its +#usr/share/gettext-0.19.8/its/glade2.its +#usr/share/gettext-0.19.8/its/gsettings.its +#usr/share/gettext-0.19.8/its/gsettings.loc +#usr/share/gettext-0.19.8/its/gtkbuilder.its #usr/share/gettext/ABOUT-NLS -#usr/share/gettext/archive.dir.tar.gz +#usr/share/gettext/archive.dir.tar.xz #usr/share/gettext/config.rpath #usr/share/gettext/gettext.h #usr/share/gettext/intl -#usr/share/gettext/intl/COPYING.LIB-2.0 -#usr/share/gettext/intl/COPYING.LIB-2.1 -#usr/share/gettext/intl/ChangeLog +#usr/share/gettext/intl/COPYING.LIB #usr/share/gettext/intl/Makefile.in #usr/share/gettext/intl/VERSION #usr/share/gettext/intl/bindtextdom.c @@ -1602,7 +1843,7 @@ usr/lib/preloadable_libintl.so #usr/share/gettext/intl/intl-exports.c #usr/share/gettext/intl/l10nflist.c #usr/share/gettext/intl/langprefs.c -#usr/share/gettext/intl/libgnuintl.h.in +#usr/share/gettext/intl/libgnuintl.in.h #usr/share/gettext/intl/libintl.rc #usr/share/gettext/intl/loadinfo.h #usr/share/gettext/intl/loadmsgcat.c @@ -1639,8 +1880,10 @@ usr/lib/preloadable_libintl.so #usr/share/gettext/intl/vasnprintf.c #usr/share/gettext/intl/vasnprintf.h #usr/share/gettext/intl/vasnwprintf.h +#usr/share/gettext/intl/verify.h #usr/share/gettext/intl/version.c #usr/share/gettext/intl/wprintf-parse.h +#usr/share/gettext/intl/xsize.c #usr/share/gettext/intl/xsize.h #usr/share/gettext/javaversion.class #usr/share/gettext/msgunfmt.tcl diff --git a/config/rootfiles/common/gnupg b/config/rootfiles/common/gnupg index 9aecc41..edd2bec 100644 --- a/config/rootfiles/common/gnupg +++ b/config/rootfiles/common/gnupg @@ -13,6 +13,4 @@ usr/lib/gnupg/gpgkeys_ldap #usr/share/info/gnupg1.info #usr/share/man/man1/gpg-zip.1 #usr/share/man/man1/gpg.1 -#usr/share/man/man1/gpg.ru.1 #usr/share/man/man1/gpgv.1 -#usr/share/man/man7/gnupg.7 diff --git a/config/rootfiles/common/i586/initscripts b/config/rootfiles/common/i586/initscripts index ee5a4ab..6ec7c63 100644 --- a/config/rootfiles/common/i586/initscripts +++ b/config/rootfiles/common/i586/initscripts @@ -2,7 +2,6 @@ etc/init.d #etc/rc.d #etc/rc.d/helper etc/rc.d/helper/getdnsfromdhcpc.pl -etc/rc.d/helper/writeipac.pl #etc/rc.d/init.d etc/rc.d/init.d/acpid #etc/rc.d/init.d/alsa @@ -27,7 +26,6 @@ etc/rc.d/init.d/console etc/rc.d/init.d/dhcp etc/rc.d/init.d/dhcrelay #etc/rc.d/init.d/dnsdist -etc/rc.d/init.d/dnsmasq etc/rc.d/init.d/fcron #etc/rc.d/init.d/fetchmail etc/rc.d/init.d/fireinfo @@ -78,7 +76,7 @@ etc/rc.d/init.d/networking/green etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down -etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.down/05-update-dns-forwarders etc/rc.d/init.d/networking/red.down/10-ipsec etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn @@ -86,7 +84,7 @@ etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes @@ -96,7 +94,6 @@ etc/rc.d/init.d/networking/red.up/24-RS-qos etc/rc.d/init.d/networking/red.up/27-RS-squid etc/rc.d/init.d/networking/red.up/30-ddns #etc/rc.d/init.d/networking/red.up/35-guardian -etc/rc.d/init.d/networking/red.up/40-ipac etc/rc.d/init.d/networking/red.up/50-ipsec etc/rc.d/init.d/networking/red.up/50-ovpn etc/rc.d/init.d/networking/red.up/98-leds @@ -138,6 +135,7 @@ etc/rc.d/init.d/template #etc/rc.d/init.d/transmission etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry +etc/rc.d/init.d/unbound etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin @@ -164,6 +162,7 @@ etc/rc.d/rc0.d/K49cyrus-sasl etc/rc.d/rc0.d/K51vnstat etc/rc.d/rc0.d/K78snort etc/rc.d/rc0.d/K79leds +etc/rc.d/rc0.d/K79unbound etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient #etc/rc.d/rc0.d/K84bluetooth @@ -186,6 +185,7 @@ etc/rc.d/rc3.d/S15fireinfo etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient etc/rc.d/rc3.d/S20network +etc/rc.d/rc3.d/S11unbound etc/rc.d/rc3.d/S21leds etc/rc.d/rc3.d/S24cyrus-sasl etc/rc.d/rc3.d/S25random @@ -215,6 +215,7 @@ etc/rc.d/rc6.d/K49cyrus-sasl etc/rc.d/rc6.d/K51vnstat etc/rc.d/rc6.d/K78snort etc/rc.d/rc6.d/K79leds +etc/rc.d/rc6.d/K79unbound etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient #etc/rc.d/rc6.d/K84bluetooth diff --git a/config/rootfiles/common/i586/strongswan-padlock b/config/rootfiles/common/i586/strongswan-padlock index 952e7ae..5925212 100644 --- a/config/rootfiles/common/i586/strongswan-padlock +++ b/config/rootfiles/common/i586/strongswan-padlock @@ -1,2 +1,3 @@ etc/strongswan.d/charon/padlock.conf usr/lib/ipsec/plugins/libstrongswan-padlock.so +#usr/share/strongswan/templates/config/plugins/padlock.conf diff --git a/config/rootfiles/common/iproute2 b/config/rootfiles/common/iproute2 index 93dcaff..2339d83 100644 --- a/config/rootfiles/common/iproute2 +++ b/config/rootfiles/common/iproute2 @@ -1,4 +1,5 @@ #etc/iproute2 +etc/iproute2/bpf_pinning etc/iproute2/ematch_map etc/iproute2/group etc/iproute2/nl_protos @@ -28,7 +29,10 @@ sbin/tc #usr/lib/tc/normal.dist #usr/lib/tc/pareto.dist #usr/lib/tc/paretonormal.dist -usr/sbin/arpd +#usr/sbin/arpd +#usr/share/bash-completion +#usr/share/bash-completion/completions +usr/share/bash-completion/completions/tc #usr/share/doc/iproute2 #usr/share/doc/iproute2/SNAPSHOT.tex #usr/share/doc/iproute2/api-ip6-flowlabels.tex @@ -60,17 +64,23 @@ usr/sbin/arpd #usr/share/doc/iproute2/preamble.tex #usr/share/doc/iproute2/rtstat.sgml #usr/share/doc/iproute2/ss.sgml +#usr/share/doc/iproute2/tc-filters.tex #usr/share/man/man3/libnetlink.3 #usr/share/man/man7/tc-hfsc.7 -#usr/share/man/man8/arpd.8 #usr/share/man/man8/bridge.8 #usr/share/man/man8/ctstat.8 +#usr/share/man/man8/devlink-dev.8 +#usr/share/man/man8/devlink-monitor.8 +#usr/share/man/man8/devlink-port.8 +#usr/share/man/man8/devlink-sb.8 +#usr/share/man/man8/devlink.8 #usr/share/man/man8/ip-address.8 #usr/share/man/man8/ip-addrlabel.8 #usr/share/man/man8/ip-fou.8 #usr/share/man/man8/ip-gue.8 #usr/share/man/man8/ip-l2tp.8 #usr/share/man/man8/ip-link.8 +#usr/share/man/man8/ip-macsec.8 #usr/share/man/man8/ip-maddress.8 #usr/share/man/man8/ip-monitor.8 #usr/share/man/man8/ip-mroute.8 @@ -91,29 +101,55 @@ usr/sbin/arpd #usr/share/man/man8/routel.8 #usr/share/man/man8/rtacct.8 #usr/share/man/man8/rtmon.8 +#usr/share/man/man8/rtpr.8 #usr/share/man/man8/rtstat.8 #usr/share/man/man8/ss.8 +#usr/share/man/man8/tc-basic.8 #usr/share/man/man8/tc-bfifo.8 #usr/share/man/man8/tc-bpf.8 #usr/share/man/man8/tc-cbq-details.8 #usr/share/man/man8/tc-cbq.8 +#usr/share/man/man8/tc-cgroup.8 #usr/share/man/man8/tc-choke.8 #usr/share/man/man8/tc-codel.8 +#usr/share/man/man8/tc-connmark.8 +#usr/share/man/man8/tc-csum.8 #usr/share/man/man8/tc-drr.8 #usr/share/man/man8/tc-ematch.8 +#usr/share/man/man8/tc-flow.8 +#usr/share/man/man8/tc-flower.8 +#usr/share/man/man8/tc-fq.8 #usr/share/man/man8/tc-fq_codel.8 +#usr/share/man/man8/tc-fw.8 #usr/share/man/man8/tc-hfsc.8 #usr/share/man/man8/tc-htb.8 +#usr/share/man/man8/tc-mirred.8 #usr/share/man/man8/tc-mqprio.8 +#usr/share/man/man8/tc-nat.8 #usr/share/man/man8/tc-netem.8 +#usr/share/man/man8/tc-pedit.8 #usr/share/man/man8/tc-pfifo.8 #usr/share/man/man8/tc-pfifo_fast.8 #usr/share/man/man8/tc-pie.8 +#usr/share/man/man8/tc-police.8 #usr/share/man/man8/tc-prio.8 #usr/share/man/man8/tc-red.8 +#usr/share/man/man8/tc-route.8 #usr/share/man/man8/tc-sfb.8 #usr/share/man/man8/tc-sfq.8 +#usr/share/man/man8/tc-simple.8 +#usr/share/man/man8/tc-skbedit.8 #usr/share/man/man8/tc-stab.8 #usr/share/man/man8/tc-tbf.8 +#usr/share/man/man8/tc-tcindex.8 +#usr/share/man/man8/tc-u32.8 +#usr/share/man/man8/tc-vlan.8 +#usr/share/man/man8/tc-xt.8 #usr/share/man/man8/tc.8 -var/lib/arpd +#usr/share/man/man8/tipc-bearer.8 +#usr/share/man/man8/tipc-link.8 +#usr/share/man/man8/tipc-media.8 +#usr/share/man/man8/tipc-nametable.8 +#usr/share/man/man8/tipc-node.8 +#usr/share/man/man8/tipc-socket.8 +#usr/share/man/man8/tipc.8 diff --git a/config/rootfiles/common/libgpg-error b/config/rootfiles/common/libgpg-error index 3e927ed..92ac1f3 100644 --- a/config/rootfiles/common/libgpg-error +++ b/config/rootfiles/common/libgpg-error @@ -4,7 +4,7 @@ usr/bin/gpg-error #usr/lib/libgpg-error.la #usr/lib/libgpg-error.so usr/lib/libgpg-error.so.0 -usr/lib/libgpg-error.so.0.16.0 +usr/lib/libgpg-error.so.0.19.1 #usr/share/aclocal/gpg-error.m4 #usr/share/common-lisp #usr/share/common-lisp/source diff --git a/config/rootfiles/common/libidn b/config/rootfiles/common/libidn index c8ee31a..3d46e96 100644 --- a/config/rootfiles/common/libidn +++ b/config/rootfiles/common/libidn @@ -10,7 +10,7 @@ usr/bin/idn #usr/lib/libidn.la usr/lib/libidn.so usr/lib/libidn.so.11 -usr/lib/libidn.so.11.5.28 +usr/lib/libidn.so.11.6.16 #usr/lib/pkgconfig/libidn.pc #usr/share/emacs #usr/share/emacs/site-lisp @@ -19,6 +19,7 @@ usr/lib/libidn.so.11.5.28 #usr/share/info/libidn-components.png #usr/share/info/libidn.info #usr/share/man/man1/idn.1 +#usr/share/man/man3/idn_free.3 #usr/share/man/man3/idna_strerror.3 #usr/share/man/man3/idna_to_ascii_4i.3 #usr/share/man/man3/idna_to_ascii_4z.3 diff --git a/config/rootfiles/common/libmnl b/config/rootfiles/common/libmnl index 36732c4..8dd27c3 100644 --- a/config/rootfiles/common/libmnl +++ b/config/rootfiles/common/libmnl @@ -3,5 +3,5 @@ #usr/lib/libmnl.la usr/lib/libmnl.so usr/lib/libmnl.so.0 -usr/lib/libmnl.so.0.1.0 +usr/lib/libmnl.so.0.2.0 #usr/lib/pkgconfig/libmnl.pc diff --git a/config/rootfiles/common/libnetfilter_conntrack b/config/rootfiles/common/libnetfilter_conntrack index 6095d0b..03000ec 100644 --- a/config/rootfiles/common/libnetfilter_conntrack +++ b/config/rootfiles/common/libnetfilter_conntrack @@ -11,5 +11,5 @@ #usr/lib/libnetfilter_conntrack.la #usr/lib/libnetfilter_conntrack.so usr/lib/libnetfilter_conntrack.so.3 -usr/lib/libnetfilter_conntrack.so.3.5.0 +usr/lib/libnetfilter_conntrack.so.3.6.0 #usr/lib/pkgconfig/libnetfilter_conntrack.pc diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/misc-progs index 1917884..63a0051 100644 --- a/config/rootfiles/common/misc-progs +++ b/config/rootfiles/common/misc-progs @@ -5,7 +5,6 @@ usr/local/bin/backupctrl usr/local/bin/collectdctrl usr/local/bin/ddnsctrl usr/local/bin/dhcpctrl -usr/local/bin/dnsmasqctrl usr/local/bin/extrahdctrl usr/local/bin/fireinfoctrl usr/local/bin/getconntracktable @@ -33,6 +32,7 @@ usr/local/bin/sshctrl usr/local/bin/syslogdctrl usr/local/bin/timectrl #usr/local/bin/torctrl +usr/local/bin/unboundctrl usr/local/bin/updxlratorctrl usr/local/bin/upnpctrl usr/local/bin/urlfilterctrl diff --git a/config/rootfiles/common/mpfr b/config/rootfiles/common/mpfr index 1e33e05..7cdd31f 100644 --- a/config/rootfiles/common/mpfr +++ b/config/rootfiles/common/mpfr @@ -19,4 +19,4 @@ usr/lib/libmpfr.so.4.1.3 #usr/share/doc/mpfr/examples/rndo-add.c #usr/share/doc/mpfr/examples/sample.c #usr/share/doc/mpfr/examples/version.c -#usr/share/info/mpfr.info \ No newline at end of file +#usr/share/info/mpfr.info diff --git a/config/rootfiles/common/python-daemon b/config/rootfiles/common/python-daemon new file mode 100644 index 0000000..34d36a4 --- /dev/null +++ b/config/rootfiles/common/python-daemon @@ -0,0 +1,19 @@ +#usr/lib/python2.7/site-packages/daemon +usr/lib/python2.7/site-packages/daemon/__init__.py +usr/lib/python2.7/site-packages/daemon/__init__.pyc +usr/lib/python2.7/site-packages/daemon/_metadata.py +usr/lib/python2.7/site-packages/daemon/_metadata.pyc +usr/lib/python2.7/site-packages/daemon/daemon.py +usr/lib/python2.7/site-packages/daemon/daemon.pyc +usr/lib/python2.7/site-packages/daemon/pidfile.py +usr/lib/python2.7/site-packages/daemon/pidfile.pyc +usr/lib/python2.7/site-packages/daemon/runner.py +usr/lib/python2.7/site-packages/daemon/runner.pyc +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/PKG-INFO +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/SOURCES.txt +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/dependency_links.txt +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/not-zip-safe +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/requires.txt +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/top_level.txt +#usr/lib/python2.7/site-packages/python_daemon-2.1.1-py2.7.egg-info/version_info.json diff --git a/config/rootfiles/common/python-docutils b/config/rootfiles/common/python-docutils new file mode 100644 index 0000000..45038dd --- /dev/null +++ b/config/rootfiles/common/python-docutils @@ -0,0 +1,320 @@ +#usr/bin/rst2html.py +#usr/bin/rst2latex.py +#usr/bin/rst2man.py +#usr/bin/rst2odt.py +#usr/bin/rst2odt_prepstyles.py +#usr/bin/rst2pseudoxml.py +#usr/bin/rst2s5.py +#usr/bin/rst2xetex.py +#usr/bin/rst2xml.py +#usr/bin/rstpep2html.py +#usr/lib/python2.7/site-packages/docutils +#usr/lib/python2.7/site-packages/docutils-0.12-py2.7.egg-info +#usr/lib/python2.7/site-packages/docutils/__init__.py +#usr/lib/python2.7/site-packages/docutils/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/_compat.py +#usr/lib/python2.7/site-packages/docutils/_compat.pyc +#usr/lib/python2.7/site-packages/docutils/core.py +#usr/lib/python2.7/site-packages/docutils/core.pyc +#usr/lib/python2.7/site-packages/docutils/examples.py +#usr/lib/python2.7/site-packages/docutils/examples.pyc +#usr/lib/python2.7/site-packages/docutils/frontend.py +#usr/lib/python2.7/site-packages/docutils/frontend.pyc +#usr/lib/python2.7/site-packages/docutils/io.py +#usr/lib/python2.7/site-packages/docutils/io.pyc +#usr/lib/python2.7/site-packages/docutils/languages +#usr/lib/python2.7/site-packages/docutils/languages/__init__.py +#usr/lib/python2.7/site-packages/docutils/languages/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/languages/af.py +#usr/lib/python2.7/site-packages/docutils/languages/af.pyc +#usr/lib/python2.7/site-packages/docutils/languages/ca.py +#usr/lib/python2.7/site-packages/docutils/languages/ca.pyc +#usr/lib/python2.7/site-packages/docutils/languages/cs.py +#usr/lib/python2.7/site-packages/docutils/languages/cs.pyc +#usr/lib/python2.7/site-packages/docutils/languages/da.py +#usr/lib/python2.7/site-packages/docutils/languages/da.pyc +#usr/lib/python2.7/site-packages/docutils/languages/de.py +#usr/lib/python2.7/site-packages/docutils/languages/de.pyc +#usr/lib/python2.7/site-packages/docutils/languages/en.py +#usr/lib/python2.7/site-packages/docutils/languages/en.pyc +#usr/lib/python2.7/site-packages/docutils/languages/eo.py +#usr/lib/python2.7/site-packages/docutils/languages/eo.pyc +#usr/lib/python2.7/site-packages/docutils/languages/es.py +#usr/lib/python2.7/site-packages/docutils/languages/es.pyc +#usr/lib/python2.7/site-packages/docutils/languages/fi.py +#usr/lib/python2.7/site-packages/docutils/languages/fi.pyc +#usr/lib/python2.7/site-packages/docutils/languages/fr.py +#usr/lib/python2.7/site-packages/docutils/languages/fr.pyc +#usr/lib/python2.7/site-packages/docutils/languages/gl.py +#usr/lib/python2.7/site-packages/docutils/languages/gl.pyc +#usr/lib/python2.7/site-packages/docutils/languages/he.py +#usr/lib/python2.7/site-packages/docutils/languages/he.pyc +#usr/lib/python2.7/site-packages/docutils/languages/it.py +#usr/lib/python2.7/site-packages/docutils/languages/it.pyc +#usr/lib/python2.7/site-packages/docutils/languages/ja.py +#usr/lib/python2.7/site-packages/docutils/languages/ja.pyc +#usr/lib/python2.7/site-packages/docutils/languages/lt.py +#usr/lib/python2.7/site-packages/docutils/languages/lt.pyc +#usr/lib/python2.7/site-packages/docutils/languages/nl.py +#usr/lib/python2.7/site-packages/docutils/languages/nl.pyc +#usr/lib/python2.7/site-packages/docutils/languages/pl.py +#usr/lib/python2.7/site-packages/docutils/languages/pl.pyc +#usr/lib/python2.7/site-packages/docutils/languages/pt_br.py +#usr/lib/python2.7/site-packages/docutils/languages/pt_br.pyc +#usr/lib/python2.7/site-packages/docutils/languages/ru.py +#usr/lib/python2.7/site-packages/docutils/languages/ru.pyc +#usr/lib/python2.7/site-packages/docutils/languages/sk.py +#usr/lib/python2.7/site-packages/docutils/languages/sk.pyc +#usr/lib/python2.7/site-packages/docutils/languages/sv.py +#usr/lib/python2.7/site-packages/docutils/languages/sv.pyc +#usr/lib/python2.7/site-packages/docutils/languages/zh_cn.py +#usr/lib/python2.7/site-packages/docutils/languages/zh_cn.pyc +#usr/lib/python2.7/site-packages/docutils/languages/zh_tw.py +#usr/lib/python2.7/site-packages/docutils/languages/zh_tw.pyc +#usr/lib/python2.7/site-packages/docutils/nodes.py +#usr/lib/python2.7/site-packages/docutils/nodes.pyc +#usr/lib/python2.7/site-packages/docutils/parsers +#usr/lib/python2.7/site-packages/docutils/parsers/__init__.py +#usr/lib/python2.7/site-packages/docutils/parsers/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/null.py +#usr/lib/python2.7/site-packages/docutils/parsers/null.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst +#usr/lib/python2.7/site-packages/docutils/parsers/rst/__init__.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/__init__.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/admonitions.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/admonitions.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/body.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/body.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/html.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/html.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/images.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/images.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/misc.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/misc.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/parts.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/parts.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/references.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/references.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/tables.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/directives/tables.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/README.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamsa.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamsb.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamsc.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamsn.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamso.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isoamsr.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isobox.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isocyr1.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isocyr2.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isodia.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isogrk1.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isogrk2.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isogrk3.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isogrk4-wide.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isogrk4.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isolat1.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isolat2.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomfrk-wide.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomfrk.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomopf-wide.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomopf.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomscr-wide.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isomscr.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isonum.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isopub.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/isotech.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/mmlalias.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/mmlextra-wide.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/mmlextra.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/s5defs.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/xhtml1-lat1.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/xhtml1-special.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/include/xhtml1-symbol.txt +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/__init__.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/af.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/af.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ca.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ca.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/cs.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/cs.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/da.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/da.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/de.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/de.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/en.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/en.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/eo.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/eo.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/es.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/es.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/fi.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/fi.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/fr.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/fr.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/gl.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/gl.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/he.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/he.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/it.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/it.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ja.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ja.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/lt.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/lt.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/nl.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/nl.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/pl.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/pl.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/pt_br.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/pt_br.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ru.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/ru.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/sk.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/sk.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/sv.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/sv.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/zh_cn.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/zh_cn.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/zh_tw.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/languages/zh_tw.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/roles.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/roles.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/states.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/states.pyc +#usr/lib/python2.7/site-packages/docutils/parsers/rst/tableparser.py +#usr/lib/python2.7/site-packages/docutils/parsers/rst/tableparser.pyc +#usr/lib/python2.7/site-packages/docutils/readers +#usr/lib/python2.7/site-packages/docutils/readers/__init__.py +#usr/lib/python2.7/site-packages/docutils/readers/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/readers/doctree.py +#usr/lib/python2.7/site-packages/docutils/readers/doctree.pyc +#usr/lib/python2.7/site-packages/docutils/readers/pep.py +#usr/lib/python2.7/site-packages/docutils/readers/pep.pyc +#usr/lib/python2.7/site-packages/docutils/readers/standalone.py +#usr/lib/python2.7/site-packages/docutils/readers/standalone.pyc +#usr/lib/python2.7/site-packages/docutils/statemachine.py +#usr/lib/python2.7/site-packages/docutils/statemachine.pyc +#usr/lib/python2.7/site-packages/docutils/transforms +#usr/lib/python2.7/site-packages/docutils/transforms/__init__.py +#usr/lib/python2.7/site-packages/docutils/transforms/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/components.py +#usr/lib/python2.7/site-packages/docutils/transforms/components.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/frontmatter.py +#usr/lib/python2.7/site-packages/docutils/transforms/frontmatter.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/misc.py +#usr/lib/python2.7/site-packages/docutils/transforms/misc.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/parts.py +#usr/lib/python2.7/site-packages/docutils/transforms/parts.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/peps.py +#usr/lib/python2.7/site-packages/docutils/transforms/peps.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/references.py +#usr/lib/python2.7/site-packages/docutils/transforms/references.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/universal.py +#usr/lib/python2.7/site-packages/docutils/transforms/universal.pyc +#usr/lib/python2.7/site-packages/docutils/transforms/writer_aux.py +#usr/lib/python2.7/site-packages/docutils/transforms/writer_aux.pyc +#usr/lib/python2.7/site-packages/docutils/utils +#usr/lib/python2.7/site-packages/docutils/utils/__init__.py +#usr/lib/python2.7/site-packages/docutils/utils/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/utils/code_analyzer.py +#usr/lib/python2.7/site-packages/docutils/utils/code_analyzer.pyc +#usr/lib/python2.7/site-packages/docutils/utils/error_reporting.py +#usr/lib/python2.7/site-packages/docutils/utils/error_reporting.pyc +#usr/lib/python2.7/site-packages/docutils/utils/math +#usr/lib/python2.7/site-packages/docutils/utils/math/__init__.py +#usr/lib/python2.7/site-packages/docutils/utils/math/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/utils/math/latex2mathml.py +#usr/lib/python2.7/site-packages/docutils/utils/math/latex2mathml.pyc +#usr/lib/python2.7/site-packages/docutils/utils/math/math2html.py +#usr/lib/python2.7/site-packages/docutils/utils/math/math2html.pyc +#usr/lib/python2.7/site-packages/docutils/utils/math/tex2unichar.py +#usr/lib/python2.7/site-packages/docutils/utils/math/tex2unichar.pyc +#usr/lib/python2.7/site-packages/docutils/utils/math/unichar2tex.py +#usr/lib/python2.7/site-packages/docutils/utils/math/unichar2tex.pyc +#usr/lib/python2.7/site-packages/docutils/utils/punctuation_chars.py +#usr/lib/python2.7/site-packages/docutils/utils/punctuation_chars.pyc +#usr/lib/python2.7/site-packages/docutils/utils/roman.py +#usr/lib/python2.7/site-packages/docutils/utils/roman.pyc +#usr/lib/python2.7/site-packages/docutils/utils/smartquotes.py +#usr/lib/python2.7/site-packages/docutils/utils/smartquotes.pyc +#usr/lib/python2.7/site-packages/docutils/utils/urischemes.py +#usr/lib/python2.7/site-packages/docutils/utils/urischemes.pyc +#usr/lib/python2.7/site-packages/docutils/writers +#usr/lib/python2.7/site-packages/docutils/writers/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/docutils_xml.py +#usr/lib/python2.7/site-packages/docutils/writers/docutils_xml.pyc +#usr/lib/python2.7/site-packages/docutils/writers/html4css1 +#usr/lib/python2.7/site-packages/docutils/writers/html4css1/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/html4css1/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/html4css1/html4css1.css +#usr/lib/python2.7/site-packages/docutils/writers/html4css1/math.css +#usr/lib/python2.7/site-packages/docutils/writers/html4css1/template.txt +#usr/lib/python2.7/site-packages/docutils/writers/latex2e +#usr/lib/python2.7/site-packages/docutils/writers/latex2e/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/latex2e/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/latex2e/default.tex +#usr/lib/python2.7/site-packages/docutils/writers/latex2e/titlepage.tex +#usr/lib/python2.7/site-packages/docutils/writers/latex2e/xelatex.tex +#usr/lib/python2.7/site-packages/docutils/writers/manpage.py +#usr/lib/python2.7/site-packages/docutils/writers/manpage.pyc +#usr/lib/python2.7/site-packages/docutils/writers/null.py +#usr/lib/python2.7/site-packages/docutils/writers/null.pyc +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt/pygmentsformatter.py +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt/pygmentsformatter.pyc +#usr/lib/python2.7/site-packages/docutils/writers/odf_odt/styles.odt +#usr/lib/python2.7/site-packages/docutils/writers/pep_html +#usr/lib/python2.7/site-packages/docutils/writers/pep_html/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/pep_html/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/pep_html/pep.css +#usr/lib/python2.7/site-packages/docutils/writers/pep_html/template.txt +#usr/lib/python2.7/site-packages/docutils/writers/pseudoxml.py +#usr/lib/python2.7/site-packages/docutils/writers/pseudoxml.pyc +#usr/lib/python2.7/site-packages/docutils/writers/s5_html +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/__init__.pyc +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/README.txt +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-black +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-black/__base__ +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-black/framing.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-black/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-white +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-white/framing.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/big-white/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/blank.gif +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/framing.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/iepngfix.htc +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/opera.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/outline.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/print.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/s5-core.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/slides.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/default/slides.js +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-black +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-black/__base__ +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-black/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-white +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-white/framing.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/medium-white/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-black +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-black/__base__ +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-black/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-white +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-white/framing.css +#usr/lib/python2.7/site-packages/docutils/writers/s5_html/themes/small-white/pretty.css +#usr/lib/python2.7/site-packages/docutils/writers/xetex +#usr/lib/python2.7/site-packages/docutils/writers/xetex/__init__.py +#usr/lib/python2.7/site-packages/docutils/writers/xetex/__init__.pyc diff --git a/config/rootfiles/common/python-inotify b/config/rootfiles/common/python-inotify new file mode 100644 index 0000000..5fc062a --- /dev/null +++ b/config/rootfiles/common/python-inotify @@ -0,0 +1,20 @@ +#usr/lib/python2.7/site-packages/inotify +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info/PKG-INFO +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info/SOURCES.txt +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info/dependency_links.txt +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info/not-zip-safe +#usr/lib/python2.7/site-packages/inotify-0.2.7-py2.7.egg-info/top_level.txt +usr/lib/python2.7/site-packages/inotify/__init__.py +usr/lib/python2.7/site-packages/inotify/__init__.pyc +usr/lib/python2.7/site-packages/inotify/adapters.py +usr/lib/python2.7/site-packages/inotify/adapters.pyc +usr/lib/python2.7/site-packages/inotify/calls.py +usr/lib/python2.7/site-packages/inotify/calls.pyc +usr/lib/python2.7/site-packages/inotify/constants.py +usr/lib/python2.7/site-packages/inotify/constants.pyc +usr/lib/python2.7/site-packages/inotify/library.py +usr/lib/python2.7/site-packages/inotify/library.pyc +#usr/lib/python2.7/site-packages/inotify/resources +#usr/lib/python2.7/site-packages/inotify/resources/README.rst +#usr/lib/python2.7/site-packages/inotify/resources/requirements.txt diff --git a/config/rootfiles/common/python-ipaddress b/config/rootfiles/common/python-ipaddress new file mode 100644 index 0000000..a81a5e6 --- /dev/null +++ b/config/rootfiles/common/python-ipaddress @@ -0,0 +1,8 @@ +usr/lib/python2.7/site-packages/ipaddress.py +usr/lib/python2.7/site-packages/ipaddress.pyc +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info/PKG-INFO +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info/SOURCES.txt +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info/dependency_links.txt +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info/top_level.txt +#usr/lib/python2.7/site-packages/py2_ipaddress-3.4.1-py2.7.egg-info/zip-safe diff --git a/config/rootfiles/common/stage2 b/config/rootfiles/common/stage2 index bfca1bf..ec36774 100644 --- a/config/rootfiles/common/stage2 +++ b/config/rootfiles/common/stage2 @@ -162,7 +162,6 @@ var/log/btmp var/log/calamaris var/log/counter var/log/lastlog -#var/log/net-traffic.log var/log/wtmp var/mail #var/opt diff --git a/config/rootfiles/common/strongswan b/config/rootfiles/common/strongswan index f51cc3a..f81a9c8 100644 --- a/config/rootfiles/common/strongswan +++ b/config/rootfiles/common/strongswan @@ -40,7 +40,6 @@ etc/strongswan.d/charon/kernel-netlink.conf etc/strongswan.d/charon/md5.conf etc/strongswan.d/charon/nonce.conf etc/strongswan.d/charon/openssl.conf -#etc/strongswan.d/charon/padlock.conf etc/strongswan.d/charon/pem.conf etc/strongswan.d/charon/pgp.conf etc/strongswan.d/charon/pkcs1.conf @@ -58,6 +57,7 @@ etc/strongswan.d/charon/socket-default.conf etc/strongswan.d/charon/sshkey.conf etc/strongswan.d/charon/stroke.conf etc/strongswan.d/charon/updown.conf +etc/strongswan.d/charon/vici.conf etc/strongswan.d/charon/x509.conf etc/strongswan.d/charon/xauth-eap.conf etc/strongswan.d/charon/xauth-generic.conf @@ -66,6 +66,21 @@ etc/strongswan.d/charon/xcbc.conf etc/strongswan.d/pki.conf etc/strongswan.d/scepclient.conf etc/strongswan.d/starter.conf +etc/strongswan.d/swanctl.conf +#etc/swanctl +etc/swanctl/bliss +etc/swanctl/ecdsa +etc/swanctl/pkcs12 +etc/swanctl/pkcs8 +etc/swanctl/pubkey +etc/swanctl/rsa +etc/swanctl/swanctl.conf +etc/swanctl/x509 +etc/swanctl/x509aa +etc/swanctl/x509ac +etc/swanctl/x509ca +etc/swanctl/x509crl +etc/swanctl/x509ocsp usr/bin/pki #usr/lib/ipsec #usr/lib/ipsec/libcharon.a @@ -73,11 +88,6 @@ usr/bin/pki usr/lib/ipsec/libcharon.so usr/lib/ipsec/libcharon.so.0 usr/lib/ipsec/libcharon.so.0.0.0 -#usr/lib/ipsec/libhydra.a -#usr/lib/ipsec/libhydra.la -usr/lib/ipsec/libhydra.so -usr/lib/ipsec/libhydra.so.0 -usr/lib/ipsec/libhydra.so.0.0.0 #usr/lib/ipsec/libradius.a #usr/lib/ipsec/libradius.la usr/lib/ipsec/libradius.so @@ -93,6 +103,11 @@ usr/lib/ipsec/libstrongswan.so.0.0.0 usr/lib/ipsec/libtls.so usr/lib/ipsec/libtls.so.0 usr/lib/ipsec/libtls.so.0.0.0 +#usr/lib/ipsec/libvici.a +#usr/lib/ipsec/libvici.la +usr/lib/ipsec/libvici.so +usr/lib/ipsec/libvici.so.0 +usr/lib/ipsec/libvici.so.0.0.0 #usr/lib/ipsec/plugins usr/lib/ipsec/plugins/libstrongswan-aes.so usr/lib/ipsec/plugins/libstrongswan-attr.so @@ -101,8 +116,8 @@ usr/lib/ipsec/plugins/libstrongswan-cmac.so usr/lib/ipsec/plugins/libstrongswan-constraints.so usr/lib/ipsec/plugins/libstrongswan-ctr.so usr/lib/ipsec/plugins/libstrongswan-curl.so -usr/lib/ipsec/plugins/libstrongswan-dhcp.so usr/lib/ipsec/plugins/libstrongswan-des.so +usr/lib/ipsec/plugins/libstrongswan-dhcp.so usr/lib/ipsec/plugins/libstrongswan-dnskey.so usr/lib/ipsec/plugins/libstrongswan-eap-identity.so usr/lib/ipsec/plugins/libstrongswan-eap-mschapv2.so @@ -120,7 +135,6 @@ usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.so usr/lib/ipsec/plugins/libstrongswan-md5.so usr/lib/ipsec/plugins/libstrongswan-nonce.so usr/lib/ipsec/plugins/libstrongswan-openssl.so -#usr/lib/ipsec/plugins/libstrongswan-padlock.so usr/lib/ipsec/plugins/libstrongswan-pem.so usr/lib/ipsec/plugins/libstrongswan-pgp.so usr/lib/ipsec/plugins/libstrongswan-pkcs1.so @@ -130,7 +144,6 @@ usr/lib/ipsec/plugins/libstrongswan-pkcs8.so usr/lib/ipsec/plugins/libstrongswan-pubkey.so usr/lib/ipsec/plugins/libstrongswan-random.so usr/lib/ipsec/plugins/libstrongswan-rc2.so -#usr/lib/ipsec/plugins/libstrongswan-rdrand.so usr/lib/ipsec/plugins/libstrongswan-resolve.so usr/lib/ipsec/plugins/libstrongswan-revocation.so usr/lib/ipsec/plugins/libstrongswan-sha1.so @@ -139,6 +152,7 @@ usr/lib/ipsec/plugins/libstrongswan-socket-default.so usr/lib/ipsec/plugins/libstrongswan-sshkey.so usr/lib/ipsec/plugins/libstrongswan-stroke.so usr/lib/ipsec/plugins/libstrongswan-updown.so +usr/lib/ipsec/plugins/libstrongswan-vici.so usr/lib/ipsec/plugins/libstrongswan-x509.so usr/lib/ipsec/plugins/libstrongswan-xauth-eap.so usr/lib/ipsec/plugins/libstrongswan-xauth-generic.so @@ -152,6 +166,7 @@ usr/libexec/ipsec/scepclient usr/libexec/ipsec/starter usr/libexec/ipsec/stroke usr/sbin/ipsec +usr/sbin/swanctl #usr/share/man/man1/pki---acert.1 #usr/share/man/man1/pki---dn.1 #usr/share/man/man1/pki---gen.1 @@ -168,10 +183,10 @@ usr/sbin/ipsec #usr/share/man/man5/ipsec.conf.5 #usr/share/man/man5/ipsec.secrets.5 #usr/share/man/man5/strongswan.conf.5 -#usr/share/man/man8/_updown.8 +#usr/share/man/man5/swanctl.conf.5 #usr/share/man/man8/ipsec.8 -#usr/share/man/man8/openac.8 #usr/share/man/man8/scepclient.8 +#usr/share/man/man8/swanctl.8 #usr/share/strongswan #usr/share/strongswan/templates #usr/share/strongswan/templates/config @@ -202,7 +217,6 @@ usr/sbin/ipsec #usr/share/strongswan/templates/config/plugins/md5.conf #usr/share/strongswan/templates/config/plugins/nonce.conf #usr/share/strongswan/templates/config/plugins/openssl.conf -#usr/share/strongswan/templates/config/plugins/padlock.conf #usr/share/strongswan/templates/config/plugins/pem.conf #usr/share/strongswan/templates/config/plugins/pgp.conf #usr/share/strongswan/templates/config/plugins/pkcs1.conf @@ -220,6 +234,7 @@ usr/sbin/ipsec #usr/share/strongswan/templates/config/plugins/sshkey.conf #usr/share/strongswan/templates/config/plugins/stroke.conf #usr/share/strongswan/templates/config/plugins/updown.conf +#usr/share/strongswan/templates/config/plugins/vici.conf #usr/share/strongswan/templates/config/plugins/x509.conf #usr/share/strongswan/templates/config/plugins/xauth-eap.conf #usr/share/strongswan/templates/config/plugins/xauth-generic.conf @@ -232,3 +247,4 @@ usr/sbin/ipsec #usr/share/strongswan/templates/config/strongswan.d/pki.conf #usr/share/strongswan/templates/config/strongswan.d/scepclient.conf #usr/share/strongswan/templates/config/strongswan.d/starter.conf +#usr/share/strongswan/templates/config/strongswan.d/swanctl.conf diff --git a/config/rootfiles/common/tcl b/config/rootfiles/common/tcl index 7b6bb83..c4232d2 100644 --- a/config/rootfiles/common/tcl +++ b/config/rootfiles/common/tcl @@ -1,117 +1,305 @@ +#usr/bin/sqlite3_analyzer usr/bin/tclsh -usr/bin/tclsh8.4 +usr/bin/tclsh8.6 +#usr/include/fakemysql.h +#usr/include/fakepq.h +#usr/include/fakesql.h +#usr/include/itcl.h +#usr/include/itcl2TclOO.h +#usr/include/itclDecls.h +#usr/include/itclInt.h +#usr/include/itclIntDecls.h +#usr/include/itclMigrate2TclCore.h +#usr/include/itclTclIntStubsFcn.h +#usr/include/mysqlStubs.h +#usr/include/odbcStubs.h +#usr/include/pqStubs.h #usr/include/tcl.h #usr/include/tclDecls.h +#usr/include/tclOO.h +#usr/include/tclOODecls.h #usr/include/tclPlatDecls.h -usr/lib/libtcl8.4.so -usr/lib/libtclstub8.4.a -#usr/lib/tcl8.4 -usr/lib/tcl8.4/auto.tcl -#usr/lib/tcl8.4/encoding -usr/lib/tcl8.4/encoding/ascii.enc -usr/lib/tcl8.4/encoding/big5.enc -usr/lib/tcl8.4/encoding/cp1250.enc -usr/lib/tcl8.4/encoding/cp1251.enc -usr/lib/tcl8.4/encoding/cp1252.enc -usr/lib/tcl8.4/encoding/cp1253.enc -usr/lib/tcl8.4/encoding/cp1254.enc -usr/lib/tcl8.4/encoding/cp1255.enc -usr/lib/tcl8.4/encoding/cp1256.enc -usr/lib/tcl8.4/encoding/cp1257.enc -usr/lib/tcl8.4/encoding/cp1258.enc -usr/lib/tcl8.4/encoding/cp437.enc -usr/lib/tcl8.4/encoding/cp737.enc -usr/lib/tcl8.4/encoding/cp775.enc -usr/lib/tcl8.4/encoding/cp850.enc -usr/lib/tcl8.4/encoding/cp852.enc -usr/lib/tcl8.4/encoding/cp855.enc -usr/lib/tcl8.4/encoding/cp857.enc -usr/lib/tcl8.4/encoding/cp860.enc -usr/lib/tcl8.4/encoding/cp861.enc -usr/lib/tcl8.4/encoding/cp862.enc -usr/lib/tcl8.4/encoding/cp863.enc -usr/lib/tcl8.4/encoding/cp864.enc -usr/lib/tcl8.4/encoding/cp865.enc -usr/lib/tcl8.4/encoding/cp866.enc -usr/lib/tcl8.4/encoding/cp869.enc -usr/lib/tcl8.4/encoding/cp874.enc -usr/lib/tcl8.4/encoding/cp932.enc -usr/lib/tcl8.4/encoding/cp936.enc -usr/lib/tcl8.4/encoding/cp949.enc -usr/lib/tcl8.4/encoding/cp950.enc -usr/lib/tcl8.4/encoding/dingbats.enc -usr/lib/tcl8.4/encoding/ebcdic.enc -usr/lib/tcl8.4/encoding/euc-cn.enc -usr/lib/tcl8.4/encoding/euc-jp.enc -usr/lib/tcl8.4/encoding/euc-kr.enc -usr/lib/tcl8.4/encoding/gb12345.enc -usr/lib/tcl8.4/encoding/gb1988.enc -usr/lib/tcl8.4/encoding/gb2312-raw.enc -usr/lib/tcl8.4/encoding/gb2312.enc -usr/lib/tcl8.4/encoding/iso2022-jp.enc -usr/lib/tcl8.4/encoding/iso2022-kr.enc -usr/lib/tcl8.4/encoding/iso2022.enc -usr/lib/tcl8.4/encoding/iso8859-1.enc -usr/lib/tcl8.4/encoding/iso8859-10.enc -usr/lib/tcl8.4/encoding/iso8859-13.enc -usr/lib/tcl8.4/encoding/iso8859-14.enc -usr/lib/tcl8.4/encoding/iso8859-15.enc -usr/lib/tcl8.4/encoding/iso8859-16.enc -usr/lib/tcl8.4/encoding/iso8859-2.enc -usr/lib/tcl8.4/encoding/iso8859-3.enc -usr/lib/tcl8.4/encoding/iso8859-4.enc -usr/lib/tcl8.4/encoding/iso8859-5.enc -usr/lib/tcl8.4/encoding/iso8859-6.enc -usr/lib/tcl8.4/encoding/iso8859-7.enc -usr/lib/tcl8.4/encoding/iso8859-8.enc -usr/lib/tcl8.4/encoding/iso8859-9.enc -usr/lib/tcl8.4/encoding/jis0201.enc -usr/lib/tcl8.4/encoding/jis0208.enc -usr/lib/tcl8.4/encoding/jis0212.enc -usr/lib/tcl8.4/encoding/koi8-r.enc -usr/lib/tcl8.4/encoding/koi8-u.enc -usr/lib/tcl8.4/encoding/ksc5601.enc -usr/lib/tcl8.4/encoding/macCentEuro.enc -usr/lib/tcl8.4/encoding/macCroatian.enc -usr/lib/tcl8.4/encoding/macCyrillic.enc -usr/lib/tcl8.4/encoding/macDingbats.enc -usr/lib/tcl8.4/encoding/macGreek.enc -usr/lib/tcl8.4/encoding/macIceland.enc -usr/lib/tcl8.4/encoding/macJapan.enc -usr/lib/tcl8.4/encoding/macRoman.enc -usr/lib/tcl8.4/encoding/macRomania.enc -usr/lib/tcl8.4/encoding/macThai.enc -usr/lib/tcl8.4/encoding/macTurkish.enc -usr/lib/tcl8.4/encoding/macUkraine.enc -usr/lib/tcl8.4/encoding/shiftjis.enc -usr/lib/tcl8.4/encoding/symbol.enc -usr/lib/tcl8.4/encoding/tis-620.enc -usr/lib/tcl8.4/history.tcl -#usr/lib/tcl8.4/http1.0 -usr/lib/tcl8.4/http1.0/http.tcl -usr/lib/tcl8.4/http1.0/pkgIndex.tcl -#usr/lib/tcl8.4/http2.5 -usr/lib/tcl8.4/http2.5/http.tcl -usr/lib/tcl8.4/http2.5/pkgIndex.tcl -usr/lib/tcl8.4/init.tcl -usr/lib/tcl8.4/ldAix -usr/lib/tcl8.4/ldAout.tcl -#usr/lib/tcl8.4/msgcat1.3 -usr/lib/tcl8.4/msgcat1.3/msgcat.tcl -usr/lib/tcl8.4/msgcat1.3/pkgIndex.tcl -#usr/lib/tcl8.4/opt0.4 -usr/lib/tcl8.4/opt0.4/optparse.tcl -usr/lib/tcl8.4/opt0.4/pkgIndex.tcl -usr/lib/tcl8.4/package.tcl -usr/lib/tcl8.4/parray.tcl -usr/lib/tcl8.4/safe.tcl -usr/lib/tcl8.4/tclAppInit.c -usr/lib/tcl8.4/tclIndex -#usr/lib/tcl8.4/tcltest2.2 -usr/lib/tcl8.4/tcltest2.2/pkgIndex.tcl -usr/lib/tcl8.4/tcltest2.2/tcltest.tcl -usr/lib/tcl8.4/word.tcl +#usr/include/tclThread.h +#usr/include/tclTomMath.h +#usr/include/tclTomMathDecls.h +#usr/include/tdbc.h +#usr/include/tdbcDecls.h +#usr/include/tdbcInt.h +#usr/lib/itcl4.0.5 +usr/lib/itcl4.0.5/itcl.tcl +usr/lib/itcl4.0.5/itclConfig.sh +usr/lib/itcl4.0.5/itclHullCmds.tcl +usr/lib/itcl4.0.5/itclWidget.tcl +usr/lib/itcl4.0.5/libitcl4.0.5.so +usr/lib/itcl4.0.5/libitclstub4.0.5.a +usr/lib/itcl4.0.5/pkgIndex.tcl +usr/lib/libtcl8.6.so +#usr/lib/libtclstub8.6.a +#usr/lib/pkgconfig/tcl.pc +#usr/lib/sqlite3.13.0 +usr/lib/sqlite3.13.0/libsqlite3.13.0.so +usr/lib/sqlite3.13.0/pkgIndex.tcl +#usr/lib/tcl8 +#usr/lib/tcl8.6 +usr/lib/tcl8.6/auto.tcl +usr/lib/tcl8.6/clock.tcl +usr/lib/tcl8.6/encoding +usr/lib/tcl8.6/encoding/ascii.enc +usr/lib/tcl8.6/encoding/big5.enc +usr/lib/tcl8.6/encoding/cp1250.enc +usr/lib/tcl8.6/encoding/cp1251.enc +usr/lib/tcl8.6/encoding/cp1252.enc +usr/lib/tcl8.6/encoding/cp1253.enc +usr/lib/tcl8.6/encoding/cp1254.enc +usr/lib/tcl8.6/encoding/cp1255.enc +usr/lib/tcl8.6/encoding/cp1256.enc +usr/lib/tcl8.6/encoding/cp1257.enc +usr/lib/tcl8.6/encoding/cp1258.enc +usr/lib/tcl8.6/encoding/cp437.enc +usr/lib/tcl8.6/encoding/cp737.enc +usr/lib/tcl8.6/encoding/cp775.enc +usr/lib/tcl8.6/encoding/cp850.enc +usr/lib/tcl8.6/encoding/cp852.enc +usr/lib/tcl8.6/encoding/cp855.enc +usr/lib/tcl8.6/encoding/cp857.enc +usr/lib/tcl8.6/encoding/cp860.enc +usr/lib/tcl8.6/encoding/cp861.enc +usr/lib/tcl8.6/encoding/cp862.enc +usr/lib/tcl8.6/encoding/cp863.enc +usr/lib/tcl8.6/encoding/cp864.enc +usr/lib/tcl8.6/encoding/cp865.enc +usr/lib/tcl8.6/encoding/cp866.enc +usr/lib/tcl8.6/encoding/cp869.enc +usr/lib/tcl8.6/encoding/cp874.enc +usr/lib/tcl8.6/encoding/cp932.enc +usr/lib/tcl8.6/encoding/cp936.enc +usr/lib/tcl8.6/encoding/cp949.enc +usr/lib/tcl8.6/encoding/cp950.enc +usr/lib/tcl8.6/encoding/dingbats.enc +usr/lib/tcl8.6/encoding/ebcdic.enc +usr/lib/tcl8.6/encoding/euc-cn.enc +usr/lib/tcl8.6/encoding/euc-jp.enc +usr/lib/tcl8.6/encoding/euc-kr.enc +usr/lib/tcl8.6/encoding/gb12345.enc +usr/lib/tcl8.6/encoding/gb1988.enc +usr/lib/tcl8.6/encoding/gb2312-raw.enc +usr/lib/tcl8.6/encoding/gb2312.enc +usr/lib/tcl8.6/encoding/iso2022-jp.enc +usr/lib/tcl8.6/encoding/iso2022-kr.enc +usr/lib/tcl8.6/encoding/iso2022.enc +usr/lib/tcl8.6/encoding/iso8859-1.enc +usr/lib/tcl8.6/encoding/iso8859-10.enc +usr/lib/tcl8.6/encoding/iso8859-13.enc +usr/lib/tcl8.6/encoding/iso8859-14.enc +usr/lib/tcl8.6/encoding/iso8859-15.enc +usr/lib/tcl8.6/encoding/iso8859-16.enc +usr/lib/tcl8.6/encoding/iso8859-2.enc +usr/lib/tcl8.6/encoding/iso8859-3.enc +usr/lib/tcl8.6/encoding/iso8859-4.enc +usr/lib/tcl8.6/encoding/iso8859-5.enc +usr/lib/tcl8.6/encoding/iso8859-6.enc +usr/lib/tcl8.6/encoding/iso8859-7.enc +usr/lib/tcl8.6/encoding/iso8859-8.enc +usr/lib/tcl8.6/encoding/iso8859-9.enc +usr/lib/tcl8.6/encoding/jis0201.enc +usr/lib/tcl8.6/encoding/jis0208.enc +usr/lib/tcl8.6/encoding/jis0212.enc +usr/lib/tcl8.6/encoding/koi8-r.enc +usr/lib/tcl8.6/encoding/koi8-u.enc +usr/lib/tcl8.6/encoding/ksc5601.enc +usr/lib/tcl8.6/encoding/macCentEuro.enc +usr/lib/tcl8.6/encoding/macCroatian.enc +usr/lib/tcl8.6/encoding/macCyrillic.enc +usr/lib/tcl8.6/encoding/macDingbats.enc +usr/lib/tcl8.6/encoding/macGreek.enc +usr/lib/tcl8.6/encoding/macIceland.enc +usr/lib/tcl8.6/encoding/macJapan.enc +usr/lib/tcl8.6/encoding/macRoman.enc +usr/lib/tcl8.6/encoding/macRomania.enc +usr/lib/tcl8.6/encoding/macThai.enc +usr/lib/tcl8.6/encoding/macTurkish.enc +usr/lib/tcl8.6/encoding/macUkraine.enc +usr/lib/tcl8.6/encoding/shiftjis.enc +usr/lib/tcl8.6/encoding/symbol.enc +usr/lib/tcl8.6/encoding/tis-620.enc +usr/lib/tcl8.6/history.tcl +usr/lib/tcl8.6/http1.0 +usr/lib/tcl8.6/http1.0/http.tcl +usr/lib/tcl8.6/http1.0/pkgIndex.tcl +usr/lib/tcl8.6/init.tcl +#usr/lib/tcl8.6/msgs +#usr/lib/tcl8.6/msgs/af.msg +#usr/lib/tcl8.6/msgs/af_za.msg +#usr/lib/tcl8.6/msgs/ar.msg +#usr/lib/tcl8.6/msgs/ar_in.msg +#usr/lib/tcl8.6/msgs/ar_jo.msg +#usr/lib/tcl8.6/msgs/ar_lb.msg +#usr/lib/tcl8.6/msgs/ar_sy.msg +#usr/lib/tcl8.6/msgs/be.msg +#usr/lib/tcl8.6/msgs/bg.msg +#usr/lib/tcl8.6/msgs/bn.msg +#usr/lib/tcl8.6/msgs/bn_in.msg +#usr/lib/tcl8.6/msgs/ca.msg +#usr/lib/tcl8.6/msgs/cs.msg +#usr/lib/tcl8.6/msgs/da.msg +#usr/lib/tcl8.6/msgs/de.msg +#usr/lib/tcl8.6/msgs/de_at.msg +#usr/lib/tcl8.6/msgs/de_be.msg +#usr/lib/tcl8.6/msgs/el.msg +#usr/lib/tcl8.6/msgs/en_au.msg +#usr/lib/tcl8.6/msgs/en_be.msg +#usr/lib/tcl8.6/msgs/en_bw.msg +#usr/lib/tcl8.6/msgs/en_ca.msg +#usr/lib/tcl8.6/msgs/en_gb.msg +#usr/lib/tcl8.6/msgs/en_hk.msg +#usr/lib/tcl8.6/msgs/en_ie.msg +#usr/lib/tcl8.6/msgs/en_in.msg +#usr/lib/tcl8.6/msgs/en_nz.msg +#usr/lib/tcl8.6/msgs/en_ph.msg +#usr/lib/tcl8.6/msgs/en_sg.msg +#usr/lib/tcl8.6/msgs/en_za.msg +#usr/lib/tcl8.6/msgs/en_zw.msg +#usr/lib/tcl8.6/msgs/eo.msg +#usr/lib/tcl8.6/msgs/es.msg +#usr/lib/tcl8.6/msgs/es_ar.msg +#usr/lib/tcl8.6/msgs/es_bo.msg +#usr/lib/tcl8.6/msgs/es_cl.msg +#usr/lib/tcl8.6/msgs/es_co.msg +#usr/lib/tcl8.6/msgs/es_cr.msg +#usr/lib/tcl8.6/msgs/es_do.msg +#usr/lib/tcl8.6/msgs/es_ec.msg +#usr/lib/tcl8.6/msgs/es_gt.msg +#usr/lib/tcl8.6/msgs/es_hn.msg +#usr/lib/tcl8.6/msgs/es_mx.msg +#usr/lib/tcl8.6/msgs/es_ni.msg +#usr/lib/tcl8.6/msgs/es_pa.msg +#usr/lib/tcl8.6/msgs/es_pe.msg +#usr/lib/tcl8.6/msgs/es_pr.msg +#usr/lib/tcl8.6/msgs/es_py.msg +#usr/lib/tcl8.6/msgs/es_sv.msg +#usr/lib/tcl8.6/msgs/es_uy.msg +#usr/lib/tcl8.6/msgs/es_ve.msg +#usr/lib/tcl8.6/msgs/et.msg +#usr/lib/tcl8.6/msgs/eu.msg +#usr/lib/tcl8.6/msgs/eu_es.msg +#usr/lib/tcl8.6/msgs/fa.msg +#usr/lib/tcl8.6/msgs/fa_in.msg +#usr/lib/tcl8.6/msgs/fa_ir.msg +#usr/lib/tcl8.6/msgs/fi.msg +#usr/lib/tcl8.6/msgs/fo.msg +#usr/lib/tcl8.6/msgs/fo_fo.msg +#usr/lib/tcl8.6/msgs/fr.msg +#usr/lib/tcl8.6/msgs/fr_be.msg +#usr/lib/tcl8.6/msgs/fr_ca.msg +#usr/lib/tcl8.6/msgs/fr_ch.msg +#usr/lib/tcl8.6/msgs/ga.msg +#usr/lib/tcl8.6/msgs/ga_ie.msg +#usr/lib/tcl8.6/msgs/gl.msg +#usr/lib/tcl8.6/msgs/gl_es.msg +#usr/lib/tcl8.6/msgs/gv.msg +#usr/lib/tcl8.6/msgs/gv_gb.msg +#usr/lib/tcl8.6/msgs/he.msg +#usr/lib/tcl8.6/msgs/hi.msg +#usr/lib/tcl8.6/msgs/hi_in.msg +#usr/lib/tcl8.6/msgs/hr.msg +#usr/lib/tcl8.6/msgs/hu.msg +#usr/lib/tcl8.6/msgs/id.msg +#usr/lib/tcl8.6/msgs/id_id.msg +#usr/lib/tcl8.6/msgs/is.msg +#usr/lib/tcl8.6/msgs/it.msg +#usr/lib/tcl8.6/msgs/it_ch.msg +#usr/lib/tcl8.6/msgs/ja.msg +#usr/lib/tcl8.6/msgs/kl.msg +#usr/lib/tcl8.6/msgs/kl_gl.msg +#usr/lib/tcl8.6/msgs/ko.msg +#usr/lib/tcl8.6/msgs/ko_kr.msg +#usr/lib/tcl8.6/msgs/kok.msg +#usr/lib/tcl8.6/msgs/kok_in.msg +#usr/lib/tcl8.6/msgs/kw.msg +#usr/lib/tcl8.6/msgs/kw_gb.msg +#usr/lib/tcl8.6/msgs/lt.msg +#usr/lib/tcl8.6/msgs/lv.msg +#usr/lib/tcl8.6/msgs/mk.msg +#usr/lib/tcl8.6/msgs/mr.msg +#usr/lib/tcl8.6/msgs/mr_in.msg +#usr/lib/tcl8.6/msgs/ms.msg +#usr/lib/tcl8.6/msgs/ms_my.msg +#usr/lib/tcl8.6/msgs/mt.msg +#usr/lib/tcl8.6/msgs/nb.msg +#usr/lib/tcl8.6/msgs/nl.msg +#usr/lib/tcl8.6/msgs/nl_be.msg +#usr/lib/tcl8.6/msgs/nn.msg +#usr/lib/tcl8.6/msgs/pl.msg +#usr/lib/tcl8.6/msgs/pt.msg +#usr/lib/tcl8.6/msgs/pt_br.msg +#usr/lib/tcl8.6/msgs/ro.msg +#usr/lib/tcl8.6/msgs/ru.msg +#usr/lib/tcl8.6/msgs/ru_ua.msg +#usr/lib/tcl8.6/msgs/sh.msg +#usr/lib/tcl8.6/msgs/sk.msg +#usr/lib/tcl8.6/msgs/sl.msg +#usr/lib/tcl8.6/msgs/sq.msg +#usr/lib/tcl8.6/msgs/sr.msg +#usr/lib/tcl8.6/msgs/sv.msg +#usr/lib/tcl8.6/msgs/sw.msg +#usr/lib/tcl8.6/msgs/ta.msg +#usr/lib/tcl8.6/msgs/ta_in.msg +#usr/lib/tcl8.6/msgs/te.msg +#usr/lib/tcl8.6/msgs/te_in.msg +#usr/lib/tcl8.6/msgs/th.msg +#usr/lib/tcl8.6/msgs/tr.msg +#usr/lib/tcl8.6/msgs/uk.msg +#usr/lib/tcl8.6/msgs/vi.msg +#usr/lib/tcl8.6/msgs/zh.msg +#usr/lib/tcl8.6/msgs/zh_cn.msg +#usr/lib/tcl8.6/msgs/zh_hk.msg +#usr/lib/tcl8.6/msgs/zh_sg.msg +#usr/lib/tcl8.6/msgs/zh_tw.msg +#usr/lib/tcl8.6/opt0.4 +usr/lib/tcl8.6/opt0.4/optparse.tcl +usr/lib/tcl8.6/opt0.4/pkgIndex.tcl +usr/lib/tcl8.6/package.tcl +usr/lib/tcl8.6/parray.tcl +usr/lib/tcl8.6/safe.tcl +usr/lib/tcl8.6/tclAppInit.c +usr/lib/tcl8.6/tclIndex +usr/lib/tcl8.6/tm.tcl +usr/lib/tcl8.6/word.tcl +#usr/lib/tcl8/8.4 +usr/lib/tcl8/8.4/platform +usr/lib/tcl8/8.4/platform-1.0.14.tm +usr/lib/tcl8/8.4/platform/shell-1.1.4.tm +#usr/lib/tcl8/8.5 +usr/lib/tcl8/8.5/msgcat-1.6.0.tm +usr/lib/tcl8/8.5/tcltest-2.4.0.tm +#usr/lib/tcl8/8.6 +usr/lib/tcl8/8.6/http-2.8.9.tm +usr/lib/tcl8/8.6/tdbc +usr/lib/tcl8/8.6/tdbc/sqlite3-1.0.4.tm usr/lib/tclConfig.sh +usr/lib/tclooConfig.sh +#usr/lib/tdbc1.0.4 +usr/lib/tdbc1.0.4/libtdbc1.0.4.so +usr/lib/tdbc1.0.4/libtdbcstub1.0.4.a +usr/lib/tdbc1.0.4/pkgIndex.tcl +usr/lib/tdbc1.0.4/tdbc.tcl +usr/lib/tdbc1.0.4/tdbcConfig.sh +#usr/lib/tdbcmysql1.0.4 +usr/lib/tdbcmysql1.0.4/libtdbcmysql1.0.4.so +usr/lib/tdbcmysql1.0.4/pkgIndex.tcl +usr/lib/tdbcmysql1.0.4/tdbcmysql.tcl +#usr/lib/tdbcodbc1.0.4 +usr/lib/tdbcodbc1.0.4/libtdbcodbc1.0.4.so +usr/lib/tdbcodbc1.0.4/pkgIndex.tcl +usr/lib/tdbcodbc1.0.4/tdbcodbc.tcl +#usr/lib/tdbcpostgres1.0.4 +usr/lib/tdbcpostgres1.0.4/libtdbcpostgres1.0.4.so +usr/lib/tdbcpostgres1.0.4/pkgIndex.tcl +usr/lib/tdbcpostgres1.0.4/tdbcpostgres.tcl +#usr/lib/thread2.8.0 +usr/lib/thread2.8.0/libthread2.8.0.so +usr/lib/thread2.8.0/pkgIndex.tcl +usr/lib/thread2.8.0/ttrace.tcl #usr/man/man1/tclsh.1 #usr/man/man3/TCL_MEM_DEBUG.3 #usr/man/man3/Tcl_Access.3 @@ -124,7 +312,12 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_AppInit.3 #usr/man/man3/Tcl_AppendAllObjTypes.3 #usr/man/man3/Tcl_AppendElement.3 +#usr/man/man3/Tcl_AppendExportList.3 +#usr/man/man3/Tcl_AppendFormatToObj.3 +#usr/man/man3/Tcl_AppendLimitedToObj.3 +#usr/man/man3/Tcl_AppendObjToErrorInfo.3 #usr/man/man3/Tcl_AppendObjToObj.3 +#usr/man/man3/Tcl_AppendPrintfToObj.3 #usr/man/man3/Tcl_AppendResult.3 #usr/man/man3/Tcl_AppendResultVA.3 #usr/man/man3/Tcl_AppendStringsToObj.3 @@ -140,10 +333,13 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_AttemptRealloc.3 #usr/man/man3/Tcl_AttemptSetObjLength.3 #usr/man/man3/Tcl_BackgroundError.3 +#usr/man/man3/Tcl_BackgroundException.3 #usr/man/man3/Tcl_Backslash.3 #usr/man/man3/Tcl_BadChannelOption.3 #usr/man/man3/Tcl_CallWhenDeleted.3 +#usr/man/man3/Tcl_CancelEval.3 #usr/man/man3/Tcl_CancelIdleCall.3 +#usr/man/man3/Tcl_Canceled.3 #usr/man/man3/Tcl_ChannelBlockModeProc.3 #usr/man/man3/Tcl_ChannelBuffered.3 #usr/man/man3/Tcl_ChannelClose2Proc.3 @@ -158,10 +354,15 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_ChannelSeekProc.3 #usr/man/man3/Tcl_ChannelSetOptionProc.3 #usr/man/man3/Tcl_ChannelThreadActionProc.3 +#usr/man/man3/Tcl_ChannelTruncateProc.3 #usr/man/man3/Tcl_ChannelVersion.3 #usr/man/man3/Tcl_ChannelWatchProc.3 #usr/man/man3/Tcl_ChannelWideSeekProc.3 #usr/man/man3/Tcl_Chdir.3 +#usr/man/man3/Tcl_ClassGetMetadata.3 +#usr/man/man3/Tcl_ClassSetConstructor.3 +#usr/man/man3/Tcl_ClassSetDestructor.3 +#usr/man/man3/Tcl_ClassSetMetadata.3 #usr/man/man3/Tcl_ClearChannelHandlers.3 #usr/man/man3/Tcl_Close.3 #usr/man/man3/Tcl_CommandComplete.3 @@ -174,6 +375,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_ConvertCountedElement.3 #usr/man/man3/Tcl_ConvertElement.3 #usr/man/man3/Tcl_ConvertToType.3 +#usr/man/man3/Tcl_CopyObjectInstance.3 #usr/man/man3/Tcl_CreateAlias.3 #usr/man/man3/Tcl_CreateAliasObj.3 #usr/man/man3/Tcl_CreateChannel.3 @@ -181,12 +383,14 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_CreateCloseHandler.3 #usr/man/man3/Tcl_CreateCommand.3 #usr/man/man3/Tcl_CreateEncoding.3 +#usr/man/man3/Tcl_CreateEnsemble.3 #usr/man/man3/Tcl_CreateEventSource.3 #usr/man/man3/Tcl_CreateExitHandler.3 #usr/man/man3/Tcl_CreateFileHandler.3 #usr/man/man3/Tcl_CreateHashEntry.3 #usr/man/man3/Tcl_CreateInterp.3 #usr/man/man3/Tcl_CreateMathFunc.3 +#usr/man/man3/Tcl_CreateNamespace.3 #usr/man/man3/Tcl_CreateObjCommand.3 #usr/man/man3/Tcl_CreateObjTrace.3 #usr/man/man3/Tcl_CreateSlave.3 @@ -220,11 +424,22 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_DeleteHashEntry.3 #usr/man/man3/Tcl_DeleteHashTable.3 #usr/man/man3/Tcl_DeleteInterp.3 +#usr/man/man3/Tcl_DeleteNamespace.3 #usr/man/man3/Tcl_DeleteThreadExitHandler.3 #usr/man/man3/Tcl_DeleteTimerHandler.3 #usr/man/man3/Tcl_DeleteTrace.3 #usr/man/man3/Tcl_DetachChannel.3 #usr/man/man3/Tcl_DetachPids.3 +#usr/man/man3/Tcl_DictObjDone.3 +#usr/man/man3/Tcl_DictObjFirst.3 +#usr/man/man3/Tcl_DictObjGet.3 +#usr/man/man3/Tcl_DictObjNext.3 +#usr/man/man3/Tcl_DictObjPut.3 +#usr/man/man3/Tcl_DictObjPutKeyList.3 +#usr/man/man3/Tcl_DictObjRemove.3 +#usr/man/man3/Tcl_DictObjRemoveKeyList.3 +#usr/man/man3/Tcl_DictObjSize.3 +#usr/man/man3/Tcl_DiscardInterpState.3 #usr/man/man3/Tcl_DiscardResult.3 #usr/man/man3/Tcl_DoOneEvent.3 #usr/man/man3/Tcl_DoWhenIdle.3 @@ -244,6 +459,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_EventuallyFree.3 #usr/man/man3/Tcl_Exit.3 #usr/man/man3/Tcl_ExitThread.3 +#usr/man/man3/Tcl_Export.3 #usr/man/man3/Tcl_ExposeCommand.3 #usr/man/man3/Tcl_ExprBoolean.3 #usr/man/man3/Tcl_ExprBooleanObj.3 @@ -265,6 +481,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_FSDeleteFile.3 #usr/man/man3/Tcl_FSEqualPaths.3 #usr/man/man3/Tcl_FSEvalFile.3 +#usr/man/man3/Tcl_FSEvalFileEx.3 #usr/man/man3/Tcl_FSFileAttrStrings.3 #usr/man/man3/Tcl_FSFileAttrsGet.3 #usr/man/man3/Tcl_FSFileAttrsSet.3 @@ -293,27 +510,41 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_FSRenameFile.3 #usr/man/man3/Tcl_FSSplitPath.3 #usr/man/man3/Tcl_FSStat.3 +#usr/man/man3/Tcl_FSUnloadFile.3 #usr/man/man3/Tcl_FSUnregister.3 #usr/man/man3/Tcl_FSUtime.3 #usr/man/man3/Tcl_Finalize.3 #usr/man/man3/Tcl_FinalizeNotifier.3 #usr/man/man3/Tcl_FinalizeThread.3 +#usr/man/man3/Tcl_FindCommand.3 +#usr/man/man3/Tcl_FindEnsemble.3 #usr/man/man3/Tcl_FindExecutable.3 #usr/man/man3/Tcl_FindHashEntry.3 +#usr/man/man3/Tcl_FindNamespace.3 +#usr/man/man3/Tcl_FindSymbol.3 #usr/man/man3/Tcl_FirstHashEntry.3 #usr/man/man3/Tcl_Flush.3 +#usr/man/man3/Tcl_ForgetImport.3 +#usr/man/man3/Tcl_Format.3 #usr/man/man3/Tcl_Free.3 #usr/man/man3/Tcl_FreeEncoding.3 #usr/man/man3/Tcl_FreeParse.3 #usr/man/man3/Tcl_FreeResult.3 +#usr/man/man3/Tcl_GetAccessTimeFromStat.3 #usr/man/man3/Tcl_GetAlias.3 #usr/man/man3/Tcl_GetAliasObj.3 #usr/man/man3/Tcl_GetAssocData.3 +#usr/man/man3/Tcl_GetBignumFromObj.3 +#usr/man/man3/Tcl_GetBlockSizeFromStat.3 +#usr/man/man3/Tcl_GetBlocksFromStat.3 #usr/man/man3/Tcl_GetBoolean.3 #usr/man/man3/Tcl_GetBooleanFromObj.3 #usr/man/man3/Tcl_GetByteArrayFromObj.3 +#usr/man/man3/Tcl_GetChangeTimeFromStat.3 #usr/man/man3/Tcl_GetChannel.3 #usr/man/man3/Tcl_GetChannelBufferSize.3 +#usr/man/man3/Tcl_GetChannelError.3 +#usr/man/man3/Tcl_GetChannelErrorInterp.3 #usr/man/man3/Tcl_GetChannelHandle.3 #usr/man/man3/Tcl_GetChannelInstanceData.3 #usr/man/man3/Tcl_GetChannelMode.3 @@ -324,20 +555,37 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_GetChannelThread.3 #usr/man/man3/Tcl_GetChannelType.3 #usr/man/man3/Tcl_GetCharLength.3 +#usr/man/man3/Tcl_GetClassAsObject.3 #usr/man/man3/Tcl_GetCommandFromObj.3 #usr/man/man3/Tcl_GetCommandFullName.3 #usr/man/man3/Tcl_GetCommandInfo.3 #usr/man/man3/Tcl_GetCommandInfoFromToken.3 #usr/man/man3/Tcl_GetCommandName.3 +#usr/man/man3/Tcl_GetCurrentNamespace.3 #usr/man/man3/Tcl_GetCurrentThread.3 #usr/man/man3/Tcl_GetCwd.3 #usr/man/man3/Tcl_GetDefaultEncodingDir.3 +#usr/man/man3/Tcl_GetDeviceTypeFromStat.3 #usr/man/man3/Tcl_GetDouble.3 #usr/man/man3/Tcl_GetDoubleFromObj.3 #usr/man/man3/Tcl_GetEncoding.3 +#usr/man/man3/Tcl_GetEncodingFromObj.3 #usr/man/man3/Tcl_GetEncodingName.3 +#usr/man/man3/Tcl_GetEncodingNameFromEnvironment.3 #usr/man/man3/Tcl_GetEncodingNames.3 +#usr/man/man3/Tcl_GetEncodingSearchPath.3 +#usr/man/man3/Tcl_GetEnsembleFlags.3 +#usr/man/man3/Tcl_GetEnsembleMappingDict.3 +#usr/man/man3/Tcl_GetEnsembleNamespace.3 +#usr/man/man3/Tcl_GetEnsembleParameterList.3 +#usr/man/man3/Tcl_GetEnsembleSubcommandList.3 +#usr/man/man3/Tcl_GetEnsembleUnknownHandler.3 #usr/man/man3/Tcl_GetErrno.3 +#usr/man/man3/Tcl_GetErrorLine.3 +#usr/man/man3/Tcl_GetFSDeviceFromStat.3 +#usr/man/man3/Tcl_GetFSInodeFromStat.3 +#usr/man/man3/Tcl_GetGlobalNamespace.3 +#usr/man/man3/Tcl_GetGroupIdFromStat.3 #usr/man/man3/Tcl_GetHashKey.3 #usr/man/man3/Tcl_GetHashValue.3 #usr/man/man3/Tcl_GetHostName.3 @@ -346,20 +594,31 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_GetInt.3 #usr/man/man3/Tcl_GetIntFromObj.3 #usr/man/man3/Tcl_GetInterpPath.3 +#usr/man/man3/Tcl_GetLinkCountFromStat.3 #usr/man/man3/Tcl_GetLongFromObj.3 #usr/man/man3/Tcl_GetMaster.3 #usr/man/man3/Tcl_GetMathFuncInfo.3 +#usr/man/man3/Tcl_GetModeFromStat.3 +#usr/man/man3/Tcl_GetModificationTimeFromStat.3 #usr/man/man3/Tcl_GetNameOfExecutable.3 -#usr/man/man3/Tcl_GetOSTypeFromObj.3 +#usr/man/man3/Tcl_GetNamespaceUnknownHandler.3 #usr/man/man3/Tcl_GetObjResult.3 #usr/man/man3/Tcl_GetObjType.3 +#usr/man/man3/Tcl_GetObjectAsClass.3 +#usr/man/man3/Tcl_GetObjectCommand.3 +#usr/man/man3/Tcl_GetObjectFromObj.3 +#usr/man/man3/Tcl_GetObjectName.3 +#usr/man/man3/Tcl_GetObjectNamespace.3 #usr/man/man3/Tcl_GetOpenFile.3 #usr/man/man3/Tcl_GetPathType.3 #usr/man/man3/Tcl_GetRange.3 #usr/man/man3/Tcl_GetRegExpFromObj.3 +#usr/man/man3/Tcl_GetReturnOptions.3 #usr/man/man3/Tcl_GetServiceMode.3 +#usr/man/man3/Tcl_GetSizeFromStat.3 #usr/man/man3/Tcl_GetSlave.3 #usr/man/man3/Tcl_GetStackedChannel.3 +#usr/man/man3/Tcl_GetStartupScript.3 #usr/man/man3/Tcl_GetStdChannel.3 #usr/man/man3/Tcl_GetString.3 #usr/man/man3/Tcl_GetStringFromObj.3 @@ -370,6 +629,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_GetUniChar.3 #usr/man/man3/Tcl_GetUnicode.3 #usr/man/man3/Tcl_GetUnicodeFromObj.3 +#usr/man/man3/Tcl_GetUserIdFromStat.3 #usr/man/man3/Tcl_GetVar.3 #usr/man/man3/Tcl_GetVar2.3 #usr/man/man3/Tcl_GetVar2Ex.3 @@ -381,6 +641,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_GlobalEvalObj.3 #usr/man/man3/Tcl_HashStats.3 #usr/man/man3/Tcl_HideCommand.3 +#usr/man/man3/Tcl_Import.3 #usr/man/man3/Tcl_IncrRefCount.3 #usr/man/man3/Tcl_Init.3 #usr/man/man3/Tcl_InitCustomHashTable.3 @@ -392,16 +653,33 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_InputBlocked.3 #usr/man/man3/Tcl_InputBuffered.3 #usr/man/man3/Tcl_Interp.3 +#usr/man/man3/Tcl_InterpActive.3 #usr/man/man3/Tcl_InterpDeleted.3 #usr/man/man3/Tcl_InvalidateStringRep.3 #usr/man/man3/Tcl_IsChannelExisting.3 #usr/man/man3/Tcl_IsChannelRegistered.3 #usr/man/man3/Tcl_IsChannelShared.3 +#usr/man/man3/Tcl_IsEnsemble.3 #usr/man/man3/Tcl_IsSafe.3 #usr/man/man3/Tcl_IsShared.3 #usr/man/man3/Tcl_IsStandardChannel.3 #usr/man/man3/Tcl_JoinPath.3 #usr/man/man3/Tcl_JoinThread.3 +#usr/man/man3/Tcl_LimitAddHandler.3 +#usr/man/man3/Tcl_LimitCheck.3 +#usr/man/man3/Tcl_LimitExceeded.3 +#usr/man/man3/Tcl_LimitGetCommands.3 +#usr/man/man3/Tcl_LimitGetGranularity.3 +#usr/man/man3/Tcl_LimitGetTime.3 +#usr/man/man3/Tcl_LimitReady.3 +#usr/man/man3/Tcl_LimitRemoveHandler.3 +#usr/man/man3/Tcl_LimitSetCommands.3 +#usr/man/man3/Tcl_LimitSetGranularity.3 +#usr/man/man3/Tcl_LimitSetTime.3 +#usr/man/man3/Tcl_LimitTypeEnabled.3 +#usr/man/man3/Tcl_LimitTypeExceeded.3 +#usr/man/man3/Tcl_LimitTypeReset.3 +#usr/man/man3/Tcl_LimitTypeSet.3 #usr/man/man3/Tcl_LinkVar.3 #usr/man/man3/Tcl_ListMathFuncs.3 #usr/man/man3/Tcl_ListObjAppendElement.3 @@ -410,35 +688,60 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_ListObjIndex.3 #usr/man/man3/Tcl_ListObjLength.3 #usr/man/man3/Tcl_ListObjReplace.3 +#usr/man/man3/Tcl_LoadFile.3 #usr/man/man3/Tcl_LogCommandInfo.3 -#usr/man/man3/Tcl_MacConvertTextResource.3 -#usr/man/man3/Tcl_MacEvalResource.3 -#usr/man/man3/Tcl_MacFindResource.3 -#usr/man/man3/Tcl_MacSetEventProc.3 #usr/man/man3/Tcl_Main.3 #usr/man/man3/Tcl_MakeFileChannel.3 #usr/man/man3/Tcl_MakeSafe.3 #usr/man/man3/Tcl_MakeTcpClientChannel.3 #usr/man/man3/Tcl_Merge.3 +#usr/man/man3/Tcl_MethodDeclarerClass.3 +#usr/man/man3/Tcl_MethodDeclarerObject.3 +#usr/man/man3/Tcl_MethodIsPublic.3 +#usr/man/man3/Tcl_MethodIsType.3 +#usr/man/man3/Tcl_MethodName.3 #usr/man/man3/Tcl_MutexFinalize.3 #usr/man/man3/Tcl_MutexLock.3 #usr/man/man3/Tcl_MutexUnlock.3 +#usr/man/man3/Tcl_NRAddCallback.3 +#usr/man/man3/Tcl_NRCallObjProc.3 +#usr/man/man3/Tcl_NRCmdSwap.3 +#usr/man/man3/Tcl_NRCreateCommand.3 +#usr/man/man3/Tcl_NREvalObj.3 +#usr/man/man3/Tcl_NREvalObjv.3 +#usr/man/man3/Tcl_NRExprObj.3 +#usr/man/man3/Tcl_NewBignumObj.3 #usr/man/man3/Tcl_NewBooleanObj.3 #usr/man/man3/Tcl_NewByteArrayObj.3 +#usr/man/man3/Tcl_NewDictObj.3 #usr/man/man3/Tcl_NewDoubleObj.3 +#usr/man/man3/Tcl_NewInstanceMethod.3 #usr/man/man3/Tcl_NewIntObj.3 #usr/man/man3/Tcl_NewListObj.3 #usr/man/man3/Tcl_NewLongObj.3 -#usr/man/man3/Tcl_NewOSTypeObj.3 +#usr/man/man3/Tcl_NewMethod.3 #usr/man/man3/Tcl_NewObj.3 +#usr/man/man3/Tcl_NewObjectInstance.3 #usr/man/man3/Tcl_NewStringObj.3 #usr/man/man3/Tcl_NewUnicodeObj.3 #usr/man/man3/Tcl_NewWideIntObj.3 #usr/man/man3/Tcl_NextHashEntry.3 #usr/man/man3/Tcl_NotifyChannel.3 #usr/man/man3/Tcl_NumUtfChars.3 +#usr/man/man3/Tcl_OOInitStubs.3 #usr/man/man3/Tcl_ObjGetVar2.3 +#usr/man/man3/Tcl_ObjPrintf.3 #usr/man/man3/Tcl_ObjSetVar2.3 +#usr/man/man3/Tcl_ObjectContextInvokeNext.3 +#usr/man/man3/Tcl_ObjectContextIsFiltering.3 +#usr/man/man3/Tcl_ObjectContextMethod.3 +#usr/man/man3/Tcl_ObjectContextObject.3 +#usr/man/man3/Tcl_ObjectContextSkippedArgs.3 +#usr/man/man3/Tcl_ObjectDeleted.3 +#usr/man/man3/Tcl_ObjectGetMetadata.3 +#usr/man/man3/Tcl_ObjectGetMethodNameMapper.3 +#usr/man/man3/Tcl_ObjectSetMetadata.3 +#usr/man/man3/Tcl_ObjectSetMethodNameMapper.3 #usr/man/man3/Tcl_OpenCommandChannel.3 #usr/man/man3/Tcl_OpenFileChannel.3 #usr/man/man3/Tcl_OpenTcpClient.3 @@ -446,6 +749,7 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_OutputBuffered.3 #usr/man/man3/Tcl_Panic.3 #usr/man/man3/Tcl_PanicVA.3 +#usr/man/man3/Tcl_ParseArgsObjv.3 #usr/man/man3/Tcl_ParseBraces.3 #usr/man/man3/Tcl_ParseCommand.3 #usr/man/man3/Tcl_ParseExpr.3 @@ -458,10 +762,12 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_PkgProvideEx.3 #usr/man/man3/Tcl_PkgRequire.3 #usr/man/man3/Tcl_PkgRequireEx.3 +#usr/man/man3/Tcl_PkgRequireProc.3 #usr/man/man3/Tcl_PosixError.3 #usr/man/man3/Tcl_Preserve.3 #usr/man/man3/Tcl_PrintDouble.3 #usr/man/man3/Tcl_PutEnv.3 +#usr/man/man3/Tcl_QueryTimeProc.3 #usr/man/man3/Tcl_QueueEvent.3 #usr/man/man3/Tcl_Read.3 #usr/man/man3/Tcl_ReadChars.3 @@ -478,46 +784,65 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_RegExpMatchObj.3 #usr/man/man3/Tcl_RegExpRange.3 #usr/man/man3/Tcl_RegisterChannel.3 +#usr/man/man3/Tcl_RegisterConfig.3 #usr/man/man3/Tcl_RegisterObjType.3 #usr/man/man3/Tcl_Release.3 #usr/man/man3/Tcl_ResetResult.3 +#usr/man/man3/Tcl_RestoreInterpState.3 #usr/man/man3/Tcl_RestoreResult.3 +#usr/man/man3/Tcl_SaveInterpState.3 #usr/man/man3/Tcl_SaveResult.3 #usr/man/man3/Tcl_ScanCountedElement.3 #usr/man/man3/Tcl_ScanElement.3 #usr/man/man3/Tcl_Seek.3 #usr/man/man3/Tcl_ServiceAll.3 #usr/man/man3/Tcl_ServiceEvent.3 +#usr/man/man3/Tcl_ServiceModeHook.3 #usr/man/man3/Tcl_SetAssocData.3 +#usr/man/man3/Tcl_SetBignumObj.3 #usr/man/man3/Tcl_SetBooleanObj.3 #usr/man/man3/Tcl_SetByteArrayLength.3 #usr/man/man3/Tcl_SetByteArrayObj.3 #usr/man/man3/Tcl_SetChannelBufferSize.3 +#usr/man/man3/Tcl_SetChannelError.3 +#usr/man/man3/Tcl_SetChannelErrorInterp.3 #usr/man/man3/Tcl_SetChannelOption.3 #usr/man/man3/Tcl_SetCommandInfo.3 #usr/man/man3/Tcl_SetCommandInfoFromToken.3 #usr/man/man3/Tcl_SetDefaultEncodingDir.3 #usr/man/man3/Tcl_SetDoubleObj.3 +#usr/man/man3/Tcl_SetEncodingSearchPath.3 +#usr/man/man3/Tcl_SetEnsembleFlags.3 +#usr/man/man3/Tcl_SetEnsembleMappingDict.3 +#usr/man/man3/Tcl_SetEnsembleParameterList.3 +#usr/man/man3/Tcl_SetEnsembleSubcommandList.3 +#usr/man/man3/Tcl_SetEnsembleUnknownHandler.3 #usr/man/man3/Tcl_SetErrno.3 #usr/man/man3/Tcl_SetErrorCode.3 #usr/man/man3/Tcl_SetErrorCodeVA.3 +#usr/man/man3/Tcl_SetErrorLine.3 +#usr/man/man3/Tcl_SetExitProc.3 #usr/man/man3/Tcl_SetHashValue.3 #usr/man/man3/Tcl_SetIntObj.3 #usr/man/man3/Tcl_SetListObj.3 #usr/man/man3/Tcl_SetLongObj.3 #usr/man/man3/Tcl_SetMainLoop.3 #usr/man/man3/Tcl_SetMaxBlockTime.3 -#usr/man/man3/Tcl_SetOSTypeObj.3 +#usr/man/man3/Tcl_SetNamespaceUnknownHandler.3 +#usr/man/man3/Tcl_SetNotifier.3 #usr/man/man3/Tcl_SetObjErrorCode.3 #usr/man/man3/Tcl_SetObjLength.3 #usr/man/man3/Tcl_SetObjResult.3 #usr/man/man3/Tcl_SetPanicProc.3 #usr/man/man3/Tcl_SetRecursionLimit.3 #usr/man/man3/Tcl_SetResult.3 +#usr/man/man3/Tcl_SetReturnOptions.3 #usr/man/man3/Tcl_SetServiceMode.3 +#usr/man/man3/Tcl_SetStartupScript.3 #usr/man/man3/Tcl_SetStdChannel.3 #usr/man/man3/Tcl_SetStringObj.3 #usr/man/man3/Tcl_SetSystemEncoding.3 +#usr/man/man3/Tcl_SetTimeProc.3 #usr/man/man3/Tcl_SetTimer.3 #usr/man/man3/Tcl_SetUnicodeObj.3 #usr/man/man3/Tcl_SetVar.3 @@ -538,13 +863,16 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_StringCaseMatch.3 #usr/man/man3/Tcl_StringMatch.3 #usr/man/man3/Tcl_SubstObj.3 +#usr/man/man3/Tcl_TakeBignumFromObj.3 #usr/man/man3/Tcl_Tell.3 #usr/man/man3/Tcl_ThreadAlert.3 #usr/man/man3/Tcl_ThreadQueueEvent.3 #usr/man/man3/Tcl_TraceCommand.3 #usr/man/man3/Tcl_TraceVar.3 #usr/man/man3/Tcl_TraceVar2.3 +#usr/man/man3/Tcl_TransferResult.3 #usr/man/man3/Tcl_TranslateFileName.3 +#usr/man/man3/Tcl_TruncateChannel.3 #usr/man/man3/Tcl_Ungets.3 #usr/man/man3/Tcl_UniChar.3 #usr/man/man3/Tcl_UniCharAtIndex.3 @@ -584,6 +912,8 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_UtfCharComplete.3 #usr/man/man3/Tcl_UtfFindFirst.3 #usr/man/man3/Tcl_UtfFindLast.3 +#usr/man/man3/Tcl_UtfNcasecmp.3 +#usr/man/man3/Tcl_UtfNcmp.3 #usr/man/man3/Tcl_UtfNext.3 #usr/man/man3/Tcl_UtfPrev.3 #usr/man/man3/Tcl_UtfToExternal.3 @@ -607,24 +937,36 @@ usr/lib/tclConfig.sh #usr/man/man3/Tcl_WriteObj.3 #usr/man/man3/Tcl_WriteRaw.3 #usr/man/man3/Tcl_WrongNumArgs.3 +#usr/man/man3/Tcl_ZlibAdler32.3 +#usr/man/man3/Tcl_ZlibCRC32.3 +#usr/man/man3/Tcl_ZlibDeflate.3 +#usr/man/man3/Tcl_ZlibInflate.3 +#usr/man/man3/Tcl_ZlibStreamChecksum.3 +#usr/man/man3/Tcl_ZlibStreamClose.3 +#usr/man/man3/Tcl_ZlibStreamEof.3 +#usr/man/man3/Tcl_ZlibStreamGet.3 +#usr/man/man3/Tcl_ZlibStreamGetCommandName.3 +#usr/man/man3/Tcl_ZlibStreamInit.3 +#usr/man/man3/Tcl_ZlibStreamPut.3 #usr/man/man3/attemptckalloc.3 #usr/man/man3/attemptckrealloc.3 #usr/man/man3/ckalloc.3 #usr/man/man3/ckfree.3 #usr/man/man3/ckrealloc.3 -#usr/man/man3/panic.3 -#usr/man/man3/panicVA.3 #usr/man/mann -#usr/man/mann/SafeBase.n #usr/man/mann/Tcl.n #usr/man/mann/after.n #usr/man/mann/append.n +#usr/man/mann/apply.n +#usr/man/mann/argc.n +#usr/man/mann/argv.n +#usr/man/mann/argv0.n #usr/man/mann/array.n #usr/man/mann/auto_execok.n #usr/man/mann/auto_import.n #usr/man/mann/auto_load.n #usr/man/mann/auto_mkindex.n -#usr/man/mann/auto_mkindex_old.n +#usr/man/mann/auto_path.n #usr/man/mann/auto_qualify.n #usr/man/mann/auto_reset.n #usr/man/mann/bgerror.n @@ -633,14 +975,20 @@ usr/lib/tclConfig.sh #usr/man/mann/case.n #usr/man/mann/catch.n #usr/man/mann/cd.n +#usr/man/mann/chan.n #usr/man/mann/clock.n #usr/man/mann/close.n #usr/man/mann/concat.n #usr/man/mann/continue.n +#usr/man/mann/coroutine.n #usr/man/mann/dde.n +#usr/man/mann/dict.n #usr/man/mann/encoding.n +#usr/man/mann/env.n #usr/man/mann/eof.n #usr/man/mann/error.n +#usr/man/mann/errorCode.n +#usr/man/mann/errorInfo.n #usr/man/mann/eval.n #usr/man/mann/exec.n #usr/man/mann/exit.n @@ -666,38 +1014,56 @@ usr/lib/tclConfig.sh #usr/man/mann/interp.n #usr/man/mann/join.n #usr/man/mann/lappend.n +#usr/man/mann/lassign.n #usr/man/mann/lindex.n #usr/man/mann/linsert.n #usr/man/mann/list.n #usr/man/mann/llength.n +#usr/man/mann/lmap.n #usr/man/mann/load.n #usr/man/mann/lrange.n +#usr/man/mann/lrepeat.n #usr/man/mann/lreplace.n +#usr/man/mann/lreverse.n #usr/man/mann/lsearch.n #usr/man/mann/lset.n #usr/man/mann/lsort.n +#usr/man/mann/mathfunc.n +#usr/man/mann/mathop.n #usr/man/mann/memory.n #usr/man/mann/msgcat.n +#usr/man/mann/my.n #usr/man/mann/namespace.n +#usr/man/mann/next.n +#usr/man/mann/nextto.n +#usr/man/mann/oo_class.n +#usr/man/mann/oo_copy.n +#usr/man/mann/oo_define.n +#usr/man/mann/oo_objdefine.n +#usr/man/mann/oo_object.n #usr/man/mann/open.n #usr/man/mann/package.n #usr/man/mann/parray.n #usr/man/mann/pid.n -#usr/man/mann/pkg::create.n +#usr/man/mann/pkg_create.n #usr/man/mann/pkg_mkIndex.n +#usr/man/mann/platform.n +#usr/man/mann/platform_shell.n #usr/man/mann/proc.n #usr/man/mann/puts.n #usr/man/mann/pwd.n #usr/man/mann/re_syntax.n #usr/man/mann/read.n +#usr/man/mann/refchan.n #usr/man/mann/regexp.n #usr/man/mann/registry.n #usr/man/mann/regsub.n #usr/man/mann/rename.n -#usr/man/mann/resource.n #usr/man/mann/return.n +#usr/man/mann/safe.n #usr/man/mann/scan.n #usr/man/mann/seek.n +#usr/man/mann/self.n #usr/man/mann/set.n #usr/man/mann/socket.n #usr/man/mann/source.n @@ -705,18 +1071,36 @@ usr/lib/tclConfig.sh #usr/man/mann/string.n #usr/man/mann/subst.n #usr/man/mann/switch.n +#usr/man/mann/tailcall.n #usr/man/mann/tcl_endOfWord.n #usr/man/mann/tcl_findLibrary.n +#usr/man/mann/tcl_interactive.n +#usr/man/mann/tcl_library.n +#usr/man/mann/tcl_nonwordchars.n +#usr/man/mann/tcl_patchLevel.n +#usr/man/mann/tcl_pkgPath.n +#usr/man/mann/tcl_platform.n +#usr/man/mann/tcl_precision.n +#usr/man/mann/tcl_prefix.n +#usr/man/mann/tcl_rcFileName.n #usr/man/mann/tcl_startOfNextWord.n #usr/man/mann/tcl_startOfPreviousWord.n +#usr/man/mann/tcl_traceCompile.n +#usr/man/mann/tcl_traceExec.n +#usr/man/mann/tcl_version.n #usr/man/mann/tcl_wordBreakAfter.n #usr/man/mann/tcl_wordBreakBefore.n +#usr/man/mann/tcl_wordchars.n #usr/man/mann/tcltest.n -#usr/man/mann/tclvars.n #usr/man/mann/tell.n +#usr/man/mann/throw.n #usr/man/mann/time.n +#usr/man/mann/tm.n #usr/man/mann/trace.n +#usr/man/mann/transchan.n +#usr/man/mann/try.n #usr/man/mann/unknown.n +#usr/man/mann/unload.n #usr/man/mann/unset.n #usr/man/mann/update.n #usr/man/mann/uplevel.n @@ -724,3 +1108,39 @@ usr/lib/tclConfig.sh #usr/man/mann/variable.n #usr/man/mann/vwait.n #usr/man/mann/while.n +#usr/man/mann/yield.n +#usr/man/mann/yieldto.n +#usr/man/mann/zlib.n +#usr/share/man/man3/Tdbc_Init.3 +#usr/share/man/mann +#usr/share/man/mann/body.n +#usr/share/man/mann/class.n +#usr/share/man/mann/code.n +#usr/share/man/mann/configbody.n +#usr/share/man/mann/delete.n +#usr/share/man/mann/ensemble.n +#usr/share/man/mann/find.n +#usr/share/man/mann/is.n +#usr/share/man/mann/itcl.n +#usr/share/man/mann/itclcomponent.n +#usr/share/man/mann/itcldelegate.n +#usr/share/man/mann/itclextendedclass.n +#usr/share/man/mann/itcloption.n +#usr/share/man/mann/itclvars.n +#usr/share/man/mann/itclwidget.n +#usr/share/man/mann/local.n +#usr/share/man/mann/scope.n +#usr/share/man/mann/sqlite3.n +#usr/share/man/mann/tdbc.n +#usr/share/man/mann/tdbc_connection.n +#usr/share/man/mann/tdbc_mapSqlState.n +#usr/share/man/mann/tdbc_mysql.n +#usr/share/man/mann/tdbc_odbc.n +#usr/share/man/mann/tdbc_resultset.n +#usr/share/man/mann/tdbc_sqlite3.n +#usr/share/man/mann/tdbc_statement.n +#usr/share/man/mann/tdbc_tokenize.n +#usr/share/man/mann/thread.n +#usr/share/man/mann/tpool.n +#usr/share/man/mann/tsv.n +#usr/share/man/mann/ttrace.n diff --git a/config/rootfiles/common/unbound b/config/rootfiles/common/unbound new file mode 100644 index 0000000..722d730 --- /dev/null +++ b/config/rootfiles/common/unbound @@ -0,0 +1,60 @@ +etc/rc.d/init.d/unbound +#etc/unbound +etc/unbound/dhcp-leases.conf +etc/unbound/forward.conf +etc/unbound/icannbundle.pem +etc/unbound/local.d +etc/unbound/root.hints +etc/unbound/unbound.conf +#usr/include/unbound.h +#usr/lib/libunbound.la +#usr/lib/libunbound.so +usr/lib/libunbound.so.2 +usr/lib/libunbound.so.2.4.2 +usr/sbin/unbound +usr/sbin/unbound-anchor +usr/sbin/unbound-checkconf +usr/sbin/unbound-control +usr/sbin/unbound-control-setup +usr/sbin/unbound-dhcp-leases-bridge +usr/sbin/unbound-host +#usr/share/man/man1/unbound-host.1 +#usr/share/man/man3/libunbound.3 +#usr/share/man/man3/ub_cancel.3 +#usr/share/man/man3/ub_ctx.3 +#usr/share/man/man3/ub_ctx_add_ta.3 +#usr/share/man/man3/ub_ctx_add_ta_file.3 +#usr/share/man/man3/ub_ctx_async.3 +#usr/share/man/man3/ub_ctx_config.3 +#usr/share/man/man3/ub_ctx_create.3 +#usr/share/man/man3/ub_ctx_data_add.3 +#usr/share/man/man3/ub_ctx_data_remove.3 +#usr/share/man/man3/ub_ctx_debuglevel.3 +#usr/share/man/man3/ub_ctx_debugout.3 +#usr/share/man/man3/ub_ctx_delete.3 +#usr/share/man/man3/ub_ctx_get_option.3 +#usr/share/man/man3/ub_ctx_hosts.3 +#usr/share/man/man3/ub_ctx_print_local_zones.3 +#usr/share/man/man3/ub_ctx_resolvconf.3 +#usr/share/man/man3/ub_ctx_set_fwd.3 +#usr/share/man/man3/ub_ctx_set_option.3 +#usr/share/man/man3/ub_ctx_trustedkeys.3 +#usr/share/man/man3/ub_ctx_zone_add.3 +#usr/share/man/man3/ub_ctx_zone_remove.3 +#usr/share/man/man3/ub_fd.3 +#usr/share/man/man3/ub_poll.3 +#usr/share/man/man3/ub_process.3 +#usr/share/man/man3/ub_resolve.3 +#usr/share/man/man3/ub_resolve_async.3 +#usr/share/man/man3/ub_resolve_free.3 +#usr/share/man/man3/ub_result.3 +#usr/share/man/man3/ub_strerror.3 +#usr/share/man/man3/ub_wait.3 +#usr/share/man/man5/unbound.conf.5 +#usr/share/man/man8/unbound-anchor.8 +#usr/share/man/man8/unbound-checkconf.8 +#usr/share/man/man8/unbound-control-setup.8 +#usr/share/man/man8/unbound-control.8 +#usr/share/man/man8/unbound.8 +var/lib/unbound +var/lib/unbound/root.key diff --git a/config/rootfiles/common/usb_modeswitch_data b/config/rootfiles/common/usb_modeswitch_data index 70160f5..665f28b 100644 --- a/config/rootfiles/common/usb_modeswitch_data +++ b/config/rootfiles/common/usb_modeswitch_data @@ -2,10 +2,23 @@ etc/usb_modeswitch.d lib/udev/rules.d/40-usb_modeswitch.rules #usr/share/usb_modeswitch usr/share/usb_modeswitch/03f0:002a +usr/share/usb_modeswitch/03f0:521d +usr/share/usb_modeswitch/03f0:531d +usr/share/usb_modeswitch/03f0:541d +usr/share/usb_modeswitch/03f0:581d +usr/share/usb_modeswitch/03f0:631d +usr/share/usb_modeswitch/03f0:641d +usr/share/usb_modeswitch/03f0:681d +usr/share/usb_modeswitch/03f0:911d +usr/share/usb_modeswitch/03f0:931d +usr/share/usb_modeswitch/03f0:9a1d +usr/share/usb_modeswitch/0408:1000 usr/share/usb_modeswitch/0408:ea17 usr/share/usb_modeswitch/0408:ea25 usr/share/usb_modeswitch/0408:ea43 usr/share/usb_modeswitch/0408:f000 +usr/share/usb_modeswitch/0408:f000:uMa=Yota +usr/share/usb_modeswitch/0408:f001 usr/share/usb_modeswitch/0421:060c usr/share/usb_modeswitch/0421:0610 usr/share/usb_modeswitch/0421:0618 @@ -15,15 +28,20 @@ usr/share/usb_modeswitch/0421:0627 usr/share/usb_modeswitch/0421:062c usr/share/usb_modeswitch/0421:0632 usr/share/usb_modeswitch/0421:0637 +usr/share/usb_modeswitch/046d:c261 usr/share/usb_modeswitch/0471:1210:uMa=Philips usr/share/usb_modeswitch/0471:1210:uMa=Wisue usr/share/usb_modeswitch/0471:1237 usr/share/usb_modeswitch/0482:024d usr/share/usb_modeswitch/04bb:bccd +usr/share/usb_modeswitch/04cc:2251 usr/share/usb_modeswitch/04cc:225c +usr/share/usb_modeswitch/04cc:226e +usr/share/usb_modeswitch/04cc:226f usr/share/usb_modeswitch/04e8:680c usr/share/usb_modeswitch/04e8:689a usr/share/usb_modeswitch/04e8:f000:sMo=U209 +usr/share/usb_modeswitch/04fc:2140 usr/share/usb_modeswitch/057c:62ff usr/share/usb_modeswitch/057c:84ff usr/share/usb_modeswitch/05c6:0010 @@ -31,6 +49,7 @@ usr/share/usb_modeswitch/05c6:1000:sVe=GT usr/share/usb_modeswitch/05c6:1000:sVe=Option usr/share/usb_modeswitch/05c6:1000:uMa=AnyDATA usr/share/usb_modeswitch/05c6:1000:uMa=CELOT +usr/share/usb_modeswitch/05c6:1000:uMa=Co.,Ltd usr/share/usb_modeswitch/05c6:1000:uMa=DGT usr/share/usb_modeswitch/05c6:1000:uMa=Option usr/share/usb_modeswitch/05c6:1000:uMa=SAMSUNG @@ -41,13 +60,17 @@ usr/share/usb_modeswitch/05c6:2000 usr/share/usb_modeswitch/05c6:2001 usr/share/usb_modeswitch/05c6:6503 usr/share/usb_modeswitch/05c6:9024 +usr/share/usb_modeswitch/05c6:98ff usr/share/usb_modeswitch/05c6:f000 usr/share/usb_modeswitch/05c7:1000 usr/share/usb_modeswitch/0685:2000 usr/share/usb_modeswitch/072f:100d usr/share/usb_modeswitch/07d1:a800 usr/share/usb_modeswitch/07d1:a804 +usr/share/usb_modeswitch/07d1:f000 usr/share/usb_modeswitch/0922:1001 +usr/share/usb_modeswitch/0922:1003 +usr/share/usb_modeswitch/0922:1007 usr/share/usb_modeswitch/0930:0d46 usr/share/usb_modeswitch/0ace:2011 usr/share/usb_modeswitch/0ace:20ff @@ -112,19 +135,26 @@ usr/share/usb_modeswitch/0af0:d257 usr/share/usb_modeswitch/0af0:d357 usr/share/usb_modeswitch/0b3c:c700 usr/share/usb_modeswitch/0b3c:f000 +usr/share/usb_modeswitch/0b3c:f00c +usr/share/usb_modeswitch/0b3c:f017 +usr/share/usb_modeswitch/0bdb:190d +usr/share/usb_modeswitch/0bdb:1910 usr/share/usb_modeswitch/0cf3:20ff usr/share/usb_modeswitch/0d46:45a1 usr/share/usb_modeswitch/0d46:45a5 usr/share/usb_modeswitch/0df7:0800 usr/share/usb_modeswitch/0e8d:0002:uPr=MT +usr/share/usb_modeswitch/0e8d:0002:uPr=Product usr/share/usb_modeswitch/0e8d:7109 usr/share/usb_modeswitch/0fca:8020 usr/share/usb_modeswitch/0fce:d0cf +usr/share/usb_modeswitch/0fce:d0df usr/share/usb_modeswitch/0fce:d0e1 usr/share/usb_modeswitch/0fce:d103 usr/share/usb_modeswitch/0fd1:1000 usr/share/usb_modeswitch/1004:1000 usr/share/usb_modeswitch/1004:607f +usr/share/usb_modeswitch/1004:610c usr/share/usb_modeswitch/1004:613a usr/share/usb_modeswitch/1004:613f usr/share/usb_modeswitch/1004:614e @@ -143,15 +173,30 @@ usr/share/usb_modeswitch/106c:3b11 usr/share/usb_modeswitch/106c:3b14 usr/share/usb_modeswitch/1076:7f40 usr/share/usb_modeswitch/109b:f009 +usr/share/usb_modeswitch/10a9:606f usr/share/usb_modeswitch/10a9:6080 usr/share/usb_modeswitch/1199:0fff +usr/share/usb_modeswitch/1199:9011 +usr/share/usb_modeswitch/1199:9013 +usr/share/usb_modeswitch/1199:9017 +usr/share/usb_modeswitch/1199:901b +usr/share/usb_modeswitch/1199:901c +usr/share/usb_modeswitch/1199:901f +usr/share/usb_modeswitch/1199:9041 +usr/share/usb_modeswitch/1199:9051 +usr/share/usb_modeswitch/1199:9053 +usr/share/usb_modeswitch/1199:9063 usr/share/usb_modeswitch/1266:1000 +usr/share/usb_modeswitch/12d1:#android +usr/share/usb_modeswitch/12d1:#linux usr/share/usb_modeswitch/12d1:1001 usr/share/usb_modeswitch/12d1:1003 usr/share/usb_modeswitch/12d1:1009 +usr/share/usb_modeswitch/12d1:1010 usr/share/usb_modeswitch/12d1:101e usr/share/usb_modeswitch/12d1:1030 usr/share/usb_modeswitch/12d1:1031 +usr/share/usb_modeswitch/12d1:1413 usr/share/usb_modeswitch/12d1:1414 usr/share/usb_modeswitch/12d1:1446 usr/share/usb_modeswitch/12d1:1449 @@ -171,20 +216,49 @@ usr/share/usb_modeswitch/12d1:1520 usr/share/usb_modeswitch/12d1:1521 usr/share/usb_modeswitch/12d1:1523 usr/share/usb_modeswitch/12d1:1526 +usr/share/usb_modeswitch/12d1:1527 usr/share/usb_modeswitch/12d1:1553 usr/share/usb_modeswitch/12d1:1557 +usr/share/usb_modeswitch/12d1:155a usr/share/usb_modeswitch/12d1:155b usr/share/usb_modeswitch/12d1:156a +usr/share/usb_modeswitch/12d1:1570 +usr/share/usb_modeswitch/12d1:1571 +usr/share/usb_modeswitch/12d1:1572 +usr/share/usb_modeswitch/12d1:1573 usr/share/usb_modeswitch/12d1:157c usr/share/usb_modeswitch/12d1:157d +usr/share/usb_modeswitch/12d1:1580 +usr/share/usb_modeswitch/12d1:1581 +usr/share/usb_modeswitch/12d1:1582 +usr/share/usb_modeswitch/12d1:1583 +usr/share/usb_modeswitch/12d1:1597 +usr/share/usb_modeswitch/12d1:15bb +usr/share/usb_modeswitch/12d1:15c0 +usr/share/usb_modeswitch/12d1:15c1 +usr/share/usb_modeswitch/12d1:15ca +usr/share/usb_modeswitch/12d1:15cd +usr/share/usb_modeswitch/12d1:15ce +usr/share/usb_modeswitch/12d1:15cf +usr/share/usb_modeswitch/12d1:15d0 +usr/share/usb_modeswitch/12d1:15d2 +usr/share/usb_modeswitch/12d1:15e7 +usr/share/usb_modeswitch/12d1:15f0 usr/share/usb_modeswitch/12d1:1805 usr/share/usb_modeswitch/12d1:1c0b usr/share/usb_modeswitch/12d1:1c1b usr/share/usb_modeswitch/12d1:1c24 +usr/share/usb_modeswitch/12d1:1c25 usr/share/usb_modeswitch/12d1:1d50 usr/share/usb_modeswitch/12d1:1da1 usr/share/usb_modeswitch/12d1:1f01 +usr/share/usb_modeswitch/12d1:1f02 usr/share/usb_modeswitch/12d1:1f03 +usr/share/usb_modeswitch/12d1:1f04 +usr/share/usb_modeswitch/12d1:1f05 +usr/share/usb_modeswitch/12d1:1f06 +usr/share/usb_modeswitch/12d1:1f07 +usr/share/usb_modeswitch/12d1:1f09 usr/share/usb_modeswitch/12d1:1f11 usr/share/usb_modeswitch/12d1:1f15 usr/share/usb_modeswitch/12d1:1f16 @@ -203,20 +277,29 @@ usr/share/usb_modeswitch/1410:5023 usr/share/usb_modeswitch/1410:5030 usr/share/usb_modeswitch/1410:5031 usr/share/usb_modeswitch/1410:5041 +usr/share/usb_modeswitch/1410:5055 usr/share/usb_modeswitch/1410:5059 usr/share/usb_modeswitch/1410:7001 +usr/share/usb_modeswitch/1410:9020 usr/share/usb_modeswitch/148e:a000 usr/share/usb_modeswitch/148f:2578 usr/share/usb_modeswitch/15eb:7153 +usr/share/usb_modeswitch/1614:0800 +usr/share/usb_modeswitch/1614:0802 +usr/share/usb_modeswitch/16d5:f000 usr/share/usb_modeswitch/16d8:6281 usr/share/usb_modeswitch/16d8:6803 usr/share/usb_modeswitch/16d8:6804 usr/share/usb_modeswitch/16d8:700a usr/share/usb_modeswitch/16d8:700b usr/share/usb_modeswitch/16d8:f000 +usr/share/usb_modeswitch/1726:1900 usr/share/usb_modeswitch/1726:f00e +usr/share/usb_modeswitch/1782:0003 +usr/share/usb_modeswitch/1782:0023 usr/share/usb_modeswitch/198a:0003 usr/share/usb_modeswitch/198f:bccd +usr/share/usb_modeswitch/19d2:#linux usr/share/usb_modeswitch/19d2:0003 usr/share/usb_modeswitch/19d2:0026 usr/share/usb_modeswitch/19d2:0040 @@ -233,16 +316,27 @@ usr/share/usb_modeswitch/19d2:0150 usr/share/usb_modeswitch/19d2:0154 usr/share/usb_modeswitch/19d2:0166 usr/share/usb_modeswitch/19d2:0169 +usr/share/usb_modeswitch/19d2:0198 usr/share/usb_modeswitch/19d2:0266 usr/share/usb_modeswitch/19d2:0304 usr/share/usb_modeswitch/19d2:0318 usr/share/usb_modeswitch/19d2:0325 +usr/share/usb_modeswitch/19d2:0388 +usr/share/usb_modeswitch/19d2:0413 usr/share/usb_modeswitch/19d2:1001 usr/share/usb_modeswitch/19d2:1007 usr/share/usb_modeswitch/19d2:1009 usr/share/usb_modeswitch/19d2:1013 usr/share/usb_modeswitch/19d2:1017 +usr/share/usb_modeswitch/19d2:1019 +usr/share/usb_modeswitch/19d2:1020 +usr/share/usb_modeswitch/19d2:1022 +usr/share/usb_modeswitch/19d2:1026 usr/share/usb_modeswitch/19d2:1030 +usr/share/usb_modeswitch/19d2:1034 +usr/share/usb_modeswitch/19d2:1038 +usr/share/usb_modeswitch/19d2:1042 +usr/share/usb_modeswitch/19d2:1046 usr/share/usb_modeswitch/19d2:1171 usr/share/usb_modeswitch/19d2:1175 usr/share/usb_modeswitch/19d2:1179 @@ -254,8 +348,11 @@ usr/share/usb_modeswitch/19d2:1219 usr/share/usb_modeswitch/19d2:1224 usr/share/usb_modeswitch/19d2:1225 usr/share/usb_modeswitch/19d2:1227 +usr/share/usb_modeswitch/19d2:1232 usr/share/usb_modeswitch/19d2:1233 +usr/share/usb_modeswitch/19d2:1237 usr/share/usb_modeswitch/19d2:1238 +usr/share/usb_modeswitch/19d2:1420 usr/share/usb_modeswitch/19d2:1511 usr/share/usb_modeswitch/19d2:1514 usr/share/usb_modeswitch/19d2:1517 @@ -264,6 +361,9 @@ usr/share/usb_modeswitch/19d2:1523 usr/share/usb_modeswitch/19d2:1528 usr/share/usb_modeswitch/19d2:1536 usr/share/usb_modeswitch/19d2:1542 +usr/share/usb_modeswitch/19d2:1580 +usr/share/usb_modeswitch/19d2:1588 +usr/share/usb_modeswitch/19d2:1595 usr/share/usb_modeswitch/19d2:2000 usr/share/usb_modeswitch/19d2:2004 usr/share/usb_modeswitch/19d2:bccd @@ -278,27 +378,46 @@ usr/share/usb_modeswitch/1b7d:0700 usr/share/usb_modeswitch/1bbb:000f usr/share/usb_modeswitch/1bbb:00ca usr/share/usb_modeswitch/1bbb:011f +usr/share/usb_modeswitch/1bbb:022c +usr/share/usb_modeswitch/1bbb:025e usr/share/usb_modeswitch/1bbb:f000 usr/share/usb_modeswitch/1bbb:f017 usr/share/usb_modeswitch/1bbb:f052 usr/share/usb_modeswitch/1c9e:1001 -usr/share/usb_modeswitch/1c9e:6061 +usr/share/usb_modeswitch/1c9e:6000 +usr/share/usb_modeswitch/1c9e:6061:uPr=Storage +usr/share/usb_modeswitch/1c9e:9101 usr/share/usb_modeswitch/1c9e:9200 +usr/share/usb_modeswitch/1c9e:9401 usr/share/usb_modeswitch/1c9e:9800 usr/share/usb_modeswitch/1c9e:98ff +usr/share/usb_modeswitch/1c9e:9bfe +usr/share/usb_modeswitch/1c9e:9d00 usr/share/usb_modeswitch/1c9e:9e00 usr/share/usb_modeswitch/1c9e:9e08 usr/share/usb_modeswitch/1c9e:f000 +usr/share/usb_modeswitch/1c9e:f000:uMa=USB_Modem +usr/share/usb_modeswitch/1c9e:f010 +usr/share/usb_modeswitch/1d09:1000 +usr/share/usb_modeswitch/1d09:1021 +usr/share/usb_modeswitch/1d09:1025 usr/share/usb_modeswitch/1da5:f000 +usr/share/usb_modeswitch/1dbc:0669 usr/share/usb_modeswitch/1dd6:1000 usr/share/usb_modeswitch/1de1:1101 usr/share/usb_modeswitch/1e0e:f000 usr/share/usb_modeswitch/1e89:f000 usr/share/usb_modeswitch/1edf:6003 +usr/share/usb_modeswitch/1ee8:0003 +usr/share/usb_modeswitch/1ee8:0007 usr/share/usb_modeswitch/1ee8:0009 usr/share/usb_modeswitch/1ee8:0013 +usr/share/usb_modeswitch/1ee8:0018 usr/share/usb_modeswitch/1ee8:0040 +usr/share/usb_modeswitch/1ee8:0045 +usr/share/usb_modeswitch/1ee8:0048 usr/share/usb_modeswitch/1ee8:004a +usr/share/usb_modeswitch/1ee8:004f usr/share/usb_modeswitch/1ee8:0054 usr/share/usb_modeswitch/1ee8:0060 usr/share/usb_modeswitch/1ee8:0063 @@ -308,25 +427,53 @@ usr/share/usb_modeswitch/1fac:0032 usr/share/usb_modeswitch/1fac:0130 usr/share/usb_modeswitch/1fac:0150 usr/share/usb_modeswitch/1fac:0151 +usr/share/usb_modeswitch/2001:00a6 +usr/share/usb_modeswitch/2001:7600 +usr/share/usb_modeswitch/2001:98ff +usr/share/usb_modeswitch/2001:a401 +usr/share/usb_modeswitch/2001:a403 +usr/share/usb_modeswitch/2001:a405 +usr/share/usb_modeswitch/2001:a406 +usr/share/usb_modeswitch/2001:a407 +usr/share/usb_modeswitch/2001:a40a +usr/share/usb_modeswitch/2001:a40d usr/share/usb_modeswitch/2001:a706 usr/share/usb_modeswitch/2001:a707 usr/share/usb_modeswitch/2001:a708 usr/share/usb_modeswitch/2001:a805 usr/share/usb_modeswitch/2001:a80b +usr/share/usb_modeswitch/2015:0001 usr/share/usb_modeswitch/201e:1023 usr/share/usb_modeswitch/201e:2009 usr/share/usb_modeswitch/2020:0002 usr/share/usb_modeswitch/2020:f00e +usr/share/usb_modeswitch/2020:f00f usr/share/usb_modeswitch/2077:1000 usr/share/usb_modeswitch/2077:f000 +usr/share/usb_modeswitch/20a6:f00a +usr/share/usb_modeswitch/20a6:f00e +usr/share/usb_modeswitch/20b9:1682 usr/share/usb_modeswitch/21f5:1000 +usr/share/usb_modeswitch/21f5:3010 +usr/share/usb_modeswitch/2262:0001 usr/share/usb_modeswitch/22de:6801 usr/share/usb_modeswitch/22de:6803 usr/share/usb_modeswitch/22f4:0021 usr/share/usb_modeswitch/230d:0001 +usr/share/usb_modeswitch/230d:0003 usr/share/usb_modeswitch/230d:0007 +usr/share/usb_modeswitch/230d:000b +usr/share/usb_modeswitch/230d:000c +usr/share/usb_modeswitch/230d:000d usr/share/usb_modeswitch/230d:0101 usr/share/usb_modeswitch/230d:0103 usr/share/usb_modeswitch/2357:0200 usr/share/usb_modeswitch/2357:f000 +usr/share/usb_modeswitch/23a2:1010 +usr/share/usb_modeswitch/257a:a000 +usr/share/usb_modeswitch/257a:b000 +usr/share/usb_modeswitch/257a:c000 +usr/share/usb_modeswitch/257a:d000 +usr/share/usb_modeswitch/6000:1000 usr/share/usb_modeswitch/8888:6500 +usr/share/usb_modeswitch/ed09:1021 diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts index ee5a4ab..6ec7c63 100644 --- a/config/rootfiles/common/x86_64/initscripts +++ b/config/rootfiles/common/x86_64/initscripts @@ -2,7 +2,6 @@ etc/init.d #etc/rc.d #etc/rc.d/helper etc/rc.d/helper/getdnsfromdhcpc.pl -etc/rc.d/helper/writeipac.pl #etc/rc.d/init.d etc/rc.d/init.d/acpid #etc/rc.d/init.d/alsa @@ -27,7 +26,6 @@ etc/rc.d/init.d/console etc/rc.d/init.d/dhcp etc/rc.d/init.d/dhcrelay #etc/rc.d/init.d/dnsdist -etc/rc.d/init.d/dnsmasq etc/rc.d/init.d/fcron #etc/rc.d/init.d/fetchmail etc/rc.d/init.d/fireinfo @@ -78,7 +76,7 @@ etc/rc.d/init.d/networking/green etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down -etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.down/05-update-dns-forwarders etc/rc.d/init.d/networking/red.down/10-ipsec etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn @@ -86,7 +84,7 @@ etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq +etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes @@ -96,7 +94,6 @@ etc/rc.d/init.d/networking/red.up/24-RS-qos etc/rc.d/init.d/networking/red.up/27-RS-squid etc/rc.d/init.d/networking/red.up/30-ddns #etc/rc.d/init.d/networking/red.up/35-guardian -etc/rc.d/init.d/networking/red.up/40-ipac etc/rc.d/init.d/networking/red.up/50-ipsec etc/rc.d/init.d/networking/red.up/50-ovpn etc/rc.d/init.d/networking/red.up/98-leds @@ -138,6 +135,7 @@ etc/rc.d/init.d/template #etc/rc.d/init.d/transmission etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry +etc/rc.d/init.d/unbound etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin @@ -164,6 +162,7 @@ etc/rc.d/rc0.d/K49cyrus-sasl etc/rc.d/rc0.d/K51vnstat etc/rc.d/rc0.d/K78snort etc/rc.d/rc0.d/K79leds +etc/rc.d/rc0.d/K79unbound etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient #etc/rc.d/rc0.d/K84bluetooth @@ -186,6 +185,7 @@ etc/rc.d/rc3.d/S15fireinfo etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient etc/rc.d/rc3.d/S20network +etc/rc.d/rc3.d/S11unbound etc/rc.d/rc3.d/S21leds etc/rc.d/rc3.d/S24cyrus-sasl etc/rc.d/rc3.d/S25random @@ -215,6 +215,7 @@ etc/rc.d/rc6.d/K49cyrus-sasl etc/rc.d/rc6.d/K51vnstat etc/rc.d/rc6.d/K78snort etc/rc.d/rc6.d/K79leds +etc/rc.d/rc6.d/K79unbound etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient #etc/rc.d/rc6.d/K84bluetooth diff --git a/config/rootfiles/common/x86_64/stage2 b/config/rootfiles/common/x86_64/stage2 index d21c3ff..95eff36 100644 --- a/config/rootfiles/common/x86_64/stage2 +++ b/config/rootfiles/common/x86_64/stage2 @@ -164,7 +164,6 @@ var/log/btmp var/log/calamaris var/log/counter var/log/lastlog -#var/log/net-traffic.log var/log/wtmp var/mail #var/opt diff --git a/config/rootfiles/core/105/exclude b/config/rootfiles/core/105/exclude deleted file mode 100644 index 7ddeae0..0000000 --- a/config/rootfiles/core/105/exclude +++ /dev/null @@ -1,28 +0,0 @@ -boot/config.txt -boot/grub/grub.cfg -boot/grub/grubenv -etc/alternatives -etc/collectd.custom -etc/default/grub -etc/ipsec.conf -etc/ipsec.secrets -etc/ipsec.user.conf -etc/ipsec.user.secrets -etc/localtime -etc/shadow -etc/snort/snort.conf -etc/ssh/ssh_config -etc/ssh/sshd_config -etc/ssl/openssl.cnf -etc/sudoers -etc/sysconfig/firewall.local -etc/sysconfig/rc.local -etc/udev/rules.d/30-persistent-network.rules -srv/web/ipfire/html/proxy.pac -var/ipfire/dma -var/ipfire/time -var/ipfire/ovpn -var/lib/alternatives -var/log/cache -var/state/dhcp/dhcpd.leases -var/updatecache diff --git a/config/rootfiles/core/105/filelists/files b/config/rootfiles/core/105/filelists/files deleted file mode 100644 index 409e5fe..0000000 --- a/config/rootfiles/core/105/filelists/files +++ /dev/null @@ -1,2 +0,0 @@ -etc/system-release -etc/issue diff --git a/config/rootfiles/core/105/filelists/i586/openssl-sse2 b/config/rootfiles/core/105/filelists/i586/openssl-sse2 deleted file mode 120000 index f424713..0000000 --- a/config/rootfiles/core/105/filelists/i586/openssl-sse2 +++ /dev/null @@ -1 +0,0 @@ -../../../../common/i586/openssl-sse2 \ No newline at end of file diff --git a/config/rootfiles/core/105/filelists/libgcrypt b/config/rootfiles/core/105/filelists/libgcrypt deleted file mode 120000 index 2df12a2..0000000 --- a/config/rootfiles/core/105/filelists/libgcrypt +++ /dev/null @@ -1 +0,0 @@ -../../../common/libgcrypt \ No newline at end of file diff --git a/config/rootfiles/core/105/filelists/openssl b/config/rootfiles/core/105/filelists/openssl deleted file mode 120000 index e011a92..0000000 --- a/config/rootfiles/core/105/filelists/openssl +++ /dev/null @@ -1 +0,0 @@ -../../../common/openssl \ No newline at end of file diff --git a/config/rootfiles/core/105/meta b/config/rootfiles/core/105/meta deleted file mode 100644 index d547fa8..0000000 --- a/config/rootfiles/core/105/meta +++ /dev/null @@ -1 +0,0 @@ -DEPS="" diff --git a/config/rootfiles/core/105/update.sh b/config/rootfiles/core/105/update.sh deleted file mode 100644 index 3e9f601..0000000 --- a/config/rootfiles/core/105/update.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire is free software; you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation; either version 3 of the License, or # -# (at your option) any later version. # -# # -# IPFire is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2016 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -/usr/local/bin/backupctrl exclude >/dev/null 2>&1 - -core=105 - -function exit_with_error() { - # Set last succesfull installed core. - echo $(($core-1)) > /opt/pakfire/db/core/mine - /usr/bin/logger -p syslog.emerg -t ipfire \ - "core-update-${core}: $1" - exit $2 -} - -# Remove old core updates from pakfire cache to save space... -for (( i=1; i<=$core; i++ )) -do - rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire -done - - -# Stop services - -# Extract files -extract_files - -# update linker config -ldconfig - -# Update Language cache -#/usr/local/bin/update-lang-cache - -# Start services - -# This update need a reboot... -touch /var/run/need_reboot - -# Finish -/etc/init.d/fireinfo start -sendprofile - -# Update grub config to display new core version -if [ -e /boot/grub/grub.cfg ]; then - grub-mkconfig -o /boot/grub/grub.cfg -fi -sync - -# Don't report the exitcode last command -exit 0 diff --git a/config/rootfiles/core/106/exclude b/config/rootfiles/core/106/exclude new file mode 100644 index 0000000..7ddeae0 --- /dev/null +++ b/config/rootfiles/core/106/exclude @@ -0,0 +1,28 @@ +boot/config.txt +boot/grub/grub.cfg +boot/grub/grubenv +etc/alternatives +etc/collectd.custom +etc/default/grub +etc/ipsec.conf +etc/ipsec.secrets +etc/ipsec.user.conf +etc/ipsec.user.secrets +etc/localtime +etc/shadow +etc/snort/snort.conf +etc/ssh/ssh_config +etc/ssh/sshd_config +etc/ssl/openssl.cnf +etc/sudoers +etc/sysconfig/firewall.local +etc/sysconfig/rc.local +etc/udev/rules.d/30-persistent-network.rules +srv/web/ipfire/html/proxy.pac +var/ipfire/dma +var/ipfire/time +var/ipfire/ovpn +var/lib/alternatives +var/log/cache +var/state/dhcp/dhcpd.leases +var/updatecache diff --git a/config/rootfiles/core/106/filelists/attr b/config/rootfiles/core/106/filelists/attr new file mode 120000 index 0000000..c808017 --- /dev/null +++ b/config/rootfiles/core/106/filelists/attr @@ -0,0 +1 @@ +../../../common/attr \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/diffutils b/config/rootfiles/core/106/filelists/diffutils new file mode 120000 index 0000000..a5c02f3 --- /dev/null +++ b/config/rootfiles/core/106/filelists/diffutils @@ -0,0 +1 @@ +../../../common/diffutils \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/ed b/config/rootfiles/core/106/filelists/ed new file mode 120000 index 0000000..0ed331c --- /dev/null +++ b/config/rootfiles/core/106/filelists/ed @@ -0,0 +1 @@ +../../../common/ed \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/expat b/config/rootfiles/core/106/filelists/expat new file mode 120000 index 0000000..e1923cf --- /dev/null +++ b/config/rootfiles/core/106/filelists/expat @@ -0,0 +1 @@ +../../../common/expat \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/file b/config/rootfiles/core/106/filelists/file new file mode 120000 index 0000000..0c60e43 --- /dev/null +++ b/config/rootfiles/core/106/filelists/file @@ -0,0 +1 @@ +../../../common/file \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/files b/config/rootfiles/core/106/filelists/files new file mode 100644 index 0000000..a67d30a --- /dev/null +++ b/config/rootfiles/core/106/filelists/files @@ -0,0 +1,25 @@ +etc/system-release +etc/issue +etc/login.defs +etc/rc.d/init.d/dhcp +etc/rc.d/init.d/localnet +etc/rc.d/init.d/network +etc/rc.d/init.d/networking/red.down/05-update-dns-forwarders +etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders +etc/rc.d/init.d/ntp +etc/rc.d/init.d/setclock +etc/rc.d/init.d/unbound +etc/rc.d/rc0.d/K79unbound +etc/rc.d/rc3.d/S11unbound +etc/rc.d/rc6.d/K79unbound +srv/web/ipfire/cgi-bin/dns.cgi +srv/web/ipfire/cgi-bin/dnsforward.cgi +srv/web/ipfire/cgi-bin/firewall.cgi +srv/web/ipfire/cgi-bin/hosts.cgi +srv/web/ipfire/cgi-bin/index.cgi +srv/web/ipfire/cgi-bin/iptables.cgi +srv/web/ipfire/cgi-bin/logs.cgi/log.dat +srv/web/ipfire/cgi-bin/pakfire.cgi +srv/web/ipfire/cgi-bin/pppsetup.cgi +srv/web/ipfire/cgi-bin/services.cgi +var/ipfire/backup/include diff --git a/config/rootfiles/core/106/filelists/flex b/config/rootfiles/core/106/filelists/flex new file mode 120000 index 0000000..feb0390 --- /dev/null +++ b/config/rootfiles/core/106/filelists/flex @@ -0,0 +1 @@ +../../../common/flex \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/gawk b/config/rootfiles/core/106/filelists/gawk new file mode 120000 index 0000000..a3bbe32 --- /dev/null +++ b/config/rootfiles/core/106/filelists/gawk @@ -0,0 +1 @@ +../../../common/gawk \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/gettext b/config/rootfiles/core/106/filelists/gettext new file mode 120000 index 0000000..b6c6c6f --- /dev/null +++ b/config/rootfiles/core/106/filelists/gettext @@ -0,0 +1 @@ +../../../common/gettext \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/gnupg b/config/rootfiles/core/106/filelists/gnupg new file mode 120000 index 0000000..a1a1564 --- /dev/null +++ b/config/rootfiles/core/106/filelists/gnupg @@ -0,0 +1 @@ +../../../common/gnupg \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/i586/openssl-sse2 b/config/rootfiles/core/106/filelists/i586/openssl-sse2 new file mode 120000 index 0000000..f424713 --- /dev/null +++ b/config/rootfiles/core/106/filelists/i586/openssl-sse2 @@ -0,0 +1 @@ +../../../../common/i586/openssl-sse2 \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/i586/strongswan-padlock b/config/rootfiles/core/106/filelists/i586/strongswan-padlock new file mode 120000 index 0000000..2412824 --- /dev/null +++ b/config/rootfiles/core/106/filelists/i586/strongswan-padlock @@ -0,0 +1 @@ +../../../../common/i586/strongswan-padlock \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/iproute2 b/config/rootfiles/core/106/filelists/iproute2 new file mode 120000 index 0000000..05f0f71 --- /dev/null +++ b/config/rootfiles/core/106/filelists/iproute2 @@ -0,0 +1 @@ +../../../common/iproute2 \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/ipset b/config/rootfiles/core/106/filelists/ipset new file mode 120000 index 0000000..2b43691 --- /dev/null +++ b/config/rootfiles/core/106/filelists/ipset @@ -0,0 +1 @@ +../../../common/ipset \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/libgpg-error b/config/rootfiles/core/106/filelists/libgpg-error new file mode 120000 index 0000000..cad4313 --- /dev/null +++ b/config/rootfiles/core/106/filelists/libgpg-error @@ -0,0 +1 @@ +../../../common/libgpg-error \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/libidn b/config/rootfiles/core/106/filelists/libidn new file mode 120000 index 0000000..7e35489 --- /dev/null +++ b/config/rootfiles/core/106/filelists/libidn @@ -0,0 +1 @@ +../../../common/libidn \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/libmnl b/config/rootfiles/core/106/filelists/libmnl new file mode 120000 index 0000000..f671c41 --- /dev/null +++ b/config/rootfiles/core/106/filelists/libmnl @@ -0,0 +1 @@ +../../../common/libmnl \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/libnetfilter_conntrack b/config/rootfiles/core/106/filelists/libnetfilter_conntrack new file mode 120000 index 0000000..6ef5cc4 --- /dev/null +++ b/config/rootfiles/core/106/filelists/libnetfilter_conntrack @@ -0,0 +1 @@ +../../../common/libnetfilter_conntrack \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/misc-progs b/config/rootfiles/core/106/filelists/misc-progs new file mode 120000 index 0000000..7223cad --- /dev/null +++ b/config/rootfiles/core/106/filelists/misc-progs @@ -0,0 +1 @@ +../../../common/misc-progs \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/mt7601u-firmware b/config/rootfiles/core/106/filelists/mt7601u-firmware new file mode 120000 index 0000000..300ac04 --- /dev/null +++ b/config/rootfiles/core/106/filelists/mt7601u-firmware @@ -0,0 +1 @@ +../../../common/mt7601u-firmware \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/openssl b/config/rootfiles/core/106/filelists/openssl new file mode 120000 index 0000000..e011a92 --- /dev/null +++ b/config/rootfiles/core/106/filelists/openssl @@ -0,0 +1 @@ +../../../common/openssl \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/python-daemon b/config/rootfiles/core/106/filelists/python-daemon new file mode 120000 index 0000000..8e510bb --- /dev/null +++ b/config/rootfiles/core/106/filelists/python-daemon @@ -0,0 +1 @@ +../../../common/python-daemon \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/python-docutils b/config/rootfiles/core/106/filelists/python-docutils new file mode 120000 index 0000000..5ae1ada --- /dev/null +++ b/config/rootfiles/core/106/filelists/python-docutils @@ -0,0 +1 @@ +../../../common/python-docutils \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/python-inotify b/config/rootfiles/core/106/filelists/python-inotify new file mode 120000 index 0000000..6f572c3 --- /dev/null +++ b/config/rootfiles/core/106/filelists/python-inotify @@ -0,0 +1 @@ +../../../common/python-inotify \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/python-ipaddress b/config/rootfiles/core/106/filelists/python-ipaddress new file mode 120000 index 0000000..0702482 --- /dev/null +++ b/config/rootfiles/core/106/filelists/python-ipaddress @@ -0,0 +1 @@ +../../../common/python-ipaddress \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/smartmontools b/config/rootfiles/core/106/filelists/smartmontools new file mode 120000 index 0000000..fb66daf --- /dev/null +++ b/config/rootfiles/core/106/filelists/smartmontools @@ -0,0 +1 @@ +../../../common/smartmontools \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/squid b/config/rootfiles/core/106/filelists/squid new file mode 120000 index 0000000..2dc8372 --- /dev/null +++ b/config/rootfiles/core/106/filelists/squid @@ -0,0 +1 @@ +../../../common/squid \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/strongswan b/config/rootfiles/core/106/filelists/strongswan new file mode 120000 index 0000000..90c727e --- /dev/null +++ b/config/rootfiles/core/106/filelists/strongswan @@ -0,0 +1 @@ +../../../common/strongswan \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/unbound b/config/rootfiles/core/106/filelists/unbound new file mode 120000 index 0000000..66adf09 --- /dev/null +++ b/config/rootfiles/core/106/filelists/unbound @@ -0,0 +1 @@ +../../../common/unbound \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/usb_modeswitch b/config/rootfiles/core/106/filelists/usb_modeswitch new file mode 120000 index 0000000..acbab6f --- /dev/null +++ b/config/rootfiles/core/106/filelists/usb_modeswitch @@ -0,0 +1 @@ +../../../common/usb_modeswitch \ No newline at end of file diff --git a/config/rootfiles/core/106/filelists/usb_modeswitch_data b/config/rootfiles/core/106/filelists/usb_modeswitch_data new file mode 120000 index 0000000..4cbce46 --- /dev/null +++ b/config/rootfiles/core/106/filelists/usb_modeswitch_data @@ -0,0 +1 @@ +../../../common/usb_modeswitch_data \ No newline at end of file diff --git a/config/rootfiles/core/106/meta b/config/rootfiles/core/106/meta new file mode 100644 index 0000000..d547fa8 --- /dev/null +++ b/config/rootfiles/core/106/meta @@ -0,0 +1 @@ +DEPS="" diff --git a/config/rootfiles/core/106/update.sh b/config/rootfiles/core/106/update.sh new file mode 100644 index 0000000..c3609af --- /dev/null +++ b/config/rootfiles/core/106/update.sh @@ -0,0 +1,104 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 3 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2016 IPFire-Team info@ipfire.org. # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +/usr/local/bin/backupctrl exclude >/dev/null 2>&1 + +core=106 + +function exit_with_error() { + # Set last succesfull installed core. + echo $(($core-1)) > /opt/pakfire/db/core/mine + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-${core}: $1" + exit $2 +} + +# Remove old core updates from pakfire cache to save space... +for (( i=1; i<=$core; i++ )); do + rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire +done + + +# Stop services +/etc/init.d/squid stop +/etc/init.d/ipsec stop +/etc/init.d/dnsmasq stop + +# Extract files +extract_files + +# Delete dnsmasq +rm -vf \ + /etc/rc.d/init.d/dnsmasq \ + /etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq \ + /etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq \ + /usr/sbin/dnsmasq + +# delete unbound link after network start +rm -vf /etc/rc.d/rc3.d/S21unbound + +# Delete old net-traffic stuff +rm -vrf \ + /etc/rc.d/helper/writeipac.pl \ + /etc/rc.d/init.d/networking/red.up/40-ipac \ + /var/ipfire/net-traffic \ + /var/log/net-traffic.log* + +# update linker config +ldconfig + +grep -q unbound-anchor /var/spool/cron/root.orig || cat <<EOF >> /var/spool/cron/root.orig + +# Update DNS trust anchor +%daily,random * * @runas(nobody) /usr/sbin/unbound-anchor -a /var/lib/unbound/root.key -c /etc/unbound/icannbundle.pem +EOF + +# Update Language cache +/usr/local/bin/update-lang-cache + +# Start services +/etc/init.d/unbound start +/etc/init.d/squid start +if grep -q "ENABLED=on" /var/ipfire/vpn/settings; then + /etc/init.d/ipsec start +fi + +# Restart DHCP server to import leases into unbound +/etc/init.d/dhcp restart + +# This update need a reboot... +touch /var/run/need_reboot + +# Finish +/etc/init.d/fireinfo start +sendprofile + +# Update grub config to display new core version +if [ -e /boot/grub/grub.cfg ]; then + grub-mkconfig -o /boot/grub/grub.cfg +fi +sync + +# Don't report the exitcode last command +exit 0 diff --git a/config/rootfiles/oldcore/105/exclude b/config/rootfiles/oldcore/105/exclude new file mode 100644 index 0000000..7ddeae0 --- /dev/null +++ b/config/rootfiles/oldcore/105/exclude @@ -0,0 +1,28 @@ +boot/config.txt +boot/grub/grub.cfg +boot/grub/grubenv +etc/alternatives +etc/collectd.custom +etc/default/grub +etc/ipsec.conf +etc/ipsec.secrets +etc/ipsec.user.conf +etc/ipsec.user.secrets +etc/localtime +etc/shadow +etc/snort/snort.conf +etc/ssh/ssh_config +etc/ssh/sshd_config +etc/ssl/openssl.cnf +etc/sudoers +etc/sysconfig/firewall.local +etc/sysconfig/rc.local +etc/udev/rules.d/30-persistent-network.rules +srv/web/ipfire/html/proxy.pac +var/ipfire/dma +var/ipfire/time +var/ipfire/ovpn +var/lib/alternatives +var/log/cache +var/state/dhcp/dhcpd.leases +var/updatecache diff --git a/config/rootfiles/oldcore/105/filelists/files b/config/rootfiles/oldcore/105/filelists/files new file mode 100644 index 0000000..409e5fe --- /dev/null +++ b/config/rootfiles/oldcore/105/filelists/files @@ -0,0 +1,2 @@ +etc/system-release +etc/issue diff --git a/config/rootfiles/oldcore/105/filelists/i586/openssl-sse2 b/config/rootfiles/oldcore/105/filelists/i586/openssl-sse2 new file mode 120000 index 0000000..f424713 --- /dev/null +++ b/config/rootfiles/oldcore/105/filelists/i586/openssl-sse2 @@ -0,0 +1 @@ +../../../../common/i586/openssl-sse2 \ No newline at end of file diff --git a/config/rootfiles/oldcore/105/filelists/libgcrypt b/config/rootfiles/oldcore/105/filelists/libgcrypt new file mode 120000 index 0000000..2df12a2 --- /dev/null +++ b/config/rootfiles/oldcore/105/filelists/libgcrypt @@ -0,0 +1 @@ +../../../common/libgcrypt \ No newline at end of file diff --git a/config/rootfiles/oldcore/105/filelists/openssl b/config/rootfiles/oldcore/105/filelists/openssl new file mode 120000 index 0000000..e011a92 --- /dev/null +++ b/config/rootfiles/oldcore/105/filelists/openssl @@ -0,0 +1 @@ +../../../common/openssl \ No newline at end of file diff --git a/config/rootfiles/oldcore/105/meta b/config/rootfiles/oldcore/105/meta new file mode 100644 index 0000000..d547fa8 --- /dev/null +++ b/config/rootfiles/oldcore/105/meta @@ -0,0 +1 @@ +DEPS="" diff --git a/config/rootfiles/oldcore/105/update.sh b/config/rootfiles/oldcore/105/update.sh new file mode 100644 index 0000000..3e9f601 --- /dev/null +++ b/config/rootfiles/oldcore/105/update.sh @@ -0,0 +1,71 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 3 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2016 IPFire-Team info@ipfire.org. # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +/usr/local/bin/backupctrl exclude >/dev/null 2>&1 + +core=105 + +function exit_with_error() { + # Set last succesfull installed core. + echo $(($core-1)) > /opt/pakfire/db/core/mine + /usr/bin/logger -p syslog.emerg -t ipfire \ + "core-update-${core}: $1" + exit $2 +} + +# Remove old core updates from pakfire cache to save space... +for (( i=1; i<=$core; i++ )) +do + rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire +done + + +# Stop services + +# Extract files +extract_files + +# update linker config +ldconfig + +# Update Language cache +#/usr/local/bin/update-lang-cache + +# Start services + +# This update need a reboot... +touch /var/run/need_reboot + +# Finish +/etc/init.d/fireinfo start +sendprofile + +# Update grub config to display new core version +if [ -e /boot/grub/grub.cfg ]; then + grub-mkconfig -o /boot/grub/grub.cfg +fi +sync + +# Don't report the exitcode last command +exit 0 diff --git a/config/rootfiles/packages/asterisk b/config/rootfiles/packages/asterisk index 1d5c2a0..d1a3097 100644 --- a/config/rootfiles/packages/asterisk +++ b/config/rootfiles/packages/asterisk @@ -835,16 +835,16 @@ var/lib/asterisk/sounds/digits/de/xh-8x.gsm var/lib/asterisk/sounds/digits/de/xh-9x.gsm var/lib/asterisk/sounds/digits/de/yesterday.gsm var/lib/asterisk/sounds/en -var/lib/asterisk/sounds/en/.asterisk-core-sounds-en-gsm-1.4.27 -var/lib/asterisk/sounds/en/.asterisk-extra-sounds-en-gsm-1.4.15 +var/lib/asterisk/sounds/en/.asterisk-core-sounds-en-gsm-1.5 +var/lib/asterisk/sounds/en/.asterisk-extra-sounds-en-gsm-1.5 var/lib/asterisk/sounds/en/1-for-am-2-for-pm.gsm var/lib/asterisk/sounds/en/1-yes-2-no.gsm -#var/lib/asterisk/sounds/en/CHANGES-asterisk-core-en-1.4.27 -#var/lib/asterisk/sounds/en/CHANGES-asterisk-extra-en-1.4.15 -#var/lib/asterisk/sounds/en/CREDITS-asterisk-core-en-1.4.27 -#var/lib/asterisk/sounds/en/CREDITS-asterisk-extra-en-1.4.15 -#var/lib/asterisk/sounds/en/LICENSE-asterisk-core-en-1.4.27 -#var/lib/asterisk/sounds/en/LICENSE-asterisk-extra-en-1.4.15 +#var/lib/asterisk/sounds/en/CHANGES-asterisk-core-en-1.5 +#var/lib/asterisk/sounds/en/CHANGES-asterisk-extra-en-1.5 +#var/lib/asterisk/sounds/en/CREDITS-asterisk-core-en-1.5 +#var/lib/asterisk/sounds/en/CREDITS-asterisk-extra-en-1.5 +#var/lib/asterisk/sounds/en/LICENSE-asterisk-core-en-1.5 +#var/lib/asterisk/sounds/en/LICENSE-asterisk-extra-en-1.5 var/lib/asterisk/sounds/en/OfficeSpace.gsm var/lib/asterisk/sounds/en/Randulo-allison.gsm var/lib/asterisk/sounds/en/SIP_Test_Failure.gsm @@ -922,7 +922,6 @@ var/lib/asterisk/sounds/en/astcc-account-number-invalid.gsm var/lib/asterisk/sounds/en/astcc-balance-of-account-is.gsm var/lib/asterisk/sounds/en/astcc-card-number-invalid.gsm var/lib/asterisk/sounds/en/astcc-digit-account-number.gsm -var/lib/asterisk/sounds/en/astcc-followed-by-pound.gsm var/lib/asterisk/sounds/en/astcc-followed-by-the-hash-key.gsm var/lib/asterisk/sounds/en/astcc-followed-by-the-pound-key.gsm var/lib/asterisk/sounds/en/astcc-login12pound.gsm @@ -2064,6 +2063,7 @@ var/lib/asterisk/sounds/en/please-hold-minion-connect.gsm var/lib/asterisk/sounds/en/please-hold-while-minion.gsm var/lib/asterisk/sounds/en/please-try-again-later.gsm var/lib/asterisk/sounds/en/please-try-again.gsm +var/lib/asterisk/sounds/en/please-try-call-later.gsm var/lib/asterisk/sounds/en/please-try.gsm var/lib/asterisk/sounds/en/please-wait-connect-oncall-eng.gsm var/lib/asterisk/sounds/en/pls-ent-num-transfer.gsm @@ -2080,7 +2080,6 @@ var/lib/asterisk/sounds/en/pls-rcrd-name-at-tone.gsm var/lib/asterisk/sounds/en/pls-stay-on-line.gsm var/lib/asterisk/sounds/en/pls-try-again.gsm var/lib/asterisk/sounds/en/pls-try-area-code.gsm -var/lib/asterisk/sounds/en/pls-try-call-later.gsm var/lib/asterisk/sounds/en/pls-try-manually.gsm var/lib/asterisk/sounds/en/pls-wait-connect-call.gsm var/lib/asterisk/sounds/en/plugh.gsm diff --git a/config/rootfiles/packages/guardian b/config/rootfiles/packages/guardian index 9eb3fed..3838af5 100644 --- a/config/rootfiles/packages/guardian +++ b/config/rootfiles/packages/guardian @@ -16,6 +16,15 @@ usr/lib/perl5/site_perl/5.12.3/Guardian/Logger.pm usr/lib/perl5/site_perl/5.12.3/Guardian/Parser.pm usr/lib/perl5/site_perl/5.12.3/Guardian/Socket.pm usr/sbin/guardian +var/ipfire/addon-lang/guardian.de.pl +var/ipfire/addon-lang/guardian.en.pl +var/ipfire/addon-lang/guardian.es.pl +var/ipfire/addon-lang/guardian.fr.pl +var/ipfire/addon-lang/guardian.it.pl +var/ipfire/addon-lang/guardian.nl.pl +var/ipfire/addon-lang/guardian.pl.pl +var/ipfire/addon-lang/guardian.ru.pl +var/ipfire/addon-lang/guardian.tr.pl var/ipfire/backup/addons/includes/guardian var/ipfire/guardian var/ipfire/menu.d/EX-guardian.menu diff --git a/config/rootfiles/packages/krb5 b/config/rootfiles/packages/krb5 index e1e7d64..d73f22b 100644 --- a/config/rootfiles/packages/krb5 +++ b/config/rootfiles/packages/krb5 @@ -68,6 +68,9 @@ usr/lib/krb5/plugins/libkrb5 usr/lib/krb5/plugins/preauth usr/lib/krb5/plugins/preauth/otp.so usr/lib/krb5/plugins/preauth/pkinit.so +usr/lib/krb5/plugins/preauth/test.so +usr/lib/krb5/plugins/tls +usr/lib/krb5/plugins/tls/k5tls.so #usr/lib/libgssapi_krb5.so usr/lib/libgssapi_krb5.so.2 usr/lib/libgssapi_krb5.so.2.2 @@ -79,15 +82,15 @@ usr/lib/libk5crypto.so.3 usr/lib/libk5crypto.so.3.1 #usr/lib/libkadm5clnt.so #usr/lib/libkadm5clnt_mit.so -usr/lib/libkadm5clnt_mit.so.9 -usr/lib/libkadm5clnt_mit.so.9.0 +usr/lib/libkadm5clnt_mit.so.10 +usr/lib/libkadm5clnt_mit.so.10.0 #usr/lib/libkadm5srv.so #usr/lib/libkadm5srv_mit.so -usr/lib/libkadm5srv_mit.so.9 -usr/lib/libkadm5srv_mit.so.9.0 +usr/lib/libkadm5srv_mit.so.10 +usr/lib/libkadm5srv_mit.so.10.0 #usr/lib/libkdb5.so -usr/lib/libkdb5.so.7 -usr/lib/libkdb5.so.7.0 +usr/lib/libkdb5.so.8 +usr/lib/libkdb5.so.8.0 #usr/lib/libkrad.so usr/lib/libkrad.so.0 usr/lib/libkrad.so.0.0 @@ -125,8 +128,6 @@ usr/lib/libverto.so.0.0 #usr/share/examples/krb5/kdc.conf #usr/share/examples/krb5/krb5.conf #usr/share/examples/krb5/services.append -#usr/share/gnats -#usr/share/gnats/mit #usr/share/locale/en_US #usr/share/locale/en_US/LC_MESSAGES #usr/share/locale/en_US/LC_MESSAGES/mit-krb5.mo @@ -140,7 +141,6 @@ usr/lib/libverto.so.0.0 #usr/share/man/man1/klist.1 #usr/share/man/man1/kpasswd.1 #usr/share/man/man1/krb5-config.1 -#usr/share/man/man1/krb5-send-pr.1 #usr/share/man/man1/ksu.1 #usr/share/man/man1/kswitch.1 #usr/share/man/man1/ktutil.1 @@ -163,3 +163,5 @@ usr/lib/libverto.so.0.0 #usr/share/man/man8/krb5kdc.8 #usr/share/man/man8/sserver.8 var/lib/krb5kdc +var/lib/run +var/lib/run/krb5kdc diff --git a/config/rootfiles/packages/libassuan b/config/rootfiles/packages/libassuan index 9c7aadb..8670ee7 100644 --- a/config/rootfiles/packages/libassuan +++ b/config/rootfiles/packages/libassuan @@ -3,6 +3,6 @@ usr/bin/libassuan-config #usr/lib/libassuan.la usr/lib/libassuan.so usr/lib/libassuan.so.0 -usr/lib/libassuan.so.0.5.0 +usr/lib/libassuan.so.0.7.3 #usr/share/aclocal/libassuan.m4 #usr/share/info/assuan.info diff --git a/config/rootfiles/packages/mc b/config/rootfiles/packages/mc index f41e2d5..baf8e06 100644 --- a/config/rootfiles/packages/mc +++ b/config/rootfiles/packages/mc @@ -136,6 +136,7 @@ usr/share/mc/syntax/changelog.syntax usr/share/mc/syntax/cmake.syntax usr/share/mc/syntax/cs.syntax usr/share/mc/syntax/css.syntax +usr/share/mc/syntax/cuda.syntax usr/share/mc/syntax/cxx.syntax usr/share/mc/syntax/cython.syntax usr/share/mc/syntax/d.syntax @@ -152,6 +153,7 @@ usr/share/mc/syntax/erlang.syntax usr/share/mc/syntax/f90.syntax usr/share/mc/syntax/filehighlight.syntax usr/share/mc/syntax/fortran.syntax +usr/share/mc/syntax/glsl.syntax usr/share/mc/syntax/go.syntax usr/share/mc/syntax/haskell.syntax usr/share/mc/syntax/html.syntax diff --git a/config/rootfiles/packages/transmission b/config/rootfiles/packages/transmission index 3321b71..fbf1ad1 100644 --- a/config/rootfiles/packages/transmission +++ b/config/rootfiles/packages/transmission @@ -1,12 +1,10 @@ #etc/transmission etc/transmission/settings.json -usr/bin/transmission-cli usr/bin/transmission-create usr/bin/transmission-daemon usr/bin/transmission-edit usr/bin/transmission-remote usr/bin/transmission-show -#usr/share/man/man1/transmission-cli.1 #usr/share/man/man1/transmission-create.1 #usr/share/man/man1/transmission-daemon.1 #usr/share/man/man1/transmission-edit.1 @@ -27,12 +25,11 @@ usr/share/transmission #usr/share/transmission/web/javascript/formatter.js #usr/share/transmission/web/javascript/inspector.js #usr/share/transmission/web/javascript/jquery -#usr/share/transmission/web/javascript/jquery/jquery.contextmenu.min.js -#usr/share/transmission/web/javascript/jquery/jquery.form.js -#usr/share/transmission/web/javascript/jquery/jquery.form.min.js +#usr/share/transmission/web/javascript/jquery/jquery-migrate.min.js +#usr/share/transmission/web/javascript/jquery/jquery-ui.min.js #usr/share/transmission/web/javascript/jquery/jquery.min.js #usr/share/transmission/web/javascript/jquery/jquery.transmenu.min.js -#usr/share/transmission/web/javascript/jquery/jqueryui-1.8.16.min.js +#usr/share/transmission/web/javascript/jquery/jquery.ui-contextmenu.min.js #usr/share/transmission/web/javascript/jquery/json2.min.js #usr/share/transmission/web/javascript/notifications.js #usr/share/transmission/web/javascript/prefs-dialog.js @@ -43,14 +40,20 @@ usr/share/transmission #usr/share/transmission/web/style #usr/share/transmission/web/style/jqueryui #usr/share/transmission/web/style/jqueryui/images +#usr/share/transmission/web/style/jqueryui/images/ui-bg_flat_0_aaaaaa_40x100.png #usr/share/transmission/web/style/jqueryui/images/ui-bg_flat_75_ffffff_40x100.png +#usr/share/transmission/web/style/jqueryui/images/ui-bg_glass_55_fbf9ee_1x400.png #usr/share/transmission/web/style/jqueryui/images/ui-bg_glass_65_ffffff_1x400.png #usr/share/transmission/web/style/jqueryui/images/ui-bg_glass_75_dadada_1x400.png #usr/share/transmission/web/style/jqueryui/images/ui-bg_glass_75_e6e6e6_1x400.png +#usr/share/transmission/web/style/jqueryui/images/ui-bg_glass_95_fef1ec_1x400.png #usr/share/transmission/web/style/jqueryui/images/ui-bg_highlight-soft_75_cccccc_1x100.png #usr/share/transmission/web/style/jqueryui/images/ui-icons_222222_256x240.png +#usr/share/transmission/web/style/jqueryui/images/ui-icons_2e83ff_256x240.png #usr/share/transmission/web/style/jqueryui/images/ui-icons_454545_256x240.png -#usr/share/transmission/web/style/jqueryui/jqueryui-1.8.16.css +#usr/share/transmission/web/style/jqueryui/images/ui-icons_888888_256x240.png +#usr/share/transmission/web/style/jqueryui/images/ui-icons_cd0a0a_256x240.png +#usr/share/transmission/web/style/jqueryui/jquery-ui.min.css #usr/share/transmission/web/style/transmission #usr/share/transmission/web/style/transmission/common.css #usr/share/transmission/web/style/transmission/images diff --git a/config/rootfiles/packages/vdr_vnsiserver3 b/config/rootfiles/packages/vdr_vnsiserver3 deleted file mode 100644 index 4eee282..0000000 --- a/config/rootfiles/packages/vdr_vnsiserver3 +++ /dev/null @@ -1,4 +0,0 @@ -etc/sysconfig/vdr-plugins.d/vnsiserver3.conf -etc/vdr/plugins/vnsiserver3 -etc/vdr/plugins/vnsiserver3/allowed_hosts.conf -usr/lib/vdr/libvdr-vnsiserver3.so.2.0.0 diff --git a/config/shadow/limits b/config/shadow/limits new file mode 100644 index 0000000..d39f2d5 --- /dev/null +++ b/config/shadow/limits @@ -0,0 +1,30 @@ +# /etc/limits contains user resource limits. +# See limits(5). +# +# Format: +# <username> <limits-string> +# +# default entry is '*' for username +# +# Valid flags are: +# A: max address space (KB) +# C: max core file size (KB) +# D: max data size (KB) +# F: maximum filesize (KB) +# M: max locked-in-memory address space (KB) [only for root on Linux 2.0.x] +# N: max number of open files +# R: max resident set size (KB) [no effect on Linux 2.0.x] +# S: max stack size (KB) +# T: max CPU time (MIN) +# U: max number of processes +# L: max number of logins for this user +# I: max nice value (0..39 translates to 20..-19) +# O: max real time priority (0..MAX_RT_PRIO) +# +# Examples: +# the default entry +#* L2 D6144 R2048 S2048 U32 N32 F16384 T5 C0 I20 O0 +# another way of suspending a user login +#guest L0 +# this account has no limits +#sysadm - diff --git a/config/shadow/login.access b/config/shadow/login.access new file mode 100644 index 0000000..3ed3688 --- /dev/null +++ b/config/shadow/login.access @@ -0,0 +1,54 @@ +# $Id$ +# +# Login access control table. +# +# When someone logs in, the table is scanned for the first entry that +# matches the (user, host) combination, or, in case of non-networked +# logins, the first entry that matches the (user, tty) combination. The +# permissions field of that table entry determines whether the login will +# be accepted or refused. +# +# Format of the login access control table is three fields separated by a +# ":" character: +# +# permission : users : origins +# +# The first field should be a "+" (access granted) or "-" (access denied) +# character. +# +# The second field should be a list of one or more login names, group +# names, or ALL (always matches). A pattern of the form user@host is +# matched when the login name matches the "user" part, and when the +# "host" part matches the local machine name. +# +# The third field should be a list of one or more tty names (for +# non-networked logins), host names, domain names (begin with "."), host +# addresses, internet network numbers (end with "."), ALL (always +# matches) or LOCAL (matches any string that does not contain a "." +# character). +# +# If you run NIS you can use @netgroupname in host or user patterns; this +# even works for @usergroup@@hostgroup patterns. Weird. +# +# The EXCEPT operator makes it possible to write very compact rules. +# +# The group file is searched only when a name does not match that of the +# logged-in user. Only groups are matched in which users are explicitly +# listed: the program does not look at a user's primary group id value. +# +############################################################################## +# +# Disallow console logins to all but a few accounts. +# +#-:ALL EXCEPT wheel shutdown sync:console +# +# Disallow non-local logins to privileged accounts (group wheel). +# +#-:wheel:ALL EXCEPT LOCAL .win.tue.nl +# +# Some accounts are not allowed to login from anywhere: +# +#-:wsbscaro wsbsecr wsbspac wsbsym wscosor wstaiwde:ALL +# +# All other accounts are allowed to login from anywhere. +# diff --git a/config/shadow/login.defs b/config/shadow/login.defs new file mode 100644 index 0000000..d99597a --- /dev/null +++ b/config/shadow/login.defs @@ -0,0 +1,316 @@ +# +# /etc/login.defs - Configuration control definitions for the shadow package. +# +# $Id$ +# + +# +# Delay in seconds before being allowed another attempt after a login failure +# Note: When PAM is used, some modules may enforce a minimum delay (e.g. +# pam_unix(8) enforces a 2s delay) +# +FAIL_DELAY 3 + +# +# Enable logging and display of /var/log/faillog login(1) failure info. +# +FAILLOG_ENAB yes + +# +# Enable display of unknown usernames when login(1) failures are recorded. +# +LOG_UNKFAIL_ENAB no + +# +# Enable logging of successful logins +# +LOG_OK_LOGINS no + +# +# Enable logging and display of /var/log/lastlog login(1) time info. +# +LASTLOG_ENAB yes + +# +# Enable checking and display of mailbox status upon login. +# +# Disable if the shell startup files already check for mail +# ("mailx -e" or equivalent). +# +MAIL_CHECK_ENAB yes + +# +# Enable additional checks upon password changes. +# +OBSCURE_CHECKS_ENAB yes + +# +# Enable checking of time restrictions specified in /etc/porttime. +# +PORTTIME_CHECKS_ENAB yes + +# +# Enable setting of ulimit, umask, and niceness from passwd(5) gecos field. +# +QUOTAS_ENAB yes + +# +# Enable "syslog" logging of su(1) activity - in addition to sulog file logging. +# SYSLOG_SG_ENAB does the same for newgrp(1) and sg(1). +# +SYSLOG_SU_ENAB yes +SYSLOG_SG_ENAB yes + +# +# If defined, either full pathname of a file containing device names or +# a ":" delimited list of device names. Root logins will be allowed only +# from these devices. +# +CONSOLE /etc/securetty + +# +# If defined, all su(1) activity is logged to this file. +# +#SULOG_FILE /var/log/sulog + +# +# If defined, ":" delimited list of "message of the day" files to +# be displayed upon login. +# +MOTD_FILE /etc/motd + +# +# If defined, login(1) failures will be logged here in a utmp format. +# last(1), when invoked as lastb(1), will read /var/log/btmp, so... +# +FTMP_FILE /var/log/btmp + +# +# If defined, name of file whose presence will inhibit non-root +# logins. The content of this file should be a message indicating +# why logins are inhibited. +# +NOLOGINS_FILE /etc/nologin + +# +# If defined, the command name to display when running "su -". For +# example, if this is defined as "su" then ps(1) will display the +# command as "-su". If not defined, then ps(1) will display the +# name of the shell actually being run, e.g. something like "-sh". +# +SU_NAME su + +# +# *REQUIRED* +# Directory where mailboxes reside, _or_ name of file, relative to the +# home directory. If you _do_ define both, MAIL_DIR takes precedence. +# +MAIL_DIR /var/mail + +# +# *REQUIRED* The default PATH settings, for superuser and normal users. +# +# (they are minimal, add the rest in the shell startup files) +ENV_SUPATH PATH=/sbin:/bin:/usr/sbin:/usr/bin +ENV_PATH PATH=/bin:/usr/bin + +# +# Terminal permissions +# +# TTYGROUP Login tty will be assigned this group ownership. +# TTYPERM Login tty will be set to this permission. +# +# If you have a write(1) program which is "setgid" to a special group +# which owns the terminals, define TTYGROUP as the number of such group +# and TTYPERM as 0620. Otherwise leave TTYGROUP commented out and +# set TTYPERM to either 622 or 600. +# +TTYGROUP tty +TTYPERM 0600 + +# +# Login configuration initializations: +# +# ERASECHAR Terminal ERASE character ('\010' = backspace). +# KILLCHAR Terminal KILL character ('\025' = CTRL/U). +# ULIMIT Default "ulimit" value. +# +# The ERASECHAR and KILLCHAR are used only on System V machines. +# The ULIMIT is used only if the system supports it. +# (now it works with setrlimit too; ulimit is in 512-byte units) +# +# Prefix these values with "0" to get octal, "0x" to get hexadecimal. +# +ERASECHAR 0177 +KILLCHAR 025 +#ULIMIT 2097152 + +# Default initial "umask" value used by login(1) on non-PAM enabled systems. +# Default "umask" value for pam_umask(8) on PAM enabled systems. +# UMASK is also used by useradd(8) and newusers(8) to set the mode for new +# home directories. +# 022 is the default value, but 027, or even 077, could be considered +# for increased privacy. There is no One True Answer here: each sysadmin +# must make up his/her mind. +UMASK 022 + +# +# Password aging controls: +# +# PASS_MAX_DAYS Maximum number of days a password may be used. +# PASS_MIN_DAYS Minimum number of days allowed between password changes. +# PASS_MIN_LEN Minimum acceptable password length. +# PASS_WARN_AGE Number of days warning given before a password expires. +# +PASS_MAX_DAYS 99999 +PASS_MIN_DAYS 0 +PASS_MIN_LEN 5 +PASS_WARN_AGE 7 + +# +# If "yes", the user must be listed as a member of the first gid 0 group +# in /etc/group (called "root" on most Linux systems) to be able to "su" +# to uid 0 accounts. If the group doesn't exist or is empty, no one +# will be able to "su" to uid 0. +# +SU_WHEEL_ONLY no + +# +# If compiled with cracklib support, sets the path to the dictionaries +# +CRACKLIB_DICTPATH /var/cache/cracklib/cracklib_dict + +# +# Min/max values for automatic uid selection in useradd(8) +# +UID_MIN 1000 +UID_MAX 60000 +# System accounts +SYS_UID_MIN 101 +SYS_UID_MAX 999 +# Extra per user uids +SUB_UID_MIN 100000 +SUB_UID_MAX 600100000 +SUB_UID_COUNT 65536 + +# +# Min/max values for automatic gid selection in groupadd(8) +# +GID_MIN 1000 +GID_MAX 60000 +# System accounts +SYS_GID_MIN 101 +SYS_GID_MAX 999 +# Extra per user group ids +SUB_GID_MIN 100000 +SUB_GID_MAX 600100000 +SUB_GID_COUNT 65536 + +# +# Max number of login(1) retries if password is bad +# +LOGIN_RETRIES 5 + +# +# Max time in seconds for login(1) +# +LOGIN_TIMEOUT 60 + +# +# Maximum number of attempts to change password if rejected (too easy) +# +PASS_CHANGE_TRIES 5 + +# +# Warn about weak passwords (but still allow them) if you are root. +# +PASS_ALWAYS_WARN yes + +# +# Require password before chfn(1)/chsh(1) can make any changes. +# +CHFN_AUTH yes + +# +# Which fields may be changed by regular users using chfn(1) - use +# any combination of letters "frwh" (full name, room number, work +# phone, home phone). If not defined, no changes are allowed. +# For backward compatibility, "yes" = "rwh" and "no" = "frwh". +# +CHFN_RESTRICT rwh + +# +# Password prompt (%s will be replaced by user name). +# +# XXX - it doesn't work correctly yet, for now leave it commented out +# to use the default which is just "Password: ". +#LOGIN_STRING "%s's Password: " + +# +# Only works if compiled with ENCRYPTMETHOD_SELECT defined: +# If set to MD5, MD5-based algorithm will be used for encrypting password +# If set to SHA256, SHA256-based algorithm will be used for encrypting password +# If set to SHA512, SHA512-based algorithm will be used for encrypting password +# If set to DES, DES-based algorithm will be used for encrypting password (default) +# Overrides the MD5_CRYPT_ENAB option +# +# Note: If you use PAM, it is recommended to use a value consistent with +# the PAM modules configuration. +# +ENCRYPT_METHOD SHA512 + +# +# Only works if ENCRYPT_METHOD is set to SHA256 or SHA512. +# +# Define the number of SHA rounds. +# With a lot of rounds, it is more difficult to brute-force the password. +# However, more CPU resources will be needed to authenticate users if +# this value is increased. +# +# If not specified, the libc will choose the default number of rounds (5000). +# The values must be within the 1000-999999999 range. +# If only one of the MIN or MAX values is set, then this value will be used. +# If MIN > MAX, the highest value will be used. +# +# SHA_CRYPT_MIN_ROUNDS 5000 +# SHA_CRYPT_MAX_ROUNDS 5000 + +# +# Should login be allowed if we can't cd to the home directory? +# Default is no. +# +DEFAULT_HOME yes + +# +# If this file exists and is readable, login environment will be +# read from it. Every line should be in the form name=value. +# +ENVIRON_FILE /etc/environment + +# +# Enable setting of the umask group bits to be the same as owner bits +# (examples: 022 -> 002, 077 -> 007) for non-root users, if the uid is +# the same as gid, and username is the same as the primary group name. +# +# This also enables userdel(8) to remove user groups if no members exist. +# +USERGROUPS_ENAB yes + +# +# If set to a non-zero number, the shadow utilities will make sure that +# groups never have more than this number of users on one line. +# This permits to support split groups (groups split into multiple lines, +# with the same group ID, to avoid limitation of the line length in the +# group file). +# +# 0 is the default value and disables this feature. +# +#MAX_MEMBERS_PER_GROUP 0 + +# +# If useradd(8) should create home directories for users by default (non +# system users only). +# This option is overridden with the -M or -m flags on the useradd(8) +# command-line. +# +#CREATE_HOME yes diff --git a/config/unbound/icannbundle.pem b/config/unbound/icannbundle.pem new file mode 100644 index 0000000..48941de --- /dev/null +++ b/config/unbound/icannbundle.pem @@ -0,0 +1,317 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 1 (0x1) + Signature Algorithm: sha256WithRSAEncryption + Issuer: O=ICANN, OU=ICANN Certification Authority, CN=ICANN Root CA, C=US + Validity + Not Before: Dec 23 04:19:12 2009 GMT + Not After : Dec 18 04:19:12 2029 GMT + Subject: O=ICANN, OU=ICANN Certification Authority, CN=ICANN Root CA, C=US + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public Key: (2048 bit) + Modulus (2048 bit): + 00:a0:db:70:b8:4f:34:da:9c:d4:d0:7e:bb:ea:15: + bc:e9:c9:11:2a:1f:61:2f:6a:b9:bd:3f:3d:76:a0: + 9a:0a:f7:ee:93:6e:6e:55:53:84:8c:f2:2c:f1:82: + 27:c8:0f:9a:cf:52:1b:54:da:28:d2:2c:30:8e:dd: + fb:92:20:33:2d:d6:c8:f1:0e:10:21:88:71:fa:84: + 22:4b:5d:47:56:16:7c:9b:9f:5d:c3:11:79:9c:14: + e2:ff:c0:74:ac:dd:39:d7:e0:38:d8:b0:73:aa:fb: + d1:db:84:af:52:22:a8:f6:d5:9b:94:f4:e6:5d:5e: + e8:3f:87:90:0b:c7:1a:77:f5:2e:d3:8f:1a:ce:02: + 1d:07:69:21:47:32:da:46:ae:00:4c:b6:a5:a2:9c: + 39:c1:c0:4a:f6:d3:1c:ae:d3:6d:bb:c7:18:f0:7e: + ed:f6:80:ce:d0:01:2e:89:de:12:ba:ee:11:cb:a6: + 7a:d7:0d:7c:f3:08:8d:72:9d:bf:55:75:13:70:bb: + 31:22:4a:cb:e8:c0:aa:a4:09:aa:36:68:40:60:74: + 9d:e7:19:81:43:22:52:fe:c9:2b:52:0f:41:13:36: + 09:72:65:95:cc:89:ae:6f:56:17:16:34:73:52:a3: + 04:ed:bd:88:82:8a:eb:d7:dc:82:52:9c:06:e1:52: + 85:41 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Key Usage: critical + Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment, Key Agreement, Certificate Sign, CRL Sign + X509v3 Subject Key Identifier: + BA:52:E9:49:83:24:86:52:2F:C7:99:CD:FC:8D:6B:69:08:4D:C0:50 + Signature Algorithm: sha256WithRSAEncryption + 0f:f1:e9:82:a2:0a:87:9f:2d:94:60:5a:b2:c0:4b:a1:2f:2b: + 3b:47:d5:0a:99:86:38:b2:ec:c6:3b:89:e4:6e:07:cf:14:c7: + c7:e8:cf:99:8f:aa:30:c3:19:70:b9:e6:6d:d6:3f:c8:68:26: + b2:a0:a5:37:42:ca:d8:62:80:d1:a2:5a:48:2e:1f:85:3f:0c: + 7b:c2:c7:94:11:5f:19:2a:95:ac:a0:3a:03:d8:91:5b:2e:0d: + 9c:7c:1f:2e:fc:e9:44:e1:16:26:73:1c:45:4a:65:c1:83:4c: + 90:f3:f2:28:42:df:db:c4:e7:04:12:18:62:43:5e:bc:1f:6c: + 84:e6:bc:49:32:df:61:d7:99:ee:e4:90:52:7b:0a:c2:91:8a: + 98:62:66:b1:c8:e0:b7:5a:b5:46:7c:76:71:54:8e:cc:a4:81: + 5c:19:db:d2:6f:66:b5:bb:2b:ae:6b:c9:74:04:a8:24:de:e8: + c5:d3:fc:2c:1c:d7:8f:db:6a:8d:c9:53:be:5d:50:73:ac:cf: + 1f:93:c0:52:50:5b:a2:4f:fe:ad:65:36:17:46:d1:2d:e5:a2: + 90:66:05:db:29:4e:5d:50:5d:e3:4f:da:a0:8f:f0:6b:e4:16: + 70:dd:7f:f3:77:7d:b9:4e:f9:ec:c3:33:02:d7:e9:63:2f:31: + e7:40:61:a4 +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIBATANBgkqhkiG9w0BAQsFADBdMQ4wDAYDVQQKEwVJQ0FO +TjEmMCQGA1UECxMdSUNBTk4gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxFjAUBgNV +BAMTDUlDQU5OIFJvb3QgQ0ExCzAJBgNVBAYTAlVTMB4XDTA5MTIyMzA0MTkxMloX +DTI5MTIxODA0MTkxMlowXTEOMAwGA1UEChMFSUNBTk4xJjAkBgNVBAsTHUlDQU5O +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRYwFAYDVQQDEw1JQ0FOTiBSb290IENB +MQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKDb +cLhPNNqc1NB+u+oVvOnJESofYS9qub0/PXagmgr37pNublVThIzyLPGCJ8gPms9S +G1TaKNIsMI7d+5IgMy3WyPEOECGIcfqEIktdR1YWfJufXcMReZwU4v/AdKzdOdfg +ONiwc6r70duEr1IiqPbVm5T05l1e6D+HkAvHGnf1LtOPGs4CHQdpIUcy2kauAEy2 +paKcOcHASvbTHK7TbbvHGPB+7faAztABLoneErruEcumetcNfPMIjXKdv1V1E3C7 +MSJKy+jAqqQJqjZoQGB0necZgUMiUv7JK1IPQRM2CXJllcyJrm9WFxY0c1KjBO29 +iIKK69fcglKcBuFShUECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B +Af8EBAMCAf4wHQYDVR0OBBYEFLpS6UmDJIZSL8eZzfyNa2kITcBQMA0GCSqGSIb3 +DQEBCwUAA4IBAQAP8emCogqHny2UYFqywEuhLys7R9UKmYY4suzGO4nkbgfPFMfH +6M+Zj6owwxlwueZt1j/IaCayoKU3QsrYYoDRolpILh+FPwx7wseUEV8ZKpWsoDoD +2JFbLg2cfB8u/OlE4RYmcxxFSmXBg0yQ8/IoQt/bxOcEEhhiQ168H2yE5rxJMt9h +15nu5JBSewrCkYqYYmaxyOC3WrVGfHZxVI7MpIFcGdvSb2a1uyuua8l0BKgk3ujF +0/wsHNeP22qNyVO+XVBzrM8fk8BSUFuiT/6tZTYXRtEt5aKQZgXbKU5dUF3jT9qg +j/Br5BZw3X/zd325TvnswzMC1+ljLzHnQGGk +-----END CERTIFICATE----- +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 2 (0x2) + Signature Algorithm: sha256WithRSAEncryption + Issuer: O=ICANN, OU=ICANN Certification Authority, CN=ICANN Root CA, C=US + Validity + Not Before: Dec 23 04:45:04 2009 GMT + Not After : Dec 22 04:45:04 2014 GMT + Subject: O=ICANN, CN=ICANN DNSSEC CA/emailAddress=dnssec@icann.org + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public Key: (2048 bit) + Modulus (2048 bit): + 00:c0:bf:e2:b4:ee:12:46:36:3b:7c:d2:46:21:64: + 5a:93:e1:e3:02:10:25:bb:a5:30:70:19:89:98:7e: + 9e:db:8e:0f:ac:c8:48:66:0e:1a:f8:81:e5:2d:3c: + 7b:39:39:76:28:8f:ee:0a:a7:dd:64:e9:5f:87:25: + b1:64:e5:59:03:fc:bc:29:3b:63:37:c8:d7:46:9a: + b6:ce:87:55:cd:cf:e2:ab:e9:c7:8a:53:2e:25:87: + b0:98:d6:20:a3:a8:ec:87:b0:39:a3:c4:c5:75:59: + 3c:fb:91:03:fa:ee:7f:e9:2b:b6:70:88:69:2c:e6: + f1:4f:fc:d0:47:b4:e9:a0:2c:fa:0c:c3:84:eb:be: + 73:5a:bc:16:ed:d0:83:02:2d:eb:6a:21:02:51:70: + 29:1e:4f:c9:69:03:9f:91:32:5c:2c:1a:9f:5e:45: + 48:2a:50:ee:72:14:ec:17:29:fc:20:95:7d:22:6a: + c6:6f:83:a2:58:8e:b1:64:c8:73:23:54:6c:69:1d: + 66:1f:df:f8:4f:24:a1:a8:ae:00:7f:e9:89:41:a6: + e3:88:1d:3a:e1:b3:3a:ef:29:45:32:9b:94:2e:b7: + 6c:1e:fe:31:40:13:e1:bd:52:67:d0:d8:c3:3e:03: + 84:48:72:9d:bd:8a:48:a0:f2:72:35:b6:03:4b:c6: + e9:05 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Key Usage: critical + Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment, Key Agreement, Certificate Sign, CRL Sign + X509v3 Authority Key Identifier: + keyid:BA:52:E9:49:83:24:86:52:2F:C7:99:CD:FC:8D:6B:69:08:4D:C0:50 + + X509v3 Subject Key Identifier: + 8F:B2:42:69:C3:9D:E4:3C:FA:13:B9:FF:F2:C0:A4:EF:D8:0F:E8:22 + Signature Algorithm: sha256WithRSAEncryption + 4a:78:a2:47:7e:3f:2e:4d:78:68:ab:06:5c:ff:da:01:04:45: + 92:20:20:88:f3:dc:4e:70:01:9b:cb:f3:13:61:34:04:09:15: + d0:be:99:1c:be:fc:97:e9:2d:73:e1:b3:2b:a6:b9:3a:41:33: + f3:83:3d:64:1b:64:95:bf:ae:cd:20:df:18:e0:62:8d:fa:9c: + f7:d8:a9:3c:25:2b:8e:cf:10:e5:29:b9:af:1a:7f:62:64:75: + e7:c6:fd:9b:6d:71:c0:a9:b3:0f:9a:b7:7a:fe:53:04:18:cd: + 04:06:d9:bf:01:0e:cc:04:84:84:51:a3:e9:06:2a:a3:25:73: + 4e:8d:62:19:13:25:5b:de:0b:dc:d0:69:01:ca:41:0a:96:13: + cf:6a:11:fe:2b:9a:3f:fd:56:3d:73:3d:58:49:c2:71:83:20: + 23:6d:46:99:6e:37:91:9f:76:2a:9c:b0:69:3f:64:9f:05:bb: + 38:c8:1e:ca:d8:6c:fd:56:3e:a6:85:a2:53:80:c6:42:b6:79: + c6:43:0b:e0:6c:ea:9f:cf:b0:2a:2c:01:50:c3:d8:0f:a0:7e: + a1:73:a8:5c:84:27:5b:c9:4b:5a:13:e9:69:25:1c:59:11:d2: + 01:dc:da:e7:c8:44:34:a2:e4:99:25:b4:c3:23:b5:f8:2d:48: + e5:8d:06:73 +-----BEGIN CERTIFICATE----- +MIIDhjCCAm6gAwIBAgIBAjANBgkqhkiG9w0BAQsFADBdMQ4wDAYDVQQKEwVJQ0FO +TjEmMCQGA1UECxMdSUNBTk4gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxFjAUBgNV +BAMTDUlDQU5OIFJvb3QgQ0ExCzAJBgNVBAYTAlVTMB4XDTA5MTIyMzA0NDUwNFoX +DTE0MTIyMjA0NDUwNFowSzEOMAwGA1UEChMFSUNBTk4xGDAWBgNVBAMTD0lDQU5O +IEROU1NFQyBDQTEfMB0GCSqGSIb3DQEJARMQZG5zc2VjQGljYW5uLm9yZzCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMC/4rTuEkY2O3zSRiFkWpPh4wIQ +JbulMHAZiZh+ntuOD6zISGYOGviB5S08ezk5diiP7gqn3WTpX4clsWTlWQP8vCk7 +YzfI10aats6HVc3P4qvpx4pTLiWHsJjWIKOo7IewOaPExXVZPPuRA/ruf+krtnCI +aSzm8U/80Ee06aAs+gzDhOu+c1q8Fu3QgwIt62ohAlFwKR5PyWkDn5EyXCwan15F +SCpQ7nIU7Bcp/CCVfSJqxm+DoliOsWTIcyNUbGkdZh/f+E8koaiuAH/piUGm44gd +OuGzOu8pRTKblC63bB7+MUAT4b1SZ9DYwz4DhEhynb2KSKDycjW2A0vG6QUCAwEA +AaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAf4wHwYDVR0jBBgw +FoAUulLpSYMkhlIvx5nN/I1raQhNwFAwHQYDVR0OBBYEFI+yQmnDneQ8+hO5//LA +pO/YD+giMA0GCSqGSIb3DQEBCwUAA4IBAQBKeKJHfj8uTXhoqwZc/9oBBEWSICCI +89xOcAGby/MTYTQECRXQvpkcvvyX6S1z4bMrprk6QTPzgz1kG2SVv67NIN8Y4GKN ++pz32Kk8JSuOzxDlKbmvGn9iZHXnxv2bbXHAqbMPmrd6/lMEGM0EBtm/AQ7MBISE +UaPpBiqjJXNOjWIZEyVb3gvc0GkBykEKlhPPahH+K5o//VY9cz1YScJxgyAjbUaZ +bjeRn3YqnLBpP2SfBbs4yB7K2Gz9Vj6mhaJTgMZCtnnGQwvgbOqfz7AqLAFQw9gP +oH6hc6hchCdbyUtaE+lpJRxZEdIB3NrnyEQ0ouSZJbTDI7X4LUjljQZz +-----END CERTIFICATE----- +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 6 (0x6) + Signature Algorithm: sha256WithRSAEncryption + Issuer: O=ICANN, OU=ICANN Certification Authority, CN=ICANN Root CA, C=US + Validity + Not Before: Dec 23 05:21:16 2009 GMT + Not After : Dec 22 05:21:16 2014 GMT + Subject: O=ICANN, CN=ICANN EMAIL CA + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public Key: (2048 bit) + Modulus (2048 bit): + 00:d2:19:1e:22:69:33:f6:a4:d2:76:c5:80:11:75: + 8e:d0:e8:6f:bf:89:f8:2a:6a:da:8a:85:28:40:ba: + c5:23:5f:47:ed:72:e2:8e:d3:5c:c8:8a:3a:99:a9: + 57:2c:0a:2b:22:f3:54:7b:8b:f7:8c:21:a2:50:01: + 4f:8b:af:34:df:72:fc:78:31:d0:1d:eb:bc:9b:e6: + fa:c1:84:d0:05:07:8a:74:53:a5:60:9e:eb:75:9e: + a8:5d:32:c8:02:32:e4:bf:cb:97:9b:7a:fa:2c:f6: + 6a:1d:b8:57:ad:e3:03:22:93:d0:f4:4f:a8:b8:01: + db:82:33:98:b6:87:ed:3d:67:40:00:27:2e:d5:95: + d2:ad:36:46:14:c6:17:79:65:7f:65:f3:88:80:65: + 7c:22:67:08:23:3c:cf:a5:10:38:72:30:97:92:6f: + 20:4a:ba:24:4c:4a:c8:4a:a5:dc:2a:44:a1:29:78: + b4:9f:fe:84:ff:27:5b:3a:72:ea:31:c1:ad:06:22: + d6:44:a0:4a:57:32:9c:f2:46:47:d0:89:6e:20:23: + 2c:ea:b0:83:7e:c1:f3:ea:da:dd:e3:63:59:97:21: + fa:1b:11:39:27:cf:82:8b:56:15:d4:36:92:0c:a5: + 7e:80:e0:18:c9:50:08:42:0a:df:97:3c:9c:b8:0a: + 4d:b1 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Key Usage: critical + Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment, Key Agreement, Certificate Sign, CRL Sign + X509v3 Authority Key Identifier: + keyid:BA:52:E9:49:83:24:86:52:2F:C7:99:CD:FC:8D:6B:69:08:4D:C0:50 + + X509v3 Subject Key Identifier: + 7B:3F:BA:CE:A1:B3:A6:13:2E:5A:82:84:D4:D2:EA:A5:24:F1:CD:B4 + Signature Algorithm: sha256WithRSAEncryption + 50:07:a5:61:39:e4:3b:e3:bc:1c:b4:a7:b2:ab:a1:fb:47:bf: + b4:1c:32:ac:3c:46:b0:02:26:2f:16:3e:89:70:e2:87:e9:76: + 99:61:0b:91:c5:48:7a:e5:aa:24:0b:39:e0:4f:26:03:d4:5b: + 01:8a:4d:b6:98:cc:16:fa:e2:12:4a:88:b9:53:bb:50:2d:c7: + 37:b8:a3:82:2d:52:05:3e:46:a7:db:97:82:73:8d:7d:ed:dd: + 9e:37:73:68:6b:90:cd:62:d8:77:ff:32:53:bb:d3:a1:b9:cb: + 7d:32:29:70:fb:2e:90:4b:27:12:6d:99:a5:e6:d4:ef:13:32: + c1:2f:b5:ae:6e:11:0e:50:56:a4:56:5b:76:b0:c0:99:2e:5a: + 94:17:ee:2b:c1:b6:9c:8b:68:ac:55:95:31:8c:66:2b:35:43: + a5:13:04:1b:50:44:1c:55:7f:4c:d0:1a:50:80:53:45:a8:e3: + d3:a8:74:ad:7d:6a:d6:e9:9a:d3:25:7d:83:e2:57:64:1a:94: + 7e:bc:cb:ef:79:b5:54:6a:f1:b0:c3:81:26:90:e5:40:87:ed: + 75:7d:83:63:5b:ab:45:c0:34:04:27:e8:d8:12:26:7c:5e:c0: + 48:b6:33:7d:4b:db:23:8a:f7:13:24:bc:be:7b:74:cb:c4:ed: + ed:42:eb:2f +-----BEGIN CERTIFICATE----- +MIIDZDCCAkygAwIBAgIBBjANBgkqhkiG9w0BAQsFADBdMQ4wDAYDVQQKEwVJQ0FO +TjEmMCQGA1UECxMdSUNBTk4gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxFjAUBgNV +BAMTDUlDQU5OIFJvb3QgQ0ExCzAJBgNVBAYTAlVTMB4XDTA5MTIyMzA1MjExNloX +DTE0MTIyMjA1MjExNlowKTEOMAwGA1UEChMFSUNBTk4xFzAVBgNVBAMTDklDQU5O +IEVNQUlMIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0hkeImkz +9qTSdsWAEXWO0Ohvv4n4KmraioUoQLrFI19H7XLijtNcyIo6malXLAorIvNUe4v3 +jCGiUAFPi68033L8eDHQHeu8m+b6wYTQBQeKdFOlYJ7rdZ6oXTLIAjLkv8uXm3r6 +LPZqHbhXreMDIpPQ9E+ouAHbgjOYtoftPWdAACcu1ZXSrTZGFMYXeWV/ZfOIgGV8 +ImcIIzzPpRA4cjCXkm8gSrokTErISqXcKkShKXi0n/6E/ydbOnLqMcGtBiLWRKBK +VzKc8kZH0IluICMs6rCDfsHz6trd42NZlyH6GxE5J8+Ci1YV1DaSDKV+gOAYyVAI +QgrflzycuApNsQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +AwIB/jAfBgNVHSMEGDAWgBS6UulJgySGUi/Hmc38jWtpCE3AUDAdBgNVHQ4EFgQU +ez+6zqGzphMuWoKE1NLqpSTxzbQwDQYJKoZIhvcNAQELBQADggEBAFAHpWE55Dvj +vBy0p7KroftHv7QcMqw8RrACJi8WPolw4ofpdplhC5HFSHrlqiQLOeBPJgPUWwGK +TbaYzBb64hJKiLlTu1Atxze4o4ItUgU+Rqfbl4JzjX3t3Z43c2hrkM1i2Hf/MlO7 +06G5y30yKXD7LpBLJxJtmaXm1O8TMsEvta5uEQ5QVqRWW3awwJkuWpQX7ivBtpyL +aKxVlTGMZis1Q6UTBBtQRBxVf0zQGlCAU0Wo49OodK19atbpmtMlfYPiV2QalH68 +y+95tVRq8bDDgSaQ5UCH7XV9g2Nbq0XANAQn6NgSJnxewEi2M31L2yOK9xMkvL57 +dMvE7e1C6y8= +-----END CERTIFICATE----- +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 3 (0x3) + Signature Algorithm: sha256WithRSAEncryption + Issuer: O=ICANN, OU=ICANN Certification Authority, CN=ICANN Root CA, C=US + Validity + Not Before: Dec 23 05:07:29 2009 GMT + Not After : Dec 22 05:07:29 2014 GMT + Subject: O=ICANN, CN=ICANN SSL CA + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public Key: (2048 bit) + Modulus (2048 bit): + 00:dd:c6:ab:bf:7c:66:9d:b3:2b:96:00:14:c7:60: + 7a:8d:62:5b:26:4b:30:d7:b3:4c:82:69:c6:4d:4d: + 73:f3:d4:91:21:5d:ab:35:f0:c8:04:0e:f4:a3:35: + e2:e1:18:a9:98:12:03:58:f8:9f:eb:77:54:5b:89: + 81:26:c9:aa:c2:f4:c9:0c:82:57:2a:5e:05:e9:61: + 17:cc:19:18:71:eb:35:83:c1:86:9d:ec:f1:6b:ca: + dd:a1:96:0b:95:d4:e1:0f:9e:24:6f:dc:3c:d0:28: + 9e:f2:53:47:2b:a1:ad:32:03:c8:3f:0d:80:80:7d: + f0:02:d2:6e:5a:2c:44:21:9b:09:50:15:3f:a1:3d: + d3:c9:c8:24:e7:ea:4e:92:2f:94:90:2e:de:e7:68: + f6:c6:b3:90:1f:bc:c9:7b:a2:65:d7:11:e9:8b:f0: + 3a:5a:b7:17:07:df:69:e3:6e:b9:54:6a:8e:3a:aa: + 94:7f:2c:0a:a1:ad:ba:b7:d9:60:62:27:a7:71:40: + 3b:8e:b0:84:7b:b8:c8:67:ef:66:ba:3d:ac:c3:85: + e5:86:bb:a7:9c:fd:b6:e1:c0:10:53:3d:d4:7e:1b: + 09:e6:9f:22:5c:a7:27:09:7e:27:12:33:fa:df:9b: + 20:2f:14:f7:17:c0:e4:1e:07:91:1f:f9:9a:cd:a8: + e2:c5 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: critical + CA:TRUE + X509v3 Key Usage: critical + Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment, Key Agreement, Certificate Sign, CRL Sign + X509v3 Authority Key Identifier: + keyid:BA:52:E9:49:83:24:86:52:2F:C7:99:CD:FC:8D:6B:69:08:4D:C0:50 + + X509v3 Subject Key Identifier: + 6E:77:A8:40:10:4A:D8:9C:0C:F2:B7:5A:3A:A5:2F:79:4A:61:14:D8 + Signature Algorithm: sha256WithRSAEncryption + 18:42:62:df:aa:8e:44:e6:87:10:4d:d9:a6:b2:c3:97:37:43: + 2e:ce:f3:e0:3c:c2:2f:e1:78:60:41:a9:2b:5d:f4:24:f5:f6: + 57:a2:08:ec:9c:89:e5:54:50:a8:30:c6:20:e5:8a:c7:8b:bd: + fd:98:b6:0c:7d:1a:1f:01:a1:4a:4e:ec:0d:2a:aa:9f:fd:a9: + 20:0d:b3:5c:0f:36:c0:2c:2b:c6:75:22:29:66:a3:34:bd:93: + 3d:f6:28:da:90:d5:7e:91:df:d3:06:f6:69:8b:80:9b:a5:34: + af:6a:02:5b:e4:52:7d:56:4d:99:6e:fe:e9:d0:36:99:58:d9: + af:cd:79:9b:e5:d2:4c:35:90:d3:e0:68:b2:88:2b:18:39:2e: + bc:0b:d9:82:84:7f:24:12:92:d2:b9:13:4f:64:bc:46:e1:5c: + 6a:ed:f7:b0:d4:66:27:25:21:86:b4:3a:5e:19:a3:c7:8b:4b: + 93:b9:2e:37:e2:6d:8b:46:ee:68:39:21:75:e8:fe:2a:a7:85: + fd:68:26:96:bd:dd:f9:f1:fe:99:5f:b4:a4:97:1b:50:18:fa: + 21:90:54:0c:8b:30:28:94:70:19:34:9e:5c:e1:e5:48:93:af: + aa:a3:b4:95:b2:f5:4c:97:50:44:58:97:e1:ff:e7:b2:10:dd: + 2c:fe:c0:ed +-----BEGIN CERTIFICATE----- +MIIDYjCCAkqgAwIBAgIBAzANBgkqhkiG9w0BAQsFADBdMQ4wDAYDVQQKEwVJQ0FO +TjEmMCQGA1UECxMdSUNBTk4gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxFjAUBgNV +BAMTDUlDQU5OIFJvb3QgQ0ExCzAJBgNVBAYTAlVTMB4XDTA5MTIyMzA1MDcyOVoX +DTE0MTIyMjA1MDcyOVowJzEOMAwGA1UEChMFSUNBTk4xFTATBgNVBAMTDElDQU5O +IFNTTCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN3Gq798Zp2z +K5YAFMdgeo1iWyZLMNezTIJpxk1Nc/PUkSFdqzXwyAQO9KM14uEYqZgSA1j4n+t3 +VFuJgSbJqsL0yQyCVypeBelhF8wZGHHrNYPBhp3s8WvK3aGWC5XU4Q+eJG/cPNAo +nvJTRyuhrTIDyD8NgIB98ALSblosRCGbCVAVP6E908nIJOfqTpIvlJAu3udo9saz +kB+8yXuiZdcR6YvwOlq3FwffaeNuuVRqjjqqlH8sCqGturfZYGInp3FAO46whHu4 +yGfvZro9rMOF5Ya7p5z9tuHAEFM91H4bCeafIlynJwl+JxIz+t+bIC8U9xfA5B4H +kR/5ms2o4sUCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +Af4wHwYDVR0jBBgwFoAUulLpSYMkhlIvx5nN/I1raQhNwFAwHQYDVR0OBBYEFG53 +qEAQSticDPK3WjqlL3lKYRTYMA0GCSqGSIb3DQEBCwUAA4IBAQAYQmLfqo5E5ocQ +TdmmssOXN0MuzvPgPMIv4XhgQakrXfQk9fZXogjsnInlVFCoMMYg5YrHi739mLYM +fRofAaFKTuwNKqqf/akgDbNcDzbALCvGdSIpZqM0vZM99ijakNV+kd/TBvZpi4Cb +pTSvagJb5FJ9Vk2Zbv7p0DaZWNmvzXmb5dJMNZDT4GiyiCsYOS68C9mChH8kEpLS +uRNPZLxG4Vxq7few1GYnJSGGtDpeGaPHi0uTuS434m2LRu5oOSF16P4qp4X9aCaW +vd358f6ZX7SklxtQGPohkFQMizAolHAZNJ5c4eVIk6+qo7SVsvVMl1BEWJfh/+ey +EN0s/sDt +-----END CERTIFICATE----- diff --git a/config/unbound/root.hints b/config/unbound/root.hints new file mode 100644 index 0000000..3c82146 --- /dev/null +++ b/config/unbound/root.hints @@ -0,0 +1,90 @@ +; This file holds the information on root name servers needed to +; initialize cache of Internet domain name servers +; (e.g. reference this file in the "cache . <file>" +; configuration file of BIND domain name servers). +; +; This file is made available by InterNIC +; under anonymous FTP as +; file /domain/named.cache +; on server FTP.INTERNIC.NET +; -OR- RS.INTERNIC.NET +; +; last update: March 23, 2016 +; related version of root zone: 2016032301 +; +; formerly NS.INTERNIC.NET +; +. 3600000 NS A.ROOT-SERVERS.NET. +A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4 +A.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:ba3e::2:30 +; +; FORMERLY NS1.ISI.EDU +; +. 3600000 NS B.ROOT-SERVERS.NET. +B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201 +B.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:84::b +; +; FORMERLY C.PSI.NET +; +. 3600000 NS C.ROOT-SERVERS.NET. +C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12 +C.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2::c +; +; FORMERLY TERP.UMD.EDU +; +. 3600000 NS D.ROOT-SERVERS.NET. +D.ROOT-SERVERS.NET. 3600000 A 199.7.91.13 +D.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2d::d +; +; FORMERLY NS.NASA.GOV +; +. 3600000 NS E.ROOT-SERVERS.NET. +E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10 +; +; FORMERLY NS.ISC.ORG +; +. 3600000 NS F.ROOT-SERVERS.NET. +F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241 +F.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2f::f +; +; FORMERLY NS.NIC.DDN.MIL +; +. 3600000 NS G.ROOT-SERVERS.NET. +G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4 +; +; FORMERLY AOS.ARL.ARMY.MIL +; +. 3600000 NS H.ROOT-SERVERS.NET. +H.ROOT-SERVERS.NET. 3600000 A 198.97.190.53 +H.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:1::53 +; +; FORMERLY NIC.NORDU.NET +; +. 3600000 NS I.ROOT-SERVERS.NET. +I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17 +I.ROOT-SERVERS.NET. 3600000 AAAA 2001:7fe::53 +; +; OPERATED BY VERISIGN, INC. +; +. 3600000 NS J.ROOT-SERVERS.NET. +J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30 +J.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:c27::2:30 +; +; OPERATED BY RIPE NCC +; +. 3600000 NS K.ROOT-SERVERS.NET. +K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129 +K.ROOT-SERVERS.NET. 3600000 AAAA 2001:7fd::1 +; +; OPERATED BY ICANN +; +. 3600000 NS L.ROOT-SERVERS.NET. +L.ROOT-SERVERS.NET. 3600000 A 199.7.83.42 +L.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:9f::42 +; +; OPERATED BY WIDE +; +. 3600000 NS M.ROOT-SERVERS.NET. +M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33 +M.ROOT-SERVERS.NET. 3600000 AAAA 2001:dc3::35 +; End of file diff --git a/config/unbound/root.key b/config/unbound/root.key new file mode 100644 index 0000000..0c36abe --- /dev/null +++ b/config/unbound/root.key @@ -0,0 +1 @@ +. 172800 IN DNSKEY 257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0= ;{id = 19036 (ksk), size = 2048b} diff --git a/config/unbound/unbound-dhcp-leases-bridge b/config/unbound/unbound-dhcp-leases-bridge new file mode 100644 index 0000000..54cd813 --- /dev/null +++ b/config/unbound/unbound-dhcp-leases-bridge @@ -0,0 +1,583 @@ +#!/usr/bin/python +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2016 Michael Tremer # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +import argparse +import datetime +import daemon +import ipaddress +import logging +import logging.handlers +import re +import signal +import subprocess + +import inotify.adapters + +LOCAL_TTL = 60 + +def setup_logging(loglevel=logging.INFO): + log = logging.getLogger("dhcp") + log.setLevel(loglevel) + + handler = logging.handlers.SysLogHandler(address="/dev/log", facility="daemon") + handler.setLevel(loglevel) + + formatter = logging.Formatter("%(name)s[%(process)d]: %(message)s") + handler.setFormatter(formatter) + + log.addHandler(handler) + + return log + +log = logging.getLogger("dhcp") + +def ip_address_to_reverse_pointer(address): + parts = address.split(".") + parts.reverse() + + return "%s.in-addr.arpa" % ".".join(parts) + +def reverse_pointer_to_ip_address(rr): + parts = rr.split(".") + + # Only take IP address part + parts = reversed(parts[0:4]) + + return ".".join(parts) + +class UnboundDHCPLeasesBridge(object): + def __init__(self, dhcp_leases_file, fix_leases_file, unbound_leases_file, hosts_file): + self.leases_file = dhcp_leases_file + self.fix_leases_file = fix_leases_file + self.hosts_file = hosts_file + + self.unbound = UnboundConfigWriter(unbound_leases_file) + self.running = False + + def run(self): + log.info("Unbound DHCP Leases Bridge started on %s" % self.leases_file) + self.running = True + + # Initial setup + self.hosts = self.read_static_hosts() + self.update_dhcp_leases() + + i = inotify.adapters.Inotify([ + self.leases_file, + self.fix_leases_file, + self.hosts_file, + ]) + + for event in i.event_gen(): + # End if we are requested to terminate + if not self.running: + break + + if event is None: + continue + + header, type_names, watch_path, filename = event + + # Update leases after leases file has been modified + if "IN_MODIFY" in type_names: + # Reload hosts + if watch_path == self.hosts_file: + self.hosts = self.read_static_hosts() + + self.update_dhcp_leases() + + # If the file is deleted, we re-add the watcher + if "IN_IGNORED" in type_names: + i.add_watch(watch_path) + + log.info("Unbound DHCP Leases Bridge terminated") + + def update_dhcp_leases(self): + leases = [] + + for lease in DHCPLeases(self.leases_file): + # Don't bother with any leases that don't have a hostname + if not lease.fqdn: + continue + + leases.append(lease) + + for lease in FixLeases(self.fix_leases_file): + leases.append(lease) + + # Skip any leases that also are a static host + leases = [l for l in leases if not l.fqdn in self.hosts] + + # Remove any inactive or expired leases + leases = [l for l in leases if l.active and not l.expired] + + # Dump leases + if leases: + log.debug("DHCP Leases:") + for lease in leases: + log.debug(" %s:" % lease.fqdn) + log.debug(" State: %s" % lease.binding_state) + log.debug(" Start: %s" % lease.time_starts) + log.debug(" End : %s" % lease.time_ends) + if lease.expired: + log.debug(" Expired") + + self.unbound.update_dhcp_leases(leases) + + def read_static_hosts(self): + log.info("Reading static hosts from %s" % self.hosts_file) + + hosts = {} + with open(self.hosts_file) as f: + for line in f.readlines(): + line = line.rstrip() + + try: + enabled, ipaddr, hostname, domainname = line.split(",") + except: + log.warning("Could not parse line: %s" % line) + continue + + # Skip any disabled entries + if not enabled == "on": + continue + + if hostname and domainname: + fqdn = "%s.%s" % (hostname, domainname) + elif hostname: + fqdn = hostname + elif domainname: + fqdn = domainname + + try: + hosts[fqdn].append(ipaddr) + hosts[fqdn].sort() + except KeyError: + hosts[fqdn] = [ipaddr,] + + # Dump everything in the logs + log.debug("Static hosts:") + for hostname, addresses in hosts.items(): + log.debug(" %-20s : %s" % (hostname, ", ".join(addresses))) + + return hosts + + def terminate(self): + self.running = False + + +class DHCPLeases(object): + regex_leaseblock = re.compile(r"lease (?P<ipaddr>\d+.\d+.\d+.\d+) {(?P<config>[\s\S]+?)\n}") + + def __init__(self, path): + self.path = path + + self._leases = self._parse() + + def __iter__(self): + return iter(self._leases) + + def _parse(self): + log.info("Reading DHCP leases from %s" % self.path) + + leases = [] + + with open(self.path) as f: + # Read entire leases file + data = f.read() + + for match in self.regex_leaseblock.finditer(data): + block = match.groupdict() + + ipaddr = block.get("ipaddr") + config = block.get("config") + + properties = self._parse_block(config) + + # Skip any abandoned leases + if not "hardware" in properties: + continue + + lease = Lease(ipaddr, properties) + + # Check if a lease for this Ethernet address already + # exists in the list of known leases. If so replace + # if with the most recent lease + for i, l in enumerate(leases): + if l.ipaddr == lease.ipaddr: + leases[i] = max(lease, l) + break + + else: + leases.append(lease) + + return leases + + def _parse_block(self, block): + properties = {} + + for line in block.splitlines(): + if not line: + continue + + # Remove trailing ; from line + if line.endswith(";"): + line = line[:-1] + + # Invalid line if it doesn't end with ; + else: + continue + + # Remove any leading whitespace + line = line.lstrip() + + # We skip all options and sets + if line.startswith("option") or line.startswith("set"): + continue + + # Split by first space + key, val = line.split(" ", 1) + properties[key] = val + + return properties + + +class FixLeases(object): + cache = {} + + def __init__(self, path): + self.path = path + + self._leases = self.cache[self.path] = self._parse() + + def __iter__(self): + return iter(self._leases) + + def _parse(self): + log.info("Reading fix leases from %s" % self.path) + + leases = [] + now = datetime.datetime.utcnow() + + with open(self.path) as f: + for line in f.readlines(): + line = line.rstrip() + + try: + hwaddr, ipaddr, enabled, a, b, c, hostname = line.split(",") + except ValueError: + log.warning("Could not parse line: %s" % line) + continue + + # Skip any disabled leases + if not enabled == "on": + continue + + l = Lease(ipaddr, { + "binding" : "state active", + "client-hostname" : hostname, + "hardware" : "ethernet %s" % hwaddr, + "starts" : now.strftime("%w %Y/%m/%d %H:%M:%S"), + "ends" : "never", + }) + leases.append(l) + + # Try finding any deleted leases + for lease in self.cache.get(self.path, []): + if lease in leases: + continue + + # Free the deleted lease + lease.free() + leases.append(lease) + + return leases + + +class Lease(object): + def __init__(self, ipaddr, properties): + self.ipaddr = ipaddr + self._properties = properties + + def __repr__(self): + return "<%s %s for %s (%s)>" % (self.__class__.__name__, + self.ipaddr, self.hwaddr, self.hostname) + + def __eq__(self, other): + return self.ipaddr == other.ipaddr and self.hwaddr == other.hwaddr + + def __gt__(self, other): + if not self.ipaddr == other.ipaddr: + return + + if not self.hwaddr == other.hwaddr: + return + + return self.time_starts > other.time_starts + + @property + def binding_state(self): + state = self._properties.get("binding") + + if state: + state = state.split(" ", 1) + return state[1] + + def free(self): + self._properties.update({ + "binding" : "state free", + }) + + @property + def active(self): + return self.binding_state == "active" + + @property + def hwaddr(self): + hardware = self._properties.get("hardware") + + if not hardware: + return + + ethernet, address = hardware.split(" ", 1) + + return address + + @property + def hostname(self): + hostname = self._properties.get("client-hostname") + + if hostname is None: + return + + # Remove any "" + hostname = hostname.replace(""", "") + + # Only return valid hostnames + m = re.match(r"^[A-Z0-9-]{1,63}$", hostname, re.I) + if m: + return hostname + + @property + def domain(self): + # Load ethernet settings + ethernet_settings = self.read_settings("/var/ipfire/ethernet/settings") + + # Load DHCP settings + dhcp_settings = self.read_settings("/var/ipfire/dhcp/settings") + + subnets = {} + for zone in ("GREEN", "BLUE"): + if not dhcp_settings.get("ENABLE_%s" % zone) == "on": + continue + + netaddr = ethernet_settings.get("%s_NETADDRESS" % zone) + submask = ethernet_settings.get("%s_NETMASK" % zone) + + subnet = ipaddress.ip_network("%s/%s" % (netaddr, submask)) + domain = dhcp_settings.get("DOMAIN_NAME_%s" % zone) + + subnets[subnet] = domain + + address = ipaddress.ip_address(self.ipaddr) + + for subnet, domain in subnets.items(): + if address in subnet: + return domain + + # Fall back to localdomain if no match could be found + return "localdomain" + + @staticmethod + def read_settings(filename): + settings = {} + + with open(filename) as f: + for line in f.readlines(): + # Remove line-breaks + line = line.rstrip() + + k, v = line.split("=", 1) + settings[k] = v + + return settings + + @property + def fqdn(self): + if self.hostname: + return "%s.%s" % (self.hostname, self.domain) + + @staticmethod + def _parse_time(s): + return datetime.datetime.strptime(s, "%w %Y/%m/%d %H:%M:%S") + + @property + def time_starts(self): + starts = self._properties.get("starts") + + if starts: + return self._parse_time(starts) + + @property + def time_ends(self): + ends = self._properties.get("ends") + + if not ends or ends == "never": + return + + return self._parse_time(ends) + + @property + def expired(self): + if not self.time_ends: + return self.time_starts > datetime.datetime.utcnow() + + return self.time_starts > datetime.datetime.utcnow() > self.time_ends + + @property + def rrset(self): + # If the lease does not have a valid FQDN, we cannot create any RRs + if self.fqdn is None: + return [] + + return [ + # Forward record + (self.fqdn, "%s" % LOCAL_TTL, "IN A", self.ipaddr), + + # Reverse record + (ip_address_to_reverse_pointer(self.ipaddr), "%s" % LOCAL_TTL, + "IN PTR", self.fqdn), + ] + + +class UnboundConfigWriter(object): + def __init__(self, path): + self.path = path + + self._cached_leases = [] + + def update_dhcp_leases(self, leases): + # Find any leases that have expired or do not exist any more + # but are still in the unbound local data + removed_leases = [l for l in self._cached_leases if not l in leases] + + # Find any leases that have been added + new_leases = [l for l in leases if l not in self._cached_leases] + + # End here if nothing has changed + if not new_leases and not removed_leases: + return + + # Write out all leases + self.write_dhcp_leases(leases) + + # Update unbound about changes + for l in removed_leases: + try: + for name, ttl, type, content in l.rrset: + log.debug("Removing records for %s" % name) + self._control("local_data_remove", name) + + # If the lease cannot be removed we will try the next one + except: + continue + + # If the removal was successful, we will remove it from the cache + else: + self._cached_leases.remove(l) + + for l in new_leases: + try: + for rr in l.rrset: + log.debug("Adding new record %s" % " ".join(rr)) + self._control("local_data", *rr) + + # If the lease cannot be added we will try the next one + except: + continue + + # Add lease to cache when successfully added + else: + self._cached_leases.append(l) + + def write_dhcp_leases(self, leases): + with open(self.path, "w") as f: + for l in leases: + for rr in l.rrset: + f.write("local-data: "%s"\n" % " ".join(rr)) + + def _control(self, *args): + command = ["unbound-control"] + command.extend(args) + + try: + subprocess.check_output(command) + + # Log any errors + except subprocess.CalledProcessError as e: + log.critical("Could not run %s, error code: %s: %s" % ( + " ".join(command), e.returncode, e.output)) + + raise + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Bridge for DHCP Leases and Unbound DNS") + + # Daemon Stuff + parser.add_argument("--daemon", "-d", action="store_true", + help="Launch as daemon in background") + parser.add_argument("--verbose", "-v", action="count", help="Be more verbose") + + # Paths + parser.add_argument("--dhcp-leases", default="/var/state/dhcp/dhcpd.leases", + metavar="PATH", help="Path to the DHCPd leases file") + parser.add_argument("--unbound-leases", default="/etc/unbound/dhcp-leases.conf", + metavar="PATH", help="Path to the unbound configuration file") + parser.add_argument("--fix-leases", default="/var/ipfire/dhcp/fixleases", + metavar="PATH", help="Path to the fix leases file") + parser.add_argument("--hosts", default="/var/ipfire/main/hosts", + metavar="PATH", help="Path to static hosts file") + + # Parse command line arguments + args = parser.parse_args() + + # Setup logging + if args.verbose == 1: + loglevel = logging.INFO + elif args.verbose >= 2: + loglevel = logging.DEBUG + else: + loglevel = logging.WARN + + setup_logging(loglevel) + + bridge = UnboundDHCPLeasesBridge(args.dhcp_leases, args.fix_leases, + args.unbound_leases, args.hosts) + + ctx = daemon.DaemonContext(detach_process=args.daemon) + ctx.signal_map = { + signal.SIGHUP : bridge.update_dhcp_leases, + signal.SIGTERM : bridge.terminate, + } + + with ctx: + bridge.run() diff --git a/config/unbound/unbound.conf b/config/unbound/unbound.conf new file mode 100644 index 0000000..5193dd9 --- /dev/null +++ b/config/unbound/unbound.conf @@ -0,0 +1,96 @@ +# +# Unbound configuration file for IPFire +# +# The full documentation is available at: +# https://www.unbound.net/documentation/unbound.conf.html +# + +server: + # Common Server Options + chroot: "" + directory: "/etc/unbound" + username: "nobody" + port: 53 + do-ip4: yes + do-ip6: no + do-udp: yes + do-tcp: yes + so-reuseport: yes + do-not-query-localhost: yes + + # System Tuning + include: "/etc/unbound/tuning.conf" + + # Logging Options + verbosity: 1 + use-syslog: yes + log-time-ascii: yes + log-queries: no + + # Unbound Statistics + statistics-interval: 0 + statistics-cumulative: yes + extended-statistics: yes + + # Prefetching + prefetch: yes + prefetch-key: yes + + # Randomise any cached responses + rrset-roundrobin: yes + + # Privacy Options + hide-identity: yes + hide-version: yes + qname-minimisation: yes + minimal-responses: yes + + # DNSSEC + auto-trust-anchor-file: "/var/lib/unbound/root.key" + val-permissive-mode: no + val-clean-additional: yes + val-log-level: 1 + + # Hardening Options + harden-glue: yes + harden-short-bufsize: no + harden-large-queries: yes + harden-dnssec-stripped: yes + harden-below-nxdomain: yes + harden-referral-path: yes + harden-algo-downgrade: no + use-caps-for-id: no + + # Listen on all interfaces + interface: 0.0.0.0 + + # Deny access from everywhere + access-control: 0.0.0.0/0 refuse + + # Allow access from localhost + access-control: 127.0.0.0/8 allow + + # Bootstrap root servers + root-hints: "/etc/unbound/root.hints" + + # IPFire interface configuration + include: "/etc/unbound/interfaces.conf" + interface-automatic: no + + # Include DHCP leases + include: "/etc/unbound/dhcp-leases.conf" + + # Include any forward zones + include: "/etc/unbound/forward.conf" + +remote-control: + control-enable: yes + control-use-cert: yes + control-interface: 127.0.0.1 + server-key-file: "/etc/unbound/unbound_server.key" + server-cert-file: "/etc/unbound/unbound_server.pem" + control-key-file: "/etc/unbound/unbound_control.key" + control-cert-file: "/etc/unbound/unbound_control.pem" + +# Import any local configurations +include: "/etc/unbound/local.d/*.conf" diff --git a/doc/language_issues.de b/doc/language_issues.de index 81807d9..101411e 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -295,6 +295,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: install new update WARNING: translation string unused: installed @@ -325,6 +326,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -383,6 +385,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -669,9 +672,43 @@ WARNING: untranslated string: dead peer detection WARNING: untranslated string: emerging rules WARNING: untranslated string: fwhost cust geoipgrp WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: guardian +WARNING: untranslated string: guardian block a host +WARNING: untranslated string: guardian block httpd brute-force +WARNING: untranslated string: guardian block owncloud brute-force +WARNING: untranslated string: guardian block ssh brute-force +WARNING: untranslated string: guardian blockcount +WARNING: untranslated string: guardian blocked hosts +WARNING: untranslated string: guardian blocking of this address is not allowed +WARNING: untranslated string: guardian blocktime +WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration +WARNING: untranslated string: guardian daemon +WARNING: untranslated string: guardian empty input +WARNING: untranslated string: guardian enabled +WARNING: untranslated string: guardian firewallaction +WARNING: untranslated string: guardian ignored hosts +WARNING: untranslated string: guardian invalid address or subnet WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile +WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile +WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog +WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low +WARNING: untranslated string: guardian priority level +WARNING: untranslated string: guardian service +WARNING: untranslated string: guardian watch snort alertfile WARNING: untranslated string: ike lifetime should be between 1 and 8 hours WARNING: untranslated string: info messages WARNING: untranslated string: no data diff --git a/doc/language_issues.en b/doc/language_issues.en index a6c55d9..596cf71 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -299,8 +299,6 @@ WARNING: translation string unused: geoipblock country code WARNING: translation string unused: geoipblock country name WARNING: translation string unused: geoipblock flag WARNING: translation string unused: green interface -WARNING: translation string unused: guardian not running no hosts can be blocked -WARNING: translation string unused: guardian snort alertfile WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -322,6 +320,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -353,6 +352,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -411,6 +411,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -703,9 +704,43 @@ WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes WARNING: untranslated string: fwhost cust geoipgrp WARNING: untranslated string: fwhost err hostip +WARNING: untranslated string: guardian +WARNING: untranslated string: guardian block a host +WARNING: untranslated string: guardian block httpd brute-force +WARNING: untranslated string: guardian block owncloud brute-force +WARNING: untranslated string: guardian block ssh brute-force +WARNING: untranslated string: guardian blockcount +WARNING: untranslated string: guardian blocked hosts +WARNING: untranslated string: guardian blocking of this address is not allowed +WARNING: untranslated string: guardian blocktime +WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration +WARNING: untranslated string: guardian daemon +WARNING: untranslated string: guardian empty input +WARNING: untranslated string: guardian enabled +WARNING: untranslated string: guardian firewallaction +WARNING: untranslated string: guardian ignored hosts +WARNING: untranslated string: guardian invalid address or subnet WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile +WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile +WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog +WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low +WARNING: untranslated string: guardian priority level +WARNING: untranslated string: guardian service +WARNING: untranslated string: guardian watch snort alertfile WARNING: untranslated string: ike lifetime should be between 1 and 8 hours WARNING: untranslated string: info messages WARNING: untranslated string: no data diff --git a/doc/language_issues.es b/doc/language_issues.es index f99cb90..ad64380 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -244,10 +244,6 @@ WARNING: translation string unused: geoipblock country code WARNING: translation string unused: geoipblock country name WARNING: translation string unused: geoipblock flag WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -269,6 +265,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -299,6 +296,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -357,6 +355,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -936,6 +935,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -946,8 +946,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.fr b/doc/language_issues.fr index c9714b5..28e80c9 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -241,10 +241,6 @@ WARNING: translation string unused: generatepolicy WARNING: translation string unused: generatereport WARNING: translation string unused: genkey WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -266,6 +262,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -296,6 +293,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -354,6 +352,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -951,6 +950,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -961,8 +961,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.it b/doc/language_issues.it index b271c22..d221534 100644 --- a/doc/language_issues.it +++ b/doc/language_issues.it @@ -291,10 +291,6 @@ WARNING: translation string unused: generatepolicy WARNING: translation string unused: generatereport WARNING: translation string unused: genkey WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -316,6 +312,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -347,6 +344,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -405,6 +403,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -747,6 +746,7 @@ WARNING: untranslated string: geoipblock configuration WARNING: untranslated string: geoipblock country is allowed WARNING: untranslated string: geoipblock country is blocked WARNING: untranslated string: geoipblock enable feature +WARNING: untranslated string: guaranteed bandwith WARNING: untranslated string: guardian WARNING: untranslated string: guardian block a host WARNING: untranslated string: guardian block httpd brute-force @@ -757,6 +757,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -767,8 +768,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 4ae42a6..1dfc968 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -290,10 +290,6 @@ WARNING: translation string unused: generatepolicy WARNING: translation string unused: generatereport WARNING: translation string unused: genkey WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -315,6 +311,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -346,6 +343,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -404,6 +402,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -772,6 +771,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -782,8 +782,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.pl b/doc/language_issues.pl index f99cb90..ad64380 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -244,10 +244,6 @@ WARNING: translation string unused: geoipblock country code WARNING: translation string unused: geoipblock country name WARNING: translation string unused: geoipblock flag WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -269,6 +265,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -299,6 +296,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -357,6 +355,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -936,6 +935,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -946,8 +946,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.ru b/doc/language_issues.ru index 8c5d4bb..31855fa 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -237,10 +237,6 @@ WARNING: translation string unused: generatepolicy WARNING: translation string unused: generatereport WARNING: translation string unused: genkey WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -261,6 +257,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -291,6 +288,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -348,6 +346,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -935,6 +934,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -945,8 +945,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 1389408..6629cd6 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -299,10 +299,6 @@ WARNING: translation string unused: geoipblock country code WARNING: translation string unused: geoipblock country name WARNING: translation string unused: geoipblock flag WARNING: translation string unused: green interface -WARNING: translation string unused: guardian alertfile -WARNING: translation string unused: guardian ignorefile -WARNING: translation string unused: guardian interface -WARNING: translation string unused: guardian timelimit WARNING: translation string unused: gz with key WARNING: translation string unused: hint WARNING: translation string unused: host @@ -324,6 +320,7 @@ WARNING: translation string unused: import WARNING: translation string unused: importkey WARNING: translation string unused: in WARNING: translation string unused: incorrect password +WARNING: translation string unused: info WARNING: translation string unused: insert floppy WARNING: translation string unused: insert removable device WARNING: translation string unused: install new update @@ -355,6 +352,7 @@ WARNING: translation string unused: kernel version WARNING: translation string unused: key stuff WARNING: translation string unused: keyreset WARNING: translation string unused: keys +WARNING: translation string unused: lang WARNING: translation string unused: lateprompting WARNING: translation string unused: length WARNING: translation string unused: line @@ -413,6 +411,7 @@ WARNING: translation string unused: net WARNING: translation string unused: net address WARNING: translation string unused: net config type WARNING: translation string unused: net config type help +WARNING: translation string unused: net traffic newversion WARNING: translation string unused: net-traffic configuration WARNING: translation string unused: network added WARNING: translation string unused: network configuration @@ -716,6 +715,7 @@ WARNING: untranslated string: guardian blocked hosts WARNING: untranslated string: guardian blocking of this address is not allowed WARNING: untranslated string: guardian blocktime WARNING: untranslated string: guardian common settings +WARNING: untranslated string: guardian configuration WARNING: untranslated string: guardian daemon WARNING: untranslated string: guardian empty input WARNING: untranslated string: guardian enabled @@ -726,8 +726,19 @@ WARNING: untranslated string: guardian invalid blockcount WARNING: untranslated string: guardian invalid blocktime WARNING: untranslated string: guardian invalid logfile WARNING: untranslated string: guardian logfacility +WARNING: untranslated string: guardian logfile WARNING: untranslated string: guardian loglevel +WARNING: untranslated string: guardian loglevel_debug +WARNING: untranslated string: guardian loglevel_info +WARNING: untranslated string: guardian loglevel_off +WARNING: untranslated string: guardian logtarget_console +WARNING: untranslated string: guardian logtarget_file +WARNING: untranslated string: guardian logtarget_syslog WARNING: untranslated string: guardian no entries +WARNING: untranslated string: guardian priolevel_high +WARNING: untranslated string: guardian priolevel_low +WARNING: untranslated string: guardian priolevel_medium +WARNING: untranslated string: guardian priolevel_very_low WARNING: untranslated string: guardian priority level WARNING: untranslated string: guardian service WARNING: untranslated string: guardian watch snort alertfile diff --git a/doc/language_missings b/doc/language_missings index 8afdfe8..32e1e48 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -372,28 +372,6 @@ < geoipblock enable feature < geoipblock flag < grouptype -< guardian -< guardian block a host -< guardian blockcount -< guardian blocked hosts -< guardian block httpd brute-force -< guardian blocking of this address is not allowed -< guardian block owncloud brute-force -< guardian block ssh brute-force -< guardian blocktime -< guardian common settings -< guardian daemon -< guardian empty input -< guardian enabled -< guardian firewallaction -< guardian ignored hosts -< guardian invalid address or subnet -< guardian logfacility -< guardian loglevel -< guardian no entries -< guardian priority level -< guardian service -< guardian watch snort alertfile < hardware support < imei < imsi @@ -995,28 +973,6 @@ < gen dh < generate dh key < grouptype -< guardian -< guardian block a host -< guardian blockcount -< guardian blocked hosts -< guardian block httpd brute-force -< guardian blocking of this address is not allowed -< guardian block owncloud brute-force -< guardian block ssh brute-force -< guardian blocktime -< guardian common settings -< guardian daemon -< guardian empty input -< guardian enabled -< guardian firewallaction -< guardian ignored hosts -< guardian invalid address or subnet -< guardian logfacility -< guardian loglevel -< guardian no entries -< guardian priority level -< guardian service -< guardian watch snort alertfile < hardware support < imei < imsi @@ -1612,28 +1568,6 @@ < geoipblock enable feature < geoipblock flag < grouptype -< guardian -< guardian block a host -< guardian blockcount -< guardian blocked hosts -< guardian block httpd brute-force -< guardian blocking of this address is not allowed -< guardian block owncloud brute-force -< guardian block ssh brute-force -< guardian blocktime -< guardian common settings -< guardian daemon -< guardian empty input -< guardian enabled -< guardian firewallaction -< guardian ignored hosts -< guardian invalid address or subnet -< guardian logfacility -< guardian loglevel -< guardian no entries -< guardian priority level -< guardian service -< guardian watch snort alertfile < hardware support < imei < imsi @@ -2218,28 +2152,6 @@ < geoipblock enable feature < geoipblock flag < grouptype -< guardian -< guardian block a host -< guardian blockcount -< guardian blocked hosts -< guardian block httpd brute-force -< guardian blocking of this address is not allowed -< guardian block owncloud brute-force -< guardian block ssh brute-force -< guardian blocktime -< guardian common settings -< guardian daemon -< guardian empty input -< guardian enabled -< guardian firewallaction -< guardian ignored hosts -< guardian invalid address or subnet -< guardian logfacility -< guardian loglevel -< guardian no entries -< guardian priority level -< guardian service -< guardian watch snort alertfile < hardware support < hour-graph < imei diff --git a/html/cgi-bin/dns.cgi b/html/cgi-bin/dns.cgi index c628953..314107d 100644 --- a/html/cgi-bin/dns.cgi +++ b/html/cgi-bin/dns.cgi @@ -91,7 +91,7 @@ print <<END
<table border="0" width='100%'> <tr> - <td colspan="2"><font class='base'>$Lang::tr{'dns desc'}<br /><img src="/images/dns_link.png" border="0" align="absmiddle"/><a href="http://wiki.ipfire.org/$Lang::tr{'lang'}/configuration/dns_list" target="_blank">$Lang::tr{'dns list'}</a></font></td> + <td colspan="2"><font class='base'>$Lang::tr{'dns desc'}<br /><img src="/images/dns_link.png" border="0" align="absmiddle"/><a href="http://wiki.ipfire.org/en/dns/public-servers" target="_blank">$Lang::tr{'dns list'}</a></font></td> </tr> <tr> <td colspan="2"> </td> diff --git a/html/cgi-bin/dnsforward.cgi b/html/cgi-bin/dnsforward.cgi index 1afc55f..ee63c6d 100644 --- a/html/cgi-bin/dnsforward.cgi +++ b/html/cgi-bin/dnsforward.cgi @@ -106,8 +106,8 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'add'}) $cgiparams{'ID'} = $cgiparams{'EDITING'}; } } - # Restart dnsmasq. - system('/usr/local/bin/dnsmasqctrl restart >/dev/null'); + # Restart unbound + system('/usr/local/bin/unboundctrl restart >/dev/null'); }
### @@ -124,8 +124,8 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'remove'}) unless ($cgiparams{'ID'} eq $id) { print FILE "$line"; } } close(FILE); - # Restart dnsmasq. - system('/usr/local/bin/dnsmasqctrl restart >/dev/null'); + # Restart unbound. + system('/usr/local/bin/unboundctrl restart >/dev/null'); }
### @@ -148,8 +148,8 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'toggle enable disable'}) } } close(FILE); - # Restart dnsmasq. - system('/usr/local/bin/dnsmasqctrl restart >/dev/null'); + # Restart unbound. + system('/usr/local/bin/unboundctrl restart >/dev/null'); }
### diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 8007182..face0f4 100644 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -539,16 +539,6 @@ sub checktarget #check DNAT settings (has to be single Host and single Port or portrange) if ($fwdfwsettings{'USE_NAT'} eq 'ON' && $fwdfwsettings{'nat'} eq 'dnat'){ if($fwdfwsettings{'grp2'} eq 'tgt_addr' || $fwdfwsettings{'grp2'} eq 'cust_host_tgt' || $fwdfwsettings{'grp2'} eq 'ovpn_host_tgt'){ - #check if manual ip is a single Host (if set) - if ($fwdfwsettings{'grp2'} eq 'tgt_addr'){ - my @tmp= split (/./,$fwdfwsettings{$fwdfwsettings{'grp2'}}); - my @tmp1= split ("/",$tmp[3]); - if (($tmp1[0] eq "0") || ($tmp1[0] eq "255")) - { - $errormessage=$Lang::tr{'fwdfw dnat error'}."<br>"; - return $errormessage; - } - } #check if Port is a single Port or portrange if ($fwdfwsettings{'nat'} eq 'dnat' && $fwdfwsettings{'grp3'} eq 'TGT_PORT'){ if(($fwdfwsettings{'PROT'} ne 'TCP'|| $fwdfwsettings{'PROT'} ne 'UDP') && $fwdfwsettings{'TGT_PORT'} eq ''){ diff --git a/html/cgi-bin/guardian.cgi b/html/cgi-bin/guardian.cgi index 9d044fe..963a564 100644 --- a/html/cgi-bin/guardian.cgi +++ b/html/cgi-bin/guardian.cgi @@ -534,33 +534,39 @@ END <tr> <td colspan='2' class='base' bgcolor='$color{'color20'}'><b>$Lang::tr{'guardian common settings'}</b></td> </tr> + <tr> - <td width='20%' class='base'>$Lang::tr{'guardian enabled'}:</td> + <td width='25%' class='base'>$Lang::tr{'guardian enabled'}:</td> <td><input type='checkbox' name='GUARDIAN_ENABLED' $checked{'GUARDIAN_ENABLED'}{'on'} /></td> </tr> + <tr> <td colspan='2'><br></td> </tr> + <tr> - <td width='20%' class='base'>$Lang::tr{'guardian watch snort alertfile'}</td> + <td width='25%' class='base'>$Lang::tr{'guardian watch snort alertfile'}</td> <td align='left'>on <input type='radio' name='GUARDIAN_MONITOR_SNORT' value='on' $checked{'GUARDIAN_MONITOR_SNORT'}{'on'} /> / <input type='radio' name='GUARDIAN_MONITOR_SNORT' value='off' $checked{'GUARDIAN_MONITOR_SNORT'}{'off'} /> off</td> </tr> + <tr> - <td width='20%' class='base'>$Lang::tr{'guardian block ssh brute-force'}</td> + <td width='25%' class='base'>$Lang::tr{'guardian block ssh brute-force'}</td> <td align='left'>on <input type='radio' name='GUARDIAN_MONITOR_SSH' value='on' $checked{'GUARDIAN_MONITOR_SSH'}{'on'} /> / <input type='radio' name='GUARDIAN_MONITOR_SSH' value='off' $checked{'GUARDIAN_MONITOR_SSH'}{'off'} /> off</td> </tr> + <tr> - <td width='20%' class='base'>$Lang::tr{'guardian block httpd brute-force'}</td> + <td width='25%' class='base'>$Lang::tr{'guardian block httpd brute-force'}</td> <td align='left'>on <input type='radio' name='GUARDIAN_MONITOR_HTTPD' value='on' $checked{'GUARDIAN_MONITOR_HTTPD'}{'on'} /> / <input type='radio' name='GUARDIAN_MONITOR_HTTPD' value='off' $checked{'GUARDIAN_MONITOR_HTTPD'}{'off'} /> off</td> </tr> END + # Display owncloud checkbox when the addon is installed. if ( -e "$owncloud_meta" ) { print"<tr>\n"; - print"<td width='20%' class='base'>$Lang::tr{'guardian block owncloud brute-force'}</td>\n"; + print"<td width='25%' class='base'>$Lang::tr{'guardian block owncloud brute-force'}</td>\n"; print"<td align='left'>on <input type='radio' name='GUARDIAN_MONITOR_OWNCLOUD' value='on' $checked{'GUARDIAN_MONITOR_OWNCLOUD'}{'on'} /> /\n"; print"<input type='radio' name='GUARDIAN_MONITOR_OWNCLOUD' value='off' $checked{'GUARDIAN_MONITOR_OWNCLOUD'}{'off'} /> off</td>\n"; print"</tr>\n"; @@ -569,62 +575,64 @@ END <tr> <td colspan='2'><br></td> </tr> + <tr> <td align='left' width='20%'>$Lang::tr{'guardian logfacility'}:</td> - <td><select id='GUARDIAN_LOG_FACILITY' name='GUARDIAN_LOG_FACILITY'> - <option id='logfacility_syslog' value='syslog' $selected{'GUARDIAN_LOG_FACILITY'}{'syslog'}>syslog</option> - <option id='logfacility_file' value='file' $selected{'GUARDIAN_LOG_FACILITY'}{'file'}>file</option> - <option id='logfacility_console' value='console' $selected{'GUARDIAN_LOG_FACILITY'}{'console'}>console</option> + <td width='25%'><select id='GUARDIAN_LOG_FACILITY' name='GUARDIAN_LOG_FACILITY'> + <option id='logfacility_syslog' value='syslog' $selected{'GUARDIAN_LOG_FACILITY'}{'syslog'}>$Lang::tr{'guardian logtarget_syslog'}</option> + <option id='logfacility_file' value='file' $selected{'GUARDIAN_LOG_FACILITY'}{'file'}>$Lang::tr{'guardian logtarget_file'}</option> + <option id='logfacility_console' value='console' $selected{'GUARDIAN_LOG_FACILITY'}{'console'}>$Lang::tr{'guardian logtarget_console'}</option> + </select></td> + + <td align='left' width='20%'>$Lang::tr{'guardian loglevel'}:</td> + <td width='25%'><select id='GUARDIAN_LOGLEVEL' name='GUARDIAN_LOGLEVEL'> + <option id='loglevel_off' value='off' $selected{'GUARDIAN_LOGLEVEL'}{'off'}>$Lang::tr{'guardian loglevel_off'}</option> + <option id='loglevel_info' value='info' $selected{'GUARDIAN_LOGLEVEL'}{'info'}>$Lang::tr{'guardian loglevel_info'}</option> + <option id='loglevel_debug' value='debug' $selected{'GUARDIAN_LOGLEVEL'}{'debug'}>$Lang::tr{'guardian loglevel_debug'}</option> </select></td> </tr> - <tr> + + <tr class="GUARDIAN_LOGFILE"> <td colspan='2'><br></td> </tr> - <tr> - <td align='left' width='20%'>$Lang::tr{'guardian loglevel'}:</td> - <td><select id='GUARDIAN_LOGLEVEL' name='GUARDIAN_LOGLEVEL'> - <option id='loglevel_off' value='off' $selected{'GUARDIAN_LOGLEVEL'}{'off'}>off</option> - <option id='loglevel_info' value='info' $selected{'GUARDIAN_LOGLEVEL'}{'info'}>info</option> - <option id='loglevel_debug' value='debug' $selected{'GUARDIAN_LOGLEVEL'}{'debug'}>debug</option> - </select></td> + + <tr class="GUARDIAN_LOGFILE"> + <td width='25%' class='base'>$Lang::tr{'guardian logfile'}:</td> + <td><input type='text' name='GUARDIAN_LOGFILE' value='$settings{'GUARDIAN_LOGFILE'}' size='30' /></td> </tr> + <tr class="GUARDIAN_SNORT_PRIORITY_LEVEL"> <td colspan='2'><br></td> </tr> + <tr class="GUARDIAN_SNORT_PRIORITY_LEVEL"> <td align='left' width='20%'>$Lang::tr{'guardian priority level'}:</td> <td><select name='GUARDIAN_SNORT_PRIORITY_LEVEL'> - <option value='1' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'1'}>1</option> - <option value='2' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'2'}>2</option> - <option value='3' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'3'}>3</option> - <option value='4' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'4'}>4</option> + <option value='1' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'1'}>$Lang::tr{'guardian priolevel_high'}</option> + <option value='2' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'2'}>$Lang::tr{'guardian priolevel_medium'}</option> + <option value='3' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'3'}>$Lang::tr{'guardian priolevel_low'}</option> + <option value='4' $selected{'GUARDIAN_SNORT_PRIORITY_LEVEL'}{'4'}>$Lang::tr{'guardian priolevel_very_low'}</option> </select></td> + + <td width='25%' class='base'>$Lang::tr{'guardian blockcount'}:</td> + <td><input type='text' name='GUARDIAN_BLOCKCOUNT' value='$settings{'GUARDIAN_BLOCKCOUNT'}' size='5' /></td> </tr> + <tr> <td colspan='2'><br></td> </tr> + <tr> - <td width='20%' class='base'>$Lang::tr{'guardian firewallaction'}:</td> + <td width='25%' class='base'>$Lang::tr{'guardian firewallaction'}:</td> <td><select name='GUARDIAN_FIREWALL_ACTION'> <option value='DROP' $selected{'GUARDIAN_FIREWALL_ACTION'}{'DROP'}>Drop</option> <option value='REJECT' $selected{'GUARDIAN_FIREWALL_ACTION'}{'REJECT'}>Reject</option> </select></td> - </tr> - <tr> - <td colspan='2'><br></td> - </tr> - <tr> - <td width='20%' class='base'>$Lang::tr{'guardian blockcount'}:</td> - <td><input type='text' name='GUARDIAN_BLOCKCOUNT' value='$settings{'GUARDIAN_BLOCKCOUNT'}' size='5' /></td> - </tr> - <tr> - <td width='20%' class='base'>$Lang::tr{'guardian blocktime'}:</td> + + <td width='25%' class='base'>$Lang::tr{'guardian blocktime'}:</td> <td><input type='text' name='GUARDIAN_BLOCKTIME' value='$settings{'GUARDIAN_BLOCKTIME'}' size='10' /></td> </tr> - <tr class="GUARDIAN_LOGFILE"> - <td width='20%' class='base'>$Lang::tr{'guardian logfile'}:</td> - <td><input type='text' name='GUARDIAN_LOGFILE' value='$settings{'GUARDIAN_LOGFILE'}' size='30' /></td> - </tr> + </table> END
diff --git a/html/cgi-bin/hosts.cgi b/html/cgi-bin/hosts.cgi index e3463d1..41fe8a5 100644 --- a/html/cgi-bin/hosts.cgi +++ b/html/cgi-bin/hosts.cgi @@ -462,4 +462,5 @@ sub SortDataFile # sub BuildConfiguration { system '/usr/local/bin/rebuildhosts'; + system '/usr/local/bin/unboundctrl restart &>/dev/null'; } diff --git a/html/cgi-bin/index.cgi b/html/cgi-bin/index.cgi index eafbdb1..c142a65 100644 --- a/html/cgi-bin/index.cgi +++ b/html/cgi-bin/index.cgi @@ -200,26 +200,20 @@ END END }
- my @dns_servers = (); - foreach my $f ("${General::swroot}/red/dns1", "${General::swroot}/red/dns2") { - open(DNS, "<$f"); - my $dns_server = <DNS>; - close(DNS); - - chomp($dns_server); - if ($dns_server) { - push(@dns_servers, $dns_server); - } + my $dns_servers; + if ( -e "${General::swroot}/red/dns" ) { + open (TMP, "<${General::swroot}/red/dns"); + $dns_servers = <TMP>; + chomp($dns_servers); + close TMP; } - my $dns_servers_str = join(", ", @dns_servers); - print <<END; <tr> <td> <b>$Lang::tr{'dns servers'}:</b> </td> <td style='text-align:center;'> - $dns_servers_str + $dns_servers </td> <td></td> </tr> diff --git a/html/cgi-bin/iptables.cgi b/html/cgi-bin/iptables.cgi index d456375..30fce27 100644 --- a/html/cgi-bin/iptables.cgi +++ b/html/cgi-bin/iptables.cgi @@ -150,8 +150,8 @@ END print "</tr>\n";
print "<tr>\n"; - print " <td width='0'></td>\n <td width='35'></td>\n <td width='35'></td>\n"; - print " <td width='130'></td>\n <td width='30'></td>\n"; + print " <td width='0'></td>\n <td width='60'></td>\n <td width='60'></td>\n"; + print " <td width='150'></td>\n <td width='30'></td>\n"; print " <td width='30'></td>\n <td width='40'></td>\n"; print " <td width='40'></td>\n <td width='95'></td>\n"; print " <td width='95'></td>\n <td width='260'></td>\n"; @@ -272,8 +272,8 @@ END print "</tr>\n";
print "<tr>\n"; - print " <td width='0'></td>\n <td width='35'></td>\n <td width='35'></td>\n"; - print " <td width='130'></td>\n <td width='30'></td>\n"; + print " <td width='0'></td>\n <td width='60'></td>\n <td width='60'></td>\n"; + print " <td width='150'></td>\n <td width='30'></td>\n"; print " <td width='30'></td>\n <td width='40'></td>\n"; print " <td width='40'></td>\n <td width='95'></td>\n"; print " <td width='95'></td>\n <td width='260'></td>\n"; @@ -399,8 +399,8 @@ END print "</tr>\n";
print "<tr>\n"; - print " <td width='0'></td>\n <td width='35'></td>\n <td width='35'></td>\n"; - print " <td width='130'></td>\n <td width='30'></td>\n"; + print " <td width='0'></td>\n <td width='60'></td>\n <td width='60'></td>\n"; + print " <td width='150'></td>\n <td width='30'></td>\n"; print " <td width='30'></td>\n <td width='40'></td>\n"; print " <td width='40'></td>\n <td width='95'></td>\n"; print " <td width='95'></td>\n <td width='260'></td>\n"; diff --git a/html/cgi-bin/logs.cgi/log.dat b/html/cgi-bin/logs.cgi/log.dat index f954213..82b6aa0 100644 --- a/html/cgi-bin/logs.cgi/log.dat +++ b/html/cgi-bin/logs.cgi/log.dat @@ -52,7 +52,7 @@ my %sections = ( 'ipfire' => '(ipfire: )', 'red' => '(red:|pppd[.*]: |chat[.*]|pppoe[.*]|pptp[.*]|pppoa[.*]|pppoa3[.*]|pppoeci[.*]|ipppd|ipppd[.*]|kernel: ippp\d|kernel: isdn.*|ibod[.*]|dhcpcd[.*]|modem_run[.*])', 'ddns' => '(ddns[\d+]:)', - 'dns' => '(dnsmasq[.*]: )', + 'dns' => '(dnsmasq[.*]: |unbound[.*]: )', 'dma' => '(dma[.*]: )', 'dhcp' => '(dhcpd: )', 'clamav' => '(clamd[.*]: |freshclam[.*]: )', diff --git a/html/cgi-bin/pppsetup.cgi b/html/cgi-bin/pppsetup.cgi index 36d0ced..4b45ee5 100644 --- a/html/cgi-bin/pppsetup.cgi +++ b/html/cgi-bin/pppsetup.cgi @@ -103,10 +103,7 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) if ($pppsettings{'USERNAME'} eq '') { $errormessage = $Lang::tr{'username not set'}; goto ERROR; } - if ($pppsettings{'PASSWORD'} eq '') { - $errormessage = $Lang::tr{'password not set'}; - goto ERROR; } - } + }
if ($pppsettings{'TIMEOUT'} eq '') { $errormessage = $Lang::tr{'idle timeout not set'}; @@ -927,7 +924,7 @@ print <<END <tr> <td width='25%'>$Lang::tr{'username'} <img src='/blob.gif' alt='*' /></td> <td width='25%'><input type='text' name='USERNAME' value='$pppsettings{'USERNAME'}' /></td> - <td width='25%'>$Lang::tr{'password'} <img src='/blob.gif' alt='*' /></td> + <td width='25%'>$Lang::tr{'password'} </td> <td width='25%'><input type='password' name='PASSWORD' value='$pppsettings{'PASSWORD'}' /></td> </tr> <tr> diff --git a/html/cgi-bin/samba.cgi b/html/cgi-bin/samba.cgi index 0e1409c..696cb1b 100644 --- a/html/cgi-bin/samba.cgi +++ b/html/cgi-bin/samba.cgi @@ -101,7 +101,7 @@ $sambasettings{'DISPLAYCHARSET'} = 'CP850'; $sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=819200 SO_SNDBUF=819200 SO_KEEPALIVE'; $sambasettings{'WIDELINKS'} = 'on'; $sambasettings{'UNIXEXTENSION'} = 'off'; -$sambasettings{'SMB2'} = 'off'; +$sambasettings{'SMB2'} = 'on'; ### Values that have to be initialized $sambasettings{'ACTION'} = ''; ### Samba CUPS Variablen @@ -185,7 +185,7 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes') $sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=819200 SO_SNDBUF=819200 SO_KEEPALIVE'; $sambasettings{'WIDELINKS'} = 'on'; $sambasettings{'UNIXEXTENSION'} = 'off'; - $sambasettings{'SMB2'} = 'off'; + $sambasettings{'SMB2'} = 'on'; $PDCOPTIONS = `cat ${General::swroot}/samba/pdc`; system("/usr/local/bin/sambactrl smbreload"); refreshpage(); diff --git a/html/cgi-bin/services.cgi b/html/cgi-bin/services.cgi index 76bd9ed..64fdbba 100644 --- a/html/cgi-bin/services.cgi +++ b/html/cgi-bin/services.cgi @@ -49,7 +49,7 @@ my %servicenames =( $Lang::tr{'dhcp server'} => 'dhcpd', $Lang::tr{'web server'} => 'httpd', $Lang::tr{'cron server'} => 'fcron', - $Lang::tr{'dns proxy server'} => 'dnsmasq', + $Lang::tr{'dns proxy server'} => 'unbound', $Lang::tr{'logging server'} => 'syslogd', $Lang::tr{'kernel logging server'} => 'klogd', $Lang::tr{'ntp server'} => 'ntpd', diff --git a/html/cgi-bin/traffic.cgi b/html/cgi-bin/traffic.cgi index 58a51d0..fbffecb 100644 --- a/html/cgi-bin/traffic.cgi +++ b/html/cgi-bin/traffic.cgi @@ -28,8 +28,6 @@ use strict; require '/var/ipfire/general-functions.pl'; require "${General::swroot}/lang.pl"; require "${General::swroot}/header.pl"; -require "${General::swroot}/net-traffic/net-traffic-admin.pl"; -require "${General::swroot}/net-traffic/net-traffic-lib.pl";
my %color = (); my %mainsettings = (); diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 400c2fe..261b92f 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -1217,30 +1217,6 @@ 'green interface' => 'Grünes Interface', 'grouptype' => 'Gruppentyp:', 'guaranteed bandwith' => 'Garantierte Bandbreite', -'guardian' => 'Guardian', -'guardian block a host' => 'Host blocken', -'guardian block httpd brute-force' => 'httpd-Brute-Force-Erkennung', -'guardian block owncloud brute-force' => 'Owncloud-Brute-Force-Erkennung', -'guardian block ssh brute-force' => 'SSH-Brute-Force-Erkennung', -'guardian blockcount' => 'Trefferschwelle', -'guardian blocked hosts' => 'Aktuell geblockte Hosts', -'guardian blocking of this address is not allowed' => 'Diese Addresse darf nicht gelockt werden.', -'guardian blocktime' => 'Blockzeit', -'guardian common settings' => 'Allgemeine Einstellungen', -'guardian configuration' => 'Guardian-Konfiguration', -'guardian daemon' => 'Daemon', -'guardian empty input' => 'Fehlende Angabe: Bitte eine gültige IP-Addresse oder Netzwerk angeben.', -'guardian enabled' => 'Guardian aktivieren', -'guardian firewallaction' => 'Firewall-Aktion', -'guardian ignored hosts' => 'Ignorierte Hosts', -'guardian invalid address or subnet' => 'Ungültige Host-Addresse oder Netzwerk.', -'guardian logfacility' => 'Logziel', -'guardian logfile' => 'Logdatei', -'guardian loglevel' => 'Loglevel', -'guardian no entries' => 'Keine Einträge vorhanden.', -'guardian priority level' => 'Prioritätslevel', -'guardian service' => 'Guardian-Dienst', -'guardian watch snort alertfile' => 'Snort-Alarme auswerten', 'guest ok' => 'Gastzugang gewähren', 'gui settings' => 'Benutzeroberfläche', 'gz with key' => 'Nur ein verschlüsseltes Archiv kann auf dieser Maschine wiederhergestellt werden.', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index 7a7c104..0e5b46d 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -1246,32 +1246,6 @@ 'green interface' => 'Green Interface', 'grouptype' => 'Grouptype:', 'guaranteed bandwith' => 'Guaranteed bandwith', -'guardian' => 'Guardian', -'guardian block a host' => 'Block host', -'guardian block httpd brute-force' => 'httpd Brute Force Detection', -'guardian block owncloud brute-force' => 'Owncloud Brute Force detection', -'guardian block ssh brute-force' => 'SSH Brute Force Detection', -'guardian blockcount' => 'Strike Threshold', -'guardian blocked hosts' => 'Currently blocked hosts', -'guardian blocking of this address is not allowed' => 'Blocking of the given address is not allowed.', -'guardian blocktime' => 'Block Time', -'guardian common settings' => 'Common Settings', -'guardian configuration' => 'Guardian Configuration', -'guardian daemon' => 'Daemon', -'guardian empty input' => 'Empty input: Please perform a valid host address or subnet.', -'guardian enabled' => 'Enable Guardian', -'guardian firewallaction' => 'Firewall Action', -'guardian ignored hosts' => 'Ignored Hosts', -'guardian invalid address or subnet' => 'Invalid host address or subnet.', -'guardian logfacility' => 'Log Facility', -'guardian logfile' => 'Log File', -'guardian loglevel' => 'Log Level', -'guardian no entries' => 'No entries at the moment.', -'guardian not running no hosts can be blocked' => 'Guardian is not running. No hosts will be blocked.', -'guardian priority level' => 'Priority Level', -'guardian service' => 'Guardian Service', -'guardian snort alertfile' => 'Snort Alert File', -'guardian watch snort alertfile' => 'Monitor Snort Alert File', 'guest ok' => 'allow guests to access', 'gui settings' => 'GUI Settings', 'gz with key' => 'Only an encrypted archive can be restored on this machine.', diff --git a/langs/es/cgi-bin/es.pl b/langs/es/cgi-bin/es.pl index 7ac5d11..ede7b66 100644 --- a/langs/es/cgi-bin/es.pl +++ b/langs/es/cgi-bin/es.pl @@ -886,12 +886,6 @@ 'green' => 'Green', 'green interface' => 'Interfaz Green', 'guaranteed bandwith' => 'Ancho de banda garantizado', -'guardian alertfile' => 'Archivo de alerta', -'guardian configuration' => 'Configuración de Guardian', -'guardian ignorefile' => 'Archivo Ignorefile', -'guardian interface' => 'Interfaz', -'guardian logfile' => 'Archivo de registro', -'guardian timelimit' => 'Límite de tiempo', 'guest ok' => 'permitir acceso de invitado', 'gui settings' => 'Configuraciones de GUI', 'gz with key' => 'Esta máquina sólo se puede restaurar desde archivos encriptados', diff --git a/langs/fr/cgi-bin/fr.pl b/langs/fr/cgi-bin/fr.pl index 61c514d..e896c9b 100644 --- a/langs/fr/cgi-bin/fr.pl +++ b/langs/fr/cgi-bin/fr.pl @@ -877,12 +877,6 @@ 'green' => 'VERT', 'green interface' => 'Interface VERTE', 'guaranteed bandwith' => 'Bande passante garantie', -'guardian alertfile' => 'Fichier d'alerte', -'guardian configuration' => 'Configuration du gardien', -'guardian ignorefile' => 'Fichier d'ignorés', -'guardian interface' => 'Interface', -'guardian logfile' => 'Fichier log', -'guardian timelimit' => 'Délai maximum', 'guest ok' => 'autoriser l'accès aux invités', 'gui settings' => 'Réglage GUI', 'gz with key' => 'Seulement les archives chiffrées peuvent être restaurées sur cette machine.', diff --git a/langs/it/cgi-bin/it.pl b/langs/it/cgi-bin/it.pl index 2ed22f2..b039cdb 100644 --- a/langs/it/cgi-bin/it.pl +++ b/langs/it/cgi-bin/it.pl @@ -1187,13 +1187,6 @@ 'green' => 'Verde', 'green interface' => 'Interface Verde', 'grouptype' => 'Grouptype:', -'guaranteed bandwith' => 'Guaranteed bandwith', -'guardian alertfile' => 'Alertfile', -'guardian configuration' => 'Guardian Configuration', -'guardian ignorefile' => 'Ignorefile', -'guardian interface' => 'Interface', -'guardian logfile' => 'Logfile', -'guardian timelimit' => 'Timelimit', 'guest ok' => 'allow guests to access', 'gui settings' => 'Settaggio GUI', 'gz with key' => 'Only an encrypted archive can be restored on this machine.', diff --git a/langs/nl/cgi-bin/nl.pl b/langs/nl/cgi-bin/nl.pl index 2469ff2..49c0cce 100644 --- a/langs/nl/cgi-bin/nl.pl +++ b/langs/nl/cgi-bin/nl.pl @@ -1168,12 +1168,6 @@ 'green interface' => 'Groene Interface', 'grouptype' => 'Groeptype:', 'guaranteed bandwith' => 'Gegarandeerde bandbreedte', -'guardian alertfile' => 'Meldingenbestand', -'guardian configuration' => 'Guardian configuratie', -'guardian ignorefile' => 'Negeerbestand', -'guardian interface' => 'Interface', -'guardian logfile' => 'Logbestand', -'guardian timelimit' => 'Tijdlimiet', 'guest ok' => 'verleen gasten toegang', 'gui settings' => 'Gebruikersinterface', 'gz with key' => 'Alleen gecodeerde archieven kunnen worden teruggezet op deze machine.', diff --git a/langs/pl/cgi-bin/pl.pl b/langs/pl/cgi-bin/pl.pl index 9214205..e2f9da5 100644 --- a/langs/pl/cgi-bin/pl.pl +++ b/langs/pl/cgi-bin/pl.pl @@ -885,12 +885,6 @@ 'green' => 'Green', 'green interface' => 'Interfejs Green', 'guaranteed bandwith' => 'Gwarantowane pasmo', -'guardian alertfile' => 'Plik alertów', -'guardian configuration' => 'Konfiguracja Guardian'a', -'guardian ignorefile' => 'Plik ignorowanych', -'guardian interface' => 'Interfejs', -'guardian logfile' => 'Plik Log', -'guardian timelimit' => 'Ograniczenie czasowe', 'guest ok' => 'zezwól na dostęp dla gości', 'gui settings' => 'Ustawienia GUI', 'gz with key' => 'Tylko zaszyfrowane archiwum może być odtworzone na tej maszynie.', diff --git a/langs/ru/cgi-bin/ru.pl b/langs/ru/cgi-bin/ru.pl index 6a45f7f..4b0edb5 100644 --- a/langs/ru/cgi-bin/ru.pl +++ b/langs/ru/cgi-bin/ru.pl @@ -880,12 +880,6 @@ 'green' => 'Green', 'green interface' => 'Green Интерфейс', 'guaranteed bandwith' => 'Гарантированная пропускная способность', -'guardian alertfile' => 'Alertfile', -'guardian configuration' => 'Настройки защиты', -'guardian ignorefile' => 'Ignorefile', -'guardian interface' => 'Интерфейс', -'guardian logfile' => 'Logfile', -'guardian timelimit' => 'Ограничение времени', 'guest ok' => 'Разрешить гостевой доступ', 'gui settings' => 'Внешний вид', 'gz with key' => 'Только зашифрованный архив может быть восстановлен на этой машине.', diff --git a/langs/tr/cgi-bin/tr.pl b/langs/tr/cgi-bin/tr.pl index 3af2339..9eb3000 100644 --- a/langs/tr/cgi-bin/tr.pl +++ b/langs/tr/cgi-bin/tr.pl @@ -1245,12 +1245,6 @@ 'green interface' => 'Yeşil Arabirim', 'grouptype' => 'Grup türü:', 'guaranteed bandwith' => 'Garantili bant genişliği', -'guardian alertfile' => 'Uyarı dosyası', -'guardian configuration' => 'Koruyucu Yapılandırması', -'guardian ignorefile' => 'Yoksayılan dosya', -'guardian interface' => 'Ara birim', -'guardian logfile' => 'Günlük dosyası', -'guardian timelimit' => 'Zaman sınırlaması', 'guest ok' => 'istemcilere erişim izni', 'gui settings' => 'GUI Ayarları', 'gz with key' => 'Sadece şifreli bir arşiv bu makinede geri yüklenebilir.', diff --git a/lfs/asterisk b/lfs/asterisk index 9fc90ea..a0276bc 100755 --- a/lfs/asterisk +++ b/lfs/asterisk @@ -20,7 +20,7 @@
include Config
-VER = 11.21.1 +VER = 11.23.1
THISAPP = asterisk-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -28,7 +28,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = asterisk -PAK_VER = 19 +PAK_VER = 20
DEPS = "libsrtp"
@@ -38,16 +38,16 @@ DEPS = "libsrtp"
objects = $(DL_FILE) \ asterisk-1.4-de-prompts.tar.gz \ - asterisk-extra-sounds-en-gsm-1.4.15.tar.gz \ + asterisk-extra-sounds-en-gsm-1.5.tar.gz \ asterisk-moh-opsound-gsm-2.03.tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE) -asterisk-extra-sounds-en-gsm-1.4.15.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds-en-gsm-1.4.15.tar.gz +asterisk-extra-sounds-en-gsm-1.5.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds-en-gsm-1.5.tar.gz asterisk-moh-opsound-gsm-2.03.tar.gz = $(URL_IPFIRE)/asterisk-moh-opsound-gsm-2.03.tar.gz asterisk-1.4-de-prompts.tar.gz = $(URL_IPFIRE)/asterisk-1.4-de-prompts.tar.gz
-$(DL_FILE)_MD5 = 9594c3cdcf6dc16c719b5abb00dbdd8f -asterisk-extra-sounds-en-gsm-1.4.15.tar.gz_MD5 = 5099fc65f49008e33ba7fb043a4ec995 +$(DL_FILE)_MD5 = 8dadfcda24eac2f6df431c71f5f01947 +asterisk-extra-sounds-en-gsm-1.5.tar.gz_MD5 = 49f2baefc7aad424f30ff18d883501d2 asterisk-moh-opsound-gsm-2.03.tar.gz_MD5 = 09066f55f1358f298bc1a6e4678a3ddf asterisk-1.4-de-prompts.tar.gz_MD5 = 626a2b95071a5505851e43874dfbfd5c
@@ -111,7 +111,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) menuselect.makeopts
# add additional sounds - cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-extra-sounds-en-gsm-1.4.15.tar.gz $(DIR_APP)/sounds/ + cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-extra-sounds-en-gsm-1.5.tar.gz $(DIR_APP)/sounds/ cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-moh-opsound-gsm-2.03.tar.gz $(DIR_APP)/sounds/
# Fix wrong cpu optimization (march=armv5tel) diff --git a/lfs/attr b/lfs/attr index 2794ad6..f3b6b1f 100644 --- a/lfs/attr +++ b/lfs/attr @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team info@ipfire.org # +# Copyright (C) 2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,10 +24,10 @@
include Config
-VER = 2.4.43 +VER = 2.4.47
THISAPP = attr-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).src.tar.gz 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 = 91583a14bcbd637adaa9b07ea49c5d4b +$(DL_FILE)_MD5 = 84f58dec00b60f2dc8fd1c9709291cc7
install : $(TARGET)
@@ -75,5 +75,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make install cd $(DIR_APP) && make install-lib cd $(DIR_APP) && make install-dev + chmod -v 755 /usr/lib/libattr.so @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/configroot b/lfs/configroot index f02894e..760505e 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -52,7 +52,7 @@ $(TARGET) : # Create all directories for i in addon-lang auth backup ca certs connscheduler crls ddns dhcp dhcpc dns dnsforward \ ethernet extrahd/bin fwlogs fwhosts firewall isdn key langs logging mac main \ - menu.d modem net-traffic net-traffic/templates nfs optionsfw \ + menu.d modem nfs optionsfw \ ovpn patches pakfire portfw ppp private proxy/advanced/cre \ proxy/calamaris/bin qos/bin red remote sensors snort time \ updatexlrator/bin updatexlrator/autocheck urlfilter/autoupdate urlfilter/bin upnp vpn \ @@ -66,7 +66,7 @@ $(TARGET) : dhcp/fixleases dhcp/advoptions dhcp/dhcpd.conf.local dns/settings dnsforward/config ethernet/aliases ethernet/settings ethernet/known_nics ethernet/scanned_nics \ ethernet/wireless extrahd/scan extrahd/devices extrahd/partitions extrahd/settings firewall/settings firewall/config firewall/geoipblock firewall/input firewall/outgoing \ fwhosts/customnetworks fwhosts/customhosts fwhosts/customgroups fwhosts/customservicegrp fwhosts/customgeoipgrp fwlogs/ipsettings fwlogs/portsettings \ - isdn/settings mac/settings main/hosts main/routing main/settings net-traffic/settings optionsfw/settings \ + isdn/settings mac/settings main/hosts main/routing main/settings optionsfw/settings \ ovpn/ccd.conf ovpn/ccdroute ovpn/ccdroute2 pakfire/settings portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \ ppp/settings-5 ppp/settings proxy/settings proxy/squid.conf proxy/advanced/settings proxy/advanced/cre/enable remote/settings qos/settings qos/classes qos/subclasses qos/level7config qos/portconfig \ qos/tosconfig snort/settings upnp/settings vpn/config vpn/settings vpn/ipsec.conf \ @@ -91,8 +91,6 @@ $(TARGET) : cp $(DIR_SRC)/config/menu/* $(CONFIG_ROOT)/menu.d/ cp $(DIR_SRC)/config/cfgroot/modem-defaults $(CONFIG_ROOT)/modem/defaults cp $(DIR_SRC)/config/cfgroot/modem-settings $(CONFIG_ROOT)/modem/settings - cp $(DIR_SRC)/config/cfgroot/net-traffic-lib.pl $(CONFIG_ROOT)/net-traffic/net-traffic-lib.pl - cp $(DIR_SRC)/config/cfgroot/net-traffic-admin.pl $(CONFIG_ROOT)/net-traffic/net-traffic-admin.pl cp $(DIR_SRC)/config/cfgroot/nfs-server $(CONFIG_ROOT)/nfs/nfs-server cp $(DIR_SRC)/config/cfgroot/proxy-acl $(CONFIG_ROOT)/proxy/acl-1.4 cp $(DIR_SRC)/config/qos/* $(CONFIG_ROOT)/qos/bin/ diff --git a/lfs/dejagnu b/lfs/dejagnu index 23c933d..b510565 100644 --- a/lfs/dejagnu +++ b/lfs/dejagnu @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.4.4 +VER = 1.6
THISAPP = dejagnu-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 053f18fd5d00873de365413cab17a666 +$(DL_FILE)_MD5 = 1fdc2eb0d592c4f89d82d24dfdf02f0b
install : $(TARGET)
diff --git a/lfs/diffutils b/lfs/diffutils index 3e96c67..c8dc42f 100644 --- a/lfs/diffutils +++ b/lfs/diffutils @@ -24,10 +24,10 @@
include Config
-VER = 2.8.1 +VER = 3.5
THISAPP = diffutils-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP)
@@ -53,7 +53,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 71f9c5ae19b60608f6c7f162da86a428 +$(DL_FILE)_MD5 = 569354697ff1cfc9a9de3781361015fa
install : $(TARGET)
@@ -82,11 +82,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) -ifeq "$(ROOT)" "" - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-i18n-1.patch - cd $(DIR_APP) && touch man/diff.1 -endif + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./configure $(EXTRA_CONFIG) cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make $(EXTRA_INSTALL) install diff --git a/lfs/dnsmasq b/lfs/dnsmasq deleted file mode 100644 index 474dacc..0000000 --- a/lfs/dnsmasq +++ /dev/null @@ -1,102 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2016 Michael Tremer & Christian Schmidt # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = 2.76 - -THISAPP = dnsmasq-$(VER) -DL_FILE = $(THISAPP).tar.xz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) - -# We cannot use INOTIFY because our ISC reader code does not support that -COPTS = -DHAVE_ISC_READER -DNO_INOTIFY - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 00f5ee66b4e4b7f14538bf62ae3c9461 - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download :$(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -############################################################################### -# Installation Details -############################################################################### - -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/001-Calculate_length_of_TFTP_error_reply_correctly.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/002-Zero_newly_malloc_ed_memory.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/003-Check_return_of_expand_always.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/004-Fix_editing_error_on_man_page.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/005-Manpage_typo.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/006-Fix_bad_behaviour_with_some_DHCP_option_arrangements.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/007-Fix_logic_error_in_Linux_netlink_code.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/008-Fix_problem_with_--dnssec-timestamp.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/009-malloc_memset_calloc_for_efficiency.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/010-Zero_packet_buffers_before_building_output_to_reduce_risk_of_information_leakage.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/011-Dont_reset_packet_length_on_transmission_in_case_of_retransmission.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/012-Compile-time_check_on_buffer_sizes_for_leasefile_parsing_code.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/013-auth-zone_allow_to_exclude_ip_addresses_from_answer.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/014-Bump_auth_zone_serial_when_reloading_etc_hosts_and_friends.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch - - cd $(DIR_APP) && sed -i src/config.h \ - -e 's|/* #define HAVE_IDN */|#define HAVE_IDN|g' \ - -e 's|/* #define HAVE_DNSSEC */|#define HAVE_DNSSEC|g' \ - -e 's|#define HAVE_DHCP|//#define HAVE_DHCP|g' \ - -e 's|#define HAVE_DHCP6|//#define HAVE_DHCP6|g' \ - -e 's|#define HAVE_TFTP|//#define HAVE_TFTP|g' - - cd $(DIR_APP) && make CFLAGS="$(CFLAGS)" COPTS="$(COPTS)" \ - PREFIX=/usr all install - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/expat b/lfs/expat index 99e458d..aa97590 100644 --- a/lfs/expat +++ b/lfs/expat @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2014 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,10 +24,10 @@
include Config
-VER = 2.1.0 +VER = 2.2.0
THISAPP = expat-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.bz2 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 = dd7dab7a5fea97d2a6a43f511449b7cd +$(DL_FILE)_MD5 = 2f47841c829facb346eb6e3fab5212e2
install : $(TARGET)
@@ -69,11 +69,11 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./configure --prefix=/usr --disable-nls cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install - cd $(DIR_APP) && install -v -m755 -d /usr/share/doc/expat-2.1.0 - cd $(DIR_APP) && install -v -m644 doc/*.{html,png,css} /usr/share/doc/expat-2.1.0 + cd $(DIR_APP) && install -v -m755 -d /usr/share/doc/$(THISAPP) + cd $(DIR_APP) && install -v -m644 doc/*.{html,png,css} /usr/share/doc/$(THISAPP) @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/file b/lfs/file index 49829d0..41eabd2 100644 --- a/lfs/file +++ b/lfs/file @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 5.24 +VER = 5.28
THISAPP = file-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = ec161b5a0d2aef147fb046e5630b1408 +$(DL_FILE)_MD5 = 3f7771424aa855f32094b49571e19b33
install : $(TARGET)
diff --git a/lfs/flex b/lfs/flex index 0c43e4a..3101c86 100644 --- a/lfs/flex +++ b/lfs/flex @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,10 +24,10 @@
include Config
-VER = 2.5.35 +VER = 2.6.1
THISAPP = flex-$(VER) -DL_FILE = $(THISAPP).tar.bz2 +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 = 10714e50cea54dc7a227e3eddcd44d57 +$(DL_FILE)_MD5 = cd3c86290fc2676a641aefafeb10848a
install : $(TARGET)
@@ -69,7 +69,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./configure --prefix=/usr --disable-nls cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make $(EXTRA_INSTALL) install diff --git a/lfs/gettext b/lfs/gettext index 892bad9..3896ec1 100644 --- a/lfs/gettext +++ b/lfs/gettext @@ -24,10 +24,10 @@
include Config
-VER = 0.18.1.1 +VER = 0.19.8.1
THISAPP = gettext-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP)
@@ -53,7 +53,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 3dd55b952826d2b32f51308f2f91aa89 +$(DL_FILE)_MD5 = df3f5690eaa30fd228537b00cb7b7590
install : $(TARGET)
@@ -82,7 +82,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) ifeq "$(ROOT)" "" cd $(DIR_APP) && ./configure $(EXTRA_CONFIG) cd $(DIR_APP) && make $(EXTRA_MAKE) @@ -90,6 +90,7 @@ ifeq "$(ROOT)" "" else cd $(DIR_APP)/gettext-tools && ./configure $(EXTRA_CONFIG) cd $(DIR_APP)/gettext-tools && make -C gnulib-lib + cd $(DIR_APP)/gettext-tools && make -C intl pluralx.c cd $(DIR_APP)/gettext-tools && make -C src msgfmt cd $(DIR_APP)/gettext-tools && cp -v src/msgfmt /tools/bin endif diff --git a/lfs/gnupg b/lfs/gnupg index 29835e0..aa76042 100644 --- a/lfs/gnupg +++ b/lfs/gnupg @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2014 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.4.18 +VER = 1.4.21
THISAPP = gnupg-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 54db1be9588b11afbbdd8b82d4ea883a +$(DL_FILE)_MD5 = 9bdeabf3c0f87ff21cb3f9216efdd01d
install : $(TARGET)
diff --git a/lfs/guardian b/lfs/guardian index b02ec54..c016f04 100644 --- a/lfs/guardian +++ b/lfs/guardian @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -33,11 +33,10 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP)
PROG = guardian -PAK_VER = 10 +PAK_VER = 11
DEPS = "perl-inotify2 perl-Net-IP"
- ############################################################################### # Top-level Rules ############################################################################### @@ -108,5 +107,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) install -v -m 644 $(DIR_SRC)/config/guardian/guardian.logrotate \ /etc/logrotate.d/guardian
+ # Install addon-specific language-files. + install -v -m 004 $(DIR_SRC)/config/guardian/guardian.*.pl \ + /var/ipfire/addon-lang/ + @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/initscripts b/lfs/initscripts index e731d7f..c5baf68 100644 --- a/lfs/initscripts +++ b/lfs/initscripts @@ -127,6 +127,9 @@ $(TARGET) : ln -sf ../init.d/network /etc/rc.d/rc0.d/K80network ln -sf ../init.d/network /etc/rc.d/rc3.d/S20network ln -sf ../init.d/network /etc/rc.d/rc6.d/K80network + ln -sf ../init.d/unbound /etc/rc.d/rc0.d/K79unbound + ln -sf ../init.d/unbound /etc/rc.d/rc3.d/S11unbound + ln -sf ../init.d/unbound /etc/rc.d/rc6.d/K79unbound ln -sf ../init.d/random /etc/rc.d/rc0.d/K45random ln -sf ../init.d/random /etc/rc.d/rc3.d/S25random ln -sf ../init.d/random /etc/rc.d/rc6.d/K45random @@ -185,13 +188,11 @@ $(TARGET) : ln -sf ../init.d/wlanclient /etc/rc.d/rc3.d/S19wlanclient ln -sf ../init.d/wlanclient /etc/rc.d/rc6.d/K82wlanclient
- ln -sf ../../dnsmasq /etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq ln -sf ../../../../../usr/local/bin/snortctrl \ /etc/rc.d/init.d/networking/red.up/23-RS-snort ln -sf ../../../../../usr/local/bin/qosctrl \ /etc/rc.d/init.d/networking/red.up/24-RS-qos ln -sf ../../squid /etc/rc.d/init.d/networking/red.up/27-RS-squid - ln -sf ../../dnsmasq /etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq
for i in green blue orange; do \ ln -sf any /etc/rc.d/init.d/networking/$$i; \ diff --git a/lfs/iproute2 b/lfs/iproute2 index 51f1f3d..47ce077 100644 --- a/lfs/iproute2 +++ b/lfs/iproute2 @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 4.2.0 +VER = 4.7.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 = 51c54cc3245eff451154938fbc0f64f5 +$(DL_FILE)_MD5 = d4b205830cdc2702f8a0cbd6232129cd
install : $(TARGET)
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)_remove_arpd.patch cd $(DIR_APP) && make $(MAKETUNING) SBINDIR=/sbin cd $(DIR_APP) && make SBINDIR=/sbin install cd $(DIR_APP) && mv -v /sbin/arpd /usr/sbin diff --git a/lfs/ipset b/lfs/ipset index 254b1ec..37da1ba 100644 --- a/lfs/ipset +++ b/lfs/ipset @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 IPFire Team info@ipfire.org # +# Copyright (C) 2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 6.26 +VER = 6.29
THISAPP = ipset-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 5ec4e79053a30fb6d72e0549d7d09343 +$(DL_FILE)_MD5 = fd8ea35997115c5c630eee22f0beecec
install : $(TARGET)
diff --git a/lfs/krb5 b/lfs/krb5 index 3011982..7e34692 100644 --- a/lfs/krb5 +++ b/lfs/krb5 @@ -24,7 +24,7 @@
include Config
-VER = 1.12.1 +VER = 1.14.4
THISAPP = krb5-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP)/src TARGET = $(DIR_INFO)/$(THISAPP) PROG = krb5 -PAK_VER = 1 +PAK_VER = 2
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 4a631b3474d3e44773f1ecda96f04400 +$(DL_FILE)_MD5 = ba90f5701fc2dda76133c1f34ba4ee80
install : $(TARGET)
@@ -77,7 +77,6 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_SRC)/$(THISAPP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np2 < $(DIR_SRC)/src/patches/mitkrb-1.12.1-db2_fix-1.patch
cd $(DIR_APP) && sed -e "s@python2.5/Python.h@& python2.7/Python.h@g" \ -e "s@-lpython2.5]@&,\n AC_CHECK_LIB(python2.7,main,[PYTHON_LIB=-lpython2.7])@g" \ diff --git a/lfs/libassuan b/lfs/libassuan index 0137d14..29f799a 100644 --- a/lfs/libassuan +++ b/lfs/libassuan @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 2.2.0 +VER = 2.4.3
THISAPP = libassuan-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = libassuan -PAK_VER = 3 +PAK_VER = 4
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a104faed3e97b9c302c5d67cc22b1d60 +$(DL_FILE)_MD5 = 8e01a7c72d3e5d154481230668e6eb5a
install : $(TARGET)
diff --git a/lfs/libgpg-error b/lfs/libgpg-error index ab9499e..84af2aa 100644 --- a/lfs/libgpg-error +++ b/lfs/libgpg-error @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.20 +VER = 1.24
THISAPP = libgpg-error-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 9997d9203b672402a04760176811589d +$(DL_FILE)_MD5 = feb42198c0aaf3b28eabe8f41a34b983
install : $(TARGET)
diff --git a/lfs/libidn b/lfs/libidn index 7ea2d46..53b256e 100644 --- a/lfs/libidn +++ b/lfs/libidn @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 0.6.14 +VER = 1.33
THISAPP = libidn-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 040f012a45feb56168853998bb87ad4d +$(DL_FILE)_MD5 = a9aa7e003665de9c82bd3f9fc6ccf308
install : $(TARGET)
diff --git a/lfs/libmnl b/lfs/libmnl index 5341e4b..66d198b 100644 --- a/lfs/libmnl +++ b/lfs/libmnl @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2013 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.0.3 +VER = 1.0.4
THISAPP = libmnl-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7d95fc3bea3365bc03c48e484224f65f +$(DL_FILE)_MD5 = be9b4b5328c6da1bda565ac5dffadb2d
install : $(TARGET)
diff --git a/lfs/libnetfilter_conntrack b/lfs/libnetfilter_conntrack index 3a0dc1f..168f427 100644 --- a/lfs/libnetfilter_conntrack +++ b/lfs/libnetfilter_conntrack @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2013 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.0.4 +VER = 1.0.6
THISAPP = libnetfilter_conntrack-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 18cf80c4b339a3285e78822dbd4f08d7 +$(DL_FILE)_MD5 = 7139c5f408dd9606ffecfd5dcda8175b
install : $(TARGET)
diff --git a/lfs/make b/lfs/make index c8c2cb0..213ef9a 100644 --- a/lfs/make +++ b/lfs/make @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2015 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,14 +24,14 @@
include Config
-VER = 4.1 +VER = 4.2.1
THISAPP = make-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.bz2 DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) PROG = make -PAK_VER = 3 +PAK_VER = 4
DEPS = ""
@@ -61,7 +61,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 654f9117957e6fa6a1c49a8f08270ec9 +$(DL_FILE)_MD5 = 15b012617e7c44c0ed482721629577ac
install : $(TARGET)
diff --git a/lfs/mc b/lfs/mc index b682d64..d5d57bf 100644 --- a/lfs/mc +++ b/lfs/mc @@ -24,7 +24,7 @@
include Config
-VER = 4.8.17 +VER = 4.8.18
THISAPP = mc-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = mc -PAK_VER = 13 +PAK_VER = 14
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 0b3965f3267a76d895ce8ab90df2402b +$(DL_FILE)_MD5 = 85ff9279f912c5482fe9f110f8892c96
install : $(TARGET)
diff --git a/lfs/monit b/lfs/monit index 453ad03..2735e15 100644 --- a/lfs/monit +++ b/lfs/monit @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2009 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 5.14 +VER = 5.19.0
THISAPP = monit-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = monit -PAK_VER = 7 +PAK_VER = 8
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 1b3ae1eb08a0914402a8764e5689c1c5 +$(DL_FILE)_MD5 = 51ee50dd71e1bb9fe9a128bc88456b77
install : $(TARGET)
diff --git a/lfs/nano b/lfs/nano index 6bf411b..5dcf484 100644 --- a/lfs/nano +++ b/lfs/nano @@ -24,7 +24,7 @@
include Config
-VER = 2.6.1 +VER = 2.6.3
THISAPP = nano-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = nano -PAK_VER = 10 +PAK_VER = 11
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 5154704d2f3461140e6798470e03b711 +$(DL_FILE)_MD5 = 1213c7f17916e65afefc95054c1f90f9
install : $(TARGET)
diff --git a/lfs/openssl b/lfs/openssl index d0ed4d3..0405a77 100644 --- a/lfs/openssl +++ b/lfs/openssl @@ -24,7 +24,7 @@
include Config
-VER = 1.0.2i +VER = 1.0.2j
THISAPP = openssl-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -87,7 +87,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 678374e63f8df456a697d3e5e5a931fb +$(DL_FILE)_MD5 = 96322138f0b69e61b7212bc53d5e912b
install : $(TARGET)
diff --git a/lfs/pkg-config b/lfs/pkg-config index cd07978..ed95102 100644 --- a/lfs/pkg-config +++ b/lfs/pkg-config @@ -82,7 +82,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) ifeq "$(ROOT)" "" else - mkdir /tools/lib/pkgconfig + mkdir -pv /tools/lib/pkgconfig endif cd $(DIR_APP) && ./configure --prefix=$(PREFIX) --with-internal-glib cd $(DIR_APP) && make $(MAKETUNING) diff --git a/lfs/python-daemon b/lfs/python-daemon new file mode 100644 index 0000000..c96ec55 --- /dev/null +++ b/lfs/python-daemon @@ -0,0 +1,75 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 2.1.1 + +THISAPP = python-daemon-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 72e2acf2c3d69c7fa75a6625d06adfd0 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && python setup.py install --root=/ + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/python-docutils b/lfs/python-docutils new file mode 100644 index 0000000..13f7ef1 --- /dev/null +++ b/lfs/python-docutils @@ -0,0 +1,75 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 0.12 + +THISAPP = docutils-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 4622263b62c5c771c03502afa3157768 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && python setup.py install --root=/ + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/python-inotify b/lfs/python-inotify new file mode 100644 index 0000000..ea8a960 --- /dev/null +++ b/lfs/python-inotify @@ -0,0 +1,75 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 0.2.7 + +THISAPP = inotify-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = ced4c0469f9fd64170d9d907e4aec208 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && python setup.py install --root=/ + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/python-ipaddress b/lfs/python-ipaddress new file mode 100644 index 0000000..dd96289 --- /dev/null +++ b/lfs/python-ipaddress @@ -0,0 +1,75 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 3.4.1 + +THISAPP = py2-ipaddress-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 47734313c841068e3d5386d048d01c3d + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && python setup.py install --root=/ + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/samba b/lfs/samba index 369f486..74a1b76 100644 --- a/lfs/samba +++ b/lfs/samba @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = samba -PAK_VER = 63 +PAK_VER = 64
DEPS = "cups krb5"
diff --git a/lfs/shadow b/lfs/shadow index b4777b9..c445dd3 100644 --- a/lfs/shadow +++ b/lfs/shadow @@ -71,7 +71,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/shadow-4.2.1-suppress_installation_of_groups.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/shadow-4.2.1-SHA512_password_hashing.patch cd $(DIR_APP) && ./configure --libdir=/lib \ --sysconfdir=/etc \ --enable-shared \ @@ -80,12 +79,15 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --with-group-name-max-length=32 cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install - cd $(DIR_APP) && cp -v etc/{limits,login.access} /etc - cd $(DIR_APP) && sed -e's@#MD5_CRYPT_ENAB.no@MD5_CRYPT_ENAB yes@' \ - -e 's@/var/spool/mail@/var/mail@' \ - etc/login.defs > /etc/login.defs + mv -v /usr/bin/passwd /bin ln -sfv ../../lib/libshadow.so.0 /usr/lib/libshadow.so + + # Install configuration + install -m 644 $(DIR_SRC)/config/shadow/limits /etc/limits + install -m 644 $(DIR_SRC)/config/shadow/login.access /etc/login.access + install -m 644 $(DIR_SRC)/config/shadow/login.defs /etc/login.defs + touch /etc/shadow chmod 600 /etc/shadow pwconv diff --git a/lfs/smartmontools b/lfs/smartmontools index c3ba635..6c6d7db 100644 --- a/lfs/smartmontools +++ b/lfs/smartmontools @@ -24,7 +24,7 @@
include Config
-VER = 6.3 +VER = 6.5
THISAPP = smartmontools-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 2ea0c62206e110192a97b59291b17f54 +$(DL_FILE)_MD5 = 093aeec3f8f39fa9a37593c4012d3156
install : $(TARGET)
@@ -70,7 +70,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) && patch -Np1 < $(DIR_SRC)/src/patches/smartmontools-5.39-exit_segfault.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/smartmontools-6.5-exit_segfault.patch cd $(DIR_APP) && autoreconf cd $(DIR_APP) && ./configure --prefix=/usr cd $(DIR_APP) && make BUILD_INFO='"($(NAME) $(VERSION))"' $(MAKETUNING) diff --git a/lfs/squid b/lfs/squid index edaf943..ae8e1e9 100644 --- a/lfs/squid +++ b/lfs/squid @@ -24,7 +24,7 @@
include Config
-VER = 3.5.19 +VER = 3.5.21
THISAPP = squid-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a1d990284c429a63ee85d80ee5b3b8b9 +$(DL_FILE)_MD5 = e6745a6e4ac0b48b7283861f64a40ae5
install : $(TARGET)
@@ -70,13 +70,7 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xaf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14051.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14052.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14053.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14054.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14055.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid/squid-3.5-14056.patch - cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid-3.5.17-fix-max-file-descriptors.patch + cd $(DIR_APP) && patch -Np0 -i $(DIR_SRC)/src/patches/squid-3.5.21-fix-max-file-descriptors.patch
cd $(DIR_APP) && autoreconf -vfi cd $(DIR_APP)/libltdl && autoreconf -vfi diff --git a/lfs/stage2 b/lfs/stage2 index ec5d117..2d2a645 100644 --- a/lfs/stage2 +++ b/lfs/stage2 @@ -126,7 +126,7 @@ endif -mkdir -pv /var/{opt,cache,lib/{misc,locate},local} -mkdir -pv /var/log/{counter,calamaris} chown nobody.nobody /var/log/calamaris - touch /var/log/{btmp,lastlog,wtmp,net-traffic.log} + touch /var/log/{btmp,lastlog,wtmp} chgrp -v utmp /var/log/lastlog chmod -v 664 /var/log/lastlog
diff --git a/lfs/strongswan b/lfs/strongswan index c6d655b..17c1a01 100644 --- a/lfs/strongswan +++ b/lfs/strongswan @@ -24,7 +24,7 @@
include Config
-VER = 5.3.5 +VER = 5.5.0
THISAPP = strongswan-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -48,7 +48,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a2f9ea185f27e7f8413d4cd2ee61efe4 +$(DL_FILE)_MD5 = a96fa7eb6c62b40143dadb064b6bd586
install : $(TARGET)
@@ -79,7 +79,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/strongswan-ipfire.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch
cd $(DIR_APP) && ./configure \ --prefix="/usr" \ diff --git a/lfs/tcl b/lfs/tcl index e863729..06e9e08 100644 --- a/lfs/tcl +++ b/lfs/tcl @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 8.4.13 +VER = 8.6.6
THISAPP = tcl$(VER) DL_FILE = $(THISAPP)-src.tar.gz @@ -45,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = c6b655ad5db095ee73227113220c0523 +$(DL_FILE)_MD5 = 5193aea8107839a79df8ac709552ecb7
install : $(TARGET)
@@ -84,9 +84,9 @@ endif cd $(DIR_APP)/unix && make install ifneq "$(ROOT)" "" cd $(DIR_APP)/unix && make install-private-headers - ln -sf tclsh8.4 /tools/bin/tclsh + ln -sf tclsh8.6 /tools/bin/tclsh else - ln -sf tclsh8.4 /usr/bin/tclsh + ln -sf tclsh8.6 /usr/bin/tclsh endif @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/transmission b/lfs/transmission index 13b5723..36eb3c4 100644 --- a/lfs/transmission +++ b/lfs/transmission @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2014 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 2.84 +VER = 2.92
THISAPP = transmission-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = transmission -PAK_VER = 12 +PAK_VER = 13
DEPS = ""
@@ -46,7 +46,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 411aec1c418c14f6765710d89743ae42 +$(DL_FILE)_MD5 = 3fce404a436e3cd7fde80fb6ed61c264
install : $(TARGET)
diff --git a/lfs/unbound b/lfs/unbound new file mode 100644 index 0000000..b2ef6ac --- /dev/null +++ b/lfs/unbound @@ -0,0 +1,109 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 1.5.10 + +THISAPP = unbound-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 0a3a236811f1ab5c1dc31974fa74e047 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && \ + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --with-pidfile=/var/run/unbound.pid \ + --with-rootkey-file=/var/lib/unbound/root.key \ + --disable-static \ + --with-libevent + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + + # Install configuration + install -v -m 644 $(DIR_SRC)/config/unbound/unbound.conf \ + /etc/unbound/unbound.conf + touch /etc/unbound/{dhcp-leases,forward}.conf + -mkdir -pv /etc/unbound/local.d + + # Install root hints + install -v -m 644 $(DIR_SRC)/config/unbound/root.hints \ + /etc/unbound/root.hints + + # Install DHCP leases bridge + install -v -m 755 $(DIR_SRC)/config/unbound/unbound-dhcp-leases-bridge \ + /usr/sbin/unbound-dhcp-leases-bridge + + # Install key + -mkdir -pv /var/lib/unbound + install -v -m 644 $(DIR_SRC)/config/unbound/root.key \ + /var/lib/unbound/root.key + chown -Rv nobody.nobody /var/lib/unbound + + # Ship ICANN's certificates to validate DNS trust anchors + install -v -m 644 $(DIR_SRC)/config/unbound/icannbundle.pem \ + /etc/unbound/icannbundle.pem + + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/usb_modeswitch b/lfs/usb_modeswitch index 1b719a6..3afd32b 100644 --- a/lfs/usb_modeswitch +++ b/lfs/usb_modeswitch @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2014 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 2.1.1 +VER = 2.4.0
THISAPP = usb-modeswitch-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 1f0dc900df88254bd1102444cb73efbc +$(DL_FILE)_MD5 = 6e1640db47768bb9012f91b7593116ef
install : $(TARGET)
diff --git a/lfs/usb_modeswitch_data b/lfs/usb_modeswitch_data index b0b8a37..9fda7ac 100644 --- a/lfs/usb_modeswitch_data +++ b/lfs/usb_modeswitch_data @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2014 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2016 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 20140327 +VER = 20160803
THISAPP = usb-modeswitch-data-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bbbc0a8e6a98bde2c6e119b3826658fb +$(DL_FILE)_MD5 = acc927e44827837eb23b2a7980b38a35
install : $(TARGET)
diff --git a/lfs/vdr_vnsiserver3 b/lfs/vdr_vnsiserver3 deleted file mode 100644 index 77d066b..0000000 --- a/lfs/vdr_vnsiserver3 +++ /dev/null @@ -1,99 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2013 IPFire Team info@ipfire.org # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = cc03615 -THISAPP = vdr-vnsiserver3-$(VER) -DL_FILE = $(THISAPP).tar.xz - -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = vdr_vnsiserver3 -PAK_VER = 2 - -DEPS = "" - -VDRPLUGVER = 2.0.0 - -EXTRA_FLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -CFLAGS += $(EXTRA_FLAGS) -CXXFLAGS += $(EXTRA_FLAGS) - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 5100b1cb1ee936f64b99a76c492fbc3f - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download : $(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -dist: - @$(PAK) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -############################################################################### -# Installation Details -############################################################################### - -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - - cd $(DIR_APP) && make $(MAKE_TUNING) LIBDIR=. VDRDIR=/usr/lib/vdr \ - CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \ - LOCALEDIR=$$(pwd)/locale all - - -mkdir -pv /etc/vdr/plugins/vnsiserver3 - cd $(DIR_APP) && install -m 755 libvdr-vnsiserver3.so \ - /usr/lib/vdr/libvdr-vnsiserver3.so.$(VDRPLUGVER) - ln -svf ../../svdrphosts.conf /etc/vdr/plugins/vnsiserver3/allowed_hosts.conf - install -m 644 $(DIR_SRC)/config/vdr/plugins.d/vnsiserver3.conf \ - /etc/sysconfig/vdr-plugins.d - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/make.sh b/make.sh index b6cb506..d4d164e 100755 --- a/make.sh +++ b/make.sh @@ -25,8 +25,8 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name VERSION="2.19" # Version number -CORE="105" # Core Level (Filename) -PAKFIRE_CORE="105" # Core Level (PAKFIRE) +CORE="106" # Core Level (Filename) +PAKFIRE_CORE="106" # Core Level (PAKFIRE) GIT_BRANCH=`git rev-parse --abbrev-ref HEAD` # Git Branch SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir @@ -298,6 +298,7 @@ buildtoolchain() { lfsmake1 ncurses lfsmake1 bash lfsmake1 bzip2 + lfsmake1 automake lfsmake1 coreutils lfsmake1 diffutils lfsmake1 findutils @@ -537,7 +538,9 @@ buildipfire() { ipfiremake beep ipfiremake dvdrtools ipfiremake nettle - ipfiremake dnsmasq + ipfiremake libevent + ipfiremake libevent2 + ipfiremake unbound ipfiremake dosfstools ipfiremake reiserfsprogs ipfiremake xfsprogs @@ -603,6 +606,10 @@ buildipfire() { ipfiremake python-mechanize ipfiremake python-feedparser ipfiremake python-rssdler + ipfiremake python-inotify + ipfiremake python-docutils + ipfiremake python-daemon + ipfiremake python-ipaddress ipfiremake glib ipfiremake GeoIP ipfiremake fwhits @@ -678,8 +685,6 @@ buildipfire() { ipfiremake gnump3d ipfiremake rsync ipfiremake tcpwrapper - ipfiremake libevent - ipfiremake libevent2 ipfiremake libtirpc ipfiremake rpcbind ipfiremake nfs @@ -726,7 +731,6 @@ buildipfire() { ipfiremake vdr ipfiremake vdr_streamdev ipfiremake vdr_vnsiserver5 - ipfiremake vdr_vnsiserver3 ipfiremake vdr_epgsearch ipfiremake vdr_dvbapi ipfiremake vdr_eepg diff --git a/src/initscripts/helper/writeipac.pl b/src/initscripts/helper/writeipac.pl deleted file mode 100644 index 5b0b754..0000000 --- a/src/initscripts/helper/writeipac.pl +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/perl -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -use strict; -require '/var/ipfire/general-functions.pl'; - -my %settings; -my $iface; - -General::readhash("${General::swroot}/ethernet/settings", %settings); - -if (!open(FILE, '>/etc/ipac-ng/rules.conf')) { - die "Unable to create /etc/ipac-ng/rules.conf"; } - -if (open(IFACE, "${General::swroot}/red/iface")) -{ - $iface = <IFACE>; - close IFACE; - chomp ($iface); -} - -print FILE "incoming GREEN ($settings{'GREEN_DEV'})|ipac~o|$settings{'GREEN_DEV'}|all|||\n"; -print FILE "outgoing GREEN ($settings{'GREEN_DEV'})|ipac~i|$settings{'GREEN_DEV'}|all|||\n"; -print FILE "forwarded incoming GREEN ($settings{'GREEN_DEV'})|ipac~fi|$settings{'GREEN_DEV'}|all|||\n"; -print FILE "forwarded outgoing GREEN ($settings{'GREEN_DEV'})|ipac~fo|$settings{'GREEN_DEV'}|all|||\n"; - -if ($settings{'CONFIG_TYPE'} =~ /^(2|4)$/ ) -{ - print FILE "incoming ORANGE ($settings{'ORANGE_DEV'})|ipac~o|$settings{'ORANGE_DEV'}|all|||\n"; - print FILE "outgoing ORANGE ($settings{'ORANGE_DEV'})|ipac~i|$settings{'ORANGE_DEV'}|all|||\n"; - print FILE "forwarded incoming ORANGE ($settings{'ORANGE_DEV'})|ipac~fi|$settings{'ORANGE_DEV'}|all|||\n"; - print FILE "forwarded outgoing ORANGE ($settings{'ORANGE_DEV'})|ipac~fo|$settings{'ORANGE_DEV'}|all|||\n"; -} - -if ($settings{'CONFIG_TYPE'} =~ /^(3|4)$/ ) -{ - print FILE "incoming BLUE ($settings{'BLUE_DEV'})|ipac~o|$settings{'BLUE_DEV'}|all|||\n"; - print FILE "outgoing BLUE ($settings{'BLUE_DEV'})|ipac~i|$settings{'BLUE_DEV'}|all|||\n"; - print FILE "forwarded incoming BLUE ($settings{'BLUE_DEV'})|ipac~fi|$settings{'BLUE_DEV'}|all|||\n"; - print FILE "forwarded outgoing BLUE ($settings{'BLUE_DEV'})|ipac~fo|$settings{'BLUE_DEV'}|all|||\n"; -} -if ($iface) { - print FILE "incoming RED ($iface)|ipac~o|$iface|all|||\n"; - print FILE "outgoing RED ($iface)|ipac~i|$iface|all|||\n"; - print FILE "forwarded incoming RED ($iface)|ipac~fi|$iface|all|||\n"; - print FILE "forwarded outgoing RED ($iface)|ipac~fo|$iface|all|||\n"; -} - -close FILE; diff --git a/src/initscripts/init.d/dhcp b/src/initscripts/init.d/dhcp index 083a555..2ae86db 100644 --- a/src/initscripts/init.d/dhcp +++ b/src/initscripts/init.d/dhcp @@ -7,7 +7,9 @@
. /etc/sysconfig/rc . $rc_functions + eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings) +eval $(/usr/local/bin/readhash /var/ipfire/dhcp/settings)
function flush_chains() { iptables -F DHCPGREENINPUT @@ -36,6 +38,12 @@ case "$1" in boot_mesg "Starting DHCP Server..." loadproc /usr/sbin/dhcpd -q ${devices}
+ # Start Unbound DHCP Lease Bridge unless RFC2136 is used + if [ "${DNS_UPDATE_ENABLED}" != on ]; then + boot_mesg "Starting Unbound DHCP Leases Bridge..." + loadproc /usr/sbin/unbound-dhcp-leases-bridge -d + fi + (sleep 5 && chmod 644 /var/run/dhcpd.pid) & # Fix because silly dhcpd creates its pid with mode 640 ;;
@@ -50,8 +58,10 @@ case "$1" in killall -w -s KILL /usr/sbin/dhcpd > /dev/null 2>&1 rm -f /var/run/dhcpd.pid > /dev/null 2>&1 echo_ok; - exit 0 fi + + boot_mesg "Stopping Unbound DHCP Leases Bridge..." + killproc /usr/sbin/unbound-dhcp-leases-bridge ;;
reload) @@ -67,6 +77,7 @@ case "$1" in
status) statusproc /usr/sbin/dhcpd + statusproc /usr/sbin/unbound-dhcp-leases-bridge ;;
*) diff --git a/src/initscripts/init.d/dnsmasq b/src/initscripts/init.d/dnsmasq deleted file mode 100644 index 059ffac..0000000 --- a/src/initscripts/init.d/dnsmasq +++ /dev/null @@ -1,145 +0,0 @@ -#!/bin/sh -######################################################################## -# Begin $rc_base/init.d/dnsmasq -# -# Description : dnsmasq init script -# -# Authors : Michael Tremer - mitch@ipfire.org -# -# Version : 01.00 -# -# Notes : -# -######################################################################## - -. /etc/sysconfig/rc -. ${rc_functions} - -CACHE_SIZE=2500 -ENABLE_DNSSEC=1 -SHOW_SRV=1 -TRUST_ANCHOR=".,19036,8,2,49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5" -TIMESTAMP_FILE="/var/ipfire/dns/dnssec-timestamp" - -# Pull custom configuration file -if [ -e "/etc/sysconfig/dnsmasq" ]; then - . /etc/sysconfig/dnsmasq -fi - -function dnssec_args() { - local cmdline="--dnssec --dnssec-timestamp ${TIMESTAMP_FILE}" - - if [ -n "${TRUST_ANCHOR}" ]; then - cmdline="${cmdline} --trust-anchor=${TRUST_ANCHOR}" - fi - - echo "${cmdline}" -} - -function dns_forward_args() { - local file="${1}" - - # Do nothing if file is empty. - [ -s "${file}" ] || return - - local cmdline - - local enabled zone server remark - while IFS="," read -r enabled zone server remark; do - # Line must be enabled. - [ "${enabled}" = "on" ] || continue - - cmdline="${cmdline} --server=/${zone}/${server}" - done < ${file} - - echo "${cmdline}" -} - -function dns_leases_args() { - eval $(/usr/local/bin/readhash /var/ipfire/dhcp/settings) - - # If the DHCP server is enabled and DNS Update (RFC2136) is - # enabled, too, we won't overlay the internal domain with - # the dynamic/static leases. - - if ([ "${ENABLE_GREEN}" = "on" ] || [ "${ENABLE_BLUE}" = "on" ]) \ - && [ "${DNS_UPDATE_ENABLED}" = "on" ]; then - return - fi - - echo "-l /var/state/dhcp/dhcpd.leases" -} - -case "${1}" in - start) - # kill already running copy of dnsmasq... - killproc /usr/sbin/dnsmasq 2>&1 > /dev/null - - boot_mesg "Starting Domain Name Service Proxy..." - - eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings) - ARGS="$CUSTOM_ARGS" - [ "$DOMAIN_NAME_GREEN" != "" ] && ARGS="$ARGS -s $DOMAIN_NAME_GREEN" - - # DHCP configuration - ARGS="${ARGS} $(dns_leases_args)" - - echo > /var/ipfire/red/resolv.conf # Clear it - if [ -e "/var/ipfire/red/dns1" ]; then - DNS1=$(cat /var/ipfire/red/dns1 2>/dev/null) - if [ ! -z ${DNS1} ]; then - echo "nameserver ${DNS1}" >> /var/ipfire/red/resolv.conf - fi - fi - if [ -e "/var/ipfire/red/dns2" ]; then - DNS2=$(cat /var/ipfire/red/dns2 2>/dev/null) - if [ ! -z ${DNS2} ]; then - echo "nameserver ${DNS2}" >> /var/ipfire/red/resolv.conf - fi - fi - [ -e "/var/ipfire/red/active" ] && ARGS="$ARGS -r /var/ipfire/red/resolv.conf" - - ARGS="$ARGS --domain=`cat /var/ipfire/main/settings |grep DOMAIN |cut -d = -f 2`" - - # Add custom forward dns zones. - ARGS="${ARGS} $(dns_forward_args /var/ipfire/dnsforward/config)" - - # Enabled DNSSEC validation - if [ "${ENABLE_DNSSEC}" -eq 1 ]; then - ARGS="${ARGS} $(dnssec_args)" - fi - - if [ -n "${CACHE_SIZE}" ]; then - ARGS="${ARGS} --cache-size=${CACHE_SIZE}" - fi - - loadproc /usr/sbin/dnsmasq ${ARGS} - - if [ "${SHOW_SRV}" -eq 1 ] && [ "${DNS1}" != "" -o "${DNS2}" != "" ]; then - boot_mesg "Using DNS server(s): ${DNS1} ${DNS2}" - boot_mesg_flush - fi - ;; - - stop) - boot_mesg "Stopping Domain Name Service Proxy..." - killproc /usr/sbin/dnsmasq - ;; - - restart) - ${0} stop - sleep 1 - ${0} start - ;; - - status) - statusproc /usr/sbin/dnsmasq - ;; - - *) - echo "Usage: ${0} {start|stop|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/dnsmasq diff --git a/src/initscripts/init.d/localnet b/src/initscripts/init.d/localnet index c1e5b29..ff374bb 100644 --- a/src/initscripts/init.d/localnet +++ b/src/initscripts/init.d/localnet @@ -15,6 +15,13 @@ . /etc/sysconfig/rc . ${rc_functions}
+write_resolv_conf() { + ( + [ -n "${DOMAINNAME}" ] && echo "search ${DOMAINNAME}" + echo "nameserver 127.0.0.1" + ) > /etc/resolv.conf +} + case "${1}" in start) eval $(/usr/local/bin/readhash /var/ipfire/main/settings) @@ -32,6 +39,9 @@ case "${1}" in domainname ${DOMAINNAME} evaluate_retval fi + + # Update resolv.conf + write_resolv_conf ;;
stop) diff --git a/src/initscripts/init.d/network b/src/initscripts/init.d/network index 9182e98..b29ca2c 100644 --- a/src/initscripts/init.d/network +++ b/src/initscripts/init.d/network @@ -16,10 +16,6 @@ . ${rc_functions} eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
-init_networking() { - /etc/rc.d/init.d/dnsmasq start -} - DO="${1}" shift
@@ -46,8 +42,6 @@ done
case "${DO}" in start) - [ "${ALL}" == "1" ] && init_networking - # Starting interfaces... # GREEN [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green start @@ -92,9 +86,6 @@ case "${DO}" in fi fi
- # Stopping dnsmasq if network all networks shutdown - [ "${ALL}" == "1" ] && /etc/rc.d/init.d/dnsmasq stop - exit 0 ;;
diff --git a/src/initscripts/init.d/networking/red.down/05-update-dns-forwarders b/src/initscripts/init.d/networking/red.down/05-update-dns-forwarders new file mode 100644 index 0000000..7f35696 --- /dev/null +++ b/src/initscripts/init.d/networking/red.down/05-update-dns-forwarders @@ -0,0 +1,4 @@ +#!/bin/bash + +# Update DNS forwarders for unbound +exec /etc/init.d/unbound update-forwarders diff --git a/src/initscripts/init.d/networking/red.up/05-update-dns-forwarders b/src/initscripts/init.d/networking/red.up/05-update-dns-forwarders new file mode 100644 index 0000000..4ff2e58 --- /dev/null +++ b/src/initscripts/init.d/networking/red.up/05-update-dns-forwarders @@ -0,0 +1,13 @@ +#!/bin/bash + +# If network has not fully been brought up here, we start unbound +# so that all following scripts can rely on DNS resolution + +pidof unbound > /dev/null +if [ "${?}" = "0" ]; then + # unbound is run so update the forwarders + /etc/init.d/unbound update-forwarders +else + # Start unbound if it is not running, yet + /etc/init.d/unbound start +fi diff --git a/src/initscripts/init.d/networking/red.up/40-ipac b/src/initscripts/init.d/networking/red.up/40-ipac deleted file mode 100644 index 301bc35..0000000 --- a/src/initscripts/init.d/networking/red.up/40-ipac +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -#/etc/rc.d/helper/writeipac.pl -#/usr/sbin/fetchipac -S - -exit 0 diff --git a/src/initscripts/init.d/ntp b/src/initscripts/init.d/ntp index a746c1e..d411ba1 100644 --- a/src/initscripts/init.d/ntp +++ b/src/initscripts/init.d/ntp @@ -10,7 +10,8 @@ case "$1" in start) if [ "$ENABLESETONBOOT" == "on" ]; then boot_mesg -n "Setting time on boot..." - if [ $(pidof wpa_supplicant dhcpcd) ]; then + pidof wpa_supplicant dhcpcd 2>&1 > /dev/null + if [ "${?}" == "0" ]; then if [ ! -e /var/ipfire/red/active ]; then boot_mesg "" boot_mesg -n "Waiting for red connection" diff --git a/src/initscripts/init.d/setclock b/src/initscripts/init.d/setclock index 661e944..cc977dd 100644 --- a/src/initscripts/init.d/setclock +++ b/src/initscripts/init.d/setclock @@ -30,16 +30,20 @@ case ${1} in fi
hwclock --hctosys ${CLOCKPARAMS} &>/dev/null - if [ ! ${?} == 0 ]; then - if [ -s /var/log/messages ]; then - boot_mesg -n "No RTC found, set time to last log accesstime ... " - DATE=`stat --format "%y" /var/log/messages | cut -d" " -f1` - TIME=`stat --format "%y" /var/log/messages | sed -e "s|..*||g" | cut -d" " -f2` - date -s $DATE > /dev/null - date -s $TIME + date + + if [ -e /var/log/messages ]; then + LOGTIMESTAMP=`stat --format "%y" /var/log/messages` + LOGTIME=`date +%s -d "$LOGTIMESTAMP"` + SYSTIME=`date +%s` + if [ $SYSTIME -lt $LOGTIME ]; then + boot_mesg "Warning! clock runs later than last log access. Check battery/rtc!" + date -s "$LOGTIMESTAMP" + echo_warning; + else + echo_ok; fi fi - evaluate_retval ;;
stop) diff --git a/src/initscripts/init.d/unbound b/src/initscripts/init.d/unbound new file mode 100644 index 0000000..4e42477 --- /dev/null +++ b/src/initscripts/init.d/unbound @@ -0,0 +1,407 @@ +#!/bin/sh +# Begin $rc_base/init.d/unbound + +# Description : Unbound DNS resolver boot script for IPfire +# Author : Marcel Lorenz marcel.lorenz@ipfire.org + +. /etc/sysconfig/rc +. ${rc_functions} + +TEST_DOMAIN="ipfire.org" + +# This domain will never validate +TEST_DOMAIN_FAIL="dnssec-failed.org" + +USE_FORWARDERS=1 + +# Cache any local zones for 60 seconds +LOCAL_TTL=60 + +# Load optional configuration +[ -e "/etc/sysconfig/unbound" ] && . /etc/sysconfig/unbound + +function cidr() { + local cidr nbits IFS; + IFS=. read -r i1 i2 i3 i4 <<< ${1} + IFS=. read -r m1 m2 m3 m4 <<< ${2} + cidr=$(printf "%d.%d.%d.%d\n" "$((i1 & m1))" "$((i2 & m2))" "$((i3 & m3))" "$((i4 & m4))") + nbits=0 + IFS=. + for dec in $2 ; do + case $dec in + 255) let nbits+=8;; + 254) let nbits+=7;; + 252) let nbits+=6;; + 248) let nbits+=5;; + 240) let nbits+=4;; + 224) let nbits+=3;; + 192) let nbits+=2;; + 128) let nbits+=1;; + 0);; + *) echo "Error: $dec is not recognised"; exit 1 + esac + done + echo "${cidr}/${nbits}" +} + +ip_address_revptr() { + local addr=${1} + + local a1 a2 a3 a4 + IFS=. read -r a1 a2 a3 a4 <<< ${addr} + + echo "${a4}.${a3}.${a2}.${a1}.in-addr.arpa" +} + +read_name_servers() { + local i + for i in 1 2; do + echo "$(</var/ipfire/red/dns${i})" + done | xargs echo +} + +config_header() { + echo "# This file is automatically generated and any changes" + echo "# will be overwritten. DO NOT EDIT!" + echo +} + +update_forwarders() { + if [ "${USE_FORWARDERS}" = "1" -a -e "/var/ipfire/red/active" ]; then + local forwarders + local broken_forwarders + + local ns + for ns in $(read_name_servers); do + test_name_server ${ns} &>/dev/null + case "$?" in + # Only use DNSSEC-validating or DNSSEC-aware name servers + 0|2) + forwarders="${forwarders} ${ns}" + ;; + *) + broken_forwarders="${broken_forwarders} ${ns}" + ;; + esac + done + + # Show warning for any broken upstream name servers + if [ -n "${broken_forwarders}" ]; then + boot_mesg "Ignoring broken upstream name server(s): ${broken_forwarders:1}" ${WARNING} + echo_warning + fi + + if [ -n "${broken_forwarders}" -a -z "${forwarders}" ]; then + boot_mesg "Falling back to recursor mode" ${WARNING} + echo_warning + + elif [ -n "${forwarders}" ]; then + boot_mesg "Configuring upstream name server(s): ${forwarders:1}" ${INFO} + echo_ok + + echo "${forwarders}" > /var/ipfire/red/dns + unbound-control -q forward ${forwarders} + return 0 + fi + fi + + # If forwarders cannot be used we run in recursor mode + echo "local recursor" > /var/ipfire/red/dns + unbound-control -q forward off +} + +own_hostname() { + local hostname=$(hostname -f) + # 1.1.1.1 is reserved for unused green, skip this + if [ -n "${GREEN_ADDRESS}" -a "${GREEN_ADDRESS}" != "1.1.1.1" ]; then + unbound-control -q local_data "${hostname} ${LOCAL_TTL} IN A ${GREEN_ADDRESS}" + fi + + local address + for address in ${GREEN_ADDRESS} ${BLUE_ADDRESS} ${ORANGE_ADDRESS}; do + [ -n "${address}" ] || continue + [ "${address}" = "1.1.1.1" ] && continue + + address=$(ip_address_revptr ${address}) + unbound-control -q local_data "${address} ${LOCAL_TTL} IN PTR ${hostname}" + done +} + +update_hosts() { + local enabled address hostname domainname + + while IFS="," read -r enabled address hostname domainname; do + [ "${enabled}" = "on" ] || continue + + # Build FQDN + local fqdn="${hostname}.${domainname}" + + unbound-control -q local_data "${fqdn} ${LOCAL_TTL} IN A ${address}" + + # Skip reverse resolution if the address equals the GREEN address + [ "${address}" = "${GREEN_ADDRESS}" ] && continue + + # Add RDNS + address=$(ip_address_revptr ${address}) + unbound-control -q local_data "${address} ${LOCAL_TTL} IN PTR ${fqdn}" + done < /var/ipfire/main/hosts +} + +write_interfaces_conf() { + ( + config_header + + # 1.1.1.1 is reserved for unused green + if [ -n "${GREEN_ADDRESS}" -a "${GREEN_ADDRESS}" != "1.1.1.1" ]; then + echo "# allow access from GREEN" + echo "access-control: $(cidr ${GREEN_NETADDRESS} ${GREEN_NETMASK}) allow" + fi + + if [ -n "${BLUE_ADDRESS}" ]; then + echo "# allow access from BLUE" + echo "access-control: $(cidr ${BLUE_NETADDRESS} ${BLUE_NETMASK}) allow" + fi + ) > /etc/unbound/interfaces.conf +} + +write_forward_conf() { + ( + config_header + + local enabled zone server remark + while IFS="," read -r enabled zone server remark; do + # Line must be enabled. + [ "${enabled}" = "on" ] || continue + + echo "forward-zone:" + echo " name: ${zone}" + echo " forward-addr: ${server}" + echo + done < /var/ipfire/dnsforward/config + ) > /etc/unbound/forward.conf +} + +write_tuning_conf() { + # https://www.unbound.net/documentation/howto_optimise.html + + # Determine number of online processors + local processors=$(getconf _NPROCESSORS_ONLN) + + # Determine number of slabs + local slabs=1 + while [ ${slabs} -lt ${processors} ]; do + slabs=$(( ${slabs} * 2 )) + done + + # Determine amount of system memory + local mem=$(get_memory_amount) + + # In the worst case scenario, unbound can use double the + # amount of memory allocated to a cache due to malloc overhead + + # Large systems with more than 2GB of RAM + if [ ${mem} -ge 2048 ]; then + mem=128 + + # Small systems with less than 256MB of RAM + elif [ ${mem} -le 256 ]; then + mem=8 + + # Everything else + else + mem=32 + fi + + ( + config_header + + # We run one thread per processor + echo "num-threads: ${processors}" + + # Adjust number of slabs + echo "infra-cache-slabs: ${slabs}" + echo "key-cache-slabs: ${slabs}" + echo "msg-cache-slabs: ${slabs}" + echo "rrset-cache-slabs: ${slabs}" + + # Slice up the cache + echo "rrset-cache-size: $(( ${mem} / 2 ))m" + echo "msg-cache-size: $(( ${mem} / 4 ))m" + echo "key-cache-size: $(( ${mem} / 4 ))m" + ) > /etc/unbound/tuning.conf +} + +get_memory_amount() { + local key val unit + + while read -r key val unit; do + case "${key}" in + MemTotal:*) + # Convert to MB + echo "$(( ${val} / 1024 ))" + break + ;; + esac + done < /proc/meminfo +} + +test_name_server() { + local ns=${1} + + # Return codes: + # 0 DNSSEC validating + # 1 Error: unreachable, etc. + # 2 DNSSEC aware + # 3 NOT DNSSEC-aware + + # Exit when the server is not reachable + ns_is_online ${ns} || return 1 + + # Return 0 if validating + ns_is_validating ${ns} && return 0 + + local errors + for rr in DNSKEY DS RRSIG; do + if ! ns_forwards_${rr} ${ns}; then + errors="${errors} ${rr}" + fi + done + + if [ -n "${errors}" ]; then + echo >&2 "Unable to retrieve the following resource records from ${ns}: ${errors:1}" + return 3 + fi + + # Is DNSSEC-aware + return 2 +} + +# Sends an A query to the nameserver w/o DNSSEC +ns_is_online() { + local ns=${1} + + dig @${ns} +nodnssec A ${TEST_DOMAIN} >/dev/null +} + +# Resolving ${TEST_DOMAIN_FAIL} will fail if the nameserver is validating +ns_is_validating() { + local ns=${1} + + dig @${ns} A ${TEST_DOMAIN_FAIL} | grep -q SERVFAIL +} + +# Checks if we can retrieve the DNSKEY for this domain. +# dig will print the SOA if nothing was found +ns_forwards_DNSKEY() { + local ns=${1} + + dig @${ns} DNSKEY ${TEST_DOMAIN} | grep -qv SOA +} + +ns_forwards_DS() { + local ns=${1} + + dig @${ns} DS ${TEST_DOMAIN} | grep -qv SOA +} + +ns_forwards_RRSIG() { + local ns=${1} + + dig @${ns} +dnssec A ${TEST_DOMAIN} | grep -q RRSIG +} + +ns_supports_tcp() { + local ns=${1} + + dig @${ns} +tcp A ${TEST_DOMAIN} >/dev/null || return 1 +} + +case "$1" in + start) + # Print a nicer messagen when unbound is already running + if pidofproc -s unbound; then + statusproc /usr/sbin/unbound + exit 0 + fi + + eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings) + + # Create control keys at first run + if [ ! -r "/etc/unbound/unbound_control.key" ]; then + unbound-control-setup -d /etc/unbound &>/dev/null + fi + + # Update configuration files + write_tuning_conf + write_interfaces_conf + write_forward_conf + + boot_mesg "Starting Unbound DNS Proxy..." + loadproc /usr/sbin/unbound || exit $? + + # Make own hostname resolveable + own_hostname + + # Update any known forwarding name servers + update_forwarders + + # Update hosts + update_hosts + ;; + + stop) + boot_mesg "Stopping Unbound DNS Proxy..." + killproc /usr/sbin/unbound + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + status) + statusproc /usr/sbin/unbound + ;; + + update-forwarders) + update_forwarders + ;; + + test-name-server) + ns=${2} + + test_name_server ${ns} + ret=${?} + + case "${ret}" in + 0) + echo "${ns} is validating" + ;; + 2) + echo "${ns} is DNSSEC-aware" + ;; + 3) + echo "${ns} is NOT DNSSEC-aware" + ;; + *) + echo "Test failed for an unknown reason" + ;; + esac + + if ns_supports_tcp ${ns}; then + echo "${ns} supports TCP fallback" + else + echo "${ns} does not support TCP fallback" + fi + + exit ${ret} + ;; + + *) + echo "Usage: $0 {start|stop|restart|status|update-forwarders|test-name-server}" + exit 1 + ;; +esac + +# End $rc_base/init.d/unbound diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile index ff775da..08a4e37 100644 --- a/src/misc-progs/Makefile +++ b/src/misc-progs/Makefile @@ -31,7 +31,7 @@ SUID_PROGS = squidctrl sshctrl ipfirereboot \ redctrl syslogdctrl extrahdctrl sambactrl upnpctrl \ smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \ setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \ - getconntracktable wirelessclient dnsmasqctrl torctrl ddnsctrl + getconntracktable wirelessclient torctrl ddnsctrl unboundctrl SUID_UPDX = updxsetperms
OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS)) diff --git a/src/misc-progs/dnsmasqctrl.c b/src/misc-progs/dnsmasqctrl.c deleted file mode 100644 index 8ac3360..0000000 --- a/src/misc-progs/dnsmasqctrl.c +++ /dev/null @@ -1,34 +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\ndnsmasqctrl (restart)\n\n"); - exit(1); - } - - if (strcmp(argv[1], "restart") == 0) { - safe_system("/etc/rc.d/init.d/dnsmasq restart"); - } else { - fprintf(stderr, "\nBad argument given.\n\ndnsmasqctrl (restart)\n\n"); - exit(1); - } - - return 0; -} diff --git a/src/misc-progs/rebuildhosts.c b/src/misc-progs/rebuildhosts.c index f77c2df..549c653 100644 --- a/src/misc-progs/rebuildhosts.c +++ b/src/misc-progs/rebuildhosts.c @@ -14,16 +14,13 @@ #include <stdio.h> #include <stdlib.h> #include <unistd.h> -#include <fcntl.h> #include <string.h> #include <sys/types.h> #include <sys/stat.h> -#include <signal.h>
#include "setuid.h" #include "netutil.h"
-FILE *fd = NULL; FILE *hosts = NULL; FILE *gw = NULL; struct keyvalue *kv = NULL; @@ -32,8 +29,6 @@ void exithandler(void) { if (kv) freekeyvalues(kv); - if (fd) - fclose(fd); if (hosts) fclose(hosts); if (gw) @@ -42,22 +37,16 @@ void exithandler(void)
int main(int argc, char *argv[]) { - int fdpid; char hostname[STRING_SIZE] = ""; char domainname[STRING_SIZE] = ""; char gateway[STRING_SIZE] = ""; - char buffer[STRING_SIZE]; char address[STRING_SIZE] = ""; - char *active, *ip, *host, *domain; - int pid;
if (!(initsetuid())) exit(1);
atexit(exithandler);
- memset(buffer, 0, STRING_SIZE); - kv = initkeyvalues(); if (!(readkeyvalues(kv, CONFIG_ROOT "/ethernet/settings"))) { @@ -88,17 +77,9 @@ int main(int argc, char *argv[]) fprintf(stderr, "Couldn't open remote-ipaddress file\n"); }
- if (!(fd = fopen(CONFIG_ROOT "/main/hosts", "r"))) - { - fprintf(stderr, "Couldn't open main hosts file\n"); - exit(1); - } - if (!(hosts = fopen("/etc/hosts", "w"))) { fprintf(stderr, "Couldn't open /etc/hosts file\n"); - fclose(fd); - fd = NULL; exit(1); } fprintf(hosts, "127.0.0.1\tlocalhost\n"); @@ -110,65 +91,5 @@ int main(int argc, char *argv[]) if (strlen(gateway) > 0) fprintf(hosts, "%s\tgateway\n", gateway);
- while (fgets(buffer, STRING_SIZE, fd)) - { - buffer[strlen(buffer) - 1] = 0; - if (buffer[0]==',') continue; /* disabled if empty field */ - active = strtok(buffer, ","); - if (strcmp(active, "off")==0) continue; /* or 'off' */ - - ip = strtok(NULL, ","); - host = strtok(NULL, ","); - domain = strtok(NULL, ","); - - if (!(ip && host)) - continue; // bad line ? skip - - if (!VALID_IP(ip)) - { - fprintf(stderr, "Bad IP: %s\n", ip); - continue; /* bad ip, skip */ - } - - if (strspn(host, LETTERS_NUMBERS "-") != strlen(host)) - { - fprintf(stderr, "Bad Host: %s\n", host); - continue; /* bad name, skip */ - } - - if (domain) - fprintf(hosts, "%s\t%s.%s\t%s\n",ip,host,domain,host); - else - fprintf(hosts, "%s\t%s\n",ip,host); - } - fclose(fd); - fd = NULL; - fclose(hosts); - hosts = NULL; - - if ((fdpid = open("/var/run/dnsmasq.pid", O_RDONLY)) == -1) - { - fprintf(stderr, "Couldn't open pid file\n"); - exit(1); - } - if (read(fdpid, buffer, STRING_SIZE - 1) == -1) - { - fprintf(stderr, "Couldn't read from pid file\n"); - close(fdpid); - exit(1); - } - close(fdpid); - pid = atoi(buffer); - if (pid <= 1) - { - fprintf(stderr, "Bad pid value\n"); - exit(1); - } - if (kill(pid, SIGHUP) == -1) - { - fprintf(stderr, "Unable to send SIGHUP\n"); - exit(1); - } - return 0; } diff --git a/src/misc-progs/unboundctrl.c b/src/misc-progs/unboundctrl.c new file mode 100644 index 0000000..fea81c6 --- /dev/null +++ b/src/misc-progs/unboundctrl.c @@ -0,0 +1,34 @@ +/* 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\nunboundctrl (restart)\n\n"); + exit(1); + } + + if (strcmp(argv[1], "restart") == 0) { + safe_system("/etc/rc.d/init.d/unbound restart"); + } else { + fprintf(stderr, "\nBad argument given.\n\nunboundctrl (restart)\n\n"); + exit(1); + } + + return 0; +} diff --git a/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch b/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch deleted file mode 100644 index 97b7749..0000000 --- a/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch +++ /dev/null @@ -1,363 +0,0 @@ ---- a/src/cache.c Wed Dec 16 19:24:12 2015 -+++ b/src/cache.c Wed Dec 16 19:37:37 2015 -@@ -17,7 +17,7 @@ - #include "dnsmasq.h" - - static struct crec *cache_head = NULL, *cache_tail = NULL, **hash_table = NULL; --#ifdef HAVE_DHCP -+#if (defined HAVE_DHCP) || (defined HAVE_ISC_READER) - static struct crec *dhcp_spare = NULL; - #endif - static struct crec *new_chain = NULL; -@@ -217,6 +217,9 @@ - crecp->flags &= ~F_BIGNAME; - } - -+ if (crecp->flags & F_DHCP) -+ free(crecp->name.namep); -+ - #ifdef HAVE_DNSSEC - cache_blockdata_free(crecp); - #endif -@@ -1138,7 +1141,7 @@ - - } - --#ifdef HAVE_DHCP -+#if (defined HAVE_DHCP) || (defined HAVE_ISC_READER) - struct in_addr a_record_from_hosts(char *name, time_t now) - { - struct crec *crecp = NULL; -@@ -1281,7 +1284,11 @@ - else - crec->ttd = ttd; - crec->addr.addr = *host_address; -+#ifdef HAVE_ISC_READER -+ crec->name.namep = strdup(host_name); -+#else - crec->name.namep = host_name; -+#endif - crec->uid = next_uid(); - cache_hash(crec); - ---- a/src/dnsmasq.c Thu Jul 30 20:59:06 2015 -+++ b/src/dnsmasq.c Wed Dec 16 19:38:32 2015 -@@ -1017,6 +1017,11 @@ - - poll_resolv(0, daemon->last_resolv != 0, now); - daemon->last_resolv = now; -+ -+#ifdef HAVE_ISC_READER -+ if (daemon->lease_file && !daemon->dhcp) -+ load_dhcp(now); -+#endif - } - #endif - ---- a/src/dnsmasq.h Wed Dec 16 19:24:12 2015 -+++ b/src/dnsmasq.h Wed Dec 16 19:40:11 2015 -@@ -1516,6 +1516,11 @@ - void poll_listen(int fd, short event); - int do_poll(int timeout); - -+/* isc.c */ -+#ifdef HAVE_ISC_READER -+void load_dhcp(time_t now); -+#endif -+ - /* rrfilter.c */ - size_t rrfilter(struct dns_header *header, size_t plen, int mode); - u16 *rrfilter_desc(int type); - int expand_workspace(unsigned char ***wkspc, int *szp, int new); -- ---- /dev/null Wed Dec 16 19:48:08 2015 -+++ b/src/isc.c Wed Dec 16 19:41:35 2015 -@@ -0,0 +1,266 @@ -+/* dnsmasq is Copyright (c) 2014 John Volpe, Simon Kelley and -+ Michael Tremer -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; version 2 dated June, 1991, or -+ (at your option) version 3 dated 29 June, 2007. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program. If not, see http://www.gnu.org/licenses/. -+ -+ Code in this file is based on contributions by John Volpe and -+ Simon Kelley. Updated for recent versions of dnsmasq by -+ Michael Tremer. -+*/ -+ -+ -+#define _GNU_SOURCE -+ -+#include <assert.h> -+#include <stdio.h> -+ -+#include "dnsmasq.h" -+ -+#ifdef HAVE_ISC_READER -+#define MAXTOK 50 -+ -+struct isc_dhcp_lease { -+ char* name; -+ char* fqdn; -+ time_t expires; -+ struct in_addr addr; -+ struct isc_dhcp_lease* next; -+}; -+ -+static struct isc_dhcp_lease* dhcp_lease_new(const char* hostname) { -+ struct isc_dhcp_lease* lease = whine_malloc(sizeof(*lease)); -+ if (!lease) -+ return NULL; -+ -+ lease->name = strdup(hostname); -+ if (daemon->domain_suffix) { -+ int r = asprintf(&lease->fqdn, "%s.%s", hostname, daemon->domain_suffix); -+ -+ // Handle OOM -+ if (r < 0) { -+ free(lease); -+ return NULL; -+ } -+ } -+ lease->expires = 0; -+ lease->next = NULL; -+ -+ return lease; -+} -+ -+static void dhcp_lease_free(struct isc_dhcp_lease* lease) { -+ if (!lease) -+ return; -+ -+ if (lease->name) -+ free(lease->name); -+ if (lease->fqdn) -+ free(lease->fqdn); -+ free(lease); -+} -+ -+static int next_token(char* token, int buffsize, FILE* fp) { -+ int c, count = 0; -+ char* cp = token; -+ -+ while ((c = getc(fp)) != EOF) { -+ if (c == '#') { -+ do { -+ c = getc(fp); -+ } while (c != '\n' && c != EOF); -+ } -+ -+ if (c == ' ' || c == '\t' || c == '\n' || c == ';') { -+ if (count) -+ break; -+ } else if ((c != '"') && (count < buffsize - 1)) { -+ *cp++ = c; -+ count++; -+ } -+ } -+ -+ *cp = 0; -+ return count ? 1 : 0; -+} -+ -+static long get_utc_offset() { -+ time_t t = time(NULL); -+ struct tm* time_struct = localtime(&t); -+ -+ return time_struct->tm_gmtoff; -+} -+ -+static time_t parse_lease_time(const char* token_date, const char* token_time) { -+ time_t time = (time_t)(-1); -+ struct tm lease_time; -+ -+ if (sscanf(token_date, "%d/%d/%d", &lease_time.tm_year, &lease_time.tm_mon, &lease_time.tm_mday) == 3) { -+ lease_time.tm_year -= 1900; -+ lease_time.tm_mon -= 1; -+ -+ if (sscanf(token_time, "%d:%d:%d", &lease_time.tm_hour, &lease_time.tm_min, &lease_time.tm_sec) == 3) { -+ time = mktime(&lease_time) + get_utc_offset(); -+ } -+ } -+ -+ return time; -+} -+ -+static struct isc_dhcp_lease* find_lease(const char* hostname, struct isc_dhcp_lease* leases) { -+ struct isc_dhcp_lease* lease = leases; -+ -+ while (lease) { -+ if (strcmp(hostname, lease->name) == 0) { -+ return lease; -+ } -+ lease = lease->next; -+ } -+ -+ return NULL; -+} -+ -+static off_t lease_file_size = (off_t)0; -+static ino_t lease_file_inode = (ino_t)0; -+ -+void load_dhcp(time_t now) { -+ struct isc_dhcp_lease* leases = NULL; -+ -+ struct stat statbuf; -+ if (stat(daemon->lease_file, &statbuf) == -1) { -+ return; -+ } -+ -+ /* Do nothing if the lease file has not changed. */ -+ if ((statbuf.st_size <= lease_file_size) && (statbuf.st_ino == lease_file_inode)) -+ return; -+ -+ lease_file_size = statbuf.st_size; -+ lease_file_inode = statbuf.st_ino; -+ -+ FILE* fp = fopen(daemon->lease_file, "r"); -+ if (!fp) { -+ my_syslog(LOG_ERR, _("failed to load %s:%s"), daemon->lease_file, strerror(errno)); -+ return; -+ } -+ -+ my_syslog(LOG_INFO, _("reading %s"), daemon->lease_file); -+ -+ char* hostname = daemon->namebuff; -+ struct in_addr host_address; -+ time_t time_starts = -1; -+ time_t time_ends = -1; -+ int nomem; -+ -+ char token[MAXTOK]; -+ while ((next_token(token, MAXTOK, fp))) { -+ if (strcmp(token, "lease") == 0) { -+ hostname[0] = '\0'; -+ -+ if (next_token(token, MAXTOK, fp) && ((host_address.s_addr = inet_addr(token)) != (in_addr_t)-1)) { -+ if (next_token(token, MAXTOK, fp) && *token == '{') { -+ while (next_token(token, MAXTOK, fp) && *token != '}') { -+ if ((strcmp(token, "client-hostname") == 0) || (strcmp(token, "hostname") == 0)) { -+ if (next_token(hostname, MAXDNAME, fp)) { -+ if (!canonicalise(hostname, &nomem)) { -+ *hostname = 0; -+ my_syslog(LOG_ERR, _("bad name in %s"), daemon->lease_file); -+ } -+ } -+ } else if ((strcmp(token, "starts") == 0) || (strcmp(token, "ends") == 0)) { -+ char token_date[MAXTOK]; -+ char token_time[MAXTOK]; -+ -+ int is_starts = strcmp(token, "starts") == 0; -+ -+ // Throw away the weekday and parse the date. -+ if (next_token(token, MAXTOK, fp) && next_token(token_date, MAXTOK, fp) && next_token(token_time, MAXTOK, fp)) { -+ time_t time = parse_lease_time(token_date, token_time); -+ -+ if (is_starts) -+ time_starts = time; -+ else -+ time_ends = time; -+ } -+ } -+ } -+ -+ if (!*hostname) -+ continue; -+ -+ if ((time_starts == -1) || (time_ends == -1)) -+ continue; -+ -+ if (difftime(now, time_ends) > 0) -+ continue; -+ -+ char* dot = strchr(hostname, '.'); -+ if (dot) { -+ if (!daemon->domain_suffix || hostname_isequal(dot + 1, daemon->domain_suffix)) { -+ my_syslog(LOG_WARNING, -+ _("Ignoring DHCP lease for %s because it has an illegal domain part"), -+ hostname); -+ continue; -+ } -+ *dot = 0; -+ } -+ -+ // Search for an existing lease in the list -+ // with the given host name and update the data -+ // if needed. -+ struct isc_dhcp_lease* lease = find_lease(hostname, leases); -+ -+ // If no lease already exists, we create a new one -+ // and append it to the list. -+ if (!lease) { -+ lease = dhcp_lease_new(hostname); -+ assert(lease); -+ -+ lease->next = leases; -+ leases = lease; -+ } -+ -+ // Only update more recent leases. -+ if (lease->expires > time_ends) -+ continue; -+ -+ lease->addr = host_address; -+ lease->expires = time_ends; -+ } -+ } -+ } -+ } -+ -+ fclose(fp); -+ -+ // Drop all entries. -+ cache_unhash_dhcp(); -+ -+ while (leases) { -+ struct isc_dhcp_lease *lease = leases; -+ leases = lease->next; -+ -+ if (lease->fqdn) { -+ cache_add_dhcp_entry(lease->fqdn, AF_INET, (struct all_addr*)&lease->addr.s_addr, lease->expires); -+ } -+ -+ if (lease->name) { -+ cache_add_dhcp_entry(lease->name, AF_INET, (struct all_addr*)&lease->addr.s_addr, lease->expires); -+ } -+ -+ // Cleanup -+ dhcp_lease_free(lease); -+ } -+} -+ -+#endif ---- a/src/option.c Wed Dec 16 19:24:12 2015 -+++ b/src/option.c Wed Dec 16 19:42:48 2015 -@@ -1771,7 +1771,7 @@ - ret_err(_("bad MX target")); - break; - --#ifdef HAVE_DHCP -+#if (defined HAVE_DHCP) || (defined HAVE_ISC_READER) - case 'l': /* --dhcp-leasefile */ - daemon->lease_file = opt_string_alloc(arg); - break; ---- a/Makefile Wed Dec 16 19:24:12 2015 -+++ b/Makefile Wed Dec 16 19:28:45 2015 -@@ -74,7 +74,7 @@ - helper.o tftp.o log.o conntrack.o dhcp6.o rfc3315.o \ - dhcp-common.o outpacket.o radv.o slaac.o auth.o ipset.o \ - domain.o dnssec.o blockdata.o tables.o loop.o inotify.o \ -- poll.o rrfilter.o edns0.o arp.o -+ poll.o rrfilter.o edns0.o arp.o isc.o - - hdrs = dnsmasq.h config.h dhcp-protocol.h dhcp6-protocol.h \ - dns-protocol.h radv-protocol.h ip6addr.h diff --git a/src/patches/dnsmasq/001-Calculate_length_of_TFTP_error_reply_correctly.patch b/src/patches/dnsmasq/001-Calculate_length_of_TFTP_error_reply_correctly.patch deleted file mode 100644 index 43ac068..0000000 --- a/src/patches/dnsmasq/001-Calculate_length_of_TFTP_error_reply_correctly.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 294d36df4749e01199ab220d44c170e7db2b0c05 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Wed, 6 Jul 2016 21:30:25 +0100 -Subject: [PATCH] Calculate length of TFTP error reply correctly. - ---- - CHANGELOG | 14 ++++++++++++++ - src/tftp.c | 7 +++++-- - 2 files changed, 19 insertions(+), 2 deletions(-) - -diff --git a/CHANGELOG b/CHANGELOG -index 04ff3f0..0559a6f 100644 ---- a/CHANGELOG -+++ b/CHANGELOG -@@ -1,3 +1,17 @@ -+version 2.77 -+ Calculate the length of TFTP error reply packet -+ correctly. This fixes a problem when the error -+ message in a TFTP packet exceeds the arbitrary -+ limit of 500 characters. The message was correctly -+ truncated, but not the packet length, so -+ extra data was appended. This is a possible -+ security risk, since the extra data comes from -+ a buffer which is also used for DNS, so that -+ previous DNS queries or replies may be leaked. -+ Thanks to Mozilla for funding the security audit -+ which spotted this bug. -+ -+ - version 2.76 - Include 0.0.0.0/8 in DNS rebind checks. This range - translates to hosts on the local network, or, at -diff --git a/src/tftp.c b/src/tftp.c -index 5e4a32a..3e1b5c5 100644 ---- a/src/tftp.c -+++ b/src/tftp.c -@@ -652,20 +652,23 @@ static void sanitise(char *buf) - - } - -+#define MAXMESSAGE 500 /* limit to make packet < 512 bytes and definitely smaller than buffer */ - static ssize_t tftp_err(int err, char *packet, char *message, char *file) - { - struct errmess { - unsigned short op, err; - char message[]; - } *mess = (struct errmess *)packet; -- ssize_t ret = 4; -+ ssize_t len, ret = 4; - char *errstr = strerror(errno); - - sanitise(file); - - mess->op = htons(OP_ERR); - mess->err = htons(err); -- ret += (snprintf(mess->message, 500, message, file, errstr) + 1); -+ len = snprintf(mess->message, MAXMESSAGE, message, file, errstr); -+ ret += (len < MAXMESSAGE) ? len + 1 : MAXMESSAGE; /* include terminating zero */ -+ - my_syslog(MS_TFTP | LOG_ERR, "%s", mess->message); - - return ret; --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/002-Zero_newly_malloc_ed_memory.patch b/src/patches/dnsmasq/002-Zero_newly_malloc_ed_memory.patch deleted file mode 100644 index b748db8..0000000 --- a/src/patches/dnsmasq/002-Zero_newly_malloc_ed_memory.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d55f81f5fd53b1dfc2c4b3249b542f2d9679e236 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Wed, 6 Jul 2016 21:33:56 +0100 -Subject: [PATCH] Zero newly malloc'ed memory. - ---- - src/util.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/util.c b/src/util.c -index 93b24f5..82443c9 100644 ---- a/src/util.c -+++ b/src/util.c -@@ -248,6 +248,8 @@ void *safe_malloc(size_t size) - - if (!ret) - die(_("could not get memory"), NULL, EC_NOMEM); -+ else -+ memset(ret, 0, size); - - return ret; - } -@@ -266,7 +268,9 @@ void *whine_malloc(size_t size) - - if (!ret) - my_syslog(LOG_ERR, _("failed to allocate %d bytes"), (int) size); -- -+ else -+ memset(ret, 0, size); -+ - return ret; - } - --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/003-Check_return_of_expand_always.patch b/src/patches/dnsmasq/003-Check_return_of_expand_always.patch deleted file mode 100644 index a69f4ce..0000000 --- a/src/patches/dnsmasq/003-Check_return_of_expand_always.patch +++ /dev/null @@ -1,44 +0,0 @@ -From ce7845bf5429bd2962c9b2e7d75e2659f3b5c1a8 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Wed, 6 Jul 2016 21:42:27 +0100 -Subject: [PATCH] Check return of expand() always. - ---- - src/radv.c | 4 +++- - src/slaac.c | 5 ++++- - 2 files changed, 7 insertions(+), 2 deletions(-) - -diff --git a/src/radv.c b/src/radv.c -index 749b666..faa0f6d 100644 ---- a/src/radv.c -+++ b/src/radv.c -@@ -262,7 +262,9 @@ static void send_ra_alias(time_t now, int iface, char *iface_name, struct in6_ad - parm.prio = calc_prio(ra_param); - - save_counter(0); -- ra = expand(sizeof(struct ra_packet)); -+ -+ if (!(ra = expand(sizeof(struct ra_packet)))) -+ return; - - ra->type = ND_ROUTER_ADVERT; - ra->code = 0; -diff --git a/src/slaac.c b/src/slaac.c -index 8034805..07b8ba4 100644 ---- a/src/slaac.c -+++ b/src/slaac.c -@@ -147,7 +147,10 @@ time_t periodic_slaac(time_t now, struct dhcp_lease *leases) - struct sockaddr_in6 addr; - - save_counter(0); -- ping = expand(sizeof(struct ping_packet)); -+ -+ if (!(ping = expand(sizeof(struct ping_packet)))) -+ continue; -+ - ping->type = ICMP6_ECHO_REQUEST; - ping->code = 0; - ping->identifier = ping_id; --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/004-Fix_editing_error_on_man_page.patch b/src/patches/dnsmasq/004-Fix_editing_error_on_man_page.patch deleted file mode 100644 index f4d0d20..0000000 --- a/src/patches/dnsmasq/004-Fix_editing_error_on_man_page.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 5874f3e9222397d82aabd9884d9bf5ce7e4109b0 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Sun, 10 Jul 2016 22:12:08 +0100 -Subject: [PATCH] Fix editing error on man page. - -Thanks to Eric Westbrook for spotting this. ---- - man/dnsmasq.8 | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 -index 0521534..bd8c0b3 100644 ---- a/man/dnsmasq.8 -+++ b/man/dnsmasq.8 -@@ -1037,6 +1037,10 @@ is given, then read all the files contained in that directory. The advantage of - using this option is the same as for --dhcp-hostsfile: the - dhcp-optsfile will be re-read when dnsmasq receives SIGHUP. Note that - it is possible to encode the information in a -+.B --dhcp-boot -+flag as DHCP options, using the options names bootfile-name, -+server-ip-address and tftp-server. This allows these to be included -+in a dhcp-optsfile. - .TP - .B --dhcp-hostsdir=<path> - This is equivalent to dhcp-hostsfile, except for the following. The path MUST be a -@@ -1048,11 +1052,6 @@ is restarted; ie host records are only added dynamically. - .TP - .B --dhcp-optsdir=<path> - This is equivalent to dhcp-optsfile, with the differences noted for --dhcp-hostsdir. --.TP --.B --dhcp-boot --flag as DHCP options, using the options names bootfile-name, --server-ip-address and tftp-server. This allows these to be included --in a dhcp-optsfile. - .TP - .B -Z, --read-ethers - Read /etc/ethers for information about hosts for the DHCP server. The --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/005-Manpage_typo.patch b/src/patches/dnsmasq/005-Manpage_typo.patch deleted file mode 100644 index 52f16de..0000000 --- a/src/patches/dnsmasq/005-Manpage_typo.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 907efeb2dc712603271093bce8a93c7c3e6fe64d Mon Sep 17 00:00:00 2001 -From: Kristjan Onu jeixav@gmail.com -Date: Sun, 10 Jul 2016 22:37:57 +0100 -Subject: [PATCH] Manpage typo. - ---- - man/dnsmasq.8 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 -index bd8c0b3..ac8d921 100644 ---- a/man/dnsmasq.8 -+++ b/man/dnsmasq.8 -@@ -242,7 +242,7 @@ addresses associated with the interface. - .B --local-service - Accept DNS queries only from hosts whose address is on a local subnet, - ie a subnet for which an interface exists on the server. This option --only has effect is there are no --interface --except-interface, -+only has effect if there are no --interface --except-interface, - --listen-address or --auth-server options. It is intended to be set as - a default on installation, to allow unconfigured installations to be - useful but also safe from being used for DNS amplification attacks. --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/006-Fix_bad_behaviour_with_some_DHCP_option_arrangements.patch b/src/patches/dnsmasq/006-Fix_bad_behaviour_with_some_DHCP_option_arrangements.patch deleted file mode 100644 index ec17115..0000000 --- a/src/patches/dnsmasq/006-Fix_bad_behaviour_with_some_DHCP_option_arrangements.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 591ed1e90503817938ccf5f127e677a8dd48b6d8 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Mon, 11 Jul 2016 18:18:42 +0100 -Subject: [PATCH] Fix bad behaviour with some DHCP option arrangements. - -The check that there's enough space to store the DHCP agent-id -at the end of the packet could succeed when it should fail -if the END option is in either of the oprion-overload areas. -That could overwrite legit options in the request and cause -bad behaviour. It's highly unlikely that any sane DHCP client -would trigger this bug, and it's never been seen, but this -fixes the problem. - -Also fix off-by-one in bounds checking of option processing. -Worst case scenario on that is a read one byte beyond the -end off a buffer with a crafted packet, and maybe therefore -a SIGV crash if the memory after the buffer is not mapped. - -Thanks to Timothy Becker for spotting these. ---- - src/rfc2131.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/rfc2131.c b/src/rfc2131.c -index b7c167e..8b99d4b 100644 ---- a/src/rfc2131.c -+++ b/src/rfc2131.c -@@ -186,7 +186,8 @@ size_t dhcp_reply(struct dhcp_context *context, char *iface_name, int int_index, - be enough free space at the end of the packet to copy the option. */ - unsigned char *sopt; - unsigned int total = option_len(opt) + 2; -- unsigned char *last_opt = option_find(mess, sz, OPTION_END, 0); -+ unsigned char *last_opt = option_find1(&mess->options[0] + sizeof(u32), ((unsigned char *)mess) + sz, -+ OPTION_END, 0); - if (last_opt && last_opt < end - total) - { - end -= total; -@@ -1606,7 +1607,7 @@ static unsigned char *option_find1(unsigned char *p, unsigned char *end, int opt - { - while (1) - { -- if (p > end) -+ if (p >= end) - return NULL; - else if (*p == OPTION_END) - return opt == OPTION_END ? p : NULL; --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/007-Fix_logic_error_in_Linux_netlink_code.patch b/src/patches/dnsmasq/007-Fix_logic_error_in_Linux_netlink_code.patch deleted file mode 100644 index 6a79eac..0000000 --- a/src/patches/dnsmasq/007-Fix_logic_error_in_Linux_netlink_code.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1d07667ac77c55b9de56b1b2c385167e0e0ec27a Mon Sep 17 00:00:00 2001 -From: Ivan Kokshaysky ink@jurassic.park.msu.ru -Date: Mon, 11 Jul 2016 18:36:05 +0100 -Subject: [PATCH] Fix logic error in Linux netlink code. - -This could cause dnsmasq to enter a tight loop on systems -with a very large number of network interfaces. ---- - CHANGELOG | 6 ++++++ - src/netlink.c | 8 +++++++- - 2 files changed, 13 insertions(+), 1 deletion(-) - -diff --git a/CHANGELOG b/CHANGELOG -index 0559a6f..59c9c49 100644 ---- a/CHANGELOG -+++ b/CHANGELOG -@@ -11,6 +11,12 @@ version 2.77 - Thanks to Mozilla for funding the security audit - which spotted this bug. - -+ Fix logic error in Linux netlink code. This could -+ cause dnsmasq to enter a tight loop on systems -+ with a very large number of network interfaces. -+ Thanks to Ivan Kokshaysky for the diagnosis and -+ patch. -+ - - version 2.76 - Include 0.0.0.0/8 in DNS rebind checks. This range -diff --git a/src/netlink.c b/src/netlink.c -index 049247b..8cd51af 100644 ---- a/src/netlink.c -+++ b/src/netlink.c -@@ -188,11 +188,17 @@ int iface_enumerate(int family, void *parm, int (*callback)()) - } - - for (h = (struct nlmsghdr *)iov.iov_base; NLMSG_OK(h, (size_t)len); h = NLMSG_NEXT(h, len)) -- if (h->nlmsg_seq != seq || h->nlmsg_pid != netlink_pid || h->nlmsg_type == NLMSG_ERROR) -+ if (h->nlmsg_pid != netlink_pid || h->nlmsg_type == NLMSG_ERROR) - { - /* May be multicast arriving async */ - nl_async(h); - } -+ else if (h->nlmsg_seq != seq) -+ { -+ /* May be part of incomplete response to previous request after -+ ENOBUFS. Drop it. */ -+ continue; -+ } - else if (h->nlmsg_type == NLMSG_DONE) - return callback_ok; - else if (h->nlmsg_type == RTM_NEWADDR && family != AF_UNSPEC && family != AF_LOCAL) --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/008-Fix_problem_with_--dnssec-timestamp.patch b/src/patches/dnsmasq/008-Fix_problem_with_--dnssec-timestamp.patch deleted file mode 100644 index b32d17a..0000000 --- a/src/patches/dnsmasq/008-Fix_problem_with_--dnssec-timestamp.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 06093a9a845bb597005d892d5d1bc7859933ada4 Mon Sep 17 00:00:00 2001 -From: Kevin Darbyshire-Bryant kevin@darbyshire-bryant.me.uk -Date: Mon, 11 Jul 2016 21:03:27 +0100 -Subject: [PATCH] Fix problem with --dnssec-timestamp whereby receipt of - SIGHUP would erroneously engage timestamp checking. - ---- - CHANGELOG | 4 ++++ - src/dnsmasq.c | 7 ++++--- - src/dnsmasq.h | 1 + - src/dnssec.c | 5 +++-- - 4 files changed, 12 insertions(+), 5 deletions(-) - -diff --git a/CHANGELOG b/CHANGELOG -index 59c9c49..9f1e404 100644 ---- a/CHANGELOG -+++ b/CHANGELOG -@@ -17,6 +17,10 @@ version 2.77 - Thanks to Ivan Kokshaysky for the diagnosis and - patch. - -+ Fix problem with --dnssec-timestamp whereby receipt -+ of SIGHUP would erroneously engage timestamp checking. -+ Thanks to Kevin Darbyshire-Bryant for this work. -+ - - version 2.76 - Include 0.0.0.0/8 in DNS rebind checks. This range -diff --git a/src/dnsmasq.c b/src/dnsmasq.c -index 045ec53..a47273f 100644 ---- a/src/dnsmasq.c -+++ b/src/dnsmasq.c -@@ -750,7 +750,8 @@ int main (int argc, char **argv) - - my_syslog(LOG_INFO, _("DNSSEC validation enabled")); - -- if (option_bool(OPT_DNSSEC_TIME)) -+ daemon->dnssec_no_time_check = option_bool(OPT_DNSSEC_TIME); -+ if (option_bool(OPT_DNSSEC_TIME) && !daemon->back_to_the_future) - my_syslog(LOG_INFO, _("DNSSEC signature timestamps not checked until first cache reload")); - - if (rc == 1) -@@ -1226,10 +1227,10 @@ static void async_event(int pipe, time_t now) - { - case EVENT_RELOAD: - #ifdef HAVE_DNSSEC -- if (option_bool(OPT_DNSSEC_VALID) && option_bool(OPT_DNSSEC_TIME)) -+ if (daemon->dnssec_no_time_check && option_bool(OPT_DNSSEC_VALID) && option_bool(OPT_DNSSEC_TIME)) - { - my_syslog(LOG_INFO, _("now checking DNSSEC signature timestamps")); -- reset_option_bool(OPT_DNSSEC_TIME); -+ daemon->dnssec_no_time_check = 0; - } - #endif - /* fall through */ -diff --git a/src/dnsmasq.h b/src/dnsmasq.h -index 1896a64..be27ae0 100644 ---- a/src/dnsmasq.h -+++ b/src/dnsmasq.h -@@ -992,6 +992,7 @@ extern struct daemon { - #endif - #ifdef HAVE_DNSSEC - struct ds_config *ds; -+ int dnssec_no_time_check; - int back_to_the_future; - char *timestamp_file; - #endif -diff --git a/src/dnssec.c b/src/dnssec.c -index 3c77c7d..64358fa 100644 ---- a/src/dnssec.c -+++ b/src/dnssec.c -@@ -522,15 +522,16 @@ static int check_date_range(u32 date_start, u32 date_end) - if (utime(daemon->timestamp_file, NULL) != 0) - my_syslog(LOG_ERR, _("failed to update mtime on %s: %s"), daemon->timestamp_file, strerror(errno)); - -+ my_syslog(LOG_INFO, _("system time considered valid, now checking DNSSEC signature timestamps.")); - daemon->back_to_the_future = 1; -- set_option_bool(OPT_DNSSEC_TIME); -+ daemon->dnssec_no_time_check = 0; - queue_event(EVENT_RELOAD); /* purge cache */ - } - - if (daemon->back_to_the_future == 0) - return 1; - } -- else if (option_bool(OPT_DNSSEC_TIME)) -+ else if (daemon->dnssec_no_time_check) - return 1; - - /* We must explicitly check against wanted values, because of SERIAL_UNDEF */ --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/009-malloc_memset_calloc_for_efficiency.patch b/src/patches/dnsmasq/009-malloc_memset_calloc_for_efficiency.patch deleted file mode 100644 index 0300853..0000000 --- a/src/patches/dnsmasq/009-malloc_memset_calloc_for_efficiency.patch +++ /dev/null @@ -1,46 +0,0 @@ -From d6dce53e08b3a06be16d43e1bf566c6c1988e4a9 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Mon, 11 Jul 2016 21:34:31 +0100 -Subject: [PATCH] malloc(); memset() -> calloc() for efficiency. - ---- - src/util.c | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/src/util.c b/src/util.c -index 82443c9..211690e 100644 ---- a/src/util.c -+++ b/src/util.c -@@ -244,13 +244,11 @@ unsigned char *do_rfc1035_name(unsigned char *p, char *sval) - /* for use during startup */ - void *safe_malloc(size_t size) - { -- void *ret = malloc(size); -+ void *ret = calloc(1, size); - - if (!ret) - die(_("could not get memory"), NULL, EC_NOMEM); -- else -- memset(ret, 0, size); -- -+ - return ret; - } - -@@ -264,12 +262,10 @@ void safe_pipe(int *fd, int read_noblock) - - void *whine_malloc(size_t size) - { -- void *ret = malloc(size); -+ void *ret = calloc(1, size); - - if (!ret) - my_syslog(LOG_ERR, _("failed to allocate %d bytes"), (int) size); -- else -- memset(ret, 0, size); - - return ret; - } --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/010-Zero_packet_buffers_before_building_output_to_reduce_risk_of_information_leakage.patch b/src/patches/dnsmasq/010-Zero_packet_buffers_before_building_output_to_reduce_risk_of_information_leakage.patch deleted file mode 100644 index a8c10a4..0000000 --- a/src/patches/dnsmasq/010-Zero_packet_buffers_before_building_output_to_reduce_risk_of_information_leakage.patch +++ /dev/null @@ -1,169 +0,0 @@ -From fa78573778cb23337f67f5d0c9de723169919047 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Fri, 22 Jul 2016 20:56:01 +0100 -Subject: [PATCH] Zero packet buffers before building output, to reduce risk - of information leakage. - ---- - src/auth.c | 5 +++++ - src/dnsmasq.h | 1 + - src/outpacket.c | 10 ++++++++++ - src/radv.c | 2 +- - src/rfc1035.c | 5 +++++ - src/rfc3315.c | 6 +++--- - src/slaac.c | 2 +- - src/tftp.c | 5 ++++- - 8 files changed, 30 insertions(+), 6 deletions(-) - -diff --git a/src/auth.c b/src/auth.c -index 198572d..3c5c37f 100644 ---- a/src/auth.c -+++ b/src/auth.c -@@ -101,6 +101,11 @@ size_t answer_auth(struct dns_header *header, char *limit, size_t qlen, time_t n - struct all_addr addr; - struct cname *a; - -+ /* Clear buffer beyond request to avoid risk of -+ information disclosure. */ -+ memset(((char *)header) + qlen, 0, -+ (limit - ((char *)header)) - qlen); -+ - if (ntohs(header->qdcount) == 0 || OPCODE(header) != QUERY ) - return 0; - -diff --git a/src/dnsmasq.h b/src/dnsmasq.h -index be27ae0..2bda5d0 100644 ---- a/src/dnsmasq.h -+++ b/src/dnsmasq.h -@@ -1471,6 +1471,7 @@ void log_relay(int family, struct dhcp_relay *relay); - /* outpacket.c */ - #ifdef HAVE_DHCP6 - void end_opt6(int container); -+void reset_counter(void); - int save_counter(int newval); - void *expand(size_t headroom); - int new_opt6(int opt); -diff --git a/src/outpacket.c b/src/outpacket.c -index a414efa..2caacd9 100644 ---- a/src/outpacket.c -+++ b/src/outpacket.c -@@ -29,9 +29,19 @@ void end_opt6(int container) - PUTSHORT(len, p); - } - -+void reset_counter(void) -+{ -+ /* Clear out buffer when starting from begining */ -+ if (daemon->outpacket.iov_base) -+ memset(daemon->outpacket.iov_base, 0, daemon->outpacket.iov_len); -+ -+ save_counter(0); -+} -+ - int save_counter(int newval) - { - int ret = outpacket_counter; -+ - if (newval != -1) - outpacket_counter = newval; - -diff --git a/src/radv.c b/src/radv.c -index faa0f6d..39c9217 100644 ---- a/src/radv.c -+++ b/src/radv.c -@@ -261,7 +261,7 @@ static void send_ra_alias(time_t now, int iface, char *iface_name, struct in6_ad - parm.adv_interval = calc_interval(ra_param); - parm.prio = calc_prio(ra_param); - -- save_counter(0); -+ reset_counter(); - - if (!(ra = expand(sizeof(struct ra_packet)))) - return; -diff --git a/src/rfc1035.c b/src/rfc1035.c -index 24d08c1..9e730a9 100644 ---- a/src/rfc1035.c -+++ b/src/rfc1035.c -@@ -1209,6 +1209,11 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen, - int nxdomain = 0, auth = 1, trunc = 0, sec_data = 1; - struct mx_srv_record *rec; - size_t len; -+ -+ /* Clear buffer beyond request to avoid risk of -+ information disclosure. */ -+ memset(((char *)header) + qlen, 0, -+ (limit - ((char *)header)) - qlen); - - if (ntohs(header->ancount) != 0 || - ntohs(header->nscount) != 0 || -diff --git a/src/rfc3315.c b/src/rfc3315.c -index 3f4d69c..e1271a1 100644 ---- a/src/rfc3315.c -+++ b/src/rfc3315.c -@@ -89,7 +89,7 @@ unsigned short dhcp6_reply(struct dhcp_context *context, int interface, char *if - for (vendor = daemon->dhcp_vendors; vendor; vendor = vendor->next) - vendor->netid.next = &vendor->netid; - -- save_counter(0); -+ reset_counter(); - state.context = context; - state.interface = interface; - state.iface_name = iface_name; -@@ -2084,7 +2084,7 @@ void relay_upstream6(struct dhcp_relay *relay, ssize_t sz, - if (hopcount > 32) - return; - -- save_counter(0); -+ reset_counter(); - - if ((header = put_opt6(NULL, 34))) - { -@@ -2161,7 +2161,7 @@ unsigned short relay_reply6(struct sockaddr_in6 *peer, ssize_t sz, char *arrival - (!relay->interface || wildcard_match(relay->interface, arrival_interface))) - break; - -- save_counter(0); -+ reset_counter(); - - if (relay) - { -diff --git a/src/slaac.c b/src/slaac.c -index 07b8ba4..bd6c9b4 100644 ---- a/src/slaac.c -+++ b/src/slaac.c -@@ -146,7 +146,7 @@ time_t periodic_slaac(time_t now, struct dhcp_lease *leases) - struct ping_packet *ping; - struct sockaddr_in6 addr; - -- save_counter(0); -+ reset_counter(); - - if (!(ping = expand(sizeof(struct ping_packet)))) - continue; -diff --git a/src/tftp.c b/src/tftp.c -index 3e1b5c5..618c406 100644 ---- a/src/tftp.c -+++ b/src/tftp.c -@@ -662,8 +662,9 @@ static ssize_t tftp_err(int err, char *packet, char *message, char *file) - ssize_t len, ret = 4; - char *errstr = strerror(errno); - -+ memset(packet, 0, daemon->packet_buff_sz); - sanitise(file); -- -+ - mess->op = htons(OP_ERR); - mess->err = htons(err); - len = snprintf(mess->message, MAXMESSAGE, message, file, errstr); -@@ -684,6 +685,8 @@ static ssize_t tftp_err_oops(char *packet, char *file) - /* return -1 for error, zero for done. */ - static ssize_t get_block(char *packet, struct tftp_transfer *transfer) - { -+ memset(packet, 0, daemon->packet_buff_sz); -+ - if (transfer->block == 0) - { - /* send OACK */ --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/011-Dont_reset_packet_length_on_transmission_in_case_of_retransmission.patch b/src/patches/dnsmasq/011-Dont_reset_packet_length_on_transmission_in_case_of_retransmission.patch deleted file mode 100644 index ab8ba28..0000000 --- a/src/patches/dnsmasq/011-Dont_reset_packet_length_on_transmission_in_case_of_retransmission.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 6b1c464d6de3d7d2afc9b53afe78cda6d6e3316f Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Fri, 22 Jul 2016 20:59:16 +0100 -Subject: [PATCH] Don't reset packet length on transmission, in case of - retransmission. - ---- - src/radv.c | 2 +- - src/rfc3315.c | 2 +- - src/slaac.c | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/radv.c b/src/radv.c -index 39c9217..ffc37f2 100644 ---- a/src/radv.c -+++ b/src/radv.c -@@ -528,7 +528,7 @@ static void send_ra_alias(time_t now, int iface, char *iface_name, struct in6_ad - } - - while (retry_send(sendto(daemon->icmp6fd, daemon->outpacket.iov_base, -- save_counter(0), 0, (struct sockaddr *)&addr, -+ save_counter(-1), 0, (struct sockaddr *)&addr, - sizeof(addr)))); - - } -diff --git a/src/rfc3315.c b/src/rfc3315.c -index e1271a1..c7bf46f 100644 ---- a/src/rfc3315.c -+++ b/src/rfc3315.c -@@ -2127,7 +2127,7 @@ void relay_upstream6(struct dhcp_relay *relay, ssize_t sz, - my_syslog(MS_DHCP | LOG_ERR, _("Cannot multicast to DHCPv6 server without correct interface")); - } - -- send_from(daemon->dhcp6fd, 0, daemon->outpacket.iov_base, save_counter(0), &to, &from, 0); -+ send_from(daemon->dhcp6fd, 0, daemon->outpacket.iov_base, save_counter(-1), &to, &from, 0); - - if (option_bool(OPT_LOG_OPTS)) - { -diff --git a/src/slaac.c b/src/slaac.c -index bd6c9b4..7ecf127 100644 ---- a/src/slaac.c -+++ b/src/slaac.c -@@ -164,7 +164,7 @@ time_t periodic_slaac(time_t now, struct dhcp_lease *leases) - addr.sin6_port = htons(IPPROTO_ICMPV6); - addr.sin6_addr = slaac->addr; - -- if (sendto(daemon->icmp6fd, daemon->outpacket.iov_base, save_counter(0), 0, -+ if (sendto(daemon->icmp6fd, daemon->outpacket.iov_base, save_counter(-1), 0, - (struct sockaddr *)&addr, sizeof(addr)) == -1 && - errno == EHOSTUNREACH) - slaac->ping_time = 0; /* Give up */ --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/012-Compile-time_check_on_buffer_sizes_for_leasefile_parsing_code.patch b/src/patches/dnsmasq/012-Compile-time_check_on_buffer_sizes_for_leasefile_parsing_code.patch deleted file mode 100644 index c71f470..0000000 --- a/src/patches/dnsmasq/012-Compile-time_check_on_buffer_sizes_for_leasefile_parsing_code.patch +++ /dev/null @@ -1,103 +0,0 @@ -From bf4e62c19e619f7edf8d03d58d33a5752f190bfd Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Fri, 22 Jul 2016 21:37:59 +0100 -Subject: [PATCH] Compile-time check on buffer sizes for leasefile parsing - code. - ---- - src/dhcp-common.c | 16 ++++++++-------- - src/dhcp-protocol.h | 4 ++++ - src/lease.c | 9 ++++++++- - src/rfc3315.c | 2 +- - 4 files changed, 21 insertions(+), 10 deletions(-) - -diff --git a/src/dhcp-common.c b/src/dhcp-common.c -index 08528e8..ecc752b 100644 ---- a/src/dhcp-common.c -+++ b/src/dhcp-common.c -@@ -20,11 +20,11 @@ - - void dhcp_common_init(void) - { -- /* These each hold a DHCP option max size 255 -- and get a terminating zero added */ -- daemon->dhcp_buff = safe_malloc(256); -- daemon->dhcp_buff2 = safe_malloc(256); -- daemon->dhcp_buff3 = safe_malloc(256); -+ /* These each hold a DHCP option max size 255 -+ and get a terminating zero added */ -+ daemon->dhcp_buff = safe_malloc(DHCP_BUFF_SZ); -+ daemon->dhcp_buff2 = safe_malloc(DHCP_BUFF_SZ); -+ daemon->dhcp_buff3 = safe_malloc(DHCP_BUFF_SZ); - - /* dhcp_packet is used by v4 and v6, outpacket only by v6 - sizeof(struct dhcp_packet) is as good an initial size as any, -@@ -855,14 +855,14 @@ void log_context(int family, struct dhcp_context *context) - if (context->flags & CONTEXT_RA_STATELESS) - { - if (context->flags & CONTEXT_TEMPLATE) -- strncpy(daemon->dhcp_buff, context->template_interface, 256); -+ strncpy(daemon->dhcp_buff, context->template_interface, DHCP_BUFF_SZ); - else - strcpy(daemon->dhcp_buff, daemon->addrbuff); - } - else - #endif -- inet_ntop(family, start, daemon->dhcp_buff, 256); -- inet_ntop(family, end, daemon->dhcp_buff3, 256); -+ inet_ntop(family, start, daemon->dhcp_buff, DHCP_BUFF_SZ); -+ inet_ntop(family, end, daemon->dhcp_buff3, DHCP_BUFF_SZ); - my_syslog(MS_DHCP | LOG_INFO, - (context->flags & CONTEXT_RA_STATELESS) ? - _("%s stateless on %s%.0s%.0s%s") : -diff --git a/src/dhcp-protocol.h b/src/dhcp-protocol.h -index a31d829..0ea449b 100644 ---- a/src/dhcp-protocol.h -+++ b/src/dhcp-protocol.h -@@ -19,6 +19,10 @@ - #define DHCP_CLIENT_ALTPORT 1068 - #define PXE_PORT 4011 - -+/* These each hold a DHCP option max size 255 -+ and get a terminating zero added */ -+#define DHCP_BUFF_SZ 256 -+ - #define BOOTREQUEST 1 - #define BOOTREPLY 2 - #define DHCP_COOKIE 0x63825363 -diff --git a/src/lease.c b/src/lease.c -index 20cac90..ca62cc5 100644 ---- a/src/lease.c -+++ b/src/lease.c -@@ -65,7 +65,14 @@ void lease_init(time_t now) - } - - /* client-id max length is 255 which is 255*2 digits + 254 colons -- borrow DNS packet buffer which is always larger than 1000 bytes */ -+ borrow DNS packet buffer which is always larger than 1000 bytes -+ -+ Check various buffers are big enough for the code below */ -+ -+#if (DHCP_BUFF_SZ < 255) || (MAXDNAME < 64) || (PACKETSZ+MAXDNAME+RRFIXEDSZ < 764) -+# error Buffer size breakage in leasfile parsing. -+#endif -+ - if (leasestream) - while (fscanf(leasestream, "%255s %255s", daemon->dhcp_buff3, daemon->dhcp_buff2) == 2) - { -diff --git a/src/rfc3315.c b/src/rfc3315.c -index c7bf46f..568b0c8 100644 ---- a/src/rfc3315.c -+++ b/src/rfc3315.c -@@ -1975,7 +1975,7 @@ static void log6_packet(struct state *state, char *type, struct in6_addr *addr, - - if (addr) - { -- inet_ntop(AF_INET6, addr, daemon->dhcp_buff2, 255); -+ inet_ntop(AF_INET6, addr, daemon->dhcp_buff2, DHCP_BUFF_SZ - 1); - strcat(daemon->dhcp_buff2, " "); - } - else --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/013-auth-zone_allow_to_exclude_ip_addresses_from_answer.patch b/src/patches/dnsmasq/013-auth-zone_allow_to_exclude_ip_addresses_from_answer.patch deleted file mode 100644 index bb5fe5d..0000000 --- a/src/patches/dnsmasq/013-auth-zone_allow_to_exclude_ip_addresses_from_answer.patch +++ /dev/null @@ -1,184 +0,0 @@ -From 094bfaeb4ff69cae99387bc2ea07ff57632c89f5 Mon Sep 17 00:00:00 2001 -From: Mathias Kresin dev@kresin.me -Date: Sun, 24 Jul 2016 14:15:22 +0100 -Subject: [PATCH] auth-zone: allow to exclude ip addresses from answer. - ---- - man/dnsmasq.8 | 6 +++++- - src/auth.c | 61 ++++++++++++++++++++++++++++++++++++--------------------- - src/dnsmasq.h | 1 + - src/option.c | 21 ++++++++++++++++++-- - 4 files changed, 64 insertions(+), 25 deletions(-) - -diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 -index ac8d921..8910947 100644 ---- a/man/dnsmasq.8 -+++ b/man/dnsmasq.8 -@@ -739,7 +739,7 @@ a return code of SERVFAIL. Note that - setting this may affect DNS behaviour in bad ways, it is not an - extra-logging flag and should not be set in production. - .TP --.B --auth-zone=<domain>[,<subnet>[/<prefix length>][,<subnet>[/<prefix length>].....]] -+.B --auth-zone=<domain>[,<subnet>[/<prefix length>][,<subnet>[/<prefix length>].....][,exclude:<subnet>[/<prefix length>]].....] - Define a DNS zone for which dnsmasq acts as authoritative server. Locally defined DNS records which are in the domain - will be served. If subnet(s) are given, A and AAAA records must be in one of the - specified subnets. -@@ -756,6 +756,10 @@ appear in the zone, but RFC1918 IPv4 addresses which should not. - Interface-name and address-literal subnet specifications may be used - freely in the same --auth-zone declaration. - -+It's possible to exclude certain IP addresses from responses. It can be -+used, to make sure that answers contain only global routeable IP -+addresses (by excluding loopback, RFC1918 and ULA addresses). -+ - The subnet(s) are also used to define in-addr.arpa and - ip6.arpa domains which are served for reverse-DNS queries. If not - specified, the prefix length defaults to 24 for IPv4 and 64 for IPv6. -diff --git a/src/auth.c b/src/auth.c -index 3c5c37f..f1ca2f5 100644 ---- a/src/auth.c -+++ b/src/auth.c -@@ -18,36 +18,53 @@ - - #ifdef HAVE_AUTH - --static struct addrlist *find_subnet(struct auth_zone *zone, int flag, struct all_addr *addr_u) -+static struct addrlist *find_addrlist(struct addrlist *list, int flag, struct all_addr *addr_u) - { -- struct addrlist *subnet; -- -- for (subnet = zone->subnet; subnet; subnet = subnet->next) -- { -- if (!(subnet->flags & ADDRLIST_IPV6)) -- { -- struct in_addr netmask, addr = addr_u->addr.addr4; -- -- if (!(flag & F_IPV4)) -- continue; -- -- netmask.s_addr = htonl(~(in_addr_t)0 << (32 - subnet->prefixlen)); -- -- if (is_same_net(addr, subnet->addr.addr.addr4, netmask)) -- return subnet; -- } -+ do { -+ if (!(list->flags & ADDRLIST_IPV6)) -+ { -+ struct in_addr netmask, addr = addr_u->addr.addr4; -+ -+ if (!(flag & F_IPV4)) -+ continue; -+ -+ netmask.s_addr = htonl(~(in_addr_t)0 << (32 - list->prefixlen)); -+ -+ if (is_same_net(addr, list->addr.addr.addr4, netmask)) -+ return list; -+ } - #ifdef HAVE_IPV6 -- else if (is_same_net6(&(addr_u->addr.addr6), &subnet->addr.addr.addr6, subnet->prefixlen)) -- return subnet; -+ else if (is_same_net6(&(addr_u->addr.addr6), &list->addr.addr.addr6, list->prefixlen)) -+ return list; - #endif -- -- } -+ -+ } while ((list = list->next)); -+ - return NULL; - } - -+static struct addrlist *find_subnet(struct auth_zone *zone, int flag, struct all_addr *addr_u) -+{ -+ if (!zone->subnet) -+ return NULL; -+ -+ return find_addrlist(zone->subnet, flag, addr_u); -+} -+ -+static struct addrlist *find_exclude(struct auth_zone *zone, int flag, struct all_addr *addr_u) -+{ -+ if (!zone->exclude) -+ return NULL; -+ -+ return find_addrlist(zone->exclude, flag, addr_u); -+} -+ - static int filter_zone(struct auth_zone *zone, int flag, struct all_addr *addr_u) - { -- /* No zones specified, no filter */ -+ if (find_exclude(zone, flag, addr_u)) -+ return 0; -+ -+ /* No subnets specified, no filter */ - if (!zone->subnet) - return 1; - -diff --git a/src/dnsmasq.h b/src/dnsmasq.h -index 2bda5d0..27385a9 100644 ---- a/src/dnsmasq.h -+++ b/src/dnsmasq.h -@@ -340,6 +340,7 @@ struct auth_zone { - struct auth_name_list *next; - } *interface_names; - struct addrlist *subnet; -+ struct addrlist *exclude; - struct auth_zone *next; - }; - -diff --git a/src/option.c b/src/option.c -index d8c57d6..6cedef3 100644 ---- a/src/option.c -+++ b/src/option.c -@@ -1906,6 +1906,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma - new = opt_malloc(sizeof(struct auth_zone)); - new->domain = opt_string_alloc(arg); - new->subnet = NULL; -+ new->exclude = NULL; - new->interface_names = NULL; - new->next = daemon->auth_zones; - daemon->auth_zones = new; -@@ -1913,6 +1914,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma - while ((arg = comma)) - { - int prefixlen = 0; -+ int is_exclude = 0; - char *prefix; - struct addrlist *subnet = NULL; - struct all_addr addr; -@@ -1923,6 +1925,12 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma - if (prefix && !atoi_check(prefix, &prefixlen)) - ret_err(gen_err); - -+ if (strstr(arg, "exclude:") == arg) -+ { -+ is_exclude = 1; -+ arg = arg+8; -+ } -+ - if (inet_pton(AF_INET, arg, &addr.addr.addr4)) - { - subnet = opt_malloc(sizeof(struct addrlist)); -@@ -1960,8 +1968,17 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma - if (subnet) - { - subnet->addr = addr; -- subnet->next = new->subnet; -- new->subnet = subnet; -+ -+ if (is_exclude) -+ { -+ subnet->next = new->exclude; -+ new->exclude = subnet; -+ } -+ else -+ { -+ subnet->next = new->subnet; -+ new->subnet = subnet; -+ } - } - } - break; --- -1.7.10.4 - diff --git a/src/patches/dnsmasq/014-Bump_auth_zone_serial_when_reloading_etc_hosts_and_friends.patch b/src/patches/dnsmasq/014-Bump_auth_zone_serial_when_reloading_etc_hosts_and_friends.patch deleted file mode 100644 index 054323b..0000000 --- a/src/patches/dnsmasq/014-Bump_auth_zone_serial_when_reloading_etc_hosts_and_friends.patch +++ /dev/null @@ -1,41 +0,0 @@ -From c8328ecde896575b3cb81cf537747df531f90771 Mon Sep 17 00:00:00 2001 -From: Simon Kelley simon@thekelleys.org.uk -Date: Fri, 5 Aug 2016 16:54:58 +0100 -Subject: [PATCH] Bump auth zone serial when reloading /etc/hosts and friends. - ---- - CHANGELOG | 4 ++++ - src/dnsmasq.c | 2 ++ - 2 files changed, 6 insertions(+) - -diff --git a/CHANGELOG b/CHANGELOG -index 9f1e404..4f89799 100644 ---- a/CHANGELOG -+++ b/CHANGELOG -@@ -20,6 +20,10 @@ version 2.77 - Fix problem with --dnssec-timestamp whereby receipt - of SIGHUP would erroneously engage timestamp checking. - Thanks to Kevin Darbyshire-Bryant for this work. -+ -+ Bump zone serial on reloading /etc/hosts and friends -+ when providing authoritative DNS. Thanks to Harrald -+ Dunkel for spotting this. - - - version 2.76 -diff --git a/src/dnsmasq.c b/src/dnsmasq.c -index a47273f..3580bea 100644 ---- a/src/dnsmasq.c -+++ b/src/dnsmasq.c -@@ -1226,6 +1226,8 @@ static void async_event(int pipe, time_t now) - switch (ev.event) - { - case EVENT_RELOAD: -+ daemon->soa_sn++; /* Bump zone serial, as it may have changed. */ -+ - #ifdef HAVE_DNSSEC - if (daemon->dnssec_no_time_check && option_bool(OPT_DNSSEC_VALID) && option_bool(OPT_DNSSEC_TIME)) - { --- -1.7.10.4 - diff --git a/src/patches/iproute2-4.7.0_remove_arpd.patch b/src/patches/iproute2-4.7.0_remove_arpd.patch new file mode 100644 index 0000000..786c031 --- /dev/null +++ b/src/patches/iproute2-4.7.0_remove_arpd.patch @@ -0,0 +1,176 @@ +diff -Naur a/doc/arpd.sgml b/doc/arpd.sgml +--- a/doc/arpd.sgml ++++ b/doc/arpd.sgml +@@ -1,130 +0,0 @@ +-<!doctype linuxdoc system> +- +-<article> +- +-<title>ARPD Daemon +-<author>Alexey Kuznetsov, <tt/kuznet@ms2.inr.ac.ru/ +-<date>some_negative_number, 20 Sep 2001 +-<abstract> +-<tt/arpd/ is daemon collecting gratuitous ARP information, saving +-it on local disk and feeding it to kernel on demand to avoid +-redundant broadcasting due to limited size of kernel ARP cache. +-</abstract> +- +- +-<p><bf/Description/ +- +-<p>The format of the command is: +- +-<tscreen><verb> +- arpd OPTIONS [ INTERFACE [ INTERFACE ... ] ] +-</verb></tscreen> +- +-<p> <tt/OPTIONS/ are: +- +-<itemize> +- +-<item><tt/-l/ - dump <tt/arpd/ database to stdout and exit. Output consists +-of three columns: interface index, IP address and MAC address. +-Negative entries for dead hosts are also shown, in this case MAC address +-is replaced by word <tt/FAILED/ followed by colon and time when the fact +-that host is dead was proven the last time. +- +-<item><tt/-f FILE/ - read and load <tt/arpd/ database from <tt/FILE/ +-in text format similar dumped by option <tt/-l/. Exit after load, +-probably listing resulting database, if option <tt/-l/ is also given. +-If <tt/FILE/ is <tt/-/, <tt/stdin/ is read to get ARP table. +- +-<item><tt/-b DATABASE/ - location of database file. Default location is +-<tt>/var/lib/arpd/arpd.db</tt>. +- +-<item><tt/-a NUMBER/ - <tt/arpd/ not only passively listens ARP on wire, but +-also send brodcast queries itself. <tt/NUMBER/ is number of such queries +-to make before destination is considered as dead. When <tt/arpd/ is started +-as kernel helper (i.e. with <tt/app_solicit/ enabled in <tt/sysctl/ +-or even with option <tt/-k/) without this option and still did not learn enough +-information, you can observe 1 second gaps in service. Not fatal, but +-not good. +- +-<item><tt/-k/ - suppress sending broadcast queries by kernel. It takes +-sense together with option <tt/-a/. +- +-<item><tt/-n TIME/ - timeout of negative cache. When resolution fails <tt/arpd/ +-suppresses further attempts to resolve for this period. It makes sense +-only together with option <tt/-k/. This timeout should not be too much +-longer than boot time of a typical host not supporting gratuitous ARP. +-Default value is 60 seconds. +- +-<item><tt/-R RATE/ - maximal steady rate of broadcasts sent by <tt/arpd/ +-in packets per second. Default value is 1. +- +-<item><tt/-B NUMBER/ - number of broadcasts sent by <tt/arpd/ back to back. +-Default value is 3. Together with option <tt/-R/ this option allows +-to police broadcasting not to exceed <tt/B+R*T/ over any interval +-of time <tt/T/. +- +-</itemize> +- +-<p><tt/INTERFACE/ is name of networking inteface to watch. +-If no interfaces given, <tt/arpd/ monitors all the interfaces. +-In this case <tt/arpd/ does not adjust <tt/sysctl/ parameters, +-it is supposed user does this himself after <tt/arpd/ is started. +- +- +-<p> Signals +- +-<p> <tt/arpd/ exits gracefully syncing database and restoring adjusted +-<tt/sysctl/ parameters, when receives <tt/SIGINT/ or <tt/SIGTERM/. +-<tt/SIGHUP/ syncs database to disk. <tt/SIGUSR1/ sends some statistics +-to <tt/syslog/. Effect of another signals is undefined, they may corrupt +-database and leave <tt/sysctl/ parameters in an unpredictable state. +- +-<p> Note +- +-<p> In order to <tt/arpd/ be able to serve as ARP resolver, kernel must be +-compiled with the option <tt/CONFIG_ARPD/ and, in the case when interface list +-is not given on command line, variable <tt/app_solicit/ +-on interfaces of interest should be set in <tt>/proc/sys/net/ipv4/neigh/*</tt>. +-If this is not made <tt/arpd/ still collects gratuitous ARP information +-in its database. +- +-<p> Examples +- +-<enum> +-<item> Start <tt/arpd/ to collect gratuitous ARP, but not messing +-with kernel functionality: +- +-<tscreen><verb> +- arpd -b /var/tmp/arpd.db +-</verb></tscreen> +- +-<item> Look at result after some time: +- +-<tscreen><verb> +- killall arpd +- arpd -l -b /var/tmp/arpd.db +-</verb></tscreen> +- +-<item> To enable kernel helper, leaving leading role to kernel: +- +-<tscreen><verb> +- arpd -b /var/tmp/arpd.db -a 1 eth0 eth1 +-</verb></tscreen> +- +-<item> Completely replace kernel resolution on interfaces <tt/eth0/ +-and <tt/eth1/. In this case kernel still does unicast probing to +-validate entries, but all the broadcast activity is suppressed +-and made under authority of <tt/arpd/: +- +-<tscreen><verb> +- arpd -b /var/tmp/arpd.db -a 3 -k eth0 eth1 +-</verb></tscreen> +- +-This is mode which <tt/arpd/ is supposed to work normally. +-It is not default just to prevent occasional enabling of too aggressive +-mode occasionally. +- +-</enum> +- +-</article> +- +diff -Naur a/Makefile b/Makefile +--- a/Makefile ++++ b/Makefile +@@ -9,7 +9,6 @@ + DATADIR?=$(PREFIX)/share + DOCDIR?=$(DATADIR)/doc/iproute2 + MANDIR?=$(DATADIR)/man +-ARPDDIR?=/var/lib/arpd + KERNEL_INCLUDE?=/usr/include + BASH_COMPDIR?=$(DATADIR)/bash-completion/completions + +@@ -62,7 +61,6 @@ + install: all + install -m 0755 -d $(DESTDIR)$(SBINDIR) + install -m 0755 -d $(DESTDIR)$(CONFDIR) +- install -m 0755 -d $(DESTDIR)$(ARPDDIR) + install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples + install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples/diffserv + install -m 0644 README.iproute2+tc $(shell find examples -maxdepth 1 -type f) \ +diff -Naur a/man/man8/Makefile b/man/man8/Makefile +--- a/man/man8/Makefile ++++ b/man/man8/Makefile +@@ -1,6 +1,6 @@ + TARGETS = ip-address.8 ip-link.8 ip-route.8 + +-MAN8PAGES = $(TARGETS) ip.8 arpd.8 lnstat.8 routel.8 rtacct.8 rtmon.8 rtpr.8 ss.8 \ ++MAN8PAGES = $(TARGETS) ip.8 lnstat.8 routel.8 rtacct.8 rtmon.8 rtpr.8 ss.8 \ + tc.8 tc-bfifo.8 tc-bpf.8 tc-cbq.8 tc-cbq-details.8 tc-choke.8 tc-codel.8 \ + tc-fq.8 \ + tc-drr.8 tc-ematch.8 tc-fq_codel.8 tc-hfsc.8 tc-htb.8 tc-pie.8 \ +diff -Naur a/tc/Makefile b/tc/Makefile +--- a/tc/Makefile ++++ b/tc/Makefile +@@ -89,7 +89,7 @@ + CFLAGS += -DTC_CONFIG_XT_H + TCSO += m_xt_old.so + else +- TCMODULES += m_ipt.o ++ TCMODULES += + endif + endif + endif diff --git a/src/patches/mitkrb-1.12.1-db2_fix-1.patch b/src/patches/mitkrb-1.12.1-db2_fix-1.patch deleted file mode 100644 index f27304c..0000000 --- a/src/patches/mitkrb-1.12.1-db2_fix-1.patch +++ /dev/null @@ -1,175 +0,0 @@ -Submitted By: Pierre Labastie <pierre dot labastie at eamil dot fr> -Date: 2014-03-04 -Initial Package Version: 1.12.1 -Upstream Status: In upstream GIT -Origin: Upstream -Description: Fixes http://krbdev.mit.edu/rt/Ticket/Display.html?id=7860 - ---- a/src/plugins/kdb/db2/libdb2/mpool/mpool.c -+++ b/src/plugins/kdb/db2/libdb2/mpool/mpool.c -@@ -81,9 +81,9 @@ mpool_open(key, fd, pagesize, maxcache) - /* Allocate and initialize the MPOOL cookie. */ - if ((mp = (MPOOL *)calloc(1, sizeof(MPOOL))) == NULL) - return (NULL); -- CIRCLEQ_INIT(&mp->lqh); -+ TAILQ_INIT(&mp->lqh); - for (entry = 0; entry < HASHSIZE; ++entry) -- CIRCLEQ_INIT(&mp->hqh[entry]); -+ TAILQ_INIT(&mp->hqh[entry]); - mp->maxcache = maxcache; - mp->npages = sb.st_size / pagesize; - mp->pagesize = pagesize; -@@ -143,8 +143,8 @@ mpool_new(mp, pgnoaddr, flags) - bp->flags = MPOOL_PINNED | MPOOL_INUSE; - - head = &mp->hqh[HASHKEY(bp->pgno)]; -- CIRCLEQ_INSERT_HEAD(head, bp, hq); -- CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); -+ TAILQ_INSERT_HEAD(head, bp, hq); -+ TAILQ_INSERT_TAIL(&mp->lqh, bp, q); - return (bp->page); - } - -@@ -168,8 +168,8 @@ mpool_delete(mp, page) - - /* Remove from the hash and lru queues. */ - head = &mp->hqh[HASHKEY(bp->pgno)]; -- CIRCLEQ_REMOVE(head, bp, hq); -- CIRCLEQ_REMOVE(&mp->lqh, bp, q); -+ TAILQ_REMOVE(head, bp, hq); -+ TAILQ_REMOVE(&mp->lqh, bp, q); - - free(bp); - return (RET_SUCCESS); -@@ -208,10 +208,10 @@ mpool_get(mp, pgno, flags) - * of the lru chain. - */ - head = &mp->hqh[HASHKEY(bp->pgno)]; -- CIRCLEQ_REMOVE(head, bp, hq); -- CIRCLEQ_INSERT_HEAD(head, bp, hq); -- CIRCLEQ_REMOVE(&mp->lqh, bp, q); -- CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); -+ TAILQ_REMOVE(head, bp, hq); -+ TAILQ_INSERT_HEAD(head, bp, hq); -+ TAILQ_REMOVE(&mp->lqh, bp, q); -+ TAILQ_INSERT_TAIL(&mp->lqh, bp, q); - - /* Return a pinned page. */ - bp->flags |= MPOOL_PINNED; -@@ -261,8 +261,8 @@ mpool_get(mp, pgno, flags) - * of the lru chain. - */ - head = &mp->hqh[HASHKEY(bp->pgno)]; -- CIRCLEQ_INSERT_HEAD(head, bp, hq); -- CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q); -+ TAILQ_INSERT_HEAD(head, bp, hq); -+ TAILQ_INSERT_TAIL(&mp->lqh, bp, q); - - /* Run through the user's filter. */ - if (mp->pgin != NULL) -@@ -311,8 +311,8 @@ mpool_close(mp) - BKT *bp; - - /* Free up any space allocated to the lru pages. */ -- while ((bp = mp->lqh.cqh_first) != (void *)&mp->lqh) { -- CIRCLEQ_REMOVE(&mp->lqh, mp->lqh.cqh_first, q); -+ while ((bp = mp->lqh.tqh_first) != NULL) { -+ TAILQ_REMOVE(&mp->lqh, mp->lqh.tqh_first, q); - free(bp); - } - -@@ -332,8 +332,7 @@ mpool_sync(mp) - BKT *bp; - - /* Walk the lru chain, flushing any dirty pages to disk. */ -- for (bp = mp->lqh.cqh_first; -- bp != (void *)&mp->lqh; bp = bp->q.cqe_next) -+ for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next) - if (bp->flags & MPOOL_DIRTY && - mpool_write(mp, bp) == RET_ERROR) - return (RET_ERROR); -@@ -363,8 +362,7 @@ mpool_bkt(mp) - * off any lists. If we don't find anything we grow the cache anyway. - * The cache never shrinks. - */ -- for (bp = mp->lqh.cqh_first; -- bp != (void *)&mp->lqh; bp = bp->q.cqe_next) -+ for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next) - if (!(bp->flags & MPOOL_PINNED)) { - /* Flush if dirty. */ - if (bp->flags & MPOOL_DIRTY && -@@ -375,8 +373,8 @@ mpool_bkt(mp) - #endif - /* Remove from the hash and lru queues. */ - head = &mp->hqh[HASHKEY(bp->pgno)]; -- CIRCLEQ_REMOVE(head, bp, hq); -- CIRCLEQ_REMOVE(&mp->lqh, bp, q); -+ TAILQ_REMOVE(head, bp, hq); -+ TAILQ_REMOVE(&mp->lqh, bp, q); - #if defined(DEBUG) && !defined(DEBUG_IDX0SPLIT) - { void *spage; - spage = bp->page; -@@ -450,7 +448,7 @@ mpool_look(mp, pgno) - BKT *bp; - - head = &mp->hqh[HASHKEY(pgno)]; -- for (bp = head->cqh_first; bp != (void *)head; bp = bp->hq.cqe_next) -+ for (bp = head->tqh_first; bp != NULL; bp = bp->hq.tqe_next) - if ((bp->pgno == pgno) && (bp->flags & MPOOL_INUSE)) { - #ifdef STATISTICS - ++mp->cachehit; -@@ -494,8 +492,7 @@ mpool_stat(mp) - - sep = ""; - cnt = 0; -- for (bp = mp->lqh.cqh_first; -- bp != (void *)&mp->lqh; bp = bp->q.cqe_next) { -+ for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next) { - (void)fprintf(stderr, "%s%d", sep, bp->pgno); - if (bp->flags & MPOOL_DIRTY) - (void)fprintf(stderr, "d"); - ---- a/src/plugins/kdb/db2/libdb2/mpool/mpool.h -+++ b/src/plugins/kdb/db2/libdb2/mpool/mpool.h -@@ -47,8 +47,8 @@ - - /* The BKT structures are the elements of the queues. */ - typedef struct _bkt { -- CIRCLEQ_ENTRY(_bkt) hq; /* hash queue */ -- CIRCLEQ_ENTRY(_bkt) q; /* lru queue */ -+ TAILQ_ENTRY(_bkt) hq; /* hash queue */ -+ TAILQ_ENTRY(_bkt) q; /* lru queue */ - void *page; /* page */ - db_pgno_t pgno; /* page number */ - -@@ -59,9 +59,9 @@ typedef struct _bkt { - } BKT; - - typedef struct MPOOL { -- CIRCLEQ_HEAD(_lqh, _bkt) lqh; /* lru queue head */ -+ TAILQ_HEAD(_lqh, _bkt) lqh; /* lru queue head */ - /* hash queue array */ -- CIRCLEQ_HEAD(_hqh, _bkt) hqh[HASHSIZE]; -+ TAILQ_HEAD(_hqh, _bkt) hqh[HASHSIZE]; - db_pgno_t curcache; /* current number of cached pages */ - db_pgno_t maxcache; /* max number of cached pages */ - db_pgno_t npages; /* number of pages in the file */ - ---- a/src/plugins/kdb/db2/libdb2/test/run.test -+++ b/src/plugins/kdb/db2/libdb2/test/run.test -@@ -71,10 +71,11 @@ main() - } - - getnwords() { -- # Delete blank lines because the db code appears not to -- # like empty keys. On Debian Linux, $DICT appears to contain -- # some non-ASCII characters, and "rev" chokes on them. -- sed -e '/^$/d' < $DICT | cat -v | sed -e ${1}q -+ # Delete blank lines because the db code appears not to like -+ # empty keys. Omit lines with non-alphanumeric characters to -+ # avoid shell metacharacters and non-ASCII characters which -+ # could cause 'rev' to choke. -+ LC_ALL=C sed -e '/^$/d' -e '/[^A-Za-z]/d' < $DICT | sed -e ${1}q - } - - # Take the first hundred entries in the dictionary, and make them diff --git a/src/patches/shadow-4.2.1-SHA512_password_hashing.patch b/src/patches/shadow-4.2.1-SHA512_password_hashing.patch deleted file mode 100644 index 7fc5bc9..0000000 --- a/src/patches/shadow-4.2.1-SHA512_password_hashing.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -crB shadow-4.2.1-a/etc/login.defs shadow-4.2.1-b/etc/login.defs -*** shadow-4.2.1-a/etc/login.defs 2014-05-09 10:20:28.000000000 +0000 ---- shadow-4.2.1-b/etc/login.defs 2016-03-13 10:51:09.680171239 +0000 -*************** -*** 118,124 **** - # Directory where mailboxes reside, _or_ name of file, relative to the - # home directory. If you _do_ define both, MAIL_DIR takes precedence. - # -! MAIL_DIR /var/spool/mail - #MAIL_FILE .mail - - # ---- 118,124 ---- - # Directory where mailboxes reside, _or_ name of file, relative to the - # home directory. If you _do_ define both, MAIL_DIR takes precedence. - # -! MAIL_DIR /var/mail - #MAIL_FILE .mail - - # -*************** -*** 317,323 **** - # Note: If you use PAM, it is recommended to use a value consistent with - # the PAM modules configuration. - # -! #ENCRYPT_METHOD DES - - # - # Only works if ENCRYPT_METHOD is set to SHA256 or SHA512. ---- 317,323 ---- - # Note: If you use PAM, it is recommended to use a value consistent with - # the PAM modules configuration. - # -! ENCRYPT_METHOD SHA512 - - # - # Only works if ENCRYPT_METHOD is set to SHA256 or SHA512. -Only in shadow-4.2.1-b: SHA512_password_hashing.patch diff --git a/src/patches/smartmontools-5.39-exit_segfault.patch b/src/patches/smartmontools-5.39-exit_segfault.patch deleted file mode 100644 index 5ed4b10..0000000 --- a/src/patches/smartmontools-5.39-exit_segfault.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -Naur smartmontools-5.39-svn_r2877/utility.h smartmontools-5.39-svn_r2877.new/utility.h ---- smartmontools-5.39-svn_r2877/utility.h 2009-08-24 12:48:50.000000000 +0200 -+++ smartmontools-5.39-svn_r2877.new/utility.h 2009-08-29 09:11:07.000000000 +0200 -@@ -102,7 +102,11 @@ - - // Replacement for exit(status) - // (exit is not compatible with C++ destructors) --#define EXIT(status) { throw (int)(status); } -+ -+//This doesn't work on IPFire. -+//#define EXIT(status) { throw (int)(status); } -+//tried to use exit and found no problems yet -+#define EXIT(status) { exit ((int)(status)); } - - - #ifdef OLD_INTERFACE diff --git a/src/patches/smartmontools-6.5-exit_segfault.patch b/src/patches/smartmontools-6.5-exit_segfault.patch new file mode 100644 index 0000000..6c5df8a --- /dev/null +++ b/src/patches/smartmontools-6.5-exit_segfault.patch @@ -0,0 +1,16 @@ +--- a/utility.h Sun Apr 24 16:59:15 2016 ++++ b/utility.h Sat Aug 20 22:40:33 2016 +@@ -97,7 +97,11 @@ + + // Replacement for exit(status) + // (exit is not compatible with C++ destructors) +-#define EXIT(status) { throw (int)(status); } ++ ++//This doesn't work on IPFire. ++//#define EXIT(status) { throw (int)(status); } ++//tried to use exit and found no problems yet ++#define EXIT(status) { exit ((int)(status)); } + + // Compile time check of byte ordering + // (inline const function allows compiler to remove dead code) + diff --git a/src/patches/squid-3.5.17-fix-max-file-descriptors.patch b/src/patches/squid-3.5.17-fix-max-file-descriptors.patch deleted file mode 100644 index b0efa76..0000000 --- a/src/patches/squid-3.5.17-fix-max-file-descriptors.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- configure.ac.~ Wed Apr 20 14:26:07 2016 -+++ configure.ac Fri Apr 22 17:20:46 2016 -@@ -3131,6 +3131,9 @@ - ;; - esac - -+SQUID_CHECK_DEFAULT_FD_SETSIZE -+SQUID_CHECK_MAXFD -+ - dnl --with-maxfd present for compatibility with Squid-2. - dnl undocumented in ./configure --help to encourage using the Squid-3 directive - AC_ARG_WITH(maxfd,, -@@ -3161,8 +3164,6 @@ - esac - ]) - --SQUID_CHECK_DEFAULT_FD_SETSIZE --SQUID_CHECK_MAXFD - if test "x$squid_filedescriptors_num" != "x"; then - AC_MSG_NOTICE([Default number of fieldescriptors: $squid_filedescriptors_num]) - fi diff --git a/src/patches/squid-3.5.21-fix-max-file-descriptors.patch b/src/patches/squid-3.5.21-fix-max-file-descriptors.patch new file mode 100644 index 0000000..b740b61 --- /dev/null +++ b/src/patches/squid-3.5.21-fix-max-file-descriptors.patch @@ -0,0 +1,21 @@ +--- configure.ac.~ Wed Apr 20 14:26:07 2016 ++++ configure.ac Fri Apr 22 17:20:46 2016 +@@ -3135,6 +3135,9 @@ + ;; + esac + ++SQUID_CHECK_DEFAULT_FD_SETSIZE ++SQUID_CHECK_MAXFD ++ + dnl --with-maxfd present for compatibility with Squid-2. + dnl undocumented in ./configure --help to encourage using the Squid-3 directive + AC_ARG_WITH(maxfd,, +@@ -3165,8 +3168,6 @@ + esac + ]) + +-SQUID_CHECK_DEFAULT_FD_SETSIZE +-SQUID_CHECK_MAXFD + if test "x$squid_filedescriptors_num" != "x"; then + AC_MSG_NOTICE([Default number of fieldescriptors: $squid_filedescriptors_num]) + fi diff --git a/src/patches/squid/squid-3.5-14051.patch b/src/patches/squid/squid-3.5-14051.patch deleted file mode 100644 index 58892dc..0000000 --- a/src/patches/squid/squid-3.5-14051.patch +++ /dev/null @@ -1,63 +0,0 @@ ------------------------------------------------------------- -revno: 14051 -revision-id: squid3@treenet.co.nz-20160517145850-uos9z00nrt7xd9ik -parent: squid3@treenet.co.nz-20160508124125-fytgvn68zppfr8ix -author: Steve Hill steve@opendium.com -committer: Amos Jeffries squid3@treenet.co.nz -branch nick: 3.5 -timestamp: Wed 2016-05-18 02:58:50 +1200 -message: - Support unified EUI format code in external_acl_type - - Squid supports %>eui as a logformat specifier, which produces an EUI-48 - for IPv4 clients and an EUI-64 for IPv6 clients. However, This is not - allowed as a format specifier for the external ACLs, and you have to use - %SRCEUI48 and %SRCEUI64 instead. %SRCEUI48 is only useful for IPv4 - clients and %SRCEUI64 is only useful for IPv6 clients, so supporting - both v4 and v6 is a bit messy. - - Adds the %>eui specifier for external ACLs and behaves in the same way - as the logformat specifier. ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squid3@treenet.co.nz-20160517145850-uos9z00nrt7xd9ik -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: ad0743717948a65cfd4f306acc2bbaa9343e9a76 -# timestamp: 2016-05-17 15:50:54 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squid3@treenet.co.nz-20160508124125-\ -# fytgvn68zppfr8ix -# -# Begin patch -=== modified file 'src/external_acl.cc' ---- src/external_acl.cc 2016-01-01 00:14:27 +0000 -+++ src/external_acl.cc 2016-05-17 14:58:50 +0000 -@@ -356,6 +356,8 @@ - else if (strcmp(token, "%SRCPORT") == 0 || strcmp(token, "%>p") == 0) - format->type = Format::LFT_CLIENT_PORT; - #if USE_SQUID_EUI -+ else if (strcmp(token, "%>eui") == 0) -+ format->type = Format::LFT_CLIENT_EUI; - else if (strcmp(token, "%SRCEUI48") == 0) - format->type = Format::LFT_EXT_ACL_CLIENT_EUI48; - else if (strcmp(token, "%SRCEUI64") == 0) -@@ -944,6 +946,18 @@ - break; - - #if USE_SQUID_EUI -+ case Format::LFT_CLIENT_EUI: -+ // TODO make the ACL checklist have a direct link to any TCP details. -+ if (request->clientConnectionManager.valid() && request->clientConnectionManager->clientConnection != NULL) -+ { -+ if (request->clientConnectionManager->clientConnection->remote.isIPv4()) -+ request->clientConnectionManager->clientConnection->remoteEui48.encode(buf, sizeof(buf)); -+ else -+ request->clientConnectionManager->clientConnection->remoteEui64.encode(buf, sizeof(buf)); -+ str = buf; -+ } -+ break; -+ - case Format::LFT_EXT_ACL_CLIENT_EUI48: - if (request->clientConnectionManager.valid() && request->clientConnectionManager->clientConnection != NULL && - request->clientConnectionManager->clientConnection->remoteEui48.encode(buf, sizeof(buf))) - diff --git a/src/patches/squid/squid-3.5-14052.patch b/src/patches/squid/squid-3.5-14052.patch deleted file mode 100644 index 4fba159..0000000 --- a/src/patches/squid/squid-3.5-14052.patch +++ /dev/null @@ -1,34 +0,0 @@ ------------------------------------------------------------- -revno: 14052 -revision-id: squidadm@squid-cache.org-20160517181416-sfrjdosd9dhx7u8o -parent: squid3@treenet.co.nz-20160517145850-uos9z00nrt7xd9ik -committer: Source Maintenance squidadm@squid-cache.org -branch nick: 3.5 -timestamp: Tue 2016-05-17 18:14:16 +0000 -message: - SourceFormat Enforcement ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squidadm@squid-cache.org-20160517181416-\ -# sfrjdosd9dhx7u8o -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: e30c12805cacdb559925da08cc6a25fe4a39c19b -# timestamp: 2016-05-17 18:51:06 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squid3@treenet.co.nz-20160517145850-\ -# uos9z00nrt7xd9ik -# -# Begin patch -=== modified file 'src/external_acl.cc' ---- src/external_acl.cc 2016-05-17 14:58:50 +0000 -+++ src/external_acl.cc 2016-05-17 18:14:16 +0000 -@@ -956,7 +956,7 @@ - request->clientConnectionManager->clientConnection->remoteEui64.encode(buf, sizeof(buf)); - str = buf; - } -- break; -+ break; - - case Format::LFT_EXT_ACL_CLIENT_EUI48: - if (request->clientConnectionManager.valid() && request->clientConnectionManager->clientConnection != NULL && - diff --git a/src/patches/squid/squid-3.5-14053.patch b/src/patches/squid/squid-3.5-14053.patch deleted file mode 100644 index f669449..0000000 --- a/src/patches/squid/squid-3.5-14053.patch +++ /dev/null @@ -1,46 +0,0 @@ ------------------------------------------------------------- -revno: 14053 -revision-id: squid3@treenet.co.nz-20160521130058-zq8zugw0fohwfu3z -parent: squidadm@squid-cache.org-20160517181416-sfrjdosd9dhx7u8o -committer: Amos Jeffries squid3@treenet.co.nz -branch nick: 3.5 -timestamp: Sun 2016-05-22 01:00:58 +1200 -message: - Do not override user defined -std option ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squid3@treenet.co.nz-20160521130058-zq8zugw0fohwfu3z -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: a75245a622ccfa385ef5e4722f9a9fb438a16135 -# timestamp: 2016-05-21 13:08:06 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squidadm@squid-cache.org-20160517181416-\ -# sfrjdosd9dhx7u8o -# -# Begin patch -=== modified file 'configure.ac' ---- configure.ac 2016-05-08 12:41:25 +0000 -+++ configure.ac 2016-05-21 13:00:58 +0000 -@@ -95,6 +95,9 @@ - # Guess the compiler type (sets squid_cv_compiler) - SQUID_CC_GUESS_VARIANT - -+# If the user did not specify a C++ version. -+user_cxx=`echo "$PRESET_CXXFLAGS" | grep -o -E "-std="` -+if test "x$user_cxx" = "x"; then - # Check for C++11 compiler support - # - # BUG 3613: when clang -std=c++0x is used, it activates a "strict mode" -@@ -103,8 +106,9 @@ - # - # Similar POSIX issues on MinGW 32-bit and Cygwin - # --if ! test "x$squid_host_os" = "xmingw" -o "x$squid_host_os" = "xcygwin" -o "x$squid_cv_compiler" = "xclang"; then -- AX_CXX_COMPILE_STDCXX_11([noext],[optional]) -+ if ! test "x$squid_host_os" = "xmingw" -o "x$squid_host_os" = "xcygwin" -o "x$squid_cv_compiler" = "xclang"; then -+ AX_CXX_COMPILE_STDCXX_11([noext],[optional]) -+ fi - fi - - # test for programs - diff --git a/src/patches/squid/squid-3.5-14054.patch b/src/patches/squid/squid-3.5-14054.patch deleted file mode 100644 index 90b34c1..0000000 --- a/src/patches/squid/squid-3.5-14054.patch +++ /dev/null @@ -1,37 +0,0 @@ ------------------------------------------------------------- -revno: 14054 -revision-id: squid3@treenet.co.nz-20160521130144-6xtcayieij00fm5v -parent: squid3@treenet.co.nz-20160521130058-zq8zugw0fohwfu3z -committer: Amos Jeffries squid3@treenet.co.nz -branch nick: 3.5 -timestamp: Sun 2016-05-22 01:01:44 +1200 -message: - Fix OpenSSL detection on FreeBSD ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squid3@treenet.co.nz-20160521130144-6xtcayieij00fm5v -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: 3d8c0d7a9f1886523ac55d79e4d3e8f0340e2ec9 -# timestamp: 2016-05-21 13:08:08 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squid3@treenet.co.nz-20160521130058-\ -# zq8zugw0fohwfu3z -# -# Begin patch -=== modified file 'configure.ac' ---- configure.ac 2016-05-21 13:00:58 +0000 -+++ configure.ac 2016-05-21 13:01:44 +0000 -@@ -1348,10 +1348,10 @@ - - AC_CHECK_LIB(crypto,[CRYPTO_new_ex_data],[LIBOPENSSL_LIBS="-lcrypto $LIBOPENSSL_LIBS"],[ - AC_MSG_ERROR([library 'crypto' is required for OpenSSL]) -- ]) -+ ],$LIBOPENSSL_LIBS) - AC_CHECK_LIB(ssl,[SSL_library_init],[LIBOPENSSL_LIBS="-lssl $LIBOPENSSL_LIBS"],[ - AC_MSG_ERROR([library 'ssl' is required for OpenSSL]) -- ]) -+ ],$LIBOPENSSL_LIBS) - ]) - - # This is a workaround for RedHat 9 brain damage.. - diff --git a/src/patches/squid/squid-3.5-14055.patch b/src/patches/squid/squid-3.5-14055.patch deleted file mode 100644 index ac04bb6..0000000 --- a/src/patches/squid/squid-3.5-14055.patch +++ /dev/null @@ -1,39 +0,0 @@ ------------------------------------------------------------- -revno: 14055 -revision-id: squid3@treenet.co.nz-20160521155202-pp53utwamdhkugvg -parent: squid3@treenet.co.nz-20160521130144-6xtcayieij00fm5v -author: Alex Rousskov rousskov@measurement-factory.com -committer: Amos Jeffries squid3@treenet.co.nz -branch nick: 3.5 -timestamp: Sun 2016-05-22 03:52:02 +1200 -message: - Fix icons loading speed. - - Since trunk r14100 (Bug 3875: bad mimeLoadIconFile error handling), each - icon was read from disk and written to Store one character at a time. I - did not measure startup delays in production, but in debugging runs, - fixing this bug sped up icons loading from 1 minute to 4 seconds. ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squid3@treenet.co.nz-20160521155202-pp53utwamdhkugvg -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: 79b78480d81666c15406d23837608ba9a578da4b -# timestamp: 2016-05-21 16:51:00 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squid3@treenet.co.nz-20160521130144-\ -# 6xtcayieij00fm5v -# -# Begin patch -=== modified file 'src/mime.cc' ---- src/mime.cc 2016-01-01 00:14:27 +0000 -+++ src/mime.cc 2016-05-21 15:52:02 +0000 -@@ -430,7 +430,7 @@ - /* read the file into the buffer and append it to store */ - int n; - char *buf = (char *)memAllocate(MEM_4K_BUF); -- while ((n = FD_READ_METHOD(fd, buf, sizeof(*buf))) > 0) -+ while ((n = FD_READ_METHOD(fd, buf, 4096)) > 0) - e->append(buf, n); - - file_close(fd); - diff --git a/src/patches/squid/squid-3.5-14056.patch b/src/patches/squid/squid-3.5-14056.patch deleted file mode 100644 index 4ea3808..0000000 --- a/src/patches/squid/squid-3.5-14056.patch +++ /dev/null @@ -1,36 +0,0 @@ ------------------------------------------------------------- -revno: 14056 -revision-id: squid3@treenet.co.nz-20160521172919-du6cbdirqcxdjbtr -parent: squid3@treenet.co.nz-20160521155202-pp53utwamdhkugvg -author: Christos Tsantilas chtsanti@users.sourceforge.net -committer: Amos Jeffries squid3@treenet.co.nz -branch nick: 3.5 -timestamp: Sun 2016-05-22 05:29:19 +1200 -message: - Increase debug level in a peek-and-splice related debug message - - It may produced one debugging line for each SSL transaction in some cases ------------------------------------------------------------- -# Bazaar merge directive format 2 (Bazaar 0.90) -# revision_id: squid3@treenet.co.nz-20160521172919-du6cbdirqcxdjbtr -# target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# testament_sha1: 76c2e864289dabb1065c470c954f9fc5ec4c7b4f -# timestamp: 2016-05-21 17:50:54 +0000 -# source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 -# base_revision_id: squid3@treenet.co.nz-20160521155202-\ -# pp53utwamdhkugvg -# -# Begin patch -=== modified file 'src/ssl/PeerConnector.cc' ---- src/ssl/PeerConnector.cc 2016-02-15 11:29:50 +0000 -+++ src/ssl/PeerConnector.cc 2016-05-21 17:29:19 +0000 -@@ -598,7 +598,7 @@ - - case SSL_ERROR_WANT_WRITE: - if ((srvBio->bumpMode() == Ssl::bumpPeek || srvBio->bumpMode() == Ssl::bumpStare) && srvBio->holdWrite()) { -- debugs(81, DBG_IMPORTANT, "hold write on SSL connection on FD " << fd); -+ debugs(81, 3, "hold write on SSL connection on FD " << fd); - checkForPeekAndSplice(); - return; - } - diff --git a/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch b/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch deleted file mode 100644 index 27b6f06..0000000 --- a/src/patches/strongswan-child-rekey-Suppress-updown-event-when-deleting-redundant-CHILD_SAs.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 0e32cbc0bc8fce3319491db360fb23b16561ec58 Mon Sep 17 00:00:00 2001 -From: Tobias Brunner tobias@strongswan.org -Date: Tue, 15 Dec 2015 17:15:32 +0100 -Subject: [PATCH] child-rekey: Suppress updown event when deleting redundant - CHILD_SAs - -When handling a rekey collision we might have to delete an already -installed redundant CHILD_SA (or expect the other peer to do so). We don't -want to trigger updown events for these as we don't during rekeying. - -Instead of setting the state to CHILD_REKEYING we could maybe use -CHILD_REKEYED, which we currently only use for IKEv1, and set it for -all CHILD_SAs we delete or expect the other peer to delete. Would need -a small change in child-delete too. Or we could introduce a new state. - - #853. ---- - src/libcharon/sa/ikev2/tasks/child_rekey.c | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - -diff --git a/src/libcharon/sa/ikev2/tasks/child_rekey.c b/src/libcharon/sa/ikev2/tasks/child_rekey.c -index c7a8a13..6f0c2b2 100644 ---- a/src/libcharon/sa/ikev2/tasks/child_rekey.c -+++ b/src/libcharon/sa/ikev2/tasks/child_rekey.c -@@ -279,11 +279,15 @@ static child_sa_t *handle_collision(private_child_rekey_t *this) - /* don't touch child other created, it has already been deleted */ - if (!this->other_child_destroyed) - { -- /* disable close action for the redundand child */ -+ /* disable close action and updown event for redundant child */ - child_sa = other->child_create->get_child(other->child_create); - if (child_sa) - { - child_sa->set_close_action(child_sa, ACTION_NONE); -+ if (child_sa->get_state(child_sa) != CHILD_REKEYING) -+ { -+ child_sa->set_state(child_sa, CHILD_REKEYING); -+ } - } - } - } -@@ -372,6 +376,11 @@ METHOD(task_t, process_i, status_t, - { - return SUCCESS; - } -+ /* disable updown event for redundant CHILD_SA */ -+ if (to_delete->get_state(to_delete) != CHILD_REKEYING) -+ { -+ to_delete->set_state(to_delete, CHILD_REKEYING); -+ } - spi = to_delete->get_spi(to_delete, TRUE); - protocol = to_delete->get_protocol(to_delete); - --- -1.7.9.5 - diff --git a/src/setup/networking.c b/src/setup/networking.c index b840ec1..00dfc4b 100644 --- a/src/setup/networking.c +++ b/src/setup/networking.c @@ -113,6 +113,8 @@ int handlenetworking(void)
runcommandwithstatus("/etc/rc.d/init.d/network start", _("Networking"), _("Restarting network..."), NULL); + runcommandwithstatus("/etc/rc.d/init.d/unbound restart", + _("Networking"), _("Restarting unbound..."), NULL); } } else { rename_nics();
hooks/post-receive -- IPFire 2.x development tree