]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Merge remote-tracking branch 'stevee/next-cgi-geoip' into next
authorStefan Schantl <stefan.schantl@ipfire.org>
Mon, 4 May 2015 18:16:24 +0000 (20:16 +0200)
committerStefan Schantl <stefan.schantl@ipfire.org>
Mon, 4 May 2015 18:16:24 +0000 (20:16 +0200)
391 files changed:
config/rootfiles/common/Locale-Country
config/rootfiles/common/apache2
config/rootfiles/common/collectd
config/rootfiles/common/flag-icons [new file with mode: 0644]
config/rootfiles/common/i586/openssl-sse2 [new file with mode: 0644]
config/rootfiles/common/misc-progs
config/rootfiles/common/openssl-compat [deleted file]
config/rootfiles/common/perl-Text-CSV_XS
config/rootfiles/common/squid
config/rootfiles/common/xz
config/rootfiles/core/90/filelists/armv5tel/glibc [new symlink]
config/rootfiles/core/90/filelists/ddns [new symlink]
config/rootfiles/core/90/filelists/files
config/rootfiles/core/90/filelists/fireinfo [new symlink]
config/rootfiles/core/90/filelists/flag-icons [new symlink]
config/rootfiles/core/90/filelists/i586/glibc [new symlink]
config/rootfiles/core/90/filelists/i586/openssl-sse2 [new symlink]
config/rootfiles/core/90/filelists/openssl-0.9.8-files [new file with mode: 0644]
config/rootfiles/core/90/filelists/squid [new symlink]
config/rootfiles/core/90/filelists/tzdata [new symlink]
config/rootfiles/core/90/filelists/xz [new symlink]
config/rootfiles/core/90/update.sh
config/rootfiles/packages/clamav
config/rootfiles/packages/libsrtp
html/cgi-bin/ddns.cgi
html/cgi-bin/index.cgi
html/cgi-bin/netovpnsrv.cgi
html/cgi-bin/vpnmain.cgi
html/html/images/flags/ad.png [deleted file]
html/html/images/flags/ae.png [deleted file]
html/html/images/flags/af.png [deleted file]
html/html/images/flags/ag.png [deleted file]
html/html/images/flags/ai.png [deleted file]
html/html/images/flags/al.png [deleted file]
html/html/images/flags/am.png [deleted file]
html/html/images/flags/an.png [deleted file]
html/html/images/flags/ao.png [deleted file]
html/html/images/flags/aq.png [deleted file]
html/html/images/flags/ar.png [deleted file]
html/html/images/flags/as.png [deleted file]
html/html/images/flags/at.png [deleted file]
html/html/images/flags/au.png [deleted file]
html/html/images/flags/aw.png [deleted file]
html/html/images/flags/az.png [deleted file]
html/html/images/flags/ba.png [deleted file]
html/html/images/flags/bb.png [deleted file]
html/html/images/flags/bd.png [deleted file]
html/html/images/flags/be.png [deleted file]
html/html/images/flags/bf.png [deleted file]
html/html/images/flags/bg.png [deleted file]
html/html/images/flags/bh.png [deleted file]
html/html/images/flags/bi.png [deleted file]
html/html/images/flags/bj.png [deleted file]
html/html/images/flags/bm.png [deleted file]
html/html/images/flags/bn.png [deleted file]
html/html/images/flags/bo.png [deleted file]
html/html/images/flags/br.png [deleted file]
html/html/images/flags/bs.png [deleted file]
html/html/images/flags/bt.png [deleted file]
html/html/images/flags/bv.png [deleted file]
html/html/images/flags/bw.png [deleted file]
html/html/images/flags/by.png [deleted file]
html/html/images/flags/bz.png [deleted file]
html/html/images/flags/ca.png [deleted file]
html/html/images/flags/cc.png [deleted file]
html/html/images/flags/cd.png [deleted file]
html/html/images/flags/cf.png [deleted file]
html/html/images/flags/cg.png [deleted file]
html/html/images/flags/ch.png [deleted file]
html/html/images/flags/ci.png [deleted file]
html/html/images/flags/ck.png [deleted file]
html/html/images/flags/cl.png [deleted file]
html/html/images/flags/cm.png [deleted file]
html/html/images/flags/cn.png [deleted file]
html/html/images/flags/co.png [deleted file]
html/html/images/flags/cr.png [deleted file]
html/html/images/flags/cs.png [deleted file]
html/html/images/flags/cu.png [deleted file]
html/html/images/flags/cv.png [deleted file]
html/html/images/flags/cx.png [deleted file]
html/html/images/flags/cy.png [deleted file]
html/html/images/flags/cz.png [deleted file]
html/html/images/flags/de.png [deleted file]
html/html/images/flags/dj.png [deleted file]
html/html/images/flags/dk.png [deleted file]
html/html/images/flags/dm.png [deleted file]
html/html/images/flags/do.png [deleted file]
html/html/images/flags/dz.png [deleted file]
html/html/images/flags/ec.png [deleted file]
html/html/images/flags/ee.png [deleted file]
html/html/images/flags/eg.png [deleted file]
html/html/images/flags/eh.png [deleted file]
html/html/images/flags/er.png [deleted file]
html/html/images/flags/es.png [deleted file]
html/html/images/flags/et.png [deleted file]
html/html/images/flags/eu.png [deleted file]
html/html/images/flags/fi.png [deleted file]
html/html/images/flags/fj.png [deleted file]
html/html/images/flags/fk.png [deleted file]
html/html/images/flags/fm.png [deleted file]
html/html/images/flags/fo.png [deleted file]
html/html/images/flags/fr.png [deleted file]
html/html/images/flags/ga.png [deleted file]
html/html/images/flags/gb.png [deleted file]
html/html/images/flags/gd.png [deleted file]
html/html/images/flags/ge.png [deleted file]
html/html/images/flags/gf.png [deleted file]
html/html/images/flags/gh.png [deleted file]
html/html/images/flags/gi.png [deleted file]
html/html/images/flags/gl.png [deleted file]
html/html/images/flags/gm.png [deleted file]
html/html/images/flags/gn.png [deleted file]
html/html/images/flags/gp.png [deleted file]
html/html/images/flags/gq.png [deleted file]
html/html/images/flags/gr.png [deleted file]
html/html/images/flags/gs.png [deleted file]
html/html/images/flags/gt.png [deleted file]
html/html/images/flags/gu.png [deleted file]
html/html/images/flags/gw.png [deleted file]
html/html/images/flags/gy.png [deleted file]
html/html/images/flags/hk.png [deleted file]
html/html/images/flags/hm.png [deleted file]
html/html/images/flags/hn.png [deleted file]
html/html/images/flags/hr.png [deleted file]
html/html/images/flags/ht.png [deleted file]
html/html/images/flags/hu.png [deleted file]
html/html/images/flags/id.png [deleted file]
html/html/images/flags/ie.png [deleted file]
html/html/images/flags/il.png [deleted file]
html/html/images/flags/in.png [deleted file]
html/html/images/flags/io.png [deleted file]
html/html/images/flags/iq.png [deleted file]
html/html/images/flags/ir.png [deleted file]
html/html/images/flags/is.png [deleted file]
html/html/images/flags/it.png [deleted file]
html/html/images/flags/jm.png [deleted file]
html/html/images/flags/jo.png [deleted file]
html/html/images/flags/jp.png [deleted file]
html/html/images/flags/ke.png [deleted file]
html/html/images/flags/kg.png [deleted file]
html/html/images/flags/kh.png [deleted file]
html/html/images/flags/ki.png [deleted file]
html/html/images/flags/km.png [deleted file]
html/html/images/flags/kn.png [deleted file]
html/html/images/flags/kp.png [deleted file]
html/html/images/flags/kr.png [deleted file]
html/html/images/flags/kw.png [deleted file]
html/html/images/flags/ky.png [deleted file]
html/html/images/flags/kz.png [deleted file]
html/html/images/flags/la.png [deleted file]
html/html/images/flags/lb.png [deleted file]
html/html/images/flags/lc.png [deleted file]
html/html/images/flags/li.png [deleted file]
html/html/images/flags/lk.png [deleted file]
html/html/images/flags/lr.png [deleted file]
html/html/images/flags/ls.png [deleted file]
html/html/images/flags/lt.png [deleted file]
html/html/images/flags/lu.png [deleted file]
html/html/images/flags/lv.png [deleted file]
html/html/images/flags/ly.png [deleted file]
html/html/images/flags/ma.png [deleted file]
html/html/images/flags/mc.png [deleted file]
html/html/images/flags/md.png [deleted file]
html/html/images/flags/mg.png [deleted file]
html/html/images/flags/mh.png [deleted file]
html/html/images/flags/mk.png [deleted file]
html/html/images/flags/ml.png [deleted file]
html/html/images/flags/mm.png [deleted file]
html/html/images/flags/mn.png [deleted file]
html/html/images/flags/mo.png [deleted file]
html/html/images/flags/mp.png [deleted file]
html/html/images/flags/mq.png [deleted file]
html/html/images/flags/mr.png [deleted file]
html/html/images/flags/ms.png [deleted file]
html/html/images/flags/mt.png [deleted file]
html/html/images/flags/mu.png [deleted file]
html/html/images/flags/mv.png [deleted file]
html/html/images/flags/mw.png [deleted file]
html/html/images/flags/mx.png [deleted file]
html/html/images/flags/my.png [deleted file]
html/html/images/flags/mz.png [deleted file]
html/html/images/flags/na.png [deleted file]
html/html/images/flags/nc.png [deleted file]
html/html/images/flags/ne.png [deleted file]
html/html/images/flags/nf.png [deleted file]
html/html/images/flags/ng.png [deleted file]
html/html/images/flags/ni.png [deleted file]
html/html/images/flags/nl.png [deleted file]
html/html/images/flags/no.png [deleted file]
html/html/images/flags/np.png [deleted file]
html/html/images/flags/nr.png [deleted file]
html/html/images/flags/nu.png [deleted file]
html/html/images/flags/nz.png [deleted file]
html/html/images/flags/om.png [deleted file]
html/html/images/flags/pa.png [deleted file]
html/html/images/flags/pe.png [deleted file]
html/html/images/flags/pf.png [deleted file]
html/html/images/flags/pg.png [deleted file]
html/html/images/flags/ph.png [deleted file]
html/html/images/flags/pk.png [deleted file]
html/html/images/flags/pl.png [deleted file]
html/html/images/flags/pm.png [deleted file]
html/html/images/flags/pn.png [deleted file]
html/html/images/flags/pr.png [deleted file]
html/html/images/flags/ps.png [deleted file]
html/html/images/flags/pt.png [deleted file]
html/html/images/flags/pw.png [deleted file]
html/html/images/flags/py.png [deleted file]
html/html/images/flags/qa.png [deleted file]
html/html/images/flags/re.png [deleted file]
html/html/images/flags/ro.png [deleted file]
html/html/images/flags/ru.png [deleted file]
html/html/images/flags/rw.png [deleted file]
html/html/images/flags/sa.png [deleted file]
html/html/images/flags/sb.png [deleted file]
html/html/images/flags/sc.png [deleted file]
html/html/images/flags/sd.png [deleted file]
html/html/images/flags/se.png [deleted file]
html/html/images/flags/sg.png [deleted file]
html/html/images/flags/sh.png [deleted file]
html/html/images/flags/si.png [deleted file]
html/html/images/flags/sj.png [deleted file]
html/html/images/flags/sk.png [deleted file]
html/html/images/flags/sl.png [deleted file]
html/html/images/flags/sm.png [deleted file]
html/html/images/flags/sn.png [deleted file]
html/html/images/flags/so.png [deleted file]
html/html/images/flags/sr.png [deleted file]
html/html/images/flags/st.png [deleted file]
html/html/images/flags/sv.png [deleted file]
html/html/images/flags/sy.png [deleted file]
html/html/images/flags/sz.png [deleted file]
html/html/images/flags/tc.png [deleted file]
html/html/images/flags/td.png [deleted file]
html/html/images/flags/tf.png [deleted file]
html/html/images/flags/tg.png [deleted file]
html/html/images/flags/th.png [deleted file]
html/html/images/flags/tj.png [deleted file]
html/html/images/flags/tk.png [deleted file]
html/html/images/flags/tl.png [deleted file]
html/html/images/flags/tm.png [deleted file]
html/html/images/flags/tn.png [deleted file]
html/html/images/flags/to.png [deleted file]
html/html/images/flags/tp.png [deleted file]
html/html/images/flags/tr.png [deleted file]
html/html/images/flags/tt.png [deleted file]
html/html/images/flags/tv.png [deleted file]
html/html/images/flags/tw.png [deleted file]
html/html/images/flags/tz.png [deleted file]
html/html/images/flags/ua.png [deleted file]
html/html/images/flags/ug.png [deleted file]
html/html/images/flags/um.png [deleted file]
html/html/images/flags/us.png [deleted file]
html/html/images/flags/uy.png [deleted file]
html/html/images/flags/uz.png [deleted file]
html/html/images/flags/va.png [deleted file]
html/html/images/flags/vc.png [deleted file]
html/html/images/flags/ve.png [deleted file]
html/html/images/flags/vg.png [deleted file]
html/html/images/flags/vi.png [deleted file]
html/html/images/flags/vn.png [deleted file]
html/html/images/flags/vu.png [deleted file]
html/html/images/flags/wf.png [deleted file]
html/html/images/flags/ws.png [deleted file]
html/html/images/flags/ye.png [deleted file]
html/html/images/flags/yt.png [deleted file]
html/html/images/flags/yu.png [deleted file]
html/html/images/flags/za.png [deleted file]
html/html/images/flags/zm.png [deleted file]
html/html/images/flags/zw.png [deleted file]
lfs/asterisk
lfs/clamav
lfs/ddns
lfs/dnsmasq
lfs/fireinfo
lfs/flag-icons [moved from lfs/openssl-compat with 72% similarity]
lfs/glibc
lfs/libsrtp
lfs/linux
lfs/openssl
lfs/squid
lfs/squid-accounting
lfs/strongswan
lfs/tor
lfs/tzdata
lfs/xz
make.sh
src/misc-progs/Makefile
src/misc-progs/ddnsctrl.c [new file with mode: 0644]
src/patches/ddns/001-ddns-007-perform-lazy-database-init.patch [new file with mode: 0644]
src/patches/ddns/002-ddns-007-also-open-database-for-search-operations.patch [new file with mode: 0644]
src/patches/ddns/ddns-005-Add-changeip-com.patch [deleted file]
src/patches/ddns/ddns-005-SPDNS-fix-auth.patch [deleted file]
src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch
src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch
src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch
src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch
src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch
src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch
src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch
src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch
src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch
src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch
src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch
src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch
src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch
src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch
src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch
src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch
src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch
src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch
src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch
src/patches/dnsmasq/0020-Initialise-return-value.patch
src/patches/dnsmasq/0021-Add-ignore-address-option.patch
src/patches/dnsmasq/0022-Bad-packet-protection.patch
src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch
src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch
src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch
src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch
src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch
src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch
src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch
src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch
src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch
src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch
src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch
src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch
src/patches/dnsmasq/0035-Update-German-translation.patch
src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch
src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch
src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch
src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch
src/patches/dnsmasq/0040-inotify-documentation-updates.patch
src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch
src/patches/dnsmasq/0042-BSD-make-support.patch
src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch
src/patches/dnsmasq/0044-Manpage-typo-fix.patch
src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch
src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch
src/patches/dnsmasq/0047-man-page-typo.patch
src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch
src/patches/dnsmasq/0049-Typos.patch
src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch
src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch
src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch
src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch
src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch
src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch
src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch
src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch
src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch
src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch
src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch
src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch
src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch
src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch
src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch
src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch
src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch
src/patches/dnsmasq/0067-Merge-message-translations.patch
src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch
src/patches/dnsmasq/0069-Whitespace-fixes.patch
src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch
src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch
src/patches/dnsmasq/0072-Fix-crash-caused-by-looking-up-servers.bind-when-man.patch
src/patches/dnsmasq/0073-Fix-crash-on-receipt-of-certain-malformed-DNS-reques.patch
src/patches/dnsmasq/0074-Fix-crash-in-auth-code-with-odd-configuration.patch
src/patches/dnsmasq/0075-Auth-correct-replies-to-NS-and-SOA-in-.arpa-zones.patch
src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch
src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch
src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch
src/patches/dnsmasq/0079-Check-IP-address-command-line-arg-in-dhcp_release.c.patch [new file with mode: 0644]
src/patches/dnsmasq/0080-Revert-61b838dd574c51d96fef100285a0d225824534f9-and-.patch [new file with mode: 0644]
src/patches/dnsmasq/0081-Handle-domain-names-with-.-or-000-within-labels.patch [new file with mode: 0644]
src/patches/dnsmasq/0082-Tweaks-to-previous-DNS-label-charset-commit.patch [new file with mode: 0644]
src/patches/dnsmasq/0083-Logs-in-DHCPv6-not-suppressed-by-dhcp6-quiet.patch [new file with mode: 0644]
src/patches/dnsmasq/0084-Make-get-version-work-when-repo-is-a-git-submodule.patch [new file with mode: 0644]
src/patches/dnsmasq/0085-Fix-argument-order-botch-which-broke-DNSSEC-for-TCP-.patch [new file with mode: 0644]
src/patches/dnsmasq/0086-Don-t-remove-RRSIG-RR-from-answers-to-ANY-queries-wh.patch [new file with mode: 0644]
src/patches/dnsmasq/0087-Constify-some-DHCP-lease-management-functions.patch [new file with mode: 0644]
src/patches/fireinfo-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1207995.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1209375.patch [new file with mode: 0644]
src/patches/openssl-1.0.2a-rpmbuild.patch
src/patches/openssl-1.0.2a_auto_enable_padlock.patch [new file with mode: 0644]
src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch [new file with mode: 0644]
src/patches/strongswan-5.3.0-stroke-Increase-stroke-buffer-size-to-8k.patch [new file with mode: 0644]
src/squid-accounting/accounting.cgi
src/squid-accounting/acct-lib.pl
src/squid-accounting/acct.pl
tools/checkrootfiles [moved from tools/checkwronginitlinks with 76% similarity]

index 0ed312f434364e55b66ab470900c58799937598a..58c240625a0e7388f30699cdc0efea3a125f0532 100644 (file)
@@ -33,9 +33,9 @@ usr/lib/perl5/5.12.3/Locale/Codes/Script.pm
 usr/lib/perl5/5.12.3/Locale/Codes/Script.pod
 usr/lib/perl5/5.12.3/Locale/Codes/Script_Codes.pm
 usr/lib/perl5/5.12.3/Locale/Codes/Script_Retired.pm
-#usr/lib/perl5/5.12.3/i586-linux-thread-multi/auto/Locale
-#usr/lib/perl5/5.12.3/i586-linux-thread-multi/auto/Locale/Codes
-#usr/lib/perl5/5.12.3/i586-linux-thread-multi/auto/Locale/Codes/.packlist
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale/Codes
+#usr/lib/perl5/5.12.3/MACHINE-linux-thread-multi/auto/Locale/Codes/.packlist
 #usr/share/man/man3/Locale::Codes.3
 #usr/share/man/man3/Locale::Codes::API.3
 #usr/share/man/man3/Locale::Codes::Changes.3
index 8033a874a5554dc997037607d0c28570e0cad9ab..96c2871c5a76079f290da4001abda7c213440d6d 100644 (file)
@@ -1445,5 +1445,185 @@ srv/web/ipfire/cgi-bin/wakeonlan.cgi
 srv/web/ipfire/cgi-bin/webaccess.cgi
 srv/web/ipfire/cgi-bin/wireless.cgi
 srv/web/ipfire/cgi-bin/wirelessclient.cgi
-srv/web/ipfire/html
+#srv/web/ipfire/html
+srv/web/ipfire/html/accounting
+srv/web/ipfire/html/blob.gif
+srv/web/ipfire/html/clwarn.cgi
+srv/web/ipfire/html/dial.cgi
+srv/web/ipfire/html/favicon.ico
+srv/web/ipfire/html/graphs
+#srv/web/ipfire/html/images
+srv/web/ipfire/html/images/addblue.gif
+srv/web/ipfire/html/images/add.gif
+srv/web/ipfire/html/images/addgreen.gif
+srv/web/ipfire/html/images/address-book-new.png
+srv/web/ipfire/html/images/application-certificate.png
+srv/web/ipfire/html/images/applications-accessories.png
+srv/web/ipfire/html/images/applications-development.png
+srv/web/ipfire/html/images/applications-games.png
+srv/web/ipfire/html/images/applications-graphics.png
+srv/web/ipfire/html/images/applications-internet.png
+srv/web/ipfire/html/images/applications-multimedia.png
+srv/web/ipfire/html/images/applications-office.png
+srv/web/ipfire/html/images/applications-other.png
+srv/web/ipfire/html/images/applications-system.png
+srv/web/ipfire/html/images/application-x-executable.png
+srv/web/ipfire/html/images/appointment-new.png
+srv/web/ipfire/html/images/audio-volume-high.png
+srv/web/ipfire/html/images/audio-volume-high-red.png
+srv/web/ipfire/html/images/audio-volume-low.png
+srv/web/ipfire/html/images/audio-volume-low-red.png
+srv/web/ipfire/html/images/audio-x-generic.png
+srv/web/ipfire/html/images/audio-x-generic-red.png
+srv/web/ipfire/html/images/background.gif
+srv/web/ipfire/html/images/bookmark-new.png
+srv/web/ipfire/html/images/clock.gif
+srv/web/ipfire/html/images/computer.png
+srv/web/ipfire/html/images/delete.gif
+srv/web/ipfire/html/images/dialog-error.png
+srv/web/ipfire/html/images/dialog-information.png
+srv/web/ipfire/html/images/dialog-warning.png
+srv/web/ipfire/html/images/dns_link.png
+srv/web/ipfire/html/images/document-new.png
+srv/web/ipfire/html/images/document-open.png
+srv/web/ipfire/html/images/document-print.png
+srv/web/ipfire/html/images/document-print-preview.png
+srv/web/ipfire/html/images/document-properties.png
+srv/web/ipfire/html/images/document-save-as.png
+srv/web/ipfire/html/images/document-save.png
+srv/web/ipfire/html/images/down.gif
+srv/web/ipfire/html/images/drive-harddisk.png
+srv/web/ipfire/html/images/drive-optical.png
+srv/web/ipfire/html/images/drive-removable-media.png
+srv/web/ipfire/html/images/edit-find.png
+srv/web/ipfire/html/images/edit.gif
+srv/web/ipfire/html/images/edit-redo.png
+#srv/web/ipfire/html/images/flags
+srv/web/ipfire/html/images/floppy.gif
+srv/web/ipfire/html/images/folder-drag-accept.png
+srv/web/ipfire/html/images/folder-new.png
+srv/web/ipfire/html/images/folder-open.png
+srv/web/ipfire/html/images/folder.png
+srv/web/ipfire/html/images/folder-remote.png
+srv/web/ipfire/html/images/folder-saved-search.png
+srv/web/ipfire/html/images/folder-visiting.png
+srv/web/ipfire/html/images/format-indent-less.png
+srv/web/ipfire/html/images/format-indent-more.png
+srv/web/ipfire/html/images/format-justify-center.png
+srv/web/ipfire/html/images/format-justify-fill.png
+srv/web/ipfire/html/images/format-justify-left.png
+srv/web/ipfire/html/images/format-justify-right.png
+srv/web/ipfire/html/images/forward.gif
+srv/web/ipfire/html/images/go-bottom.png
+srv/web/ipfire/html/images/go-down.png
+srv/web/ipfire/html/images/go-first.png
+srv/web/ipfire/html/images/go-home.png
+srv/web/ipfire/html/images/go-jump.png
+srv/web/ipfire/html/images/go-last.png
+srv/web/ipfire/html/images/go-next.png
+srv/web/ipfire/html/images/go-previous.png
+srv/web/ipfire/html/images/go-top.png
+srv/web/ipfire/html/images/go-up.png
+srv/web/ipfire/html/images/help-browser.png
+srv/web/ipfire/html/images/help.gif
+srv/web/ipfire/html/images/image-loading.png
+srv/web/ipfire/html/images/image-missing.png
+srv/web/ipfire/html/images/image-x-generic.png
+srv/web/ipfire/html/images/indicator.gif
+srv/web/ipfire/html/images/info.gif
+srv/web/ipfire/html/images/input-gaming.png
+srv/web/ipfire/html/images/input-keyboard.png
+srv/web/ipfire/html/images/input-mouse.png
+srv/web/ipfire/html/images/internet-group-chat.png
+srv/web/ipfire/html/images/internet-mail.png
+srv/web/ipfire/html/images/internet-news-reader.png
+srv/web/ipfire/html/images/internet-web-browser.png
+srv/web/ipfire/html/images/IPFire.png
+srv/web/ipfire/html/images/list-add.png
+srv/web/ipfire/html/images/list-remove.png
+srv/web/ipfire/html/images/mail-attachment.png
+srv/web/ipfire/html/images/mail-forward.png
+srv/web/ipfire/html/images/mail-mark-junk.png
+srv/web/ipfire/html/images/mail-mark-not-junk.png
+srv/web/ipfire/html/images/mail-message-new.png
+srv/web/ipfire/html/images/mail-reply-all.png
+srv/web/ipfire/html/images/mail-reply-sender.png
+srv/web/ipfire/html/images/mail-send-receive.png
+srv/web/ipfire/html/images/media-flash.png
+srv/web/ipfire/html/images/media-floppy.png
+srv/web/ipfire/html/images/media-optical.png
+srv/web/ipfire/html/images/media-playback-start-all.png
+srv/web/ipfire/html/images/media-playback-start.png
+srv/web/ipfire/html/images/media-playback-stop.png
+srv/web/ipfire/html/images/media-repeat.png
+srv/web/ipfire/html/images/media-resume.png
+srv/web/ipfire/html/images/media-shuffle.png
+srv/web/ipfire/html/images/media-skip-backward.png
+srv/web/ipfire/html/images/media-skip-forward.png
+srv/web/ipfire/html/images/mpfire
+srv/web/ipfire/html/images/network-error.png
+srv/web/ipfire/html/images/network-idle.png
+srv/web/ipfire/html/images/network-offline.png
+srv/web/ipfire/html/images/network.png
+srv/web/ipfire/html/images/network-receive.png
+srv/web/ipfire/html/images/network-server.png
+srv/web/ipfire/html/images/network-transmit.png
+srv/web/ipfire/html/images/network-transmit-receive.png
+srv/web/ipfire/html/images/network-wired.png
+srv/web/ipfire/html/images/network-wireless-encrypted.png
+srv/web/ipfire/html/images/network-wireless.png
+srv/web/ipfire/html/images/network-workgroup.png
+srv/web/ipfire/html/images/null.gif
+srv/web/ipfire/html/images/off.gif
+srv/web/ipfire/html/images/on.gif
+srv/web/ipfire/html/images/openvpn.gif
+srv/web/ipfire/html/images/openvpn.png
+srv/web/ipfire/html/images/package-x-generic.png
+srv/web/ipfire/html/images/printer-error.png
+srv/web/ipfire/html/images/printer.png
+srv/web/ipfire/html/images/process-stop.png
+srv/web/ipfire/html/images/process-working.png
+srv/web/ipfire/html/images/reload.gif
+srv/web/ipfire/html/images/start-here.png
+srv/web/ipfire/html/images/stock_down-16.png
+srv/web/ipfire/html/images/stock_ok.png
+srv/web/ipfire/html/images/stock_stop.png
+srv/web/ipfire/html/images/stock_up-16.png
+srv/web/ipfire/html/images/system-file-manager.png
+srv/web/ipfire/html/images/system-installer.png
+srv/web/ipfire/html/images/system-lock-screen.png
+srv/web/ipfire/html/images/system-log-out.png
+srv/web/ipfire/html/images/system-search.png
+srv/web/ipfire/html/images/system-shutdown.png
+srv/web/ipfire/html/images/system-software-update.png
+srv/web/ipfire/html/images/system-users.png
+srv/web/ipfire/html/images/table-header.gif
+srv/web/ipfire/html/images/tab-new.png
+srv/web/ipfire/html/images/text-html.png
+srv/web/ipfire/html/images/text-x-generic.png
+srv/web/ipfire/html/images/text-x-generic-template.png
+srv/web/ipfire/html/images/text-x-script.png
+srv/web/ipfire/html/images/tux.png
+srv/web/ipfire/html/images/updbooster
+srv/web/ipfire/html/images/up.gif
+srv/web/ipfire/html/images/urlfilter
+srv/web/ipfire/html/images/user-home.png
+srv/web/ipfire/html/images/user-multiple.png
+srv/web/ipfire/html/images/user-option-add.png
+srv/web/ipfire/html/images/user-option-remove.png
+srv/web/ipfire/html/images/user-trash-full.png
+srv/web/ipfire/html/images/user-trash.png
+srv/web/ipfire/html/images/utilities-system-monitor.png
+srv/web/ipfire/html/images/utilities-terminal.png
+srv/web/ipfire/html/images/view-fullscreen.png
+srv/web/ipfire/html/images/view-refresh.png
+srv/web/ipfire/html/images/wakeup.gif
+srv/web/ipfire/html/images/window-new.png
+srv/web/ipfire/html/include
+srv/web/ipfire/html/index.cgi
+srv/web/ipfire/html/proxy.pac
+srv/web/ipfire/html/redirect.cgi
+srv/web/ipfire/html/redirect-templates
+srv/web/ipfire/html/themes
+srv/web/ipfire/html/wpad.dat
 var/updatecache
index 273249434d962bd38f90f82e5a21836474f6128c..cac4c3de14a03b9bafad0fd8eaab48d6059c76dc 100644 (file)
@@ -218,11 +218,11 @@ usr/lib/libcollectdclient.so.0.0.0
 #usr/lib/perl5/Collectd/Plugins
 #usr/lib/perl5/Collectd/Plugins/OpenVZ.pm
 #usr/lib/perl5/Collectd/Unixsock.pm
-#usr/lib/perl5/i586-linux-thread-multi
-#usr/lib/perl5/i586-linux-thread-multi/auto
-#usr/lib/perl5/i586-linux-thread-multi/auto/Collectd
-#usr/lib/perl5/i586-linux-thread-multi/auto/Collectd/.packlist
-#usr/lib/perl5/i586-linux-thread-multi/perllocal.pod
+#usr/lib/perl5/MACHINE-linux-thread-multi
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto/Collectd
+#usr/lib/perl5/MACHINE-linux-thread-multi/auto/Collectd/.packlist
+#usr/lib/perl5/MACHINE-linux-thread-multi/perllocal.pod
 #usr/lib/pkgconfig/libcollectdclient.pc
 #usr/man/man3/Collectd::Unixsock.3
 usr/sbin/collectd
diff --git a/config/rootfiles/common/flag-icons b/config/rootfiles/common/flag-icons
new file mode 100644 (file)
index 0000000..eee2c0c
--- /dev/null
@@ -0,0 +1,243 @@
+srv/web/ipfire/html/images/flags
+#srv/web/ipfire/html/images/flags/AD.png
+#srv/web/ipfire/html/images/flags/AE.png
+#srv/web/ipfire/html/images/flags/AF.png
+#srv/web/ipfire/html/images/flags/AG.png
+#srv/web/ipfire/html/images/flags/AI.png
+#srv/web/ipfire/html/images/flags/AL.png
+#srv/web/ipfire/html/images/flags/AM.png
+#srv/web/ipfire/html/images/flags/AN.png
+#srv/web/ipfire/html/images/flags/AO.png
+#srv/web/ipfire/html/images/flags/AQ.png
+#srv/web/ipfire/html/images/flags/AR.png
+#srv/web/ipfire/html/images/flags/AS.png
+#srv/web/ipfire/html/images/flags/AT.png
+#srv/web/ipfire/html/images/flags/AU.png
+#srv/web/ipfire/html/images/flags/AW.png
+#srv/web/ipfire/html/images/flags/AX.png
+#srv/web/ipfire/html/images/flags/AZ.png
+#srv/web/ipfire/html/images/flags/BA.png
+#srv/web/ipfire/html/images/flags/BB.png
+#srv/web/ipfire/html/images/flags/BD.png
+#srv/web/ipfire/html/images/flags/BE.png
+#srv/web/ipfire/html/images/flags/BF.png
+#srv/web/ipfire/html/images/flags/BG.png
+#srv/web/ipfire/html/images/flags/BH.png
+#srv/web/ipfire/html/images/flags/BI.png
+#srv/web/ipfire/html/images/flags/BJ.png
+#srv/web/ipfire/html/images/flags/BL.png
+#srv/web/ipfire/html/images/flags/BM.png
+#srv/web/ipfire/html/images/flags/BN.png
+#srv/web/ipfire/html/images/flags/BO.png
+#srv/web/ipfire/html/images/flags/BR.png
+#srv/web/ipfire/html/images/flags/BS.png
+#srv/web/ipfire/html/images/flags/BT.png
+#srv/web/ipfire/html/images/flags/BW.png
+#srv/web/ipfire/html/images/flags/BY.png
+#srv/web/ipfire/html/images/flags/BZ.png
+#srv/web/ipfire/html/images/flags/CA.png
+#srv/web/ipfire/html/images/flags/CC.png
+#srv/web/ipfire/html/images/flags/CD.png
+#srv/web/ipfire/html/images/flags/CF.png
+#srv/web/ipfire/html/images/flags/CG.png
+#srv/web/ipfire/html/images/flags/CH.png
+#srv/web/ipfire/html/images/flags/CI.png
+#srv/web/ipfire/html/images/flags/CK.png
+#srv/web/ipfire/html/images/flags/CL.png
+#srv/web/ipfire/html/images/flags/CM.png
+#srv/web/ipfire/html/images/flags/CN.png
+#srv/web/ipfire/html/images/flags/CO.png
+#srv/web/ipfire/html/images/flags/CR.png
+#srv/web/ipfire/html/images/flags/CU.png
+#srv/web/ipfire/html/images/flags/CV.png
+#srv/web/ipfire/html/images/flags/CW.png
+#srv/web/ipfire/html/images/flags/CX.png
+#srv/web/ipfire/html/images/flags/CY.png
+#srv/web/ipfire/html/images/flags/CZ.png
+#srv/web/ipfire/html/images/flags/DE.png
+#srv/web/ipfire/html/images/flags/DJ.png
+#srv/web/ipfire/html/images/flags/DK.png
+#srv/web/ipfire/html/images/flags/DM.png
+#srv/web/ipfire/html/images/flags/DO.png
+#srv/web/ipfire/html/images/flags/DZ.png
+#srv/web/ipfire/html/images/flags/EC.png
+#srv/web/ipfire/html/images/flags/EE.png
+#srv/web/ipfire/html/images/flags/EG.png
+#srv/web/ipfire/html/images/flags/EH.png
+#srv/web/ipfire/html/images/flags/ER.png
+#srv/web/ipfire/html/images/flags/ES.png
+#srv/web/ipfire/html/images/flags/ET.png
+#srv/web/ipfire/html/images/flags/EU.png
+#srv/web/ipfire/html/images/flags/FI.png
+#srv/web/ipfire/html/images/flags/FJ.png
+#srv/web/ipfire/html/images/flags/FK.png
+#srv/web/ipfire/html/images/flags/FM.png
+#srv/web/ipfire/html/images/flags/FO.png
+#srv/web/ipfire/html/images/flags/FR.png
+#srv/web/ipfire/html/images/flags/GA.png
+#srv/web/ipfire/html/images/flags/GB.png
+#srv/web/ipfire/html/images/flags/GD.png
+#srv/web/ipfire/html/images/flags/GE.png
+#srv/web/ipfire/html/images/flags/GG.png
+#srv/web/ipfire/html/images/flags/GH.png
+#srv/web/ipfire/html/images/flags/GI.png
+#srv/web/ipfire/html/images/flags/GL.png
+#srv/web/ipfire/html/images/flags/GM.png
+#srv/web/ipfire/html/images/flags/GN.png
+#srv/web/ipfire/html/images/flags/GQ.png
+#srv/web/ipfire/html/images/flags/GR.png
+#srv/web/ipfire/html/images/flags/GS.png
+#srv/web/ipfire/html/images/flags/GT.png
+#srv/web/ipfire/html/images/flags/GU.png
+#srv/web/ipfire/html/images/flags/GW.png
+#srv/web/ipfire/html/images/flags/GY.png
+#srv/web/ipfire/html/images/flags/HK.png
+#srv/web/ipfire/html/images/flags/HN.png
+#srv/web/ipfire/html/images/flags/HR.png
+#srv/web/ipfire/html/images/flags/HT.png
+#srv/web/ipfire/html/images/flags/HU.png
+#srv/web/ipfire/html/images/flags/IC.png
+#srv/web/ipfire/html/images/flags/ID.png
+#srv/web/ipfire/html/images/flags/IE.png
+#srv/web/ipfire/html/images/flags/IL.png
+#srv/web/ipfire/html/images/flags/IM.png
+#srv/web/ipfire/html/images/flags/IN.png
+#srv/web/ipfire/html/images/flags/IQ.png
+#srv/web/ipfire/html/images/flags/IR.png
+#srv/web/ipfire/html/images/flags/IS.png
+#srv/web/ipfire/html/images/flags/IT.png
+#srv/web/ipfire/html/images/flags/JE.png
+#srv/web/ipfire/html/images/flags/JM.png
+#srv/web/ipfire/html/images/flags/JO.png
+#srv/web/ipfire/html/images/flags/JP.png
+#srv/web/ipfire/html/images/flags/KE.png
+#srv/web/ipfire/html/images/flags/KG.png
+#srv/web/ipfire/html/images/flags/KH.png
+#srv/web/ipfire/html/images/flags/KI.png
+#srv/web/ipfire/html/images/flags/KM.png
+#srv/web/ipfire/html/images/flags/KN.png
+#srv/web/ipfire/html/images/flags/KP.png
+#srv/web/ipfire/html/images/flags/KR.png
+#srv/web/ipfire/html/images/flags/KW.png
+#srv/web/ipfire/html/images/flags/KY.png
+#srv/web/ipfire/html/images/flags/KZ.png
+#srv/web/ipfire/html/images/flags/LA.png
+#srv/web/ipfire/html/images/flags/LB.png
+#srv/web/ipfire/html/images/flags/LC.png
+#srv/web/ipfire/html/images/flags/LI.png
+#srv/web/ipfire/html/images/flags/LK.png
+#srv/web/ipfire/html/images/flags/LR.png
+#srv/web/ipfire/html/images/flags/LS.png
+#srv/web/ipfire/html/images/flags/LT.png
+#srv/web/ipfire/html/images/flags/LU.png
+#srv/web/ipfire/html/images/flags/LV.png
+#srv/web/ipfire/html/images/flags/LY.png
+#srv/web/ipfire/html/images/flags/MA.png
+#srv/web/ipfire/html/images/flags/MC.png
+#srv/web/ipfire/html/images/flags/MD.png
+#srv/web/ipfire/html/images/flags/ME.png
+#srv/web/ipfire/html/images/flags/MF.png
+#srv/web/ipfire/html/images/flags/MG.png
+#srv/web/ipfire/html/images/flags/MH.png
+#srv/web/ipfire/html/images/flags/MK.png
+#srv/web/ipfire/html/images/flags/ML.png
+#srv/web/ipfire/html/images/flags/MM.png
+#srv/web/ipfire/html/images/flags/MN.png
+#srv/web/ipfire/html/images/flags/MO.png
+#srv/web/ipfire/html/images/flags/MP.png
+#srv/web/ipfire/html/images/flags/MQ.png
+#srv/web/ipfire/html/images/flags/MR.png
+#srv/web/ipfire/html/images/flags/MS.png
+#srv/web/ipfire/html/images/flags/MT.png
+#srv/web/ipfire/html/images/flags/MU.png
+#srv/web/ipfire/html/images/flags/MV.png
+#srv/web/ipfire/html/images/flags/MW.png
+#srv/web/ipfire/html/images/flags/MX.png
+#srv/web/ipfire/html/images/flags/MY.png
+#srv/web/ipfire/html/images/flags/MZ.png
+#srv/web/ipfire/html/images/flags/NA.png
+#srv/web/ipfire/html/images/flags/NC.png
+#srv/web/ipfire/html/images/flags/NE.png
+#srv/web/ipfire/html/images/flags/NF.png
+#srv/web/ipfire/html/images/flags/NG.png
+#srv/web/ipfire/html/images/flags/NI.png
+#srv/web/ipfire/html/images/flags/NL.png
+#srv/web/ipfire/html/images/flags/NO.png
+#srv/web/ipfire/html/images/flags/NP.png
+#srv/web/ipfire/html/images/flags/NR.png
+#srv/web/ipfire/html/images/flags/NU.png
+#srv/web/ipfire/html/images/flags/NZ.png
+#srv/web/ipfire/html/images/flags/OM.png
+#srv/web/ipfire/html/images/flags/PA.png
+#srv/web/ipfire/html/images/flags/PE.png
+#srv/web/ipfire/html/images/flags/PF.png
+#srv/web/ipfire/html/images/flags/PG.png
+#srv/web/ipfire/html/images/flags/PH.png
+#srv/web/ipfire/html/images/flags/PK.png
+#srv/web/ipfire/html/images/flags/PL.png
+#srv/web/ipfire/html/images/flags/PN.png
+#srv/web/ipfire/html/images/flags/PR.png
+#srv/web/ipfire/html/images/flags/PS.png
+#srv/web/ipfire/html/images/flags/PT.png
+#srv/web/ipfire/html/images/flags/PW.png
+#srv/web/ipfire/html/images/flags/PY.png
+#srv/web/ipfire/html/images/flags/QA.png
+#srv/web/ipfire/html/images/flags/RO.png
+#srv/web/ipfire/html/images/flags/RS.png
+#srv/web/ipfire/html/images/flags/RU.png
+#srv/web/ipfire/html/images/flags/RW.png
+#srv/web/ipfire/html/images/flags/SA.png
+#srv/web/ipfire/html/images/flags/SB.png
+#srv/web/ipfire/html/images/flags/SC.png
+#srv/web/ipfire/html/images/flags/SD.png
+#srv/web/ipfire/html/images/flags/SE.png
+#srv/web/ipfire/html/images/flags/SG.png
+#srv/web/ipfire/html/images/flags/SH.png
+#srv/web/ipfire/html/images/flags/SI.png
+#srv/web/ipfire/html/images/flags/SK.png
+#srv/web/ipfire/html/images/flags/SL.png
+#srv/web/ipfire/html/images/flags/SM.png
+#srv/web/ipfire/html/images/flags/SN.png
+#srv/web/ipfire/html/images/flags/SO.png
+#srv/web/ipfire/html/images/flags/SR.png
+#srv/web/ipfire/html/images/flags/SS.png
+#srv/web/ipfire/html/images/flags/ST.png
+#srv/web/ipfire/html/images/flags/SV.png
+#srv/web/ipfire/html/images/flags/SY.png
+#srv/web/ipfire/html/images/flags/SZ.png
+#srv/web/ipfire/html/images/flags/TC.png
+#srv/web/ipfire/html/images/flags/TD.png
+#srv/web/ipfire/html/images/flags/TF.png
+#srv/web/ipfire/html/images/flags/TG.png
+#srv/web/ipfire/html/images/flags/TH.png
+#srv/web/ipfire/html/images/flags/TJ.png
+#srv/web/ipfire/html/images/flags/TK.png
+#srv/web/ipfire/html/images/flags/TL.png
+#srv/web/ipfire/html/images/flags/TM.png
+#srv/web/ipfire/html/images/flags/TN.png
+#srv/web/ipfire/html/images/flags/TO.png
+#srv/web/ipfire/html/images/flags/TR.png
+#srv/web/ipfire/html/images/flags/TT.png
+#srv/web/ipfire/html/images/flags/TV.png
+#srv/web/ipfire/html/images/flags/TW.png
+#srv/web/ipfire/html/images/flags/TZ.png
+#srv/web/ipfire/html/images/flags/UA.png
+#srv/web/ipfire/html/images/flags/UG.png
+#srv/web/ipfire/html/images/flags/US.png
+#srv/web/ipfire/html/images/flags/UY.png
+#srv/web/ipfire/html/images/flags/UZ.png
+#srv/web/ipfire/html/images/flags/VA.png
+#srv/web/ipfire/html/images/flags/VC.png
+#srv/web/ipfire/html/images/flags/VE.png
+#srv/web/ipfire/html/images/flags/VG.png
+#srv/web/ipfire/html/images/flags/VI.png
+#srv/web/ipfire/html/images/flags/VN.png
+#srv/web/ipfire/html/images/flags/VU.png
+#srv/web/ipfire/html/images/flags/WF.png
+#srv/web/ipfire/html/images/flags/WS.png
+#srv/web/ipfire/html/images/flags/YE.png
+#srv/web/ipfire/html/images/flags/YT.png
+#srv/web/ipfire/html/images/flags/ZA.png
+#srv/web/ipfire/html/images/flags/ZM.png
+#srv/web/ipfire/html/images/flags/ZW.png
+#srv/web/ipfire/html/images/flags/unknown.png
diff --git a/config/rootfiles/common/i586/openssl-sse2 b/config/rootfiles/common/i586/openssl-sse2
new file mode 100644 (file)
index 0000000..7f6ddd6
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/sse2/libcrypto.so.10
index f33d08c61a499ff113eec47ad70e77723d6963b5..349aac76cbb18ea9773cc029485f152ec711b6ba 100644 (file)
@@ -3,6 +3,7 @@ usr/local/bin/addonctrl
 usr/local/bin/backupctrl
 #usr/local/bin/clamavctrl
 usr/local/bin/collectdctrl
+usr/local/bin/ddnsctrl
 usr/local/bin/dhcpctrl
 usr/local/bin/dnsmasqctrl
 usr/local/bin/extrahdctrl
diff --git a/config/rootfiles/common/openssl-compat b/config/rootfiles/common/openssl-compat
deleted file mode 100644 (file)
index ccf89d0..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/lib/libcrypto.so.0.9.8
-usr/lib/libssl.so.0.9.8
index ca2f642287c944c953a46d94b100cdd33a7149b2..bbc7d9b2b6aa9c957f3d0a0d8a60ef1a74497f9f 100644 (file)
@@ -1,8 +1,8 @@
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/Text
-usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/Text/CSV_XS.pm
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/.packlist
-#usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.bs
-usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.so
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Text
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/Text/CSV_XS.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/.packlist
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.bs
+usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/Text/CSV_XS/CSV_XS.so
 #usr/share/man/man3/Text::CSV_XS.3
index 76abbe8516bf6fdce0e1fe1bcc702e0be92ad719..1b78c8e0cf2909257f9b95f394b7879a47333c5d 100644 (file)
@@ -34,7 +34,6 @@ usr/lib/squid/basic_smb_auth
 usr/lib/squid/basic_smb_auth.sh
 #usr/lib/squid/cachemgr.cgi
 usr/lib/squid/cert_tool
-usr/lib/squid/cert_valid.pl
 usr/lib/squid/digest_file_auth
 usr/lib/squid/digest_ldap_auth
 usr/lib/squid/diskd
index 7c83de7c7626553dc1fc7ec27ed15c295b6fbff3..b4053d9b71c40a42ad15ec9062d9c5e68720bee2 100644 (file)
@@ -33,7 +33,7 @@ usr/bin/xzmore
 #usr/include/lzma/hardware.h
 #usr/include/lzma/index.h
 #usr/include/lzma/index_hash.h
-#usr/include/lzma/lzma.h
+#usr/include/lzma/lzma12.h
 #usr/include/lzma/stream_flags.h
 #usr/include/lzma/version.h
 #usr/include/lzma/vli.h
@@ -41,7 +41,7 @@ usr/bin/xzmore
 #usr/lib/liblzma.la
 usr/lib/liblzma.so
 usr/lib/liblzma.so.5
-usr/lib/liblzma.so.5.0.5
+usr/lib/liblzma.so.5.2.1
 #usr/lib/pkgconfig/liblzma.pc
 #usr/share/doc/xz
 #usr/share/doc/xz/AUTHORS
@@ -56,6 +56,7 @@ usr/lib/liblzma.so.5.0.5
 #usr/share/doc/xz/examples/01_compress_easy.c
 #usr/share/doc/xz/examples/02_decompress.c
 #usr/share/doc/xz/examples/03_compress_custom.c
+#usr/share/doc/xz/examples/04_compress_easy_mt.c
 #usr/share/doc/xz/examples/Makefile
 #usr/share/doc/xz/examples_old
 #usr/share/doc/xz/examples_old/xz_pipe_comp.c
@@ -69,6 +70,7 @@ usr/lib/liblzma.so.5.0.5
 #usr/share/locale/fr/LC_MESSAGES/xz.mo
 #usr/share/locale/it/LC_MESSAGES/xz.mo
 #usr/share/locale/pl/LC_MESSAGES/xz.mo
+#usr/share/locale/vi/LC_MESSAGES/xz.mo
 #usr/share/man/man1/lzcat.1
 #usr/share/man/man1/lzcmp.1
 #usr/share/man/man1/lzdiff.1
diff --git a/config/rootfiles/core/90/filelists/armv5tel/glibc b/config/rootfiles/core/90/filelists/armv5tel/glibc
new file mode 120000 (symlink)
index 0000000..4c70d72
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/glibc
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/ddns b/config/rootfiles/core/90/filelists/ddns
new file mode 120000 (symlink)
index 0000000..7395164
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ddns
\ No newline at end of file
index 85d3de3358bd085f96b5a49cf15eb90c906f5728..d4dcfae61087c60bc818bcf0d14d7ea1025c9ba1 100644 (file)
@@ -5,9 +5,13 @@ etc/rc.d/init.d/network-trigger
 etc/rc.d/init.d/networking/functions.network
 etc/rc.d/init.d/networking/red.up/99-geoip-database
 etc/rc.d/rcsysinit.d/S90network-trigger
+srv/web/ipfire/cgi-bin/country.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
 srv/web/ipfire/cgi-bin/firewall.cgi
 srv/web/ipfire/cgi-bin/fwhosts.cgi
 srv/web/ipfire/cgi-bin/geoip-block.cgi
+srv/web/ipfire/cgi-bin/index.cgi
+srv/web/ipfire/cgi-bin/netovpnsrv.cgi
 srv/web/ipfire/cgi-bin/ovpnmain.cgi
 srv/web/ipfire/cgi-bin/vpnmain.cgi
 srv/web/ipfire/html/themes/darkdos/include/style.css
@@ -16,6 +20,8 @@ srv/web/ipfire/html/themes/ipfire/include/css/style.css
 srv/web/ipfire/html/themes/maniac/include/style.css
 usr/lib/firewall/firewall-lib.pl
 usr/lib/firewall/rules.pl
+usr/local/bin/backupiso
+usr/local/bin/ddnsctrl
 usr/local/bin/xt_geoip_build
 usr/local/bin/xt_geoip_update
 var/ipfire/general-functions.pl
diff --git a/config/rootfiles/core/90/filelists/fireinfo b/config/rootfiles/core/90/filelists/fireinfo
new file mode 120000 (symlink)
index 0000000..c461155
--- /dev/null
@@ -0,0 +1 @@
+../../../common/fireinfo
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/flag-icons b/config/rootfiles/core/90/filelists/flag-icons
new file mode 120000 (symlink)
index 0000000..8776b6b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/flag-icons
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/i586/glibc b/config/rootfiles/core/90/filelists/i586/glibc
new file mode 120000 (symlink)
index 0000000..943021f
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/glibc
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/i586/openssl-sse2 b/config/rootfiles/core/90/filelists/i586/openssl-sse2
new file mode 120000 (symlink)
index 0000000..f424713
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/openssl-sse2
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/openssl-0.9.8-files b/config/rootfiles/core/90/filelists/openssl-0.9.8-files
new file mode 100644 (file)
index 0000000..e80a57d
--- /dev/null
@@ -0,0 +1,19 @@
+lib/security/pam_mysql.so
+usr/lib/gnupg/gpgkeys_ldap
+usr/lib/gnupg/gpgkeys_hkp
+usr/lib/gnupg/gpgkeys_curl
+usr/lib/apache/libphp5.so
+usr/lib/squid/digest_ldap_auth
+usr/lib/squid/basic_ldap_auth
+usr/lib/squid/ext_kerberos_ldap_group_acl
+usr/lib/squid/ext_edirectory_userip_acl
+usr/lib/squid/ext_ldap_group_acl
+usr/lib/python2.7/lib-dynload/_ssl.so
+usr/lib/python2.7/lib-dynload/_hashlib.so
+usr/lib/collectd/write_http.so
+usr/lib/collectd/ascent.so
+usr/lib/collectd/curl_xml.so
+usr/lib/collectd/apache.so
+usr/lib/collectd/bind.so
+usr/lib/collectd/curl.so
+usr/bin/php
diff --git a/config/rootfiles/core/90/filelists/squid b/config/rootfiles/core/90/filelists/squid
new file mode 120000 (symlink)
index 0000000..2dc8372
--- /dev/null
@@ -0,0 +1 @@
+../../../common/squid
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/tzdata b/config/rootfiles/core/90/filelists/tzdata
new file mode 120000 (symlink)
index 0000000..5a6e325
--- /dev/null
@@ -0,0 +1 @@
+../../../common/tzdata
\ No newline at end of file
diff --git a/config/rootfiles/core/90/filelists/xz b/config/rootfiles/core/90/filelists/xz
new file mode 120000 (symlink)
index 0000000..734e926
--- /dev/null
@@ -0,0 +1 @@
+../../../common/xz
\ No newline at end of file
index 5e09240bcd74d4d4144b4b44e7f4f4e79f9996d7..1e0a5488114e1a921ca22f9320e71193c6a6c6da 100644 (file)
@@ -132,10 +132,16 @@ esac
 /etc/init.d/ipsec stop
 /etc/init.d/apache stop
 
+# Drop old flag icons, before extracting the new ones.
+rm /srv/web/ipfire/html/images/flags/*
+
 #
 #Extract files
 tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
 
+# Remove old openssl libraries
+rm -vf /usr/lib/libcrypto.so.0.9.8 /usr/lib/libssl.so.0.9.8
+
 # Check diskspace on boot
 BOOTSPACE=`df /boot -Pk | sed "s| * | |g" | cut -d" " -f4 | tail -n 1`
 
@@ -172,6 +178,11 @@ if [ ! -e "/var/ipfire/fwhosts/customgeoipgrp" ]; then
        chown nobody:nobody /var/ipfire/fwhosts/customgeoipgrp
 fi
 
+#Fix BUG10812 (openvpn server.conf has wrong collectd logfile path)
+if grep -q "status /var/log/ovpnserver.log 30" /var/ipfire/ovpn/server.conf; then
+       sed -i "s/\/var\/log\/ovpnserver.log 30/\/var\/run\/ovpnserver.log 30/" /var/ipfire/ovpn/server.conf
+fi
+
 # Download/Update GeoIP databases.
 /usr/local/bin/xt_geoip_update
 
@@ -184,6 +195,11 @@ EOF
 
 fcrontab -z &>/dev/null
 
+# Generate ddns configuration file
+sudo -u nobody /srv/web/ipfire/cgi-bin/ddns.cgi
+
+# Regenerate IPsec configuration
+sudo -u nobody /srv/web/ipfire/cgi-bin/vpnmain.cgi
 
 # Update Language cache
 perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
index 73533130058563a3a2454e24ae3c2a32f47316ef..d79f6e6aaf285b4206f699719320baf7dcb90ca7 100644 (file)
@@ -11,15 +11,15 @@ usr/bin/sigtool
 #usr/lib/libclamav.la
 usr/lib/libclamav.so
 usr/lib/libclamav.so.6
-usr/lib/libclamav.so.6.1.25
+usr/lib/libclamav.so.6.1.26
 #usr/lib/libclamunrar.la
 usr/lib/libclamunrar.so
 usr/lib/libclamunrar.so.6
-usr/lib/libclamunrar.so.6.1.25
+usr/lib/libclamunrar.so.6.1.26
 #usr/lib/libclamunrar_iface.la
 usr/lib/libclamunrar_iface.so
 usr/lib/libclamunrar_iface.so.6
-usr/lib/libclamunrar_iface.so.6.1.25
+usr/lib/libclamunrar_iface.so.6.1.26
 #usr/lib/pkgconfig/libclamav.pc
 usr/sbin/clamd
 usr/share/clamav
index 105f3f00e7e2dbfd5223108cce460c5694ffa010..3ee2e3b64c71f3e1b37d3704c2557be7a37e73ad 100644 (file)
@@ -37,4 +37,5 @@
 #usr/include/srtp/ut_sim.h
 #usr/include/srtp/xfm.h
 usr/lib/libsrtp.so
+usr/lib/libsrtp.so.1
 #usr/lib/pkgconfig/libsrtp.pc
index 3e6f72f987838359e4d740111fc878b67d0400d0..73a41d903fae41b47024f38ce18237adca36556c 100644 (file)
@@ -44,10 +44,8 @@ my $settingsfile = "${General::swroot}/ddns/settings";
 # Config file to store the configured ddns providers.
 my $datafile = "${General::swroot}/ddns/config";
 
-# Dynamic ddns programm call.
-my @ddnsprog = ("/usr/bin/ddns", "--config",
-               "/var/ipfire/ddns/ddns.conf",
-               "update-all");
+# Call the ddnsctrl helper binary to perform the update.
+my @ddnsprog = ("/usr/local/bin/ddnsctrl", "update-all");
 
 my %settings=();
 my $errormessage = '';
index 53adeacce8c9d852a99fc79629157eb53531b0a7..eafbdb1376b0b921fe36ebf61970fcf3bd0c7922 100644 (file)
@@ -301,7 +301,7 @@ END
                print '</td>';
                print '</tr>';
        }
-if ( $netsettings{'BLUE_DEV'} ) {
+if (&Header::blue_used()) {
                my $sub=&General::iporsubtocidr($netsettings{'BLUE_NETMASK'});
                print <<END;
                <tr>
@@ -318,7 +318,7 @@ END
                print '</td>';
                print '</tr>';
        }
-if ( $netsettings{'ORANGE_DEV'} ) {
+if (&Header::orange_used()) {
                my $sub=&General::iporsubtocidr($netsettings{'ORANGE_NETMASK'});
                print <<END;
                <tr>
index ddf41771a5b5226b3eb254b2cb3e136996c9512e..15a95b6b9f7e063627484836482b5e19fd3a0d73 100755 (executable)
@@ -59,7 +59,7 @@ if ( $querry[0] ne ""){
        if (@vpns){
                foreach (@vpns) {
                        &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
-                       &Graphs::makegraphbox("netovpnsrv.cgi",$_, "day");
+                       &Graphs::makegraphbox("netovpnsrv.cgi",$_, "day",320);
                        &Header::closebox();
                }
        }else{
index 4138f4dea674da80233024578b164500ff09c1f8..2a020eaddd84060688898b4f66ede388726f2028 100644 (file)
@@ -310,67 +310,33 @@ sub writeipsecfiles {
 
        # Algorithms
        if ($lconfighash{$key}[18] && $lconfighash{$key}[19] && $lconfighash{$key}[20]) {
-           print CONF "\tike=";
-           my @encs   = split('\|', $lconfighash{$key}[18]);
-           my @ints   = split('\|', $lconfighash{$key}[19]);
-           my @groups = split('\|', $lconfighash{$key}[20]);
-           my $comma = 0;
-           foreach my $i (@encs) {
-               foreach my $j (@ints) {
-                   foreach my $k (@groups) {
-                       if ($comma != 0) { print CONF ","; } else { $comma = 1; }
-
-                       my @l = split("", $k);
-                       if ($l[0] eq "e") {
-                           shift @l;
-                           print CONF "$i-$j-ecp".join("", @l);
-                       } else {
-                           print CONF "$i-$j-modp$k";
-                       }
-                   }
-               }
-           }
-           if ($lconfighash{$key}[24] eq 'on') {       #only proposed algorythms?
-               print CONF "!\n";
-           } else {
-               print CONF "\n";
-           }
+               my @encs   = split('\|', $lconfighash{$key}[18]);
+               my @ints   = split('\|', $lconfighash{$key}[19]);
+               my @groups = split('\|', $lconfighash{$key}[20]);
+
+               my @algos = &make_algos("ike", \@encs, \@ints, \@groups, 1);
+               print CONF "\tike=" . join(",", @algos);
+
+               if ($lconfighash{$key}[24] eq 'on') {   #only proposed algorythms?
+                       print CONF "!\n";
+               } else {
+                       print CONF "\n";
+               }
        }
+
        if ($lconfighash{$key}[21] && $lconfighash{$key}[22]) {
-           print CONF "\tesp=";
-           my @encs   = split('\|', $lconfighash{$key}[21]);
-           my @ints   = split('\|', $lconfighash{$key}[22]);
-           my @groups = split('\|', $lconfighash{$key}[20]);
-           my $comma = 0;
-           foreach my $i (@encs) {
-               foreach my $j (@ints) {
-                       my $modp = "";
-                       if ($pfs eq "on") {
-                               foreach my $k (@groups) {
-                                   if ($comma != 0) { print CONF ","; } else { $comma = 1; }
-                                   if ($pfs eq "on") {
-                                       my @l = split("", $k);
-                                       if ($l[0] eq "e") {
-                                               $modp = "";
-                                       } else {
-                                               $modp = "-modp$k";
-                                       }
-                                   } else {
-                                       $modp = "";
-                                   }
-                                   print CONF "$i-$j$modp";
-                               }
-                       } else {
-                               if ($comma != 0) { print CONF ","; } else { $comma = 1; }
-                               print CONF "$i-$j";
-                       }
+               my @encs   = split('\|', $lconfighash{$key}[21]);
+               my @ints   = split('\|', $lconfighash{$key}[22]);
+               my @groups = split('\|', $lconfighash{$key}[20]);
+
+               my @algos = &make_algos("esp", \@encs, \@ints, \@groups, ($pfs eq "on"));
+               print CONF "\tesp=" . join(",", @algos);
+
+               if ($lconfighash{$key}[24] eq 'on') {   #only proposed algorythms?
+                       print CONF "!\n";
+               } else {
+                       print CONF "\n";
                }
-           }
-           if ($lconfighash{$key}[24] eq 'on') {       #only proposed algorythms?
-               print CONF "!\n";
-           } else {
-               print CONF "\n";
-           }
        }
 
        # IKE V1 or V2
@@ -397,12 +363,12 @@ sub writeipsecfiles {
                        print CONF "\tdpddelay=0\n";
                }
        } else {
-               my $dpddelay = $lconfighash{$key}[30];
+               my $dpddelay = $lconfighash{$key}[31];
                if (!$dpddelay) {
                        $dpddelay = 30;
                }
                print CONF "\tdpddelay=$dpddelay\n";
-               my $dpdtimeout = $lconfighash{$key}[31];
+               my $dpdtimeout = $lconfighash{$key}[30];
                if (!$dpdtimeout) {
                        $dpdtimeout = 120;
                }
@@ -435,6 +401,10 @@ sub writeipsecfiles {
        } else {
            print CONF "\tauto=start\n";
        }
+
+       # Fragmentation
+       print CONF "\tfragmentation=yes\n";
+
        print CONF "\n";
     }#foreach key
     print SECRETS $last_secrets if ($last_secrets);
@@ -1879,11 +1849,11 @@ END
        $cgiparams{'REMOTE_ID'} = '';
 
        #use default advanced value
-       $cgiparams{'IKE_ENCRYPTION'} = 'aes256|aes192|aes128|aes256gcm128|aes192gcm128|aes128gcm128|aes256gcm96|aes192gcm96|aes128gcm96|aes256gcm64|aes192gcm64|aes128gcm64';   #[18];
+       $cgiparams{'IKE_ENCRYPTION'} = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128';   #[18];
        $cgiparams{'IKE_INTEGRITY'}  = 'sha2_512|sha2_256|sha'; #[19];
        $cgiparams{'IKE_GROUPTYPE'}  = '4096|3072|2048|1536|1024';              #[20];
        $cgiparams{'IKE_LIFETIME'}   = '3';             #[16];
-       $cgiparams{'ESP_ENCRYPTION'} = 'aes256|aes192|aes128|aes256gcm128|aes192gcm128|aes128gcm128|aes256gcm96|aes192gcm96|aes128gcm96|aes256gcm64|aes192gcm64|aes128gcm64';   #[21];
+       $cgiparams{'ESP_ENCRYPTION'} = 'aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128';   #[21];
        $cgiparams{'ESP_INTEGRITY'}  = 'sha2_512|sha2_256|sha1';        #[22];
        $cgiparams{'ESP_GROUPTYPE'}  = '';              #[23];
        $cgiparams{'ESP_KEYLIFE'}    = '1';             #[17];
@@ -2417,42 +2387,42 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                        <td class='boldbase' width="15%">$Lang::tr{'encryption'}</td>
                        <td class='boldbase'>
                                <select name='IKE_ENCRYPTION' multiple='multiple' size='6' style='width: 100%'>
-                                       <option value='aes256' $checked{'IKE_ENCRYPTION'}{'aes256'}>256 bit AES-CBC</option>
-                                       <option value='aes192' $checked{'IKE_ENCRYPTION'}{'aes192'}>192 bit AES-CBC</option>
-                                       <option value='aes128' $checked{'IKE_ENCRYPTION'}{'aes128'}>128 bit AES-CBC</option>
                                        <option value='aes256gcm128' $checked{'IKE_ENCRYPTION'}{'aes256gcm128'}>256 bit AES-GCM/128 bit ICV</option>
-                                       <option value='aes192gcm128' $checked{'IKE_ENCRYPTION'}{'aes192gcm128'}>192 bit AES-GCM/128 bit ICV</option>
-                                       <option value='aes128gcm128' $checked{'IKE_ENCRYPTION'}{'aes128gcm128'}>128 bit AES-GCM/128 bit ICV</option>
                                        <option value='aes256gcm96' $checked{'IKE_ENCRYPTION'}{'aes256gcm96'}>256 bit AES-GCM/96 bit ICV</option>
-                                       <option value='aes192gcm96' $checked{'IKE_ENCRYPTION'}{'aes192gcm96'}>192 bit AES-GCM/96 bit ICV</option>
-                                       <option value='aes128gcm96' $checked{'IKE_ENCRYPTION'}{'aes128gcm96'}>128 bit AES-GCM/96 bit ICV</option>
                                        <option value='aes256gcm64' $checked{'IKE_ENCRYPTION'}{'aes256gcm64'}>256 bit AES-GCM/64 bit ICV</option>
-                                       <option value='aes192gcm64' $checked{'IKE_ENCRYPTION'}{'aes192gcm64'}>192 bit AES-GCM/64 bit ICV</option>
-                                       <option value='aes128gcm64' $checked{'IKE_ENCRYPTION'}{'aes128gcm64'}>128 bit AES-GCM/64 bit ICV</option>
-                                       <option value='3des' $checked{'IKE_ENCRYPTION'}{'3des'}>168 bit 3DES-EDE-CBC</option>
+                                       <option value='aes256' $checked{'IKE_ENCRYPTION'}{'aes256'}>256 bit AES-CBC</option>
                                        <option value='camellia256' $checked{'IKE_ENCRYPTION'}{'camellia256'}>256 bit Camellia-CBC</option>
+                                       <option value='aes192gcm128' $checked{'IKE_ENCRYPTION'}{'aes192gcm128'}>192 bit AES-GCM/128 bit ICV</option>
+                                       <option value='aes192gcm96' $checked{'IKE_ENCRYPTION'}{'aes192gcm96'}>192 bit AES-GCM/96 bit ICV</option>
+                                       <option value='aes192gcm64' $checked{'IKE_ENCRYPTION'}{'aes192gcm64'}>192 bit AES-GCM/64 bit ICV</option>
+                                       <option value='aes192' $checked{'IKE_ENCRYPTION'}{'aes192'}>192 bit AES-CBC</option>
                                        <option value='camellia192' $checked{'IKE_ENCRYPTION'}{'camellia192'}>192 bit Camellia-CBC</option>
+                                       <option value='aes128gcm128' $checked{'IKE_ENCRYPTION'}{'aes128gcm128'}>128 bit AES-GCM/128 bit ICV</option>
+                                       <option value='aes128gcm96' $checked{'IKE_ENCRYPTION'}{'aes128gcm96'}>128 bit AES-GCM/96 bit ICV</option>
+                                       <option value='aes128gcm64' $checked{'IKE_ENCRYPTION'}{'aes128gcm64'}>128 bit AES-GCM/64 bit ICV</option>
+                                       <option value='aes128' $checked{'IKE_ENCRYPTION'}{'aes128'}>128 bit AES-CBC</option>
                                        <option value='camellia128' $checked{'IKE_ENCRYPTION'}{'camellia128'}>128 bit Camellia-CBC</option>
+                                       <option value='3des' $checked{'IKE_ENCRYPTION'}{'3des'}>168 bit 3DES-EDE-CBC</option>
                                </select>
                        </td>
                        <td class='boldbase'>
                                <select name='ESP_ENCRYPTION' multiple='multiple' size='6' style='width: 100%'>
-                                       <option value='aes256' $checked{'ESP_ENCRYPTION'}{'aes256'}>256 bit AES-CBC</option>
-                                       <option value='aes192' $checked{'ESP_ENCRYPTION'}{'aes192'}>192 bit AES-CBC</option>
-                                       <option value='aes128' $checked{'ESP_ENCRYPTION'}{'aes128'}>128 bit AES-CBC</option>
                                        <option value='aes256gcm128' $checked{'ESP_ENCRYPTION'}{'aes256gcm128'}>256 bit AES-GCM/128 bit ICV</option>
-                                       <option value='aes192gcm128' $checked{'ESP_ENCRYPTION'}{'aes192gcm128'}>192 bit AES-GCM/128 bit ICV</option>
-                                       <option value='aes128gcm128' $checked{'ESP_ENCRYPTION'}{'aes128gcm128'}>128 bit AES-GCM/128 bit ICV</option>
                                        <option value='aes256gcm96' $checked{'ESP_ENCRYPTION'}{'aes256gcm96'}>256 bit AES-GCM/96 bit ICV</option>
-                                       <option value='aes192gcm96' $checked{'ESP_ENCRYPTION'}{'aes192gcm96'}>192 bit AES-GCM/96 bit ICV</option>
-                                       <option value='aes128gcm96' $checked{'ESP_ENCRYPTION'}{'aes128gcm96'}>128 bit AES-GCM/96 bit ICV</option>
                                        <option value='aes256gcm64' $checked{'ESP_ENCRYPTION'}{'aes256gcm64'}>256 bit AES-GCM/64 bit ICV</option>
-                                       <option value='aes192gcm64' $checked{'ESP_ENCRYPTION'}{'aes192gcm64'}>192 bit AES-GCM/64 bit ICV</option>
-                                       <option value='aes128gcm64' $checked{'ESP_ENCRYPTION'}{'aes128gcm64'}>128 bit AES-GCM/64 bit ICV</option>
-                                       <option value='3des' $checked{'ESP_ENCRYPTION'}{'3des'}>168 bit 3DES-EDE-CBC</option>
+                                       <option value='aes256' $checked{'ESP_ENCRYPTION'}{'aes256'}>256 bit AES-CBC</option>
                                        <option value='camellia256' $checked{'ESP_ENCRYPTION'}{'camellia256'}>256 bit Camellia-CBC</option>
+                                       <option value='aes192gcm128' $checked{'ESP_ENCRYPTION'}{'aes192gcm128'}>192 bit AES-GCM/128 bit ICV</option>
+                                       <option value='aes192gcm96' $checked{'ESP_ENCRYPTION'}{'aes192gcm96'}>192 bit AES-GCM/96 bit ICV</option>
+                                       <option value='aes192gcm64' $checked{'ESP_ENCRYPTION'}{'aes192gcm64'}>192 bit AES-GCM/64 bit ICV</option>
+                                       <option value='aes192' $checked{'ESP_ENCRYPTION'}{'aes192'}>192 bit AES-CBC</option>
                                        <option value='camellia192' $checked{'ESP_ENCRYPTION'}{'camellia192'}>192 bit Camellia-CBC</option>
+                                       <option value='aes128gcm128' $checked{'ESP_ENCRYPTION'}{'aes128gcm128'}>128 bit AES-GCM/128 bit ICV</option>
+                                       <option value='aes128gcm96' $checked{'ESP_ENCRYPTION'}{'aes128gcm96'}>128 bit AES-GCM/96 bit ICV</option>
+                                       <option value='aes128gcm64' $checked{'ESP_ENCRYPTION'}{'aes128gcm64'}>128 bit AES-GCM/64 bit ICV</option>
+                                       <option value='aes128' $checked{'ESP_ENCRYPTION'}{'aes128'}>128 bit AES-CBC</option>
                                        <option value='camellia128' $checked{'ESP_ENCRYPTION'}{'camellia128'}>128 bit Camellia-CBC</option>
+                                       <option value='3des' $checked{'ESP_ENCRYPTION'}{'3des'}>168 bit 3DES-EDE-CBC</option>
                                </select>
                        </td>
                </tr>
@@ -2464,9 +2434,9 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                                        <option value='sha2_512' $checked{'IKE_INTEGRITY'}{'sha2_512'}>SHA2 512 bit</option>
                                        <option value='sha2_384' $checked{'IKE_INTEGRITY'}{'sha2_384'}>SHA2 384 bit</option>
                                        <option value='sha2_256' $checked{'IKE_INTEGRITY'}{'sha2_256'}>SHA2 256 bit</option>
+                                       <option value='aesxcbc' $checked{'IKE_INTEGRITY'}{'aesxcbc'}>AES XCBC</option>
                                        <option value='sha' $checked{'IKE_INTEGRITY'}{'sha'}>SHA1</option>
                                        <option value='md5' $checked{'IKE_INTEGRITY'}{'md5'}>MD5</option>
-                                       <option value='aesxcbc' $checked{'IKE_INTEGRITY'}{'aesxcbc'}>AES XCBC</option>
                                </select>
                        </td>
                        <td class='boldbase'>
@@ -2474,9 +2444,9 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                                        <option value='sha2_512' $checked{'ESP_INTEGRITY'}{'sha2_512'}>SHA2 512 bit</option>
                                        <option value='sha2_384' $checked{'ESP_INTEGRITY'}{'sha2_384'}>SHA2 384 bit</option>
                                        <option value='sha2_256' $checked{'ESP_INTEGRITY'}{'sha2_256'}>SHA2 256 bit</option>
+                                       <option value='aesxcbc' $checked{'ESP_INTEGRITY'}{'aesxcbc'}>AES XCBC</option>
                                        <option value='sha1' $checked{'ESP_INTEGRITY'}{'sha1'}>SHA1</option>
                                        <option value='md5' $checked{'ESP_INTEGRITY'}{'md5'}>MD5</option>
-                                       <option value='aesxcbc' $checked{'ESP_INTEGRITY'}{'aesxcbc'}>AES XCBC</option>
                                </select>
                        </td>
                </tr>
@@ -2494,14 +2464,14 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) ||
                        <td class='boldbase'>
                                <select name='IKE_GROUPTYPE' multiple='multiple' size='6' style='width: 100%'>
                                        <option value='e521' $checked{'IKE_GROUPTYPE'}{'e521'}>ECP-521 (NIST)</option>
-                                       <option value='e384' $checked{'IKE_GROUPTYPE'}{'e384'}>ECP-384 (NIST)</option>
-                                       <option value='e256' $checked{'IKE_GROUPTYPE'}{'e256'}>ECP-256 (NIST)</option>
-                                       <option value='e224' $checked{'IKE_GROUPTYPE'}{'e224'}>ECP-224 (NIST)</option>
-                                       <option value='e192' $checked{'IKE_GROUPTYPE'}{'e192'}>ECP-192 (NIST)</option>
                                        <option value='e512bp' $checked{'IKE_GROUPTYPE'}{'e512bp'}>ECP-512 (Brainpool)</option>
+                                       <option value='e384' $checked{'IKE_GROUPTYPE'}{'e384'}>ECP-384 (NIST)</option>
                                        <option value='e384bp' $checked{'IKE_GROUPTYPE'}{'e384bp'}>ECP-384 (Brainpool)</option>
+                                       <option value='e256' $checked{'IKE_GROUPTYPE'}{'e256'}>ECP-256 (NIST)</option>
                                        <option value='e256bp' $checked{'IKE_GROUPTYPE'}{'e256bp'}>ECP-256 (Brainpool)</option>
+                                       <option value='e224' $checked{'IKE_GROUPTYPE'}{'e224'}>ECP-224 (NIST)</option>
                                        <option value='e224bp' $checked{'IKE_GROUPTYPE'}{'e224bp'}>ECP-224 (Brainpool)</option>
+                                       <option value='e192' $checked{'IKE_GROUPTYPE'}{'e192'}>ECP-192 (NIST)</option>
                                        <option value='8192' $checked{'IKE_GROUPTYPE'}{'8192'}>MODP-8192</option>
                                        <option value='6144' $checked{'IKE_GROUPTYPE'}{'6144'}>MODP-6144</option>
                                        <option value='4096' $checked{'IKE_GROUPTYPE'}{'4096'}>MODP-4096</option>
@@ -3021,3 +2991,56 @@ END
     &Header::closebox();
     &Header::closebigbox();
     &Header::closepage();
+
+sub array_unique($) {
+       my $array = shift;
+       my @unique = ();
+
+       my %seen = ();
+       foreach my $e (@$array) {
+               next if $seen{$e}++;
+               push(@unique, $e);
+       }
+
+       return @unique;
+}
+
+sub make_algos($$$$$) {
+       my ($mode, $encs, $ints, $grps, $pfs) = @_;
+       my @algos = ();
+
+       foreach my $enc (@$encs) {
+               foreach my $int (@$ints) {
+                       foreach my $grp (@$grps) {
+                               my @algo = ($enc);
+
+                               if ($mode eq "ike") {
+                                       push(@algo, $int);
+
+                                       if ($grp =~ m/^e(.*)$/) {
+                                               push(@algo, "ecp$1");
+                                       } else {
+                                               push(@algo, "modp$grp");
+                                       }
+
+                               } elsif ($mode eq "esp" && $pfs) {
+                                       my $is_aead = ($enc =~ m/[cg]cm/);
+
+                                       if (!$is_aead) {
+                                               push(@algo, $int);
+                                       }
+
+                                       if ($grp =~ m/^e(.*)$/) {
+                                               push(@algo, "ecp$1");
+                                       } else {
+                                               push(@algo, "modp$grp");
+                                       }
+                               }
+
+                               push(@algos, join("-", @algo));
+                       }
+               }
+       }
+
+       return &array_unique(\@algos);
+}
diff --git a/html/html/images/flags/ad.png b/html/html/images/flags/ad.png
deleted file mode 100644 (file)
index ffbe26a..0000000
Binary files a/html/html/images/flags/ad.png and /dev/null differ
diff --git a/html/html/images/flags/ae.png b/html/html/images/flags/ae.png
deleted file mode 100644 (file)
index 0ee169b..0000000
Binary files a/html/html/images/flags/ae.png and /dev/null differ
diff --git a/html/html/images/flags/af.png b/html/html/images/flags/af.png
deleted file mode 100644 (file)
index f6d8f25..0000000
Binary files a/html/html/images/flags/af.png and /dev/null differ
diff --git a/html/html/images/flags/ag.png b/html/html/images/flags/ag.png
deleted file mode 100644 (file)
index 1c731ba..0000000
Binary files a/html/html/images/flags/ag.png and /dev/null differ
diff --git a/html/html/images/flags/ai.png b/html/html/images/flags/ai.png
deleted file mode 100644 (file)
index afc38d9..0000000
Binary files a/html/html/images/flags/ai.png and /dev/null differ
diff --git a/html/html/images/flags/al.png b/html/html/images/flags/al.png
deleted file mode 100644 (file)
index 79d6bac..0000000
Binary files a/html/html/images/flags/al.png and /dev/null differ
diff --git a/html/html/images/flags/am.png b/html/html/images/flags/am.png
deleted file mode 100644 (file)
index 7d57f50..0000000
Binary files a/html/html/images/flags/am.png and /dev/null differ
diff --git a/html/html/images/flags/an.png b/html/html/images/flags/an.png
deleted file mode 100644 (file)
index bf9d233..0000000
Binary files a/html/html/images/flags/an.png and /dev/null differ
diff --git a/html/html/images/flags/ao.png b/html/html/images/flags/ao.png
deleted file mode 100644 (file)
index c971840..0000000
Binary files a/html/html/images/flags/ao.png and /dev/null differ
diff --git a/html/html/images/flags/aq.png b/html/html/images/flags/aq.png
deleted file mode 100644 (file)
index a4f9700..0000000
Binary files a/html/html/images/flags/aq.png and /dev/null differ
diff --git a/html/html/images/flags/ar.png b/html/html/images/flags/ar.png
deleted file mode 100644 (file)
index d3a0d9d..0000000
Binary files a/html/html/images/flags/ar.png and /dev/null differ
diff --git a/html/html/images/flags/as.png b/html/html/images/flags/as.png
deleted file mode 100644 (file)
index d881283..0000000
Binary files a/html/html/images/flags/as.png and /dev/null differ
diff --git a/html/html/images/flags/at.png b/html/html/images/flags/at.png
deleted file mode 100644 (file)
index bd0cbe1..0000000
Binary files a/html/html/images/flags/at.png and /dev/null differ
diff --git a/html/html/images/flags/au.png b/html/html/images/flags/au.png
deleted file mode 100644 (file)
index 65fd911..0000000
Binary files a/html/html/images/flags/au.png and /dev/null differ
diff --git a/html/html/images/flags/aw.png b/html/html/images/flags/aw.png
deleted file mode 100644 (file)
index 1e5aff9..0000000
Binary files a/html/html/images/flags/aw.png and /dev/null differ
diff --git a/html/html/images/flags/az.png b/html/html/images/flags/az.png
deleted file mode 100644 (file)
index f2137c2..0000000
Binary files a/html/html/images/flags/az.png and /dev/null differ
diff --git a/html/html/images/flags/ba.png b/html/html/images/flags/ba.png
deleted file mode 100644 (file)
index 39dbca8..0000000
Binary files a/html/html/images/flags/ba.png and /dev/null differ
diff --git a/html/html/images/flags/bb.png b/html/html/images/flags/bb.png
deleted file mode 100644 (file)
index 726ab5a..0000000
Binary files a/html/html/images/flags/bb.png and /dev/null differ
diff --git a/html/html/images/flags/bd.png b/html/html/images/flags/bd.png
deleted file mode 100644 (file)
index e68816f..0000000
Binary files a/html/html/images/flags/bd.png and /dev/null differ
diff --git a/html/html/images/flags/be.png b/html/html/images/flags/be.png
deleted file mode 100644 (file)
index 2f92d5f..0000000
Binary files a/html/html/images/flags/be.png and /dev/null differ
diff --git a/html/html/images/flags/bf.png b/html/html/images/flags/bf.png
deleted file mode 100644 (file)
index 618fd04..0000000
Binary files a/html/html/images/flags/bf.png and /dev/null differ
diff --git a/html/html/images/flags/bg.png b/html/html/images/flags/bg.png
deleted file mode 100644 (file)
index 70d4b20..0000000
Binary files a/html/html/images/flags/bg.png and /dev/null differ
diff --git a/html/html/images/flags/bh.png b/html/html/images/flags/bh.png
deleted file mode 100644 (file)
index e92bd20..0000000
Binary files a/html/html/images/flags/bh.png and /dev/null differ
diff --git a/html/html/images/flags/bi.png b/html/html/images/flags/bi.png
deleted file mode 100644 (file)
index 3b4ebca..0000000
Binary files a/html/html/images/flags/bi.png and /dev/null differ
diff --git a/html/html/images/flags/bj.png b/html/html/images/flags/bj.png
deleted file mode 100644 (file)
index f6b89d9..0000000
Binary files a/html/html/images/flags/bj.png and /dev/null differ
diff --git a/html/html/images/flags/bm.png b/html/html/images/flags/bm.png
deleted file mode 100644 (file)
index 092852d..0000000
Binary files a/html/html/images/flags/bm.png and /dev/null differ
diff --git a/html/html/images/flags/bn.png b/html/html/images/flags/bn.png
deleted file mode 100644 (file)
index 2cf8b8e..0000000
Binary files a/html/html/images/flags/bn.png and /dev/null differ
diff --git a/html/html/images/flags/bo.png b/html/html/images/flags/bo.png
deleted file mode 100644 (file)
index bcf7986..0000000
Binary files a/html/html/images/flags/bo.png and /dev/null differ
diff --git a/html/html/images/flags/br.png b/html/html/images/flags/br.png
deleted file mode 100644 (file)
index 73e9370..0000000
Binary files a/html/html/images/flags/br.png and /dev/null differ
diff --git a/html/html/images/flags/bs.png b/html/html/images/flags/bs.png
deleted file mode 100644 (file)
index 799df4d..0000000
Binary files a/html/html/images/flags/bs.png and /dev/null differ
diff --git a/html/html/images/flags/bt.png b/html/html/images/flags/bt.png
deleted file mode 100644 (file)
index 796a073..0000000
Binary files a/html/html/images/flags/bt.png and /dev/null differ
diff --git a/html/html/images/flags/bv.png b/html/html/images/flags/bv.png
deleted file mode 100644 (file)
index 90661b4..0000000
Binary files a/html/html/images/flags/bv.png and /dev/null differ
diff --git a/html/html/images/flags/bw.png b/html/html/images/flags/bw.png
deleted file mode 100644 (file)
index 913580d..0000000
Binary files a/html/html/images/flags/bw.png and /dev/null differ
diff --git a/html/html/images/flags/by.png b/html/html/images/flags/by.png
deleted file mode 100644 (file)
index 80cd890..0000000
Binary files a/html/html/images/flags/by.png and /dev/null differ
diff --git a/html/html/images/flags/bz.png b/html/html/images/flags/bz.png
deleted file mode 100644 (file)
index bcfd37e..0000000
Binary files a/html/html/images/flags/bz.png and /dev/null differ
diff --git a/html/html/images/flags/ca.png b/html/html/images/flags/ca.png
deleted file mode 100644 (file)
index 0a50034..0000000
Binary files a/html/html/images/flags/ca.png and /dev/null differ
diff --git a/html/html/images/flags/cc.png b/html/html/images/flags/cc.png
deleted file mode 100644 (file)
index 6e29f45..0000000
Binary files a/html/html/images/flags/cc.png and /dev/null differ
diff --git a/html/html/images/flags/cd.png b/html/html/images/flags/cd.png
deleted file mode 100644 (file)
index daa30a3..0000000
Binary files a/html/html/images/flags/cd.png and /dev/null differ
diff --git a/html/html/images/flags/cf.png b/html/html/images/flags/cf.png
deleted file mode 100644 (file)
index d31de15..0000000
Binary files a/html/html/images/flags/cf.png and /dev/null differ
diff --git a/html/html/images/flags/cg.png b/html/html/images/flags/cg.png
deleted file mode 100644 (file)
index 1d712ff..0000000
Binary files a/html/html/images/flags/cg.png and /dev/null differ
diff --git a/html/html/images/flags/ch.png b/html/html/images/flags/ch.png
deleted file mode 100644 (file)
index b5b5902..0000000
Binary files a/html/html/images/flags/ch.png and /dev/null differ
diff --git a/html/html/images/flags/ci.png b/html/html/images/flags/ci.png
deleted file mode 100644 (file)
index 3f34f51..0000000
Binary files a/html/html/images/flags/ci.png and /dev/null differ
diff --git a/html/html/images/flags/ck.png b/html/html/images/flags/ck.png
deleted file mode 100644 (file)
index c86af2c..0000000
Binary files a/html/html/images/flags/ck.png and /dev/null differ
diff --git a/html/html/images/flags/cl.png b/html/html/images/flags/cl.png
deleted file mode 100644 (file)
index 194fd91..0000000
Binary files a/html/html/images/flags/cl.png and /dev/null differ
diff --git a/html/html/images/flags/cm.png b/html/html/images/flags/cm.png
deleted file mode 100644 (file)
index 00fc991..0000000
Binary files a/html/html/images/flags/cm.png and /dev/null differ
diff --git a/html/html/images/flags/cn.png b/html/html/images/flags/cn.png
deleted file mode 100644 (file)
index e9e8261..0000000
Binary files a/html/html/images/flags/cn.png and /dev/null differ
diff --git a/html/html/images/flags/co.png b/html/html/images/flags/co.png
deleted file mode 100644 (file)
index cba9e49..0000000
Binary files a/html/html/images/flags/co.png and /dev/null differ
diff --git a/html/html/images/flags/cr.png b/html/html/images/flags/cr.png
deleted file mode 100644 (file)
index 9088a35..0000000
Binary files a/html/html/images/flags/cr.png and /dev/null differ
diff --git a/html/html/images/flags/cs.png b/html/html/images/flags/cs.png
deleted file mode 100644 (file)
index bbd5aca..0000000
Binary files a/html/html/images/flags/cs.png and /dev/null differ
diff --git a/html/html/images/flags/cu.png b/html/html/images/flags/cu.png
deleted file mode 100644 (file)
index ff1b7ea..0000000
Binary files a/html/html/images/flags/cu.png and /dev/null differ
diff --git a/html/html/images/flags/cv.png b/html/html/images/flags/cv.png
deleted file mode 100644 (file)
index 49e7738..0000000
Binary files a/html/html/images/flags/cv.png and /dev/null differ
diff --git a/html/html/images/flags/cx.png b/html/html/images/flags/cx.png
deleted file mode 100644 (file)
index a64c13f..0000000
Binary files a/html/html/images/flags/cx.png and /dev/null differ
diff --git a/html/html/images/flags/cy.png b/html/html/images/flags/cy.png
deleted file mode 100644 (file)
index c3a559c..0000000
Binary files a/html/html/images/flags/cy.png and /dev/null differ
diff --git a/html/html/images/flags/cz.png b/html/html/images/flags/cz.png
deleted file mode 100644 (file)
index 5caf0ec..0000000
Binary files a/html/html/images/flags/cz.png and /dev/null differ
diff --git a/html/html/images/flags/de.png b/html/html/images/flags/de.png
deleted file mode 100644 (file)
index b142f7b..0000000
Binary files a/html/html/images/flags/de.png and /dev/null differ
diff --git a/html/html/images/flags/dj.png b/html/html/images/flags/dj.png
deleted file mode 100644 (file)
index c71b38f..0000000
Binary files a/html/html/images/flags/dj.png and /dev/null differ
diff --git a/html/html/images/flags/dk.png b/html/html/images/flags/dk.png
deleted file mode 100644 (file)
index b2b9b12..0000000
Binary files a/html/html/images/flags/dk.png and /dev/null differ
diff --git a/html/html/images/flags/dm.png b/html/html/images/flags/dm.png
deleted file mode 100644 (file)
index 0b1aab6..0000000
Binary files a/html/html/images/flags/dm.png and /dev/null differ
diff --git a/html/html/images/flags/do.png b/html/html/images/flags/do.png
deleted file mode 100644 (file)
index 5afc6d0..0000000
Binary files a/html/html/images/flags/do.png and /dev/null differ
diff --git a/html/html/images/flags/dz.png b/html/html/images/flags/dz.png
deleted file mode 100644 (file)
index 9132046..0000000
Binary files a/html/html/images/flags/dz.png and /dev/null differ
diff --git a/html/html/images/flags/ec.png b/html/html/images/flags/ec.png
deleted file mode 100644 (file)
index bdae8d2..0000000
Binary files a/html/html/images/flags/ec.png and /dev/null differ
diff --git a/html/html/images/flags/ee.png b/html/html/images/flags/ee.png
deleted file mode 100644 (file)
index 516e5a3..0000000
Binary files a/html/html/images/flags/ee.png and /dev/null differ
diff --git a/html/html/images/flags/eg.png b/html/html/images/flags/eg.png
deleted file mode 100644 (file)
index 0f47afc..0000000
Binary files a/html/html/images/flags/eg.png and /dev/null differ
diff --git a/html/html/images/flags/eh.png b/html/html/images/flags/eh.png
deleted file mode 100644 (file)
index 927b3cb..0000000
Binary files a/html/html/images/flags/eh.png and /dev/null differ
diff --git a/html/html/images/flags/er.png b/html/html/images/flags/er.png
deleted file mode 100644 (file)
index 10ded53..0000000
Binary files a/html/html/images/flags/er.png and /dev/null differ
diff --git a/html/html/images/flags/es.png b/html/html/images/flags/es.png
deleted file mode 100644 (file)
index 40cbfa6..0000000
Binary files a/html/html/images/flags/es.png and /dev/null differ
diff --git a/html/html/images/flags/et.png b/html/html/images/flags/et.png
deleted file mode 100644 (file)
index 17a252e..0000000
Binary files a/html/html/images/flags/et.png and /dev/null differ
diff --git a/html/html/images/flags/eu.png b/html/html/images/flags/eu.png
deleted file mode 100644 (file)
index 4c09a5a..0000000
Binary files a/html/html/images/flags/eu.png and /dev/null differ
diff --git a/html/html/images/flags/fi.png b/html/html/images/flags/fi.png
deleted file mode 100644 (file)
index 78b9ab6..0000000
Binary files a/html/html/images/flags/fi.png and /dev/null differ
diff --git a/html/html/images/flags/fj.png b/html/html/images/flags/fj.png
deleted file mode 100644 (file)
index a02aaa3..0000000
Binary files a/html/html/images/flags/fj.png and /dev/null differ
diff --git a/html/html/images/flags/fk.png b/html/html/images/flags/fk.png
deleted file mode 100644 (file)
index b6189f9..0000000
Binary files a/html/html/images/flags/fk.png and /dev/null differ
diff --git a/html/html/images/flags/fm.png b/html/html/images/flags/fm.png
deleted file mode 100644 (file)
index 7302d22..0000000
Binary files a/html/html/images/flags/fm.png and /dev/null differ
diff --git a/html/html/images/flags/fo.png b/html/html/images/flags/fo.png
deleted file mode 100644 (file)
index 6bb5557..0000000
Binary files a/html/html/images/flags/fo.png and /dev/null differ
diff --git a/html/html/images/flags/fr.png b/html/html/images/flags/fr.png
deleted file mode 100644 (file)
index bfd4a21..0000000
Binary files a/html/html/images/flags/fr.png and /dev/null differ
diff --git a/html/html/images/flags/ga.png b/html/html/images/flags/ga.png
deleted file mode 100644 (file)
index 18eed1a..0000000
Binary files a/html/html/images/flags/ga.png and /dev/null differ
diff --git a/html/html/images/flags/gb.png b/html/html/images/flags/gb.png
deleted file mode 100644 (file)
index db134f1..0000000
Binary files a/html/html/images/flags/gb.png and /dev/null differ
diff --git a/html/html/images/flags/gd.png b/html/html/images/flags/gd.png
deleted file mode 100644 (file)
index bde8e2e..0000000
Binary files a/html/html/images/flags/gd.png and /dev/null differ
diff --git a/html/html/images/flags/ge.png b/html/html/images/flags/ge.png
deleted file mode 100644 (file)
index cf5a612..0000000
Binary files a/html/html/images/flags/ge.png and /dev/null differ
diff --git a/html/html/images/flags/gf.png b/html/html/images/flags/gf.png
deleted file mode 100644 (file)
index df12fb4..0000000
Binary files a/html/html/images/flags/gf.png and /dev/null differ
diff --git a/html/html/images/flags/gh.png b/html/html/images/flags/gh.png
deleted file mode 100644 (file)
index e47b266..0000000
Binary files a/html/html/images/flags/gh.png and /dev/null differ
diff --git a/html/html/images/flags/gi.png b/html/html/images/flags/gi.png
deleted file mode 100644 (file)
index d3f23b3..0000000
Binary files a/html/html/images/flags/gi.png and /dev/null differ
diff --git a/html/html/images/flags/gl.png b/html/html/images/flags/gl.png
deleted file mode 100644 (file)
index 565c7a1..0000000
Binary files a/html/html/images/flags/gl.png and /dev/null differ
diff --git a/html/html/images/flags/gm.png b/html/html/images/flags/gm.png
deleted file mode 100644 (file)
index cdecab3..0000000
Binary files a/html/html/images/flags/gm.png and /dev/null differ
diff --git a/html/html/images/flags/gn.png b/html/html/images/flags/gn.png
deleted file mode 100644 (file)
index 56db38e..0000000
Binary files a/html/html/images/flags/gn.png and /dev/null differ
diff --git a/html/html/images/flags/gp.png b/html/html/images/flags/gp.png
deleted file mode 100644 (file)
index d7fbdfc..0000000
Binary files a/html/html/images/flags/gp.png and /dev/null differ
diff --git a/html/html/images/flags/gq.png b/html/html/images/flags/gq.png
deleted file mode 100644 (file)
index 71496cd..0000000
Binary files a/html/html/images/flags/gq.png and /dev/null differ
diff --git a/html/html/images/flags/gr.png b/html/html/images/flags/gr.png
deleted file mode 100644 (file)
index cf10a25..0000000
Binary files a/html/html/images/flags/gr.png and /dev/null differ
diff --git a/html/html/images/flags/gs.png b/html/html/images/flags/gs.png
deleted file mode 100644 (file)
index 6fd7edf..0000000
Binary files a/html/html/images/flags/gs.png and /dev/null differ
diff --git a/html/html/images/flags/gt.png b/html/html/images/flags/gt.png
deleted file mode 100644 (file)
index 2be4460..0000000
Binary files a/html/html/images/flags/gt.png and /dev/null differ
diff --git a/html/html/images/flags/gu.png b/html/html/images/flags/gu.png
deleted file mode 100644 (file)
index 2e6f0e0..0000000
Binary files a/html/html/images/flags/gu.png and /dev/null differ
diff --git a/html/html/images/flags/gw.png b/html/html/images/flags/gw.png
deleted file mode 100644 (file)
index ae52ec3..0000000
Binary files a/html/html/images/flags/gw.png and /dev/null differ
diff --git a/html/html/images/flags/gy.png b/html/html/images/flags/gy.png
deleted file mode 100644 (file)
index 1b20de4..0000000
Binary files a/html/html/images/flags/gy.png and /dev/null differ
diff --git a/html/html/images/flags/hk.png b/html/html/images/flags/hk.png
deleted file mode 100644 (file)
index d5435b6..0000000
Binary files a/html/html/images/flags/hk.png and /dev/null differ
diff --git a/html/html/images/flags/hm.png b/html/html/images/flags/hm.png
deleted file mode 100644 (file)
index ec0d223..0000000
Binary files a/html/html/images/flags/hm.png and /dev/null differ
diff --git a/html/html/images/flags/hn.png b/html/html/images/flags/hn.png
deleted file mode 100644 (file)
index 56e0b02..0000000
Binary files a/html/html/images/flags/hn.png and /dev/null differ
diff --git a/html/html/images/flags/hr.png b/html/html/images/flags/hr.png
deleted file mode 100644 (file)
index bd133ba..0000000
Binary files a/html/html/images/flags/hr.png and /dev/null differ
diff --git a/html/html/images/flags/ht.png b/html/html/images/flags/ht.png
deleted file mode 100644 (file)
index a982940..0000000
Binary files a/html/html/images/flags/ht.png and /dev/null differ
diff --git a/html/html/images/flags/hu.png b/html/html/images/flags/hu.png
deleted file mode 100644 (file)
index fd76de3..0000000
Binary files a/html/html/images/flags/hu.png and /dev/null differ
diff --git a/html/html/images/flags/id.png b/html/html/images/flags/id.png
deleted file mode 100644 (file)
index cf72330..0000000
Binary files a/html/html/images/flags/id.png and /dev/null differ
diff --git a/html/html/images/flags/ie.png b/html/html/images/flags/ie.png
deleted file mode 100644 (file)
index ddbbc74..0000000
Binary files a/html/html/images/flags/ie.png and /dev/null differ
diff --git a/html/html/images/flags/il.png b/html/html/images/flags/il.png
deleted file mode 100644 (file)
index 52dc8d3..0000000
Binary files a/html/html/images/flags/il.png and /dev/null differ
diff --git a/html/html/images/flags/in.png b/html/html/images/flags/in.png
deleted file mode 100644 (file)
index 771f217..0000000
Binary files a/html/html/images/flags/in.png and /dev/null differ
diff --git a/html/html/images/flags/io.png b/html/html/images/flags/io.png
deleted file mode 100644 (file)
index 96bc118..0000000
Binary files a/html/html/images/flags/io.png and /dev/null differ
diff --git a/html/html/images/flags/iq.png b/html/html/images/flags/iq.png
deleted file mode 100644 (file)
index 3097303..0000000
Binary files a/html/html/images/flags/iq.png and /dev/null differ
diff --git a/html/html/images/flags/ir.png b/html/html/images/flags/ir.png
deleted file mode 100644 (file)
index 395b28a..0000000
Binary files a/html/html/images/flags/ir.png and /dev/null differ
diff --git a/html/html/images/flags/is.png b/html/html/images/flags/is.png
deleted file mode 100644 (file)
index ea1c493..0000000
Binary files a/html/html/images/flags/is.png and /dev/null differ
diff --git a/html/html/images/flags/it.png b/html/html/images/flags/it.png
deleted file mode 100644 (file)
index de7427b..0000000
Binary files a/html/html/images/flags/it.png and /dev/null differ
diff --git a/html/html/images/flags/jm.png b/html/html/images/flags/jm.png
deleted file mode 100644 (file)
index 2a8a899..0000000
Binary files a/html/html/images/flags/jm.png and /dev/null differ
diff --git a/html/html/images/flags/jo.png b/html/html/images/flags/jo.png
deleted file mode 100644 (file)
index dbdca50..0000000
Binary files a/html/html/images/flags/jo.png and /dev/null differ
diff --git a/html/html/images/flags/jp.png b/html/html/images/flags/jp.png
deleted file mode 100644 (file)
index 5e342fd..0000000
Binary files a/html/html/images/flags/jp.png and /dev/null differ
diff --git a/html/html/images/flags/ke.png b/html/html/images/flags/ke.png
deleted file mode 100644 (file)
index d55331a..0000000
Binary files a/html/html/images/flags/ke.png and /dev/null differ
diff --git a/html/html/images/flags/kg.png b/html/html/images/flags/kg.png
deleted file mode 100644 (file)
index 230b1f6..0000000
Binary files a/html/html/images/flags/kg.png and /dev/null differ
diff --git a/html/html/images/flags/kh.png b/html/html/images/flags/kh.png
deleted file mode 100644 (file)
index 2ad8e35..0000000
Binary files a/html/html/images/flags/kh.png and /dev/null differ
diff --git a/html/html/images/flags/ki.png b/html/html/images/flags/ki.png
deleted file mode 100644 (file)
index 244104a..0000000
Binary files a/html/html/images/flags/ki.png and /dev/null differ
diff --git a/html/html/images/flags/km.png b/html/html/images/flags/km.png
deleted file mode 100644 (file)
index eb69544..0000000
Binary files a/html/html/images/flags/km.png and /dev/null differ
diff --git a/html/html/images/flags/kn.png b/html/html/images/flags/kn.png
deleted file mode 100644 (file)
index 3ce4018..0000000
Binary files a/html/html/images/flags/kn.png and /dev/null differ
diff --git a/html/html/images/flags/kp.png b/html/html/images/flags/kp.png
deleted file mode 100644 (file)
index f53c71a..0000000
Binary files a/html/html/images/flags/kp.png and /dev/null differ
diff --git a/html/html/images/flags/kr.png b/html/html/images/flags/kr.png
deleted file mode 100644 (file)
index 2b4e7b9..0000000
Binary files a/html/html/images/flags/kr.png and /dev/null differ
diff --git a/html/html/images/flags/kw.png b/html/html/images/flags/kw.png
deleted file mode 100644 (file)
index 19c8dc2..0000000
Binary files a/html/html/images/flags/kw.png and /dev/null differ
diff --git a/html/html/images/flags/ky.png b/html/html/images/flags/ky.png
deleted file mode 100644 (file)
index fa5ba07..0000000
Binary files a/html/html/images/flags/ky.png and /dev/null differ
diff --git a/html/html/images/flags/kz.png b/html/html/images/flags/kz.png
deleted file mode 100644 (file)
index f90f0ef..0000000
Binary files a/html/html/images/flags/kz.png and /dev/null differ
diff --git a/html/html/images/flags/la.png b/html/html/images/flags/la.png
deleted file mode 100644 (file)
index c3e9154..0000000
Binary files a/html/html/images/flags/la.png and /dev/null differ
diff --git a/html/html/images/flags/lb.png b/html/html/images/flags/lb.png
deleted file mode 100644 (file)
index e18a577..0000000
Binary files a/html/html/images/flags/lb.png and /dev/null differ
diff --git a/html/html/images/flags/lc.png b/html/html/images/flags/lc.png
deleted file mode 100644 (file)
index 78c606f..0000000
Binary files a/html/html/images/flags/lc.png and /dev/null differ
diff --git a/html/html/images/flags/li.png b/html/html/images/flags/li.png
deleted file mode 100644 (file)
index e991d1f..0000000
Binary files a/html/html/images/flags/li.png and /dev/null differ
diff --git a/html/html/images/flags/lk.png b/html/html/images/flags/lk.png
deleted file mode 100644 (file)
index f9e227f..0000000
Binary files a/html/html/images/flags/lk.png and /dev/null differ
diff --git a/html/html/images/flags/lr.png b/html/html/images/flags/lr.png
deleted file mode 100644 (file)
index 1c826c8..0000000
Binary files a/html/html/images/flags/lr.png and /dev/null differ
diff --git a/html/html/images/flags/ls.png b/html/html/images/flags/ls.png
deleted file mode 100644 (file)
index bd78c5b..0000000
Binary files a/html/html/images/flags/ls.png and /dev/null differ
diff --git a/html/html/images/flags/lt.png b/html/html/images/flags/lt.png
deleted file mode 100644 (file)
index 212d16b..0000000
Binary files a/html/html/images/flags/lt.png and /dev/null differ
diff --git a/html/html/images/flags/lu.png b/html/html/images/flags/lu.png
deleted file mode 100644 (file)
index 7182373..0000000
Binary files a/html/html/images/flags/lu.png and /dev/null differ
diff --git a/html/html/images/flags/lv.png b/html/html/images/flags/lv.png
deleted file mode 100644 (file)
index fa94bb2..0000000
Binary files a/html/html/images/flags/lv.png and /dev/null differ
diff --git a/html/html/images/flags/ly.png b/html/html/images/flags/ly.png
deleted file mode 100644 (file)
index 7afd8a6..0000000
Binary files a/html/html/images/flags/ly.png and /dev/null differ
diff --git a/html/html/images/flags/ma.png b/html/html/images/flags/ma.png
deleted file mode 100644 (file)
index 05448bf..0000000
Binary files a/html/html/images/flags/ma.png and /dev/null differ
diff --git a/html/html/images/flags/mc.png b/html/html/images/flags/mc.png
deleted file mode 100644 (file)
index c6f5809..0000000
Binary files a/html/html/images/flags/mc.png and /dev/null differ
diff --git a/html/html/images/flags/md.png b/html/html/images/flags/md.png
deleted file mode 100644 (file)
index e100650..0000000
Binary files a/html/html/images/flags/md.png and /dev/null differ
diff --git a/html/html/images/flags/mg.png b/html/html/images/flags/mg.png
deleted file mode 100644 (file)
index 080b0d4..0000000
Binary files a/html/html/images/flags/mg.png and /dev/null differ
diff --git a/html/html/images/flags/mh.png b/html/html/images/flags/mh.png
deleted file mode 100644 (file)
index 132ad60..0000000
Binary files a/html/html/images/flags/mh.png and /dev/null differ
diff --git a/html/html/images/flags/mk.png b/html/html/images/flags/mk.png
deleted file mode 100644 (file)
index acf5e44..0000000
Binary files a/html/html/images/flags/mk.png and /dev/null differ
diff --git a/html/html/images/flags/ml.png b/html/html/images/flags/ml.png
deleted file mode 100644 (file)
index cf0412f..0000000
Binary files a/html/html/images/flags/ml.png and /dev/null differ
diff --git a/html/html/images/flags/mm.png b/html/html/images/flags/mm.png
deleted file mode 100644 (file)
index 6467831..0000000
Binary files a/html/html/images/flags/mm.png and /dev/null differ
diff --git a/html/html/images/flags/mn.png b/html/html/images/flags/mn.png
deleted file mode 100644 (file)
index 81f355b..0000000
Binary files a/html/html/images/flags/mn.png and /dev/null differ
diff --git a/html/html/images/flags/mo.png b/html/html/images/flags/mo.png
deleted file mode 100644 (file)
index 8a033f3..0000000
Binary files a/html/html/images/flags/mo.png and /dev/null differ
diff --git a/html/html/images/flags/mp.png b/html/html/images/flags/mp.png
deleted file mode 100644 (file)
index 1bf8975..0000000
Binary files a/html/html/images/flags/mp.png and /dev/null differ
diff --git a/html/html/images/flags/mq.png b/html/html/images/flags/mq.png
deleted file mode 100644 (file)
index 00a8cc4..0000000
Binary files a/html/html/images/flags/mq.png and /dev/null differ
diff --git a/html/html/images/flags/mr.png b/html/html/images/flags/mr.png
deleted file mode 100644 (file)
index 5c40c89..0000000
Binary files a/html/html/images/flags/mr.png and /dev/null differ
diff --git a/html/html/images/flags/ms.png b/html/html/images/flags/ms.png
deleted file mode 100644 (file)
index 82dfd87..0000000
Binary files a/html/html/images/flags/ms.png and /dev/null differ
diff --git a/html/html/images/flags/mt.png b/html/html/images/flags/mt.png
deleted file mode 100644 (file)
index df86154..0000000
Binary files a/html/html/images/flags/mt.png and /dev/null differ
diff --git a/html/html/images/flags/mu.png b/html/html/images/flags/mu.png
deleted file mode 100644 (file)
index b146f38..0000000
Binary files a/html/html/images/flags/mu.png and /dev/null differ
diff --git a/html/html/images/flags/mv.png b/html/html/images/flags/mv.png
deleted file mode 100644 (file)
index 9d8704b..0000000
Binary files a/html/html/images/flags/mv.png and /dev/null differ
diff --git a/html/html/images/flags/mw.png b/html/html/images/flags/mw.png
deleted file mode 100644 (file)
index ddbe257..0000000
Binary files a/html/html/images/flags/mw.png and /dev/null differ
diff --git a/html/html/images/flags/mx.png b/html/html/images/flags/mx.png
deleted file mode 100644 (file)
index d69e87f..0000000
Binary files a/html/html/images/flags/mx.png and /dev/null differ
diff --git a/html/html/images/flags/my.png b/html/html/images/flags/my.png
deleted file mode 100644 (file)
index 54534e9..0000000
Binary files a/html/html/images/flags/my.png and /dev/null differ
diff --git a/html/html/images/flags/mz.png b/html/html/images/flags/mz.png
deleted file mode 100644 (file)
index bc3cf9b..0000000
Binary files a/html/html/images/flags/mz.png and /dev/null differ
diff --git a/html/html/images/flags/na.png b/html/html/images/flags/na.png
deleted file mode 100644 (file)
index f44ed28..0000000
Binary files a/html/html/images/flags/na.png and /dev/null differ
diff --git a/html/html/images/flags/nc.png b/html/html/images/flags/nc.png
deleted file mode 100644 (file)
index ee025d7..0000000
Binary files a/html/html/images/flags/nc.png and /dev/null differ
diff --git a/html/html/images/flags/ne.png b/html/html/images/flags/ne.png
deleted file mode 100644 (file)
index aeb771d..0000000
Binary files a/html/html/images/flags/ne.png and /dev/null differ
diff --git a/html/html/images/flags/nf.png b/html/html/images/flags/nf.png
deleted file mode 100644 (file)
index 2f9ae94..0000000
Binary files a/html/html/images/flags/nf.png and /dev/null differ
diff --git a/html/html/images/flags/ng.png b/html/html/images/flags/ng.png
deleted file mode 100644 (file)
index cc4dcd1..0000000
Binary files a/html/html/images/flags/ng.png and /dev/null differ
diff --git a/html/html/images/flags/ni.png b/html/html/images/flags/ni.png
deleted file mode 100644 (file)
index f679bf2..0000000
Binary files a/html/html/images/flags/ni.png and /dev/null differ
diff --git a/html/html/images/flags/nl.png b/html/html/images/flags/nl.png
deleted file mode 100644 (file)
index b0e12c2..0000000
Binary files a/html/html/images/flags/nl.png and /dev/null differ
diff --git a/html/html/images/flags/no.png b/html/html/images/flags/no.png
deleted file mode 100644 (file)
index de11ab7..0000000
Binary files a/html/html/images/flags/no.png and /dev/null differ
diff --git a/html/html/images/flags/np.png b/html/html/images/flags/np.png
deleted file mode 100644 (file)
index eb365c9..0000000
Binary files a/html/html/images/flags/np.png and /dev/null differ
diff --git a/html/html/images/flags/nr.png b/html/html/images/flags/nr.png
deleted file mode 100644 (file)
index 12f0cfe..0000000
Binary files a/html/html/images/flags/nr.png and /dev/null differ
diff --git a/html/html/images/flags/nu.png b/html/html/images/flags/nu.png
deleted file mode 100644 (file)
index 99ce198..0000000
Binary files a/html/html/images/flags/nu.png and /dev/null differ
diff --git a/html/html/images/flags/nz.png b/html/html/images/flags/nz.png
deleted file mode 100644 (file)
index c50ae5f..0000000
Binary files a/html/html/images/flags/nz.png and /dev/null differ
diff --git a/html/html/images/flags/om.png b/html/html/images/flags/om.png
deleted file mode 100644 (file)
index 0076b11..0000000
Binary files a/html/html/images/flags/om.png and /dev/null differ
diff --git a/html/html/images/flags/pa.png b/html/html/images/flags/pa.png
deleted file mode 100644 (file)
index ea4adb2..0000000
Binary files a/html/html/images/flags/pa.png and /dev/null differ
diff --git a/html/html/images/flags/pe.png b/html/html/images/flags/pe.png
deleted file mode 100644 (file)
index 38563b8..0000000
Binary files a/html/html/images/flags/pe.png and /dev/null differ
diff --git a/html/html/images/flags/pf.png b/html/html/images/flags/pf.png
deleted file mode 100644 (file)
index 832a5da..0000000
Binary files a/html/html/images/flags/pf.png and /dev/null differ
diff --git a/html/html/images/flags/pg.png b/html/html/images/flags/pg.png
deleted file mode 100644 (file)
index 96da94f..0000000
Binary files a/html/html/images/flags/pg.png and /dev/null differ
diff --git a/html/html/images/flags/ph.png b/html/html/images/flags/ph.png
deleted file mode 100644 (file)
index c8868b6..0000000
Binary files a/html/html/images/flags/ph.png and /dev/null differ
diff --git a/html/html/images/flags/pk.png b/html/html/images/flags/pk.png
deleted file mode 100644 (file)
index d86edf1..0000000
Binary files a/html/html/images/flags/pk.png and /dev/null differ
diff --git a/html/html/images/flags/pl.png b/html/html/images/flags/pl.png
deleted file mode 100644 (file)
index 251ee0a..0000000
Binary files a/html/html/images/flags/pl.png and /dev/null differ
diff --git a/html/html/images/flags/pm.png b/html/html/images/flags/pm.png
deleted file mode 100644 (file)
index 3d23d0e..0000000
Binary files a/html/html/images/flags/pm.png and /dev/null differ
diff --git a/html/html/images/flags/pn.png b/html/html/images/flags/pn.png
deleted file mode 100644 (file)
index b39911c..0000000
Binary files a/html/html/images/flags/pn.png and /dev/null differ
diff --git a/html/html/images/flags/pr.png b/html/html/images/flags/pr.png
deleted file mode 100644 (file)
index 2877e34..0000000
Binary files a/html/html/images/flags/pr.png and /dev/null differ
diff --git a/html/html/images/flags/ps.png b/html/html/images/flags/ps.png
deleted file mode 100644 (file)
index 7080b85..0000000
Binary files a/html/html/images/flags/ps.png and /dev/null differ
diff --git a/html/html/images/flags/pt.png b/html/html/images/flags/pt.png
deleted file mode 100644 (file)
index c61d7ca..0000000
Binary files a/html/html/images/flags/pt.png and /dev/null differ
diff --git a/html/html/images/flags/pw.png b/html/html/images/flags/pw.png
deleted file mode 100644 (file)
index 063d17f..0000000
Binary files a/html/html/images/flags/pw.png and /dev/null differ
diff --git a/html/html/images/flags/py.png b/html/html/images/flags/py.png
deleted file mode 100644 (file)
index 7bc1c87..0000000
Binary files a/html/html/images/flags/py.png and /dev/null differ
diff --git a/html/html/images/flags/qa.png b/html/html/images/flags/qa.png
deleted file mode 100644 (file)
index 9619da6..0000000
Binary files a/html/html/images/flags/qa.png and /dev/null differ
diff --git a/html/html/images/flags/re.png b/html/html/images/flags/re.png
deleted file mode 100644 (file)
index 422ee9d..0000000
Binary files a/html/html/images/flags/re.png and /dev/null differ
diff --git a/html/html/images/flags/ro.png b/html/html/images/flags/ro.png
deleted file mode 100644 (file)
index 7f72dd8..0000000
Binary files a/html/html/images/flags/ro.png and /dev/null differ
diff --git a/html/html/images/flags/ru.png b/html/html/images/flags/ru.png
deleted file mode 100644 (file)
index c76f646..0000000
Binary files a/html/html/images/flags/ru.png and /dev/null differ
diff --git a/html/html/images/flags/rw.png b/html/html/images/flags/rw.png
deleted file mode 100644 (file)
index b05833b..0000000
Binary files a/html/html/images/flags/rw.png and /dev/null differ
diff --git a/html/html/images/flags/sa.png b/html/html/images/flags/sa.png
deleted file mode 100644 (file)
index 1771430..0000000
Binary files a/html/html/images/flags/sa.png and /dev/null differ
diff --git a/html/html/images/flags/sb.png b/html/html/images/flags/sb.png
deleted file mode 100644 (file)
index e1ca39b..0000000
Binary files a/html/html/images/flags/sb.png and /dev/null differ
diff --git a/html/html/images/flags/sc.png b/html/html/images/flags/sc.png
deleted file mode 100644 (file)
index 0d42691..0000000
Binary files a/html/html/images/flags/sc.png and /dev/null differ
diff --git a/html/html/images/flags/sd.png b/html/html/images/flags/sd.png
deleted file mode 100644 (file)
index d9a8e94..0000000
Binary files a/html/html/images/flags/sd.png and /dev/null differ
diff --git a/html/html/images/flags/se.png b/html/html/images/flags/se.png
deleted file mode 100644 (file)
index 56f8579..0000000
Binary files a/html/html/images/flags/se.png and /dev/null differ
diff --git a/html/html/images/flags/sg.png b/html/html/images/flags/sg.png
deleted file mode 100644 (file)
index debeda7..0000000
Binary files a/html/html/images/flags/sg.png and /dev/null differ
diff --git a/html/html/images/flags/sh.png b/html/html/images/flags/sh.png
deleted file mode 100644 (file)
index 070cd3b..0000000
Binary files a/html/html/images/flags/sh.png and /dev/null differ
diff --git a/html/html/images/flags/si.png b/html/html/images/flags/si.png
deleted file mode 100644 (file)
index a8525d4..0000000
Binary files a/html/html/images/flags/si.png and /dev/null differ
diff --git a/html/html/images/flags/sj.png b/html/html/images/flags/sj.png
deleted file mode 100644 (file)
index 2b44b90..0000000
Binary files a/html/html/images/flags/sj.png and /dev/null differ
diff --git a/html/html/images/flags/sk.png b/html/html/images/flags/sk.png
deleted file mode 100644 (file)
index 9477a58..0000000
Binary files a/html/html/images/flags/sk.png and /dev/null differ
diff --git a/html/html/images/flags/sl.png b/html/html/images/flags/sl.png
deleted file mode 100644 (file)
index 9178f63..0000000
Binary files a/html/html/images/flags/sl.png and /dev/null differ
diff --git a/html/html/images/flags/sm.png b/html/html/images/flags/sm.png
deleted file mode 100644 (file)
index 9dc99fa..0000000
Binary files a/html/html/images/flags/sm.png and /dev/null differ
diff --git a/html/html/images/flags/sn.png b/html/html/images/flags/sn.png
deleted file mode 100644 (file)
index 0f0e66c..0000000
Binary files a/html/html/images/flags/sn.png and /dev/null differ
diff --git a/html/html/images/flags/so.png b/html/html/images/flags/so.png
deleted file mode 100644 (file)
index 680bfc2..0000000
Binary files a/html/html/images/flags/so.png and /dev/null differ
diff --git a/html/html/images/flags/sr.png b/html/html/images/flags/sr.png
deleted file mode 100644 (file)
index 339bbb6..0000000
Binary files a/html/html/images/flags/sr.png and /dev/null differ
diff --git a/html/html/images/flags/st.png b/html/html/images/flags/st.png
deleted file mode 100644 (file)
index 3b6db16..0000000
Binary files a/html/html/images/flags/st.png and /dev/null differ
diff --git a/html/html/images/flags/sv.png b/html/html/images/flags/sv.png
deleted file mode 100644 (file)
index d71be3e..0000000
Binary files a/html/html/images/flags/sv.png and /dev/null differ
diff --git a/html/html/images/flags/sy.png b/html/html/images/flags/sy.png
deleted file mode 100644 (file)
index 5b350b7..0000000
Binary files a/html/html/images/flags/sy.png and /dev/null differ
diff --git a/html/html/images/flags/sz.png b/html/html/images/flags/sz.png
deleted file mode 100644 (file)
index 48deaaf..0000000
Binary files a/html/html/images/flags/sz.png and /dev/null differ
diff --git a/html/html/images/flags/tc.png b/html/html/images/flags/tc.png
deleted file mode 100644 (file)
index 6e164c3..0000000
Binary files a/html/html/images/flags/tc.png and /dev/null differ
diff --git a/html/html/images/flags/td.png b/html/html/images/flags/td.png
deleted file mode 100644 (file)
index 0fb0e32..0000000
Binary files a/html/html/images/flags/td.png and /dev/null differ
diff --git a/html/html/images/flags/tf.png b/html/html/images/flags/tf.png
deleted file mode 100644 (file)
index d986c06..0000000
Binary files a/html/html/images/flags/tf.png and /dev/null differ
diff --git a/html/html/images/flags/tg.png b/html/html/images/flags/tg.png
deleted file mode 100644 (file)
index 354772f..0000000
Binary files a/html/html/images/flags/tg.png and /dev/null differ
diff --git a/html/html/images/flags/th.png b/html/html/images/flags/th.png
deleted file mode 100644 (file)
index 88e94a0..0000000
Binary files a/html/html/images/flags/th.png and /dev/null differ
diff --git a/html/html/images/flags/tj.png b/html/html/images/flags/tj.png
deleted file mode 100644 (file)
index dd802f0..0000000
Binary files a/html/html/images/flags/tj.png and /dev/null differ
diff --git a/html/html/images/flags/tk.png b/html/html/images/flags/tk.png
deleted file mode 100644 (file)
index 233a7af..0000000
Binary files a/html/html/images/flags/tk.png and /dev/null differ
diff --git a/html/html/images/flags/tl.png b/html/html/images/flags/tl.png
deleted file mode 100644 (file)
index 2216921..0000000
Binary files a/html/html/images/flags/tl.png and /dev/null differ
diff --git a/html/html/images/flags/tm.png b/html/html/images/flags/tm.png
deleted file mode 100644 (file)
index efc4867..0000000
Binary files a/html/html/images/flags/tm.png and /dev/null differ
diff --git a/html/html/images/flags/tn.png b/html/html/images/flags/tn.png
deleted file mode 100644 (file)
index 7dc6df9..0000000
Binary files a/html/html/images/flags/tn.png and /dev/null differ
diff --git a/html/html/images/flags/to.png b/html/html/images/flags/to.png
deleted file mode 100644 (file)
index 27df6fd..0000000
Binary files a/html/html/images/flags/to.png and /dev/null differ
diff --git a/html/html/images/flags/tp.png b/html/html/images/flags/tp.png
deleted file mode 100644 (file)
index f612ed8..0000000
Binary files a/html/html/images/flags/tp.png and /dev/null differ
diff --git a/html/html/images/flags/tr.png b/html/html/images/flags/tr.png
deleted file mode 100644 (file)
index ca88f97..0000000
Binary files a/html/html/images/flags/tr.png and /dev/null differ
diff --git a/html/html/images/flags/tt.png b/html/html/images/flags/tt.png
deleted file mode 100644 (file)
index 37d38fe..0000000
Binary files a/html/html/images/flags/tt.png and /dev/null differ
diff --git a/html/html/images/flags/tv.png b/html/html/images/flags/tv.png
deleted file mode 100644 (file)
index b86f1bc..0000000
Binary files a/html/html/images/flags/tv.png and /dev/null differ
diff --git a/html/html/images/flags/tw.png b/html/html/images/flags/tw.png
deleted file mode 100644 (file)
index 85eb1ff..0000000
Binary files a/html/html/images/flags/tw.png and /dev/null differ
diff --git a/html/html/images/flags/tz.png b/html/html/images/flags/tz.png
deleted file mode 100644 (file)
index 2b0880a..0000000
Binary files a/html/html/images/flags/tz.png and /dev/null differ
diff --git a/html/html/images/flags/ua.png b/html/html/images/flags/ua.png
deleted file mode 100644 (file)
index 46b0aaf..0000000
Binary files a/html/html/images/flags/ua.png and /dev/null differ
diff --git a/html/html/images/flags/ug.png b/html/html/images/flags/ug.png
deleted file mode 100644 (file)
index 22dd07f..0000000
Binary files a/html/html/images/flags/ug.png and /dev/null differ
diff --git a/html/html/images/flags/um.png b/html/html/images/flags/um.png
deleted file mode 100644 (file)
index e959d31..0000000
Binary files a/html/html/images/flags/um.png and /dev/null differ
diff --git a/html/html/images/flags/us.png b/html/html/images/flags/us.png
deleted file mode 100644 (file)
index cebf562..0000000
Binary files a/html/html/images/flags/us.png and /dev/null differ
diff --git a/html/html/images/flags/uy.png b/html/html/images/flags/uy.png
deleted file mode 100644 (file)
index 3aed8f7..0000000
Binary files a/html/html/images/flags/uy.png and /dev/null differ
diff --git a/html/html/images/flags/uz.png b/html/html/images/flags/uz.png
deleted file mode 100644 (file)
index 1c9ca15..0000000
Binary files a/html/html/images/flags/uz.png and /dev/null differ
diff --git a/html/html/images/flags/va.png b/html/html/images/flags/va.png
deleted file mode 100644 (file)
index fd3984b..0000000
Binary files a/html/html/images/flags/va.png and /dev/null differ
diff --git a/html/html/images/flags/vc.png b/html/html/images/flags/vc.png
deleted file mode 100644 (file)
index 230ef4c..0000000
Binary files a/html/html/images/flags/vc.png and /dev/null differ
diff --git a/html/html/images/flags/ve.png b/html/html/images/flags/ve.png
deleted file mode 100644 (file)
index 292db90..0000000
Binary files a/html/html/images/flags/ve.png and /dev/null differ
diff --git a/html/html/images/flags/vg.png b/html/html/images/flags/vg.png
deleted file mode 100644 (file)
index 5c0acd3..0000000
Binary files a/html/html/images/flags/vg.png and /dev/null differ
diff --git a/html/html/images/flags/vi.png b/html/html/images/flags/vi.png
deleted file mode 100644 (file)
index a9a9c6b..0000000
Binary files a/html/html/images/flags/vi.png and /dev/null differ
diff --git a/html/html/images/flags/vn.png b/html/html/images/flags/vn.png
deleted file mode 100644 (file)
index 20ef1c2..0000000
Binary files a/html/html/images/flags/vn.png and /dev/null differ
diff --git a/html/html/images/flags/vu.png b/html/html/images/flags/vu.png
deleted file mode 100644 (file)
index 0ce47d0..0000000
Binary files a/html/html/images/flags/vu.png and /dev/null differ
diff --git a/html/html/images/flags/wf.png b/html/html/images/flags/wf.png
deleted file mode 100644 (file)
index 98cf4f5..0000000
Binary files a/html/html/images/flags/wf.png and /dev/null differ
diff --git a/html/html/images/flags/ws.png b/html/html/images/flags/ws.png
deleted file mode 100644 (file)
index 9d8cc2c..0000000
Binary files a/html/html/images/flags/ws.png and /dev/null differ
diff --git a/html/html/images/flags/ye.png b/html/html/images/flags/ye.png
deleted file mode 100644 (file)
index 09199ca..0000000
Binary files a/html/html/images/flags/ye.png and /dev/null differ
diff --git a/html/html/images/flags/yt.png b/html/html/images/flags/yt.png
deleted file mode 100644 (file)
index 2fdd8d4..0000000
Binary files a/html/html/images/flags/yt.png and /dev/null differ
diff --git a/html/html/images/flags/yu.png b/html/html/images/flags/yu.png
deleted file mode 100644 (file)
index 0560483..0000000
Binary files a/html/html/images/flags/yu.png and /dev/null differ
diff --git a/html/html/images/flags/za.png b/html/html/images/flags/za.png
deleted file mode 100644 (file)
index 77f4aa5..0000000
Binary files a/html/html/images/flags/za.png and /dev/null differ
diff --git a/html/html/images/flags/zm.png b/html/html/images/flags/zm.png
deleted file mode 100644 (file)
index b053a8d..0000000
Binary files a/html/html/images/flags/zm.png and /dev/null differ
diff --git a/html/html/images/flags/zw.png b/html/html/images/flags/zw.png
deleted file mode 100644 (file)
index 98095df..0000000
Binary files a/html/html/images/flags/zw.png and /dev/null differ
index 2c112d0ad2623dc0245190206487e52be2e79d31..7575246c50f057e9b521ebdbdc546dd34d6fa65b 100755 (executable)
@@ -20,7 +20,7 @@
 
 include Config
 
-VER        = 11.16.0
+VER        = 11.17.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    = 15
+PAK_VER    = 16
 
 DEPS       = "libsrtp"
 
@@ -46,7 +46,7 @@ asterisk-extra-sounds-en-gsm-1.4.15.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds
 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 = de06d4ac0d1ba531c4c18805a9d5a18d
+$(DL_FILE)_MD5 = 2c6cd0f499152d0d5ff32f36e274fc2e
 asterisk-extra-sounds-en-gsm-1.4.15.tar.gz_MD5 = 5099fc65f49008e33ba7fb043a4ec995
 asterisk-moh-opsound-gsm-2.03.tar.gz_MD5 = 09066f55f1358f298bc1a6e4678a3ddf
 asterisk-1.4-de-prompts.tar.gz_MD5 = 626a2b95071a5505851e43874dfbfd5c
index 2e07ed03449dbe4a5d6df207f1cc6ffd6ec9c85e..5fd8426e3b10e59ca93c63e19e01da0ecb838226 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 0.98.6
+VER        = 0.98.7
 
 THISAPP    = clamav-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = clamav
-PAK_VER    = 28
+PAK_VER    = 29
 
 DEPS       = ""
 
@@ -48,7 +48,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 7f4f7e82a09e42c4ebf153d6d452d9d8
+$(DL_FILE)_MD5 = 157c601161da1c2d5a0e48ea1b49e067
 
 install : $(TARGET)
 
index e736e101ce3ce4f4d7a1e1a83a63c130db399528..463ae28a9d2e86ac985112059cc88d4934966ce4 100644 (file)
--- a/lfs/ddns
+++ b/lfs/ddns
@@ -71,6 +71,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
 
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/ddns/001-ddns-007-perform-lazy-database-init.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/ddns/002-ddns-007-also-open-database-for-search-operations.patch
+
        cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
index 665f424bbcc21c1c4244714a093b0fb2e33a825f..b98e6621734c2c4fd943aa4ae96ead3ae0284cae 100644 (file)
@@ -151,6 +151,15 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0076-Fix-srk-induced-crash-in-new-tftp_no_fail-code.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0077-Note-CVE-2015-3294.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0078-Log-domain-when-reporting-DNSSEC-validation-failure.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0079-Check-IP-address-command-line-arg-in-dhcp_release.c.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0080-Revert-61b838dd574c51d96fef100285a0d225824534f9-and-.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0081-Handle-domain-names-with-.-or-000-within-labels.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0082-Tweaks-to-previous-DNS-label-charset-commit.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0083-Logs-in-DHCPv6-not-suppressed-by-dhcp6-quiet.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0084-Make-get-version-work-when-repo-is-a-git-submodule.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0085-Fix-argument-order-botch-which-broke-DNSSEC-for-TCP-.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0086-Don-t-remove-RRSIG-RR-from-answers-to-ANY-queries-wh.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0087-Constify-some-DHCP-lease-management-functions.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' \
index e63bdc812cff1b4e5f509ef5c60756591a40c500..9d657653ec1ac27f5d1853682f84729b0ceafc0c 100644 (file)
@@ -71,6 +71,7 @@ $(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/fireinfo-Add-an-other-forbidden-string-Serial.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch
 
        cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
        cd $(DIR_APP) && ./configure --prefix=/usr
similarity index 72%
rename from lfs/openssl-compat
rename to lfs/flag-icons
index 5e3c1ff706b4cef2dd24d8dda22568c9413f5983..8f3364cdc9678838758ad424cfbe18e61c893477 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2015  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2015  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        #
 
 include Config
 
-VER        = 0.9.8zf
+VER        = 2.6
 
-THISAPP    = openssl-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
+THISAPP    = flag-icons-$(VER)
+DL_FILE    = $(THISAPP).zip
 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 = c69a4a679233f7df189e1ad6659511ec
+$(DL_FILE)_MD5 = 992db1bc950dfdd436699b7d2ad33c2d
 
 install : $(TARGET)
 
@@ -69,34 +69,22 @@ $(subst %,%_MD5,$(objects)) :
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       # Create DIR_APP and move the source tarball to its location.
+       @rm -rf $(DIR_APP) && mkdir -pv $(DIR_APP) && cd $(DIR_SRC) && cp -avf $(DIR_DL)/$(DL_FILE) $(DIR_APP)
 
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-disable-sslv2-sslv3.patch
+       # Extract the source tarball.
+       cd $(DIR_APP) && unzip $(DL_FILE)
 
-       # Apply our CFLAGS
-       cd $(DIR_APP) && sed -i Configure \
-               -e "s/-O3 -fomit-frame-pointer/$(CFLAGS)/g"
+       # Create flage image folder.
+       cd $(DIR_APP) && mkdir -pv /srv/web/ipfire/html/images/flags/
 
-       cd $(DIR_APP) && sed -i -e 's/mcpu/march/' config
-       cd $(DIR_APP) && sed -i -e 's/-O3/-O2/' -e 's/-march=i486/-march=i586/' Configure
+       # Only copy the country flags.
+       cd $(DIR_APP) && cp -avf flags-iso/shiny/16/??.png \
+               /srv/web/ipfire/html/images/flags/
 
-       # Support for engines is disabled, because the shared objects from the
-       # new version of openssl cannot be loaded by the old one.
-
-       cd $(DIR_APP) && ./Configure \
-               --prefix=/usr \
-               --openssldir=/etc/ssl \
-               shared linux-elf \
-               zlib-dynamic \
-               no-engines \
-               no-asm 386 \
-               -DSSL_FORBID_ENULL
-
-       cd $(DIR_APP) && make depend
-       cd $(DIR_APP) && make
-
-       cd $(DIR_APP) && install -v -m 755 libcrypto.so.0.9.8 /usr/lib
-       cd $(DIR_APP) && install -v -m 755 libssl.so.0.9.8 /usr/lib
+       # Copy flag icon for unknown countries.
+       cd $(DIR_APP) && cp -avf flags-iso/shiny/16/_unknown.png \
+               /srv/web/ipfire/html/images/flags/unknown.png
 
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 11d374e3b886a13fabdfbfca70309112c22ef3e7..4ec71a788e6bf683d0204112c622621c34e1eeaf 100644 (file)
--- a/lfs/glibc
+++ b/lfs/glibc
@@ -283,6 +283,8 @@ endif
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1154563.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1170121.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1183533.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1207995.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1209375.patch
 
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-resolv-stack_chk_fail.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-remove-ctors-dtors-output-sections.patch
index 6dfef3b1977c3ac8d45d75ad5447837ea1be9af3..47c0cad57c04248cc863b2a8de3d90dfdf65edc7 100644 (file)
 
 include Config
 
-VER        = 1.5.0
+VER        = 1.5.2
 THISAPP    = libsrtp-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = libsrtp
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = ec49ba558b4fd056114df2c76935aa8e
+$(DL_FILE)_MD5 = 2309aa6027992810a4285b042c71e644
 
 install : $(TARGET)
 
@@ -78,7 +78,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
 
        cd $(DIR_APP) && ./configure --prefix=/usr 
-       cd $(DIR_APP) && make uninstall && make $(MAKETUNING) libsrtp.so
+       cd $(DIR_APP) && make uninstall && make $(MAKETUNING) shared_library
        cd $(DIR_APP) && make install
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 8b4f941128768c3fc1ebead6c2ec8caea42c2f33..a68dda73e4bee3441725f8eb397ac41eca700a9d 100644 (file)
--- a/lfs/linux
+++ b/lfs/linux
 
 include Config
 
-VER        = 3.14.39
+VER        = 3.14.40
 
-RPI_PATCHES = 3.14.39-grsec-ipfire1
-A7M_PATCHES = 3.14.39-grsec-ipfire1
-GRS_PATCHES = grsecurity-3.1-3.14.39-201504190814.patch.xz
+RPI_PATCHES = 3.14.40-grsec-ipfire1
+A7M_PATCHES = 3.14.40-grsec-ipfire1
+GRS_PATCHES = grsecurity-3.1-3.14.40-201504290821.patch.xz
 
 THISAPP    = linux-$(VER)
 DL_FILE    = linux-$(VER).tar.xz
@@ -77,10 +77,10 @@ rpi-patches-$(RPI_PATCHES).patch.xz         = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).
 arm7-multi-patches-$(A7M_PATCHES).patch.xz     = $(URL_IPFIRE)/arm7-multi-patches-$(A7M_PATCHES).patch.xz
 $(GRS_PATCHES)                                 = $(URL_IPFIRE)/$(GRS_PATCHES)
 
-$(DL_FILE)_MD5                                 = 3581855d0dbfcbe1140dfcd1406d0a91
-rpi-patches-$(RPI_PATCHES).patch.xz_MD5                = 5056304af0a199194abd0bcb00015f28
+$(DL_FILE)_MD5                                 = 8a66901cdcce5b2650672af41ad4a9fd
+rpi-patches-$(RPI_PATCHES).patch.xz_MD5                = 375dc501711ff3ffeffdfc9848675d26
 arm7-multi-patches-$(A7M_PATCHES).patch.xz_MD5 = a4a4103255e93bfcb02652212b0ae3fc
-$(GRS_PATCHES)_MD5                             = 2121d0bf825da9ff6321e2940f247c5e
+$(GRS_PATCHES)_MD5                             = 52d5d8dae26f4c1fd1c8d67268260bdd
 
 install : $(TARGET)
 
index 6f31e02b1f124fa6f678faec0a0907b093087c5e..455dcf15cbdeef2044a879e477f3e6baa44fb0a9 100644 (file)
@@ -30,19 +30,50 @@ THISAPP    = openssl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
-TARGET     = $(DIR_INFO)/$(THISAPP)
+
+TARGET = $(DIR_INFO)/$(THISAPP)$(KCFG)
+
+ifneq "$(KCFG)" "-sse2"
+CFLAGS += -DPURIFY
+else
+CFLAGS =-O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC
+CFLAGS+= -fstack-protector-all --param=ssp-buffer-size=4
+CFLAGS+= -march=i686 -mmmx -msse -msse2 -mfpmath=sse
+CFLAGS+= -fomit-frame-pointer -DPURIFY
+CXXFLAGS="${CFLAGS}"
+endif
+
+export RPM_OPT_FLAGS = $(CFLAGS)
+
+CONFIGURE_OPTIONS = \
+       --prefix=/usr \
+       --openssldir=/etc/ssl \
+       --enginesdir=/usr/lib/openssl/engines \
+       shared \
+       zlib-dynamic \
+       enable-camellia \
+       enable-md2 \
+       enable-seed \
+       enable-tlsext \
+       enable-rfc3779 \
+       no-idea \
+       no-mdc2 \
+       no-rc5 \
+       no-srp \
+       -DSSL_FORBID_ENULL
 
 ifeq "$(MACHINE)" "i586"
-       CONFIGURE_ARGS = linux-generic32 no-asm 386
+       CONFIGURE_OPTIONS += linux-elf
+
+ifneq "$(KCFG)" "-sse2"
+       CONFIGURE_OPTIONS += no-sse2
+endif
 endif
 
 ifeq "$(MACHINE)" "armv5tel"
-       CONFIGURE_ARGS = linux-generic32
+       CONFIGURE_OPTIONS += linux-generic32
 endif
 
-CFLAGS += -DPURIFY
-export RPM_OPT_FLAGS = $(CFLAGS)
-
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -86,6 +117,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.1m-weak-ciphers.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-disable-sslv2-sslv3.patch
 
+       # i586 specific patches
+ifeq "$(MACHINE)" "i586"
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.2a_auto_enable_padlock.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch
+endif
+
        # Apply our CFLAGS
        cd $(DIR_APP) && sed -i Configure \
                -e "s/-O3 -fomit-frame-pointer/$(CFLAGS)/g"
@@ -93,27 +130,16 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && find crypto/ -name Makefile -exec \
                sed 's/^ASFLAGS=/&-Wa,--noexecstack /' -i {} \;
 
-       cd $(DIR_APP) && ./Configure \
-               --prefix=/usr \
-               --openssldir=/etc/ssl \
-               --enginesdir=/usr/lib/openssl/engines \
-               shared \
-               zlib-dynamic \
-               enable-camellia \
-               enable-md2 \
-               enable-seed \
-               enable-tlsext \
-               enable-rfc3779 \
-               no-idea \
-               no-mdc2 \
-               no-rc5 \
-               no-srp \
-               $(CONFIGURE_ARGS) \
-               -DSSL_FORBID_ENULL
+       cd $(DIR_APP) && ./Configure $(CONFIGURE_OPTIONS)
 
        cd $(DIR_APP) && make depend
        cd $(DIR_APP) && make
 
+ifeq "$(KCFG)" "-sse2"
+       -mkdir -pv /usr/lib/sse2
+       cd $(DIR_APP) && install -m 755 \
+               libcrypto.so.10 /usr/lib/sse2
+else
        # Install everything.
        cd $(DIR_APP) && make install
        install -m 0644 $(DIR_SRC)/config/ssl/openssl.cnf /etc/ssl
@@ -125,6 +151,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        -mkdir -pv /usr/lib/openssl
        rm -vfr /usr/lib/openssl/engines
        mv -v /usr/lib/engines /usr/lib/openssl
+endif
 
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 67e4a7db15536331f162baf394117c49dddbd6bf..d4fc4c5a13682a0d04cb49230694f312d171512a 100644 (file)
--- a/lfs/squid
+++ b/lfs/squid
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 3.4.9
+VER        = 3.4.13
 
 THISAPP    = squid-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 497e5be7b3430d12667628296760beca
+$(DL_FILE)_MD5 = a5f6c978b2d7a99b161c8275e1acb470
 
 install : $(TARGET)
 
@@ -78,12 +78,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
                --libexecdir=/usr/lib/squid \
                --localstatedir=/var \
                --disable-ipv6 \
+               --disable-ssl \
                --enable-poll \
                --disable-icmp \
                --disable-wccp \
                --enable-ident-lookups \
                --enable-storeio="aufs,diskd,ufs" \
-               --enable-ssl \
                --enable-underscores \
                --enable-http-violations \
                --enable-removal-policies="heap,lru" \
index 7eae4fbb624e7e865a0aebc5a0f2d732fc86e002..af7b281e4f477943b3cddfe1301464c9486de09e 100644 (file)
@@ -9,13 +9,13 @@
 
 include Config
 
-VER        = 1.0.2
+VER        = 1.0.3
 
 THISAPP    = squid-accounting-$(VER)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = squid-accounting
-PAK_VER    = 4
+PAK_VER    = 5
 
 DEPS       = "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards perl-PDF-API2 sendEmail"
 
index 1de4320051dfbfa367027bb4748368ce42eda007..f227bba66555cd0c4a2b4083673c93293f6ea7c3 100644 (file)
@@ -78,6 +78,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) && patch -Np1 -i $(DIR_SRC)/src/patches/strongswan-5.3.0-stroke-Increase-stroke-buffer-size-to-8k.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/strongswan-ipfire.patch
 
        cd $(DIR_APP) && [ -x "configure" ] || ./autogen.sh
diff --git a/lfs/tor b/lfs/tor
index 209895297e63c08d8b1baaff825c8aae157c4fbe..8eca48df58064e85430e5f908113f8a10a08c2ae 100644 (file)
--- a/lfs/tor
+++ b/lfs/tor
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = tor
-PAK_VER    = 10
+PAK_VER    = 11
 
 DEPS       = "libevent2"
 
index 11dc03f3d05350ba6632ae3f2a6b91d7f46f388b..dfb54e6639bacf62319473599ffbf83127d67989 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2015a
+VER        = 2015d
 TZDATA_VER = $(VER)
 TZCODE_VER = $(VER)
 
@@ -45,8 +45,8 @@ objects = tzdata$(TZDATA_VER).tar.gz tzcode$(TZCODE_VER).tar.gz
 tzdata$(TZDATA_VER).tar.gz = $(DL_FROM)/tzdata$(TZDATA_VER).tar.gz
 tzcode$(TZCODE_VER).tar.gz = $(DL_FROM)/tzcode$(TZCODE_VER).tar.gz
 
-tzdata$(TZDATA_VER).tar.gz_MD5 = 4ed11c894a74a5ea64201b1c6dbb8831
-tzcode$(TZCODE_VER).tar.gz_MD5 = 8f375ede46ae137fbac047ac431bda37
+tzdata$(TZDATA_VER).tar.gz_MD5 = b595bdc4474b8fc1a15cffc67c66025b
+tzcode$(TZCODE_VER).tar.gz_MD5 = 4008a3abc025a398697b2587c48258b9
 
 install : $(TARGET)
 
diff --git a/lfs/xz b/lfs/xz
index fce71598b38b35de0ff747b245bcc4d2c6bfeb94..c1d3ef789082f374950b9dbf84e777cc07f29ec8 100644 (file)
--- a/lfs/xz
+++ b/lfs/xz
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 5.0.5
+VER        = 5.2.1
 
 THISAPP    = xz-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -47,7 +47,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = aa17280f4521dbeebed0fbd11cd7fa30
+$(DL_FILE)_MD5 = b5e2dd95dc8498cea5354377ed89aa65
 
 install : $(TARGET)
 
diff --git a/make.sh b/make.sh
index 6662096a94e2a0f58ef781dbae2917b39756a0a9..95aae640f0bd4d46f618adc4da97b8d2cd86fc2e 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -36,7 +36,7 @@ BUILD_IMAGES=1                                                        # Flash and Xen Downloader
 KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'`
 GIT_TAG=$(git tag | tail -1)                                   # Git Tag
 GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit
-TOOLCHAINVER=8
+TOOLCHAINVER=9
 
 # New architecture variables
 BUILD_ARCH="$(uname -m)"
@@ -461,7 +461,7 @@ buildipfire() {
   esac
   ipfiremake xtables-addons                    USPACE="1"
   ipfiremake openssl
-  ipfiremake openssl-compat
+  [ "${TARGET_ARCH}" = "i586" ] && ipfiremake openssl KCFG='-sse2'
   ipfiremake libgpg-error
   ipfiremake libgcrypt
   ipfiremake libassuan
@@ -508,6 +508,7 @@ buildipfire() {
   ipfiremake apache2
   ipfiremake php
   ipfiremake apache2                   PASS=C
+  ipfiremake flag-icons
   ipfiremake jquery
   ipfiremake arping
   ipfiremake beep
@@ -978,7 +979,7 @@ build)
 
        cd $BASEDIR
        tools/checknewlog.pl
-       tools/checkwronginitlinks
+       tools/checkrootfiles
        cd $PWD
 
        beautify build_end
index 43e6a9081e436d3ad18dc8d0dbd8c77447bedefc..e4bf04972803480be0208b8e5a3032a0170bb07c 100644 (file)
@@ -31,7 +31,7 @@ SUID_PROGS = squidctrl sshctrl ipfirereboot \
        redctrl syslogdctrl extrahdctrl sambactrl upnpctrl tripwirectrl \
        smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
        setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes \
-       getconntracktable wirelessclient dnsmasqctrl torctrl
+       getconntracktable wirelessclient dnsmasqctrl torctrl ddnsctrl
 SUID_UPDX = updxsetperms
 
 OBJS = $(patsubst %,%.o,$(PROGS) $(SUID_PROGS))
diff --git a/src/misc-progs/ddnsctrl.c b/src/misc-progs/ddnsctrl.c
new file mode 100644 (file)
index 0000000..7c41033
--- /dev/null
@@ -0,0 +1,37 @@
+/* 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 "setuid.h"
+
+const char *conffile = "/var/ipfire/ddns/ddns.conf";
+
+int main(int argc, char *argv[]) {
+       char cmd[STRING_SIZE];
+
+        if (!(initsetuid()))
+                exit(1);
+
+        if (argc < 2) {
+                fprintf(stderr, "\nNo argument given.\n\nddnsctrl (update-all)\n\n");
+                exit(1);
+        }
+
+       if (strcmp(argv[1], "update-all") == 0) {
+               snprintf(cmd, sizeof(cmd), "/usr/bin/ddns --config %s update-all >/dev/null 2>&1", conffile);
+               safe_system(cmd);
+       } else {
+                fprintf(stderr, "\nBad argument given.\n\nddnsctrl (update-all)\n\n");
+                exit(1);
+        }
+
+        return 0;
+}
diff --git a/src/patches/ddns/001-ddns-007-perform-lazy-database-init.patch b/src/patches/ddns/001-ddns-007-perform-lazy-database-init.patch
new file mode 100644 (file)
index 0000000..c9b893e
--- /dev/null
@@ -0,0 +1,89 @@
+commit 63e16feedea3639ef1f21fecbff9ed2ae256728b
+Author: Michael Tremer <michael.tremer@ipfire.org>
+Date:   Sat Apr 25 13:18:07 2015 +0200
+
+    Perform lazy initialization of the database
+    
+    The database will only be initialized when it is actually
+    needed. That makes starting up ddns a bit faster and allows
+    us to execute it as non-root for simple commands like
+    "list-providers".
+    
+    If the database path is not writable at all, the database
+    feature is disable and an error message is logged. This
+    will hopefully help us to perform the DNS update even when
+    there is a local misconfiguration.
+
+diff --git a/src/ddns/database.py b/src/ddns/database.py
+index 5d4ffc9..42c3433 100644
+--- a/src/ddns/database.py
++++ b/src/ddns/database.py
+@@ -20,7 +20,7 @@
+ ###############################################################################
+ import datetime
+-import os.path
++import os
+ import sqlite3
+ # Initialize the logger.
+@@ -31,9 +31,11 @@ logger.propagate = 1
+ class DDNSDatabase(object):
+       def __init__(self, core, path):
+               self.core = core
++              self.path = path
+-              # Open the database file
+-              self._db = self._open_database(path)
++              # We won't open the connection to the database directly
++              # so that we do not do it unnecessarily.
++              self._db = None
+       def __del__(self):
+               self._close_database()
+@@ -46,7 +48,7 @@ class DDNSDatabase(object):
+               conn = sqlite3.connect(path, detect_types=sqlite3.PARSE_DECLTYPES|sqlite3.PARSE_COLNAMES)
+               conn.isolation_level = None
+-              if not exists:
++              if not exists and self.is_writable():
+                       logger.debug("Initialising database layout")
+                       c = conn.cursor()
+                       c.executescript("""
+@@ -68,12 +70,25 @@ class DDNSDatabase(object):
+               return conn
++      def is_writable(self):
++              # Check if the database file exists and is writable.
++              ret = os.access(self.path, os.W_OK)
++              if ret:
++                      return True
++
++              # If not, we check if we are able to write to the directory.
++              # In that case the database file will be created in _open_database().
++              return os.access(os.path.dirname(self.path), os.W_OK)
++
+       def _close_database(self):
+               if self._db:
+                       self._db_close()
+                       self._db = None
+       def _execute(self, query, *parameters):
++              if self._db is None:
++                      self._db = self._open_database(self.path)
++
+               c = self._db.cursor()
+               try:
+                       c.execute(query, parameters)
+@@ -81,6 +96,10 @@ class DDNSDatabase(object):
+                       c.close()
+       def add_update(self, hostname, status, message=None):
++              if not self.is_writable():
++                      logger.warning("Could not log any updates because the database is not writable")
++                      return
++
+               self._execute("INSERT INTO updates(hostname, status, message, timestamp) \
+                       VALUES(?, ?, ?, ?)", hostname, status, message, datetime.datetime.utcnow())
diff --git a/src/patches/ddns/002-ddns-007-also-open-database-for-search-operations.patch b/src/patches/ddns/002-ddns-007-also-open-database-for-search-operations.patch
new file mode 100644 (file)
index 0000000..19534f3
--- /dev/null
@@ -0,0 +1,40 @@
+commit f62fa5baffe2d225604460ecd03b8159b987df8f
+Author: Michael Tremer <michael.tremer@ipfire.org>
+Date:   Sun Apr 26 20:15:33 2015 +0200
+
+    database: Open database for the search operations, too
+
+diff --git a/src/ddns/database.py b/src/ddns/database.py
+index 42c3433..70a7363 100644
+--- a/src/ddns/database.py
++++ b/src/ddns/database.py
+@@ -122,6 +122,9 @@ class DDNSDatabase(object):
+               """
+                       Returns the timestamp of the last update (with the given status code).
+               """
++              if self._db is None:
++                      self._db = self._open_database(self.path)
++
+               c = self._db.cursor()
+               try:
+@@ -141,6 +144,9 @@ class DDNSDatabase(object):
+               """
+                       Returns the update status of the last update.
+               """
++              if self._db is None:
++                      self._db = self._open_database(self.path)
++
+               c = self._db.cursor()
+               try:
+@@ -156,6 +162,9 @@ class DDNSDatabase(object):
+               """
+                       Returns the reason string for the last failed update (if any).
+               """
++              if self._db is None:
++                      self._db = self._open_database(self.path)
++
+               c = self._db.cursor()
+               try:
diff --git a/src/patches/ddns/ddns-005-Add-changeip-com.patch b/src/patches/ddns/ddns-005-Add-changeip-com.patch
deleted file mode 100644 (file)
index 15bcd46..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-commit 78046ffe2187d91c61d6c2f910249b8a5be71b08
-Author: Stefan Schantl <stefan.schantl@ipfire.org>
-Date:   Wed Oct 22 21:39:09 2014 +0200
-
-    Add changeip.com as new provider.
-    
-    Fixes #10639.
-
-diff --git a/README b/README
-index 5944102..6a06f4b 100644
---- a/README
-+++ b/README
-@@ -49,6 +49,7 @@ INSTALLATION:
- SUPPORTED PROVIDERS:
-       all-inkl.com
-+      changeip.com
-       dhs.org
-       dns.lightningwirelabs.com
-       dnspark.com
-diff --git a/ddns.conf.sample b/ddns.conf.sample
-index d3ac53f..0048a46 100644
---- a/ddns.conf.sample
-+++ b/ddns.conf.sample
-@@ -30,6 +30,11 @@
- # secret = XYZ
- # ttl = 60
-+# [test.changeip.com]
-+# provider = changeip.com
-+# username = user
-+# password = pass
-+
- # [test.dhs.org]
- # provider = dhs.org
- # username = user
-diff --git a/src/ddns/providers.py b/src/ddns/providers.py
-index 1e88995..587d5ff 100644
---- a/src/ddns/providers.py
-+++ b/src/ddns/providers.py
-@@ -539,6 +539,44 @@ class DDNSProviderBindNsupdate(DDNSProvider):
-               return "\n".join(scriptlet)
-+class DDNSProviderChangeIP(DDNSProvider):
-+      handle    = "changeip.com"
-+      name      = "ChangeIP.com"
-+      website   = "https://changeip.com"
-+      protocols = ("ipv4",)
-+
-+      # Detailed information about the update api can be found here.
-+      # http://www.changeip.com/accounts/knowledgebase.php?action=displayarticle&id=34
-+
-+      url = "https://nic.changeip.com/nic/update"
-+      can_remove_records = False
-+
-+      def update_protocol(self, proto):
-+              data = {
-+                      "hostname" : self.hostname,
-+                      "myip"     : self.get_address(proto),
-+              }
-+
-+              # Send update to the server.
-+              try:
-+                      response = self.send_request(self.url, username=self.username, password=self.password,
-+                              data=data)
-+
-+              # Handle error codes.
-+              except urllib2.HTTPError, e:
-+                      if e.code == 422:
-+                              raise DDNSRequestError(_("Domain not found."))
-+
-+                      raise
-+
-+              # Handle success message.
-+              if response.code == 200:
-+                      return
-+
-+              # If we got here, some other update error happened.
-+              raise DDNSUpdateError(_("Server response: %s") % output)
-+
-+
- class DDNSProviderDHS(DDNSProvider):
-       handle    = "dhs.org"
-       name      = "DHS International"
diff --git a/src/patches/ddns/ddns-005-SPDNS-fix-auth.patch b/src/patches/ddns/ddns-005-SPDNS-fix-auth.patch
deleted file mode 100644 (file)
index 1d91baa..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-commit 25f39b4e437627bd1a49393280271d59ad28b86e
-Author: Stefan Schantl <stefan.schantl@ipfire.org>
-Date:   Mon Jan 5 21:37:55 2015 +0100
-
-    spdns.de: Fix authentication.
-    
-    There was a simple copy and paste issue which prevents a
-    correct authentication with username and password against the
-    providers API.
-
-diff --git a/src/ddns/providers.py b/src/ddns/providers.py
-index 587d5ff..bcfb088 100644
---- a/src/ddns/providers.py
-+++ b/src/ddns/providers.py
-@@ -1271,7 +1271,7 @@ class DDNSProviderSPDNS(DDNSProtocolDynDNS2, DDNSProvider):
-       @property
-       def password(self):
--              return self.get("username") or self.token
-+              return self.get("password") or self.token
- class DDNSProviderStrato(DDNSProtocolDynDNS2, DDNSProvider):
index a9d5a9295189fbeaf44ef58b302befcc432ab9f3..1d6a657831c7e34f7d1cdedea0d1bfdffcb1daee 100644 (file)
@@ -1,7 +1,7 @@
 From f2658275b25ebfe691cdcb9fede85a3088cca168 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 25 Sep 2014 21:51:25 +0100
-Subject: [PATCH 01/78] Add newline at the end of example config file.
+Subject: [PATCH 01/87] Add newline at the end of example config file.
 
 ---
  dnsmasq.conf.example | 2 +-
index a4041ea12f6c5cd4dd10de78a5114be7830bc303..54a36a7329c5e6f700ff8de4ea72be4c17fb1115 100644 (file)
@@ -1,7 +1,7 @@
 From 00cd9d551998307225312fd21f761cfa8868bd2c Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 2 Oct 2014 21:44:21 +0100
-Subject: [PATCH 02/78] crash at startup when an empty suffix is supplied to
+Subject: [PATCH 02/87] crash at startup when an empty suffix is supplied to
  --conf-dir
 
 ---
index ca623408f98cca23be15d0992e98aeadea8914cb..eda96854290add1c70e3d821a533966fbf5029d7 100644 (file)
@@ -1,7 +1,7 @@
 From 6ac3bc0452a74e16e3d620a0757b0f8caab182ec Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 3 Oct 2014 08:48:11 +0100
-Subject: [PATCH 03/78] Debian build fixes for kFreeBSD
+Subject: [PATCH 03/87] Debian build fixes for kFreeBSD
 
 ---
  src/tables.c | 6 +++++-
index 2504e62e941e7bcf082f72060de7a461c8cf033b..6374fefbd382c5c1b1b16e04fb8be65d9c4c00a4 100644 (file)
@@ -1,7 +1,7 @@
 From e9828b6f66b22ce8873f8d30a773137d1aef1b92 Mon Sep 17 00:00:00 2001
 From: Karl Vogel <karl.vogel@gmail.com>
 Date: Fri, 3 Oct 2014 21:45:15 +0100
-Subject: [PATCH 04/78] Set conntrack mark before connect() call.
+Subject: [PATCH 04/87] Set conntrack mark before connect() call.
 
 SO_MARK has to be done before issuing the connect() call on the
 TCP socket.
index bec87bcf139b5e35beedc1e49d94b3fb160d6886..6052d454f4ae520a13020f2be93c9aea72a09df0 100644 (file)
@@ -1,7 +1,7 @@
 From 17b475912f6a4e72797a543dad59d4d5dde6bb1b Mon Sep 17 00:00:00 2001
 From: Daniel Collins <daniel.collins@smoothwall.net>
 Date: Fri, 3 Oct 2014 21:58:43 +0100
-Subject: [PATCH 05/78] Fix typo in new Dbus code.
+Subject: [PATCH 05/87] Fix typo in new Dbus code.
 
 Simon's fault.
 ---
index 6b5345f7243d10aa5effd6e5b18f02f303771bed..d7a0207b74c6863d356d0a46f93221eab714985b 100644 (file)
@@ -1,7 +1,7 @@
 From 3d9d2dd0018603a2ae4b9cd65ac6ff959f4fd8c7 Mon Sep 17 00:00:00 2001
 From: Tomas Hozza <thozza@redhat.com>
 Date: Mon, 6 Oct 2014 10:46:48 +0100
-Subject: [PATCH 06/78] Fit example conf file typo.
+Subject: [PATCH 06/87] Fit example conf file typo.
 
 ---
  dnsmasq.conf.example | 2 +-
index ffad3b256a5c5616ec06f17352b655ffce7dac4e..81e67b1a084b8ae6658444bcea8c073d4a7b5167 100644 (file)
@@ -1,7 +1,7 @@
 From b9ff5c8f435173cfa616e3c398bdc089ef690a07 Mon Sep 17 00:00:00 2001
 From: Vladislav Grishenko <themiron@mail.ru>
 Date: Mon, 6 Oct 2014 14:34:24 +0100
-Subject: [PATCH 07/78] Improve RFC-compliance when unable to supply addresses
+Subject: [PATCH 07/87] Improve RFC-compliance when unable to supply addresses
  in DHCPv6
 
 While testing https://github.com/sbyx/odhcp6c client I have noticed it
index 671a70e2cc509ef438e5b9acc37a9906d8886dc8..a0706ba6e2bdf949d625bce031d16ea7a4160a7f 100644 (file)
@@ -1,7 +1,7 @@
 From 98906275a02ae260fe3f82133bd79054f8315f06 Mon Sep 17 00:00:00 2001
 From: Hans Dedecker <dedeckeh@gmail.com>
 Date: Tue, 9 Dec 2014 22:22:53 +0000
-Subject: [PATCH 08/78] Fix conntrack with --bind-interfaces
+Subject: [PATCH 08/87] Fix conntrack with --bind-interfaces
 
 Make sure dst_addr is assigned the correct address in receive_query when OPTNOWILD is
 enabled so the assigned mark can be correctly retrieved and set in forward_query when
index e9c51f81c79bc12552567c263938b3859df4e390..28dae8c2db27dede2e5017b0b77b80013b85bde9 100644 (file)
@@ -1,7 +1,7 @@
 From 193de4abf59e49c6b70d54cfe9720fcb95ca2f71 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 10 Dec 2014 17:32:16 +0000
-Subject: [PATCH 09/78] Use inotify instead of polling on Linux.
+Subject: [PATCH 09/87] Use inotify instead of polling on Linux.
 
 This should solve problems people are seeing when a file changes
 twice within a second and thus is missed for polling.
index 2f8574e5dbe72d17d614bdce190cfd4075748301..34dbf3a144164b7c765f9240d4da8a3b7ff154ee 100644 (file)
@@ -1,7 +1,7 @@
 From 857973e6f7e0a3d03535a9df7f9373fd7a0b65cc Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 15 Dec 2014 15:58:13 +0000
-Subject: [PATCH 10/78] Teach the new inotify code about symlinks.
+Subject: [PATCH 10/87] Teach the new inotify code about symlinks.
 
 ---
  src/inotify.c | 43 +++++++++++++++++++++++++++----------------
index 66b63312d5bbefe56d508fa6777babf09bf233aa..b7c670fca1cc57a093f52b874382134343cb2cd1 100644 (file)
@@ -1,7 +1,7 @@
 From 800c5cc1e7438818fd80f08c2d472df249a6942d Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 15 Dec 2014 17:50:15 +0000
-Subject: [PATCH 11/78] Remove floor on EDNS0 packet size with DNSSEC.
+Subject: [PATCH 11/87] Remove floor on EDNS0 packet size with DNSSEC.
 
 ---
  CHANGELOG     | 6 +++++-
index 3df5076c1260e5712e938a43daaff10a94161aae..8dbf7bdc9012b4198c52004df55eb72bb5899f00 100644 (file)
@@ -1,7 +1,7 @@
 From ad946d555dce44eb690c7699933b6ff40ab85bb6 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 15 Dec 2014 17:52:22 +0000
-Subject: [PATCH 12/78] CHANGELOG re. inotify.
+Subject: [PATCH 12/87] CHANGELOG re. inotify.
 
 ---
  CHANGELOG | 4 ++++
index c80a3a2d77b7de2aeef1009463c14eef4fa9d47f..c102b72f7317b8df994df016261b86e6d3ed9990 100644 (file)
@@ -1,7 +1,7 @@
 From 3ad3f3bbd4ee716a7d2fb1e115cf89bd1b1a5de9 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 16 Dec 2014 18:25:17 +0000
-Subject: [PATCH 13/78] Fix breakage of --domain=<domain>,<subnet>,local
+Subject: [PATCH 13/87] Fix breakage of --domain=<domain>,<subnet>,local
 
 ---
  CHANGELOG    |  4 ++++
index e3221682bbcbf881a777541561d318f95c553e15..8d818256965585074ae9c7bc600d39285490b180 100644 (file)
@@ -1,7 +1,7 @@
 From bd9520b7ade7098ee423acc38965376aa57feb07 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 16 Dec 2014 20:41:29 +0000
-Subject: [PATCH 14/78] Remove redundant IN6_IS_ADDR_ULA(a) macro defn.
+Subject: [PATCH 14/87] Remove redundant IN6_IS_ADDR_ULA(a) macro defn.
 
 ---
  src/network.c | 4 ----
index afa5f0fe939e315313de11546292c31c3cbe246e..9544a167d144165254356e8bf8aac0d7dd8c64f0 100644 (file)
@@ -1,7 +1,7 @@
 From 476693678e778886b64d0b56e27eb7695cbcca99 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 17 Dec 2014 12:41:56 +0000
-Subject: [PATCH 15/78] Eliminate IPv6 privacy addresses from --interface-name
+Subject: [PATCH 15/87] Eliminate IPv6 privacy addresses from --interface-name
  answers.
 
 ---
index e669a50df35a9c29873c8706cf3b86718f2a7dca..9fb6efb83c6ff87b03fdf2a2643dda367a962256 100644 (file)
@@ -1,7 +1,7 @@
 From 3267804598047bd1781cab91508d1bc516e5ddbb Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 17 Dec 2014 20:38:20 +0000
-Subject: [PATCH 16/78] Tweak field width in cache dump to avoid truncating
+Subject: [PATCH 16/87] Tweak field width in cache dump to avoid truncating
  IPv6 addresses.
 
 ---
index 2fe233dd77340dff9b2774f6ecbed2d07b17614f..45370a6fe9787f0481d8c57a14e8bf51fbf30fb3 100644 (file)
@@ -1,7 +1,7 @@
 From 094b5c3d904bae9aeb3206d9f3b8348926b84975 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 21 Dec 2014 16:11:52 +0000
-Subject: [PATCH 17/78] Fix crash in DNSSEC code when attempting to verify
+Subject: [PATCH 17/87] Fix crash in DNSSEC code when attempting to verify
  large RRs.
 
 ---
index 2ec47e67ad75c8aeeeaef2b008456cd87e9a4d71..11e517853563fb027ab711d3ec4f07fd0d056378 100644 (file)
@@ -1,7 +1,7 @@
 From cbc652423403e3cef00e00240f6beef713142246 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 21 Dec 2014 21:21:53 +0000
-Subject: [PATCH 18/78] Make caching work for CNAMEs pointing to A/AAAA records
+Subject: [PATCH 18/87] Make caching work for CNAMEs pointing to A/AAAA records
  shadowed in /etc/hosts
 
 If the answer to an upstream query is a CNAME which points to an
index 7e6f821cf608168e4456bcad827bf6a735fd913e..4fe15f0939205981d37efcf12949541e4795b7f9 100644 (file)
@@ -1,7 +1,7 @@
 From fbc5205702c7f6f431d9f1043c553d7fb62ddfdb Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 23 Dec 2014 15:46:08 +0000
-Subject: [PATCH 19/78] Fix problems validating NSEC3 and wildcards.
+Subject: [PATCH 19/87] Fix problems validating NSEC3 and wildcards.
 
 ---
  src/dnssec.c | 253 ++++++++++++++++++++++++++++++-----------------------------
index 362c59637e1ab907a6a720f7ba7fcc0fbef27e13..cfa39ce27d74e20e5d261f48a128420a384623f3 100644 (file)
@@ -1,7 +1,7 @@
 From 83d2ed09fc0216b567d7fb2197e4ff3eae150b0d Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 23 Dec 2014 18:42:38 +0000
-Subject: [PATCH 20/78] Initialise return value.
+Subject: [PATCH 20/87] Initialise return value.
 
 ---
  src/dnssec.c | 7 +++++--
index b8ef47d6056d746e227646895c68b3e79b925606..d3fda4b7ed883279e137eef2923b76e446c5d666 100644 (file)
@@ -1,7 +1,7 @@
 From 32fc6dbe03569d70dd394420ceb73532cf303c33 Mon Sep 17 00:00:00 2001
 From: Glen Huang <curvedmark@gmail.com>
 Date: Sat, 27 Dec 2014 15:28:12 +0000
-Subject: [PATCH 21/78] Add --ignore-address option.
+Subject: [PATCH 21/87] Add --ignore-address option.
 
 ---
  CHANGELOG     |  8 ++++++++
index 749195fe720f675a6a2088ada3f21059f46d9ad6..58ac5eb06c90ee25f70f3fdea2c6cc9bc35274aa 100644 (file)
@@ -1,7 +1,7 @@
 From 0b1008d367d44e77352134a4c5178f896f0db3e7 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 27 Dec 2014 15:33:32 +0000
-Subject: [PATCH 22/78] Bad packet protection.
+Subject: [PATCH 22/87] Bad packet protection.
 
 ---
  src/dnssec.c | 2 +-
index 28fe61af947d4556dd3b9535b80a786249ad503b..ebfa6b15b5a2a1e777200860daa24997e3ca7c63 100644 (file)
@@ -1,7 +1,7 @@
 From d310ab7ecbffce79d3d90debba621e0222f9bced Mon Sep 17 00:00:00 2001
 From: Matthias Andree <matthias.andree@gmx.de>
 Date: Sat, 27 Dec 2014 15:36:38 +0000
-Subject: [PATCH 23/78] Fix build failure in new inotify code on BSD.
+Subject: [PATCH 23/87] Fix build failure in new inotify code on BSD.
 
 ---
  src/inotify.c | 4 ++--
index 31535dcbd41d264aee50315daa1fba11a95627b9..64219ff260a17b32bb3dcd8efbef2eccf60ee2ef 100644 (file)
@@ -1,7 +1,7 @@
 From 81c538efcebfce2ce4a1d3a420b6c885b8f08df9 Mon Sep 17 00:00:00 2001
 From: Yousong Zhou <yszhou4tech@gmail.com>
 Date: Sat, 3 Jan 2015 16:36:14 +0000
-Subject: [PATCH 24/78] Implement makefile dependencies on COPTS variable.
+Subject: [PATCH 24/87] Implement makefile dependencies on COPTS variable.
 
 ---
  .gitignore |  2 +-
index a99656da280469f7f075a96028e618859131ce27..2297e6f2c5821e14b68f5f4adb8f29ab47b70abc 100644 (file)
@@ -1,7 +1,7 @@
 From d8dbd903d024f84a149dac2f8a674a68dfed47a3 Mon Sep 17 00:00:00 2001
 From: Yousong Zhou <yszhou4tech@gmail.com>
 Date: Mon, 5 Jan 2015 17:03:35 +0000
-Subject: [PATCH 25/78] Fix race condition issue in makefile.
+Subject: [PATCH 25/87] Fix race condition issue in makefile.
 
 ---
  Makefile | 4 +++-
index e0c8374abebb2201e35d57a010fe3781a6c2f5ff..6fb5db1246f2df0470964a8a4d68aaedc66ac8d5 100644 (file)
@@ -1,7 +1,7 @@
 From 97e618a0e3f29465acc689d87288596b006f197e Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 7 Jan 2015 21:55:43 +0000
-Subject: [PATCH 26/78] DNSSEC: do top-down search for limit of secure
+Subject: [PATCH 26/87] DNSSEC: do top-down search for limit of secure
  delegation.
 
 ---
index 8812bbabf6786dbdbc9ce5c29ed4cd560b303ce7..41e3649f5cabee5862263aa1bc8ec6a78dd77e49 100644 (file)
@@ -1,7 +1,7 @@
 From 25cf5e373eb41c088d4ee5e625209c4cf6a5659e Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 9 Jan 2015 15:53:03 +0000
-Subject: [PATCH 27/78] Add --log-queries=extra option for more complete
+Subject: [PATCH 27/87] Add --log-queries=extra option for more complete
  logging.
 
 ---
index 2f60995369df0ec0614eeac285fcc52b90021558..85de912de2ec869f081873630c35c81cabb71f35 100644 (file)
@@ -1,7 +1,7 @@
 From 28de38768e2c7d763b9aa5b7a4d251d5e56bab0b Mon Sep 17 00:00:00 2001
 From: RinSatsuki <aa65535@live.com>
 Date: Sat, 10 Jan 2015 15:22:21 +0000
-Subject: [PATCH 28/78] Add --min-cache-ttl option.
+Subject: [PATCH 28/87] Add --min-cache-ttl option.
 
 ---
  CHANGELOG     |  7 +++++++
index 3288ce818dfb8767f11b1fd5bee10cf5c42a3bc5..afbece3a6c037fbedd288e4c911c693892db11f0 100644 (file)
@@ -1,7 +1,7 @@
 From 9f79ee4ae34886c0319f06d8f162b81ef79d62fb Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 12 Jan 2015 20:18:18 +0000
-Subject: [PATCH 29/78] Log port of requestor when doing extra logging.
+Subject: [PATCH 29/87] Log port of requestor when doing extra logging.
 
 ---
  src/cache.c | 6 +++---
index 81b5eb2880331d683a10f34252d660adf93c2cc1..ac206e386fd8240de194b6f918d1c315552bcaa6 100644 (file)
@@ -1,7 +1,7 @@
 From 5e321739db381a1d7b5964d76e9c81471d2564c9 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 12 Jan 2015 23:16:56 +0000
-Subject: [PATCH 30/78] Don't answer from cache RRsets from wildcards, as we
+Subject: [PATCH 30/87] Don't answer from cache RRsets from wildcards, as we
  don't have NSECs.
 
 ---
index ead984e243653afa736c38e43447aa39a8827454..20a0e4ba005e25fa08f9f88805ebfc0f6d8ce5be 100644 (file)
@@ -1,7 +1,7 @@
 From ae4624bf46b5e37ff1a9a2ba3c927e0dede95adb Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 12 Jan 2015 23:22:08 +0000
-Subject: [PATCH 31/78] Logs for DS records consistent.
+Subject: [PATCH 31/87] Logs for DS records consistent.
 
 ---
  src/rfc1035.c | 2 +-
index f571501f0ab16bf22c27dba2699a16086319ddf8..5b5fc07ffa0ec0dde23647a764865ab4e3e87733 100644 (file)
@@ -1,7 +1,7 @@
 From 393415597c8b5b09558b789ab9ac238dbe3db65d Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 18 Jan 2015 22:11:10 +0000
-Subject: [PATCH 32/78] Cope with multiple interfaces with the same LL address.
+Subject: [PATCH 32/87] Cope with multiple interfaces with the same LL address.
 
 ---
  CHANGELOG  | 4 ++++
index f381635c6c43af6f394b386724636a83343e61c8..926885f322f0362e72c28395c6f0c3a5c39d006c 100644 (file)
@@ -1,7 +1,7 @@
 From 2ae195f5a71f7c5a75717845de1bd72fc7dd67f3 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 18 Jan 2015 22:20:48 +0000
-Subject: [PATCH 33/78] Don't treat SERVFAIL as a recoverable error.....
+Subject: [PATCH 33/87] Don't treat SERVFAIL as a recoverable error.....
 
 ---
  src/forward.c | 2 +-
index 86401c9b6a7f86847727fbb3bfac49c614699075..4ca8cc5d0399b78b14ca25ed91982ad2d98923fb 100644 (file)
@@ -1,7 +1,7 @@
 From 5f4dc5c6ca50655ab14f572c7e30815ed74cd51a Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 20 Jan 2015 20:51:02 +0000
-Subject: [PATCH 34/78] Add --dhcp-hostsdir config option.
+Subject: [PATCH 34/87] Add --dhcp-hostsdir config option.
 
 ---
  CHANGELOG     |   5 +++
index cd9ec565a44a2e5e46e2e485204151b1485d4527..23f1a5fae55eab7bed96d6615044a9078eb2c408 100644 (file)
@@ -1,7 +1,7 @@
 From fbf01f7046e75f9aa73fd4aab2a94e43386d9052 Mon Sep 17 00:00:00 2001
 From: Conrad Kostecki <ck@conrad-kostecki.de>
 Date: Tue, 20 Jan 2015 21:07:56 +0000
-Subject: [PATCH 35/78] Update German translation.
+Subject: [PATCH 35/87] Update German translation.
 
 ---
  po/de.po | 101 +++++++++++++++++++++++++++++----------------------------------
index 144a2543bee34ffabfc4a7f3155a38b32d3fecda..c89b6788dc9803fcb6d4ac458f801d946a081fbc 100644 (file)
@@ -1,7 +1,7 @@
 From 61b838dd574c51d96fef100285a0d225824534f9 Mon Sep 17 00:00:00 2001
 From: Win King Wan <pinwing+dnsmasq@gmail.com>
 Date: Wed, 21 Jan 2015 20:41:48 +0000
-Subject: [PATCH 36/78] Don't reply to DHCPv6 SOLICIT messages when not
+Subject: [PATCH 36/87] Don't reply to DHCPv6 SOLICIT messages when not
  configured for statefull DHCPv6.
 
 ---
index 99606cc1514bccc2f3322f7e9fcca003554f1042..16170959375f4ce299ad8d6f6ad04eff54817839 100644 (file)
@@ -1,7 +1,7 @@
 From 0491805d2ff6e7727f0272c94fd97d9897d1e22c Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 26 Jan 2015 11:23:43 +0000
-Subject: [PATCH 37/78] Allow inotify to be disabled at compile time on Linux.
+Subject: [PATCH 37/87] Allow inotify to be disabled at compile time on Linux.
 
 ---
  CHANGELOG     |  4 +++-
index db0d4fc85a04e1133a1150d4e79d27f2398ff178..fee3aaee6685b5dcad11996eb39679683fccb602 100644 (file)
@@ -1,7 +1,7 @@
 From 70d1873dd9e70041ed4bb88c69d5b886b7cc634c Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 31 Jan 2015 19:59:29 +0000
-Subject: [PATCH 38/78] Expand inotify code to dhcp-hostsdir, dhcp-optsdir and
+Subject: [PATCH 38/87] Expand inotify code to dhcp-hostsdir, dhcp-optsdir and
  hostsdir.
 
 ---
index 28282c272643ef602693ef0c9a0a61cfd4a83c2e..58a4ce6d4589333513e35efa4c0a5732bc6ec73e 100644 (file)
@@ -1,7 +1,7 @@
 From aff3396280e944833f0e23d834aa6acd5fe2605a Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 31 Jan 2015 20:13:40 +0000
-Subject: [PATCH 39/78] Update copyrights for dawn of 2015.
+Subject: [PATCH 39/87] Update copyrights for dawn of 2015.
 
 ---
  Makefile             | 2 +-
index 2fb831cbaf11319229b5c14fe343845af33f05fd..bd0ce4d3ac4b4f60c523ba85b758acb024526fed 100644 (file)
@@ -1,7 +1,7 @@
 From 3d04f46334d0e345f589eda1372e638b946fe637 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 31 Jan 2015 21:59:13 +0000
-Subject: [PATCH 40/78] inotify documentation updates.
+Subject: [PATCH 40/87] inotify documentation updates.
 
 ---
  man/dnsmasq.8 | 11 +++++++++--
index 68e1ca6b12d9cfba9d3e46de2d20192a3cc6f306..be9122c09060b08ac91ee3bf14d5de25cac4daff 100644 (file)
@@ -1,7 +1,7 @@
 From 6ef15b34ca83c62a939f69356d5c3f7a6bfef3d0 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 31 Jan 2015 22:44:26 +0000
-Subject: [PATCH 41/78] Fix broken ECDSA DNSSEC signatures.
+Subject: [PATCH 41/87] Fix broken ECDSA DNSSEC signatures.
 
 ---
  CHANGELOG    | 2 ++
index ced58684b6402454c7a855c5e831d7b18b530ba2..a60c1bddb587e8e6d3b25641d11293cb4864a97f 100644 (file)
@@ -1,7 +1,7 @@
 From 106266761828a0acb006346ae47bf031dee46a5d Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 1 Feb 2015 00:15:16 +0000
-Subject: [PATCH 42/78] BSD make support
+Subject: [PATCH 42/87] BSD make support
 
 ---
  Makefile | 6 ++++--
index 2aa543da1503a052349dd0a4640a7fd87985fedd..0fcc8cd3bea21b4765d726d27a0498a5aa974174 100644 (file)
@@ -1,7 +1,7 @@
 From 8d8a54ec79d9f96979fabbd97b1dd2ddebc7d78f Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 1 Feb 2015 21:48:46 +0000
-Subject: [PATCH 43/78] Fix build failure on openBSD.
+Subject: [PATCH 43/87] Fix build failure on openBSD.
 
 ---
  src/tables.c | 2 +-
index ef606e8381805fb7a0cc2014b18fbf668fb40fe5..dd45634c996e5b540f6fb09ce7788f0ab1c069af 100644 (file)
@@ -1,7 +1,7 @@
 From d36b732c4cfa91ea09af64b5dc0f3a85a075e5bc Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Thi=C3=A9baud=20Weksteen?= <thiebaud@weksteen.fr>
 Date: Mon, 2 Feb 2015 21:37:27 +0000
-Subject: [PATCH 44/78] Manpage typo fix.
+Subject: [PATCH 44/87] Manpage typo fix.
 
 ---
  man/dnsmasq.8 | 2 +-
index 1f87a9ecafc21da7e16a36920115336e5540634a..7a719f83ea140c16c4d7afedd8ecd8405cde6185 100644 (file)
@@ -1,7 +1,7 @@
 From 2941d3ac898cf84b544e47c9735c5e4111711db1 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 2 Feb 2015 22:36:42 +0000
-Subject: [PATCH 45/78] Fixup dhcp-configs after reading extra hostfiles with
+Subject: [PATCH 45/87] Fixup dhcp-configs after reading extra hostfiles with
  inotify.
 
 ---
index 754d0a8ad193453ff416319e0adae751a3e8ee28..3db945d8f329b70478a9457b5b69b9f43ee26977 100644 (file)
@@ -1,7 +1,7 @@
 From f9c863708c6b0aea31ff7a466647685dc739de50 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Tue, 3 Feb 2015 21:52:48 +0000
-Subject: [PATCH 46/78] Extra logging for inotify code.
+Subject: [PATCH 46/87] Extra logging for inotify code.
 
 ---
  src/cache.c   | 9 ++++-----
index 9fdd87eeba3aa9af078307df885d25a17718ec88..5a81152473bebd9abec42d8f756351641c6d5b0c 100644 (file)
@@ -1,7 +1,7 @@
 From efb8b5566aafc1f3ce18514a2df93af5a2e4998c Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 7 Feb 2015 22:36:34 +0000
-Subject: [PATCH 47/78] man page typo.
+Subject: [PATCH 47/87] man page typo.
 
 ---
  man/dnsmasq.8 | 1 +
index fd0da9b91080afd26886063a1896aaaaa910e2f8..e69e0a6184342731394f7e630f9a2b595f824f67 100644 (file)
@@ -1,7 +1,7 @@
 From f4f400776b3c1aa303d1a0fcd500f0ab5bc970f2 Mon Sep 17 00:00:00 2001
 From: Shantanu Gadgil <shantanugadgil@yahoo.com>
 Date: Wed, 11 Feb 2015 20:16:59 +0000
-Subject: [PATCH 48/78] Fix get-version script which returned wrong tag in some
+Subject: [PATCH 48/87] Fix get-version script which returned wrong tag in some
  situations.
 
 ---
index ab57c77e2b27328fcb5d2d8044a02cc0dddd9d22..e78f185dd10f24328c81c7c5102d1f73f2e1dfec 100644 (file)
@@ -1,7 +1,7 @@
 From 8ff70de618eb7de9147dbfbd4deca4a2dd62f0cb Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 14 Feb 2015 20:02:37 +0000
-Subject: [PATCH 49/78] Typos.
+Subject: [PATCH 49/87] Typos.
 
 ---
  src/inotify.c | 3 ++-
index df3bf18ce55f2ab7ed40803e391cb364dcf7d194..7b5a92dd360a165a1d4ac76e4a4b8a6a49c856fa 100644 (file)
@@ -1,7 +1,7 @@
 From caeea190f12efd20139f694aac4942d1ac00019f Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 14 Feb 2015 20:08:56 +0000
-Subject: [PATCH 50/78] Make dynamic hosts files work when --no-hosts set.
+Subject: [PATCH 50/87] Make dynamic hosts files work when --no-hosts set.
 
 ---
  src/cache.c | 21 +++++++++++----------
index ad7ecd7aed1ff11728454a2c9cd58dcc5009777a..cfc7b00eebb25b45a962c08c56b614dfe802874f 100644 (file)
@@ -1,7 +1,7 @@
 From 28b879ac47b872af6e8c5e86d76806c69338434d Mon Sep 17 00:00:00 2001
 From: Chen Wei <weichen302@icloud.com>
 Date: Tue, 17 Feb 2015 22:07:35 +0000
-Subject: [PATCH 51/78] Fix trivial memory leaks to quieten valgrind.
+Subject: [PATCH 51/87] Fix trivial memory leaks to quieten valgrind.
 
 ---
  src/dnsmasq.c |  2 ++
index 9556f3b8fc4d3728e875d86c88dbc1205ef23e57..0a50689ff04a4fbc40115a92feda59304050c601 100644 (file)
@@ -1,7 +1,7 @@
 From 0705a7e2d57654b27c7e14f35ca77241c1821f4d Mon Sep 17 00:00:00 2001
 From: Tomas Hozza <thozza@redhat.com>
 Date: Mon, 23 Feb 2015 21:26:26 +0000
-Subject: [PATCH 52/78] Fix uninitialized value used in get_client_mac()
+Subject: [PATCH 52/87] Fix uninitialized value used in get_client_mac()
 
 ---
  src/dhcp6.c | 4 +++-
index 03d20f6168c7d16c08b5f3dcadc8138176936c6c..854771a9bad395b265c05efd5d64ea02e77b86d7 100644 (file)
@@ -1,7 +1,7 @@
 From 47b9ac59c715827252ae6e6732903c3dabb697fb Mon Sep 17 00:00:00 2001
 From: Joachim Zobel <jz-2014@heute-morgen.de>
 Date: Mon, 23 Feb 2015 21:38:11 +0000
-Subject: [PATCH 53/78] Log parsing utils in contrib/reverse-dns
+Subject: [PATCH 53/87] Log parsing utils in contrib/reverse-dns
 
 ---
  contrib/reverse-dns/README             | 18 ++++++++++++++++++
index 2d47566a00144ac48b0080fdaac504557441da3b..cb9e86fdfaaf7ffda0b8ebb521d389b00a15b3d2 100644 (file)
@@ -1,7 +1,7 @@
 From f6e62e2af96f5fa0d1e3d93167a93a8f09bf6e61 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 1 Mar 2015 18:17:54 +0000
-Subject: [PATCH 54/78] Add --dnssec-timestamp option and facility.
+Subject: [PATCH 54/87] Add --dnssec-timestamp option and facility.
 
 ---
  CHANGELOG     |  6 +++++
index ba48df3819303979a0082d6c1d6fdea16418b3e7..40b6607b7f9acafc03427b5104f9281ef47d2c44 100644 (file)
@@ -1,7 +1,7 @@
 From 9003b50b13da624ca45f3e0cf99abb623b8d026b Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 2 Mar 2015 22:47:23 +0000
-Subject: [PATCH 55/78] Fix last commit to not crash if uid changing not
+Subject: [PATCH 55/87] Fix last commit to not crash if uid changing not
  configured.
 
 ---
index dc52d90e3d98aaeb32d3fd4b7559f3614de329bb..f6f787366d9c500bbe41c3f539226cbec18ea3f0 100644 (file)
@@ -1,7 +1,7 @@
 From 4c960fa90a975d20f75a1ecabd217247f1922c8f Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 4 Mar 2015 20:32:26 +0000
-Subject: [PATCH 56/78] New version of contrib/reverse-dns
+Subject: [PATCH 56/87] New version of contrib/reverse-dns
 
 ---
  contrib/reverse-dns/README             |  22 +++---
index d17d23fe19cf3cda84260ff74cc5e6a2b84d4b1c..924e3dcd638b0e1d069dbe5a9c69119915e23158 100644 (file)
@@ -1,7 +1,7 @@
 From 360f2513ab12a9bf1e262d388dd2ea8a566590a3 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 7 Mar 2015 18:28:06 +0000
-Subject: [PATCH 57/78] Tweak DNSSEC timestamp code to create file later,
+Subject: [PATCH 57/87] Tweak DNSSEC timestamp code to create file later,
  removing need to chown it.
 
 ---
index 4dd956828efdf8657264a11776ee315f1270a94f..ded09841f0e5230c60fc7946a5828b155ca66a03 100644 (file)
@@ -1,7 +1,7 @@
 From ff841ebf5a5d6864ff48571f607c32ce80dbb75a Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Wed, 11 Mar 2015 21:36:30 +0000
-Subject: [PATCH 58/78] Fix boilerplate code for re-running system calls on
+Subject: [PATCH 58/87] Fix boilerplate code for re-running system calls on
  EINTR and EAGAIN etc.
 
 The nasty code with static variable in retry_send() which
index a072474e8f048a7f48e906aecaa15dbf216af98c..f8091d4d7d140864d1c83c3281581076ee82d38b 100644 (file)
@@ -1,7 +1,7 @@
 From 979fe86bc8693f660eddea232ae39cbbb50b294c Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 19 Mar 2015 22:50:22 +0000
-Subject: [PATCH 59/78] Make --address=/example.com/ equivalent to
+Subject: [PATCH 59/87] Make --address=/example.com/ equivalent to
  --server=/example.com/
 
 ---
index 429f56a988ff4cca2ae843290d7ee137c8cd3550..dcf1a3cb0e34f665c0e20142d64fe1b2c5497cc0 100644 (file)
@@ -1,7 +1,7 @@
 From 65c721200023ef0023114459a8d12f8b0a24cfd8 Mon Sep 17 00:00:00 2001
 From: Lung-Pin Chang <changlp@cs.nctu.edu.tw>
 Date: Thu, 19 Mar 2015 23:22:21 +0000
-Subject: [PATCH 60/78] dhcp: set outbound interface via cmsg in unicast reply
+Subject: [PATCH 60/87] dhcp: set outbound interface via cmsg in unicast reply
 
   If multiple routes to the same network exist, Linux blindly picks
   the first interface (route) based on destination address, which might not be
index aece6fa6e88c42585f5425450c2b8f539486b904..7f2b1b042dfce4ccfdcd55ea720ff52dec8eeb88 100644 (file)
@@ -1,7 +1,7 @@
 From 8805283088d670baecb92569252c01cf754cda51 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 26 Mar 2015 21:15:43 +0000
-Subject: [PATCH 61/78] Don't fail DNSSEC when a signed CNAME dangles into an
+Subject: [PATCH 61/87] Don't fail DNSSEC when a signed CNAME dangles into an
  unsigned zone.
 
 ---
index 81280dcce05d749a0644ea150e523265e1bb1bb5..496776deb21ee3bed3477b8950d0bdec05c3b1b7 100644 (file)
@@ -1,7 +1,7 @@
 From 150162bc37170a6edae9d488435e836b1e4e3a4e Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 27 Mar 2015 09:58:26 +0000
-Subject: [PATCH 62/78] Return SERVFAIL when validation abandoned.
+Subject: [PATCH 62/87] Return SERVFAIL when validation abandoned.
 
 ---
  src/forward.c | 11 +++++++++--
index bd79a1a1ee83e6564cf2d906bdc58622e7126347..25ae12e6a87f0bd85ddad9f9d01ed2a43c41e15d 100644 (file)
@@ -1,7 +1,7 @@
 From 0b8a5a30a77331974ba24a04e43e720585dfbc61 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 27 Mar 2015 11:44:55 +0000
-Subject: [PATCH 63/78] Protect against broken DNSSEC upstreams.
+Subject: [PATCH 63/87] Protect against broken DNSSEC upstreams.
 
 ---
  src/dnssec.c | 7 +++++--
index c020af51a925fe62797d219490829691f5d57657..41730b80183d5e1b61191492cc4a1ee1e3636c72 100644 (file)
@@ -1,7 +1,7 @@
 From 1e153945def3c50d1e59ceea6a768db0ac770f98 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sat, 28 Mar 2015 21:34:07 +0000
-Subject: [PATCH 64/78] DNSSEC fix for non-ascii characters in labels.
+Subject: [PATCH 64/87] DNSSEC fix for non-ascii characters in labels.
 
 ---
  src/dnssec.c  | 34 +++++++++++++++++-----------------
index a9b6f400b7ccb5ae3ba07a01312daf8758e6837f..212fe30c3c3e95786fc99debcb72f8200aacf5da 100644 (file)
@@ -1,7 +1,7 @@
 From 394ff492da6af5da7e7d356be9586683bc5fc011 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 29 Mar 2015 22:17:14 +0100
-Subject: [PATCH 65/78] Allow control characters in names in the cache, handle
+Subject: [PATCH 65/87] Allow control characters in names in the cache, handle
  when logging.
 
 ---
index 8a496b0c0e73d7b7fc982d2f2d55090956e43e77..dbc4deb9063d2f9cf7d67a2357e6fc3af3f4d57c 100644 (file)
@@ -1,7 +1,7 @@
 From 794fccca7ffebfba4468bfffc6276b68bbf6afd9 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 29 Mar 2015 22:35:44 +0100
-Subject: [PATCH 66/78] Fix crash in last commit.
+Subject: [PATCH 66/87] Fix crash in last commit.
 
 ---
  src/cache.c | 7 ++++---
index f6c522585f451afe678d253fc21def15d2b25115..ac735bdc7db3552a56ab051aebc0a3a09be9ec3d 100644 (file)
@@ -1,7 +1,7 @@
 From fd6ad9e481ab7c812a6b1515244908818cbb0442 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 30 Mar 2015 07:52:21 +0100
-Subject: [PATCH 67/78] Merge message translations.
+Subject: [PATCH 67/87] Merge message translations.
 
 ---
  po/de.po    | 803 +++++++++++++++++++++++++++++++++--------------------------
index cf1f2af82453ee65c6a899f35076c6359d32490d..b61ad0a17e6749f67c027f9d7bdcaaff140ed266 100644 (file)
@@ -1,7 +1,7 @@
 From 30d0879ed55cb67b1b735beab3d93f3bb3ef1dd2 Mon Sep 17 00:00:00 2001
 From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
 Date: Tue, 31 Mar 2015 22:32:11 +0100
-Subject: [PATCH 68/78] add --tftp-no-fail to ignore missing tftp root
+Subject: [PATCH 68/87] add --tftp-no-fail to ignore missing tftp root
 
 ---
  CHANGELOG            |  3 +++
index a18c6bec7852f23832f0c3f5772c50b17f3cd400..865e9a91d737181293c5437f1ac4082b3adf23e7 100644 (file)
@@ -1,7 +1,7 @@
 From 7aa970e2c7043201663d86a4b5d8cd5c592cef39 Mon Sep 17 00:00:00 2001
 From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
 Date: Wed, 1 Apr 2015 17:55:07 +0100
-Subject: [PATCH 69/78] Whitespace fixes.
+Subject: [PATCH 69/87] Whitespace fixes.
 
 ---
  src/dnsmasq.c | 14 +++++++-------
index b021aab16f76e06bf06c7a2f248e431da74dbdd5..a2f96385c467c9df7fe1f3fe67836e408644e851 100644 (file)
@@ -1,7 +1,7 @@
 From fe3992f9fa69fa975ea31919c53933b5f6a63527 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 3 Apr 2015 21:25:05 +0100
-Subject: [PATCH 70/78] Return INSECURE, rather than BOGUS when DS proved not
+Subject: [PATCH 70/87] Return INSECURE, rather than BOGUS when DS proved not
  to exist.
 
 Return INSECURE when validating DNS replies which have RRSIGs, but
index b8e5cf81714744c94fc14533975d107a387a51ff..723c492acc370b35db7692330071f6704ed0cb91 100644 (file)
@@ -1,7 +1,7 @@
 From 982faf402487e265ed11ac03524531d42b03c966 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 3 Apr 2015 21:42:30 +0100
-Subject: [PATCH 71/78] Fix compiler warning when not including DNSSEC.
+Subject: [PATCH 71/87] Fix compiler warning when not including DNSSEC.
 
 ---
  src/forward.c | 3 ++-
index e03606c5c3fe9697fe03491bc9dc44e586ad722b..3f579bda589b2aefb2f613f8f910844ebc108ad3 100644 (file)
@@ -1,7 +1,7 @@
 From 04b0ac05377936d121a36873bb63d492cde292c9 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Mon, 6 Apr 2015 17:19:13 +0100
-Subject: [PATCH 72/78] Fix crash caused by looking up servers.bind when many
+Subject: [PATCH 72/87] Fix crash caused by looking up servers.bind when many
  servers defined.
 
 ---
index c333e662d42b3d93c726de75e1c295f5bfff4cd8..27e4cde3d141b452ea47fe00f47bd1f0a8348c60 100644 (file)
@@ -1,7 +1,7 @@
 From ad4a8ff7d9097008d7623df8543df435bfddeac8 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 9 Apr 2015 21:48:00 +0100
-Subject: [PATCH 73/78] Fix crash on receipt of certain malformed DNS requests.
+Subject: [PATCH 73/87] Fix crash on receipt of certain malformed DNS requests.
 
 ---
  CHANGELOG     | 3 +++
index 4a9cee0d2eec954671b4b22e7645a81caa0b23bc..2435371a7ad40cf4a7beb67dcd6dda9fea3ac942 100644 (file)
@@ -1,7 +1,7 @@
 From 38440b204db65f9be16c4c3daa7e991e4356f6ed Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Sun, 12 Apr 2015 21:52:47 +0100
-Subject: [PATCH 74/78] Fix crash in auth code with odd configuration.
+Subject: [PATCH 74/87] Fix crash in auth code with odd configuration.
 
 ---
  CHANGELOG  | 32 +++++++++++++++++++++-----------
index 705229f1ab7e1d14e4516a203bcd7ff7c0f2b53e..fbc38022bba844a7814caab4e3b73691c735827c 100644 (file)
@@ -1,7 +1,7 @@
 From 78c6184752dce27849e36cce4360abc27b8d76d2 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 16 Apr 2015 15:05:30 +0100
-Subject: [PATCH 75/78] Auth: correct replies to NS and SOA in .arpa zones.
+Subject: [PATCH 75/87] Auth: correct replies to NS and SOA in .arpa zones.
 
 ---
  CHANGELOG  |  8 ++++++++
index e42dfb0d7e30c4b6fde160fb320f714f5b0d41e2..1598460b7cb97548eeba2a3bed13c5699bc1414b 100644 (file)
@@ -1,7 +1,7 @@
 From b4c0f092d8ce63ea4763c0ac17aa8d24318ad301 Mon Sep 17 00:00:00 2001
 From: Stefan Tomanek <stefan.tomanek+dnsmasq@wertarbyte.de>
 Date: Thu, 16 Apr 2015 15:20:59 +0100
-Subject: [PATCH 76/78] Fix (srk induced) crash in new tftp_no_fail code.
+Subject: [PATCH 76/87] Fix (srk induced) crash in new tftp_no_fail code.
 
 ---
  src/dnsmasq.c | 6 ++++--
index 15f3a4d44645ecc9bed3d104b06e4ecbd79d0eba..a68ac4c4eae6833a7bc32c9726da8b95c68ad7e4 100644 (file)
@@ -1,7 +1,7 @@
 From 0df29f5e23fd2f16181847db1fcf3a8b392d869a Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Thu, 16 Apr 2015 15:24:52 +0100
-Subject: [PATCH 77/78] Note CVE-2015-3294
+Subject: [PATCH 77/87] Note CVE-2015-3294
 
 ---
  CHANGELOG | 3 +++
index 2f7fa0affcac4d53391646bd9f5817a3e4c81694..2e040e320ccc12ec97cdf651a416f0a4a194da75 100644 (file)
@@ -1,7 +1,7 @@
 From 554b580e970275d5a869cb4fbfb2716f92b2f664 Mon Sep 17 00:00:00 2001
 From: Simon Kelley <simon@thekelleys.org.uk>
 Date: Fri, 17 Apr 2015 22:50:20 +0100
-Subject: [PATCH 78/78] Log domain when reporting DNSSEC validation failure.
+Subject: [PATCH 78/87] Log domain when reporting DNSSEC validation failure.
 
 ---
  src/forward.c | 15 ++++++++++-----
diff --git a/src/patches/dnsmasq/0079-Check-IP-address-command-line-arg-in-dhcp_release.c.patch b/src/patches/dnsmasq/0079-Check-IP-address-command-line-arg-in-dhcp_release.c.patch
new file mode 100644 (file)
index 0000000..6b0453e
--- /dev/null
@@ -0,0 +1,28 @@
+From a006eb7e1486023480ea40244720ef7aab51de71 Mon Sep 17 00:00:00 2001
+From: Moshe Levi <moshele@mellanox.com>
+Date: Sun, 19 Apr 2015 22:10:40 +0100
+Subject: [PATCH 79/87] Check IP address command line arg in dhcp_release.c
+
+---
+ contrib/wrt/dhcp_release.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/contrib/wrt/dhcp_release.c b/contrib/wrt/dhcp_release.c
+index 53f47dda3aec..a51f04b30cab 100644
+--- a/contrib/wrt/dhcp_release.c
++++ b/contrib/wrt/dhcp_release.c
+@@ -277,6 +277,11 @@ int main(int argc, char **argv)
+       exit(1);
+     }
+   
++  if (inet_addr(argv[2]) == INADDR_NONE)
++    {
++      perror("invalid ip address");
++      exit(1);
++    }
+   
+   lease.s_addr = inet_addr(argv[2]);
+   server = find_interface(lease, nl, if_nametoindex(argv[1]));
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0080-Revert-61b838dd574c51d96fef100285a0d225824534f9-and-.patch b/src/patches/dnsmasq/0080-Revert-61b838dd574c51d96fef100285a0d225824534f9-and-.patch
new file mode 100644 (file)
index 0000000..8aa5c5c
--- /dev/null
@@ -0,0 +1,53 @@
+From 338b340be9e7198f5c0f68133d070d6598a0814c Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Mon, 20 Apr 2015 21:34:05 +0100
+Subject: [PATCH 80/87] Revert 61b838dd574c51d96fef100285a0d225824534f9 and
+ just quieten log instead.
+
+---
+ src/rfc3315.c | 24 ++++++++++--------------
+ 1 file changed, 10 insertions(+), 14 deletions(-)
+
+diff --git a/src/rfc3315.c b/src/rfc3315.c
+index c1ddc805988d..c45116a40a09 100644
+--- a/src/rfc3315.c
++++ b/src/rfc3315.c
+@@ -824,25 +824,21 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
+         }
+       else
+         { 
+-          /* Windows 8 always requests an address even if the Managed bit
+-             in RA is 0 and it keeps retrying if it receives a reply
+-             stating that no addresses are available. We solve this 
+-             by not replying at all if we're not configured to give any 
+-             addresses by DHCPv6. RFC 3315 17.2.1. appears to allow this. */
+-          
+-          for (c = state->context; c; c = c->current)
+-            if (!(c->flags & CONTEXT_RA_STATELESS))
+-              break;
+-          
+-          if (!c)
+-            return 0;
+-          
+           /* no address, return error */
+           o1 = new_opt6(OPTION6_STATUS_CODE);
+           put_opt6_short(DHCP6NOADDRS);
+           put_opt6_string(_("no addresses available"));
+           end_opt6(o1);
+-          log6_packet(state, state->lease_allocate ? "DHCPREPLY" : "DHCPADVERTISE", NULL, _("no addresses available"));
++
++          /* Some clients will ask repeatedly when we're not giving
++             out addresses because we're in stateless mode. Avoid spamming
++             the log in that case. */
++          for (c = state->context; c; c = c->current)
++            if (!(c->flags & CONTEXT_RA_STATELESS))
++              {
++                log6_packet(state, state->lease_allocate ? "DHCPREPLY" : "DHCPADVERTISE", NULL, _("no addresses available"));
++                break;
++              }
+         }
+       break;
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0081-Handle-domain-names-with-.-or-000-within-labels.patch b/src/patches/dnsmasq/0081-Handle-domain-names-with-.-or-000-within-labels.patch
new file mode 100644 (file)
index 0000000..4fb78d4
--- /dev/null
@@ -0,0 +1,215 @@
+From cbe379ad6b52a538a4416a7cd992817e5637ccf9 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 21 Apr 2015 22:57:06 +0100
+Subject: [PATCH 81/87] Handle domain names with '.' or /000 within labels.
+
+Only in DNSSEC mode, where we might need to validate or store
+such names. In none-DNSSEC mode, simply don't cache these, as before.
+---
+ src/dns-protocol.h |  4 ++++
+ src/dnsmasq.c      | 15 +++++++++++++--
+ src/dnssec.c       | 40 +++++++++++++++++++++++++++++++---------
+ src/rfc1035.c      | 16 +++++++++++++++-
+ src/util.c         |  9 ++++++++-
+ 5 files changed, 71 insertions(+), 13 deletions(-)
+
+diff --git a/src/dns-protocol.h b/src/dns-protocol.h
+index 16fade33d98c..7f5d686bb150 100644
+--- a/src/dns-protocol.h
++++ b/src/dns-protocol.h
+@@ -142,3 +142,7 @@ struct dns_header {
+ #define ADD_RDLEN(header, pp, plen, len) \
+   (!CHECK_LEN(header, pp, plen, len) ? 0 : (((pp) += (len)), 1))
++
++/* Escape character in our presentation format for names.
++   Cannot be '.' or /000 and must be !isprint() */
++#define NAME_ESCAPE 1
+diff --git a/src/dnsmasq.c b/src/dnsmasq.c
+index 20b15c05103a..19a6428b09e8 100644
+--- a/src/dnsmasq.c
++++ b/src/dnsmasq.c
+@@ -102,8 +102,19 @@ int main (int argc, char **argv)
+ #ifdef HAVE_DNSSEC
+   if (option_bool(OPT_DNSSEC_VALID))
+     {
+-      daemon->keyname = safe_malloc(MAXDNAME);
+-      daemon->workspacename = safe_malloc(MAXDNAME);
++      /* Note that both /000 and '.' are allowed within labels. These get
++       represented in presentation format using NAME_ESCAPE as an escape
++       character when in DNSSEC mode. 
++       In theory, if all the characters in a name were /000 or
++       '.' or NAME_ESCAPE then all would have to be escaped, so the 
++       presentation format would be twice as long as the spec.
++
++       daemon->namebuff was previously allocated by the option-reading
++       code before we knew if we're in DNSSEC mode, so reallocate here. */
++      free(daemon->namebuff);
++      daemon->namebuff = safe_malloc(MAXDNAME * 2);
++      daemon->keyname = safe_malloc(MAXDNAME * 2);
++      daemon->workspacename = safe_malloc(MAXDNAME * 2);
+     }
+ #endif
+diff --git a/src/dnssec.c b/src/dnssec.c
+index 05e0983cb251..c116a7b5f6f4 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -321,10 +321,18 @@ static int verify(struct blockdata *key_data, unsigned int key_len, unsigned cha
+    thus generating names in canonical form.
+    Calling to_wire followed by from_wire is almost an identity,
+    except that the UC remains mapped to LC. 
++
++   Note that both /000 and '.' are allowed within labels. These get
++   represented in presentation format using NAME_ESCAPE as an escape
++   character. In theory, if all the characters in a name were /000 or
++   '.' or NAME_ESCAPE then all would have to be escaped, so the 
++   presentation format would be twice as long as the spec (1024). 
++   The buffers are all delcared as 2049 (allowing for the trailing zero) 
++   for this reason.
+ */
+ static int to_wire(char *name)
+ {
+-  unsigned char *l, *p, term;
++  unsigned char *l, *p, *q, term;
+   int len;
+   for (l = (unsigned char*)name; *l != 0; l = p)
+@@ -332,7 +340,10 @@ static int to_wire(char *name)
+       for (p = l; *p != '.' && *p != 0; p++)
+       if (*p >= 'A' && *p <= 'Z')
+         *p = *p - 'A' + 'a';
+-      
++      else if (*p == NAME_ESCAPE)
++        for (q = p; *q; q++)
++            *q = *(q+1);
++             
+       term = *p;
+       
+       if ((len = p - l) != 0)
+@@ -351,13 +362,23 @@ static int to_wire(char *name)
+ /* Note: no compression  allowed in input. */
+ static void from_wire(char *name)
+ {
+-  unsigned char *l;
++  unsigned char *l, *p, *last;
+   int len;
+-
++  
++  for (last = (unsigned char *)name; *last != 0; last += *last+1);
++  
+   for (l = (unsigned char *)name; *l != 0; l += len+1)
+     {
+       len = *l;
+       memmove(l, l+1, len);
++      for (p = l; p < l + len; p++)
++      if (*p == '.' || *p == 0 || *p == NAME_ESCAPE)
++        {
++          memmove(p+1, p, 1 + last - p);
++          len++;
++          *p++ = NAME_ESCAPE;
++        }
++      
+       l[len] = '.';
+     }
+@@ -645,7 +666,7 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
+             if (left1 != 0)
+               memmove(buff1, buff1 + len1 - left1, left1);
+             
+-            if ((len1 = get_rdata(header, plen, end1, buff1 + left1, MAXDNAME - left1, &p1, &dp1)) == 0)
++            if ((len1 = get_rdata(header, plen, end1, buff1 + left1, (MAXDNAME * 2) - left1, &p1, &dp1)) == 0)
+               {
+                 quit = 1;
+                 len1 = end1 - p1;
+@@ -656,7 +677,7 @@ static void sort_rrset(struct dns_header *header, size_t plen, u16 *rr_desc, int
+             if (left2 != 0)
+               memmove(buff2, buff2 + len2 - left2, left2);
+             
+-            if ((len2 = get_rdata(header, plen, end2, buff2 + left2, MAXDNAME - left2, &p2, &dp2)) == 0)
++            if ((len2 = get_rdata(header, plen, end2, buff2 + left2, (MAXDNAME *2) - left2, &p2, &dp2)) == 0)
+               {
+                 quit = 1;
+                 len2 = end2 - p2;
+@@ -902,10 +923,11 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+         
+         end = p + rdlen;
+         
+-        /* canonicalise rdata and calculate length of same, use name buffer as workspace */
++        /* canonicalise rdata and calculate length of same, use name buffer as workspace.
++           Note that name buffer is twice MAXDNAME long in DNSSEC mode. */
+         cp = p;
+         dp = rr_desc;
+-        for (len = 0; (seg = get_rdata(header, plen, end, name, MAXDNAME, &cp, &dp)) != 0; len += seg);
++        for (len = 0; (seg = get_rdata(header, plen, end, name, MAXDNAME * 2, &cp, &dp)) != 0; len += seg);
+         len += end - cp;
+         len = htons(len);
+         hash->update(ctx, 2, (unsigned char *)&len); 
+@@ -913,7 +935,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in
+         /* Now canonicalise again and digest. */
+         cp = p;
+         dp = rr_desc;
+-        while ((seg = get_rdata(header, plen, end, name, MAXDNAME, &cp, &dp)))
++        while ((seg = get_rdata(header, plen, end, name, MAXDNAME * 2, &cp, &dp)))
+           hash->update(ctx, seg, (unsigned char *)name);
+         if (cp != end)
+           hash->update(ctx, end - cp, cp);
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index a995ab50d74a..19fecc818c06 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -128,6 +128,15 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+           if (isExtract)
+             {
+               unsigned char c = *p;
++#ifdef HAVE_DNSSEC
++              if (option_bool(OPT_DNSSEC_VALID))
++                {
++                  if (c == 0 || c == '.' || c == NAME_ESCAPE)
++                    *cp++ = NAME_ESCAPE;
++                  *cp++ = c;
++                }
++              else
++#endif
+               if (c != 0 && c != '.')
+                 *cp++ = c;
+               else
+@@ -144,9 +153,14 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+                   cp++;
+                   if (c1 >= 'A' && c1 <= 'Z')
+                     c1 += 'a' - 'A';
++#ifdef HAVE_DNSSEC
++                  if (option_bool(OPT_DNSSEC_VALID) && c1 == NAME_ESCAPE)
++                    c1 = *cp++;
++#endif
++                  
+                   if (c2 >= 'A' && c2 <= 'Z')
+                     c2 += 'a' - 'A';
+-                  
++                   
+                   if (c1 != c2)
+                     retvalue =  2;
+                 }
+diff --git a/src/util.c b/src/util.c
+index 648bc4d4b428..0c1a48b4700a 100644
+--- a/src/util.c
++++ b/src/util.c
+@@ -226,7 +226,14 @@ unsigned char *do_rfc1035_name(unsigned char *p, char *sval)
+     {
+       unsigned char *cp = p++;
+       for (j = 0; *sval && (*sval != '.'); sval++, j++)
+-      *p++ = *sval;
++      {
++#ifdef HAVE_DNSSEC
++        if (option_bool(OPT_DNSSEC_VALID) && *sval == NAME_ESCAPE)
++          *p++ = *(++sval);
++        else
++#endif                
++          *p++ = *sval;
++      }
+       *cp  = j;
+       if (*sval)
+       sval++;
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0082-Tweaks-to-previous-DNS-label-charset-commit.patch b/src/patches/dnsmasq/0082-Tweaks-to-previous-DNS-label-charset-commit.patch
new file mode 100644 (file)
index 0000000..ea6f08d
--- /dev/null
@@ -0,0 +1,136 @@
+From b8f16556d36924cd8dc7663cb4129d7b1f3fc2be Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Wed, 22 Apr 2015 21:14:31 +0100
+Subject: [PATCH 82/87] Tweaks to previous, DNS label charset commit.
+
+---
+ src/dns-protocol.h |  6 +++++-
+ src/dnssec.c       |  9 ++++++---
+ src/rfc1035.c      | 25 ++++++++++++++++++-------
+ src/util.c         |  2 +-
+ 4 files changed, 30 insertions(+), 12 deletions(-)
+
+diff --git a/src/dns-protocol.h b/src/dns-protocol.h
+index 7f5d686bb150..4b71746f8d26 100644
+--- a/src/dns-protocol.h
++++ b/src/dns-protocol.h
+@@ -144,5 +144,9 @@ struct dns_header {
+   (!CHECK_LEN(header, pp, plen, len) ? 0 : (((pp) += (len)), 1))
+ /* Escape character in our presentation format for names.
+-   Cannot be '.' or /000 and must be !isprint() */
++   Cannot be '.' or /000 and must be !isprint().
++   Note that escaped chars are stored as
++   <NAME_ESCAPE> <orig-char+1>
++   to ensure that the escaped form of /000 doesn't include /000
++*/
+ #define NAME_ESCAPE 1
+diff --git a/src/dnssec.c b/src/dnssec.c
+index c116a7b5f6f4..a9e12153ccf2 100644
+--- a/src/dnssec.c
++++ b/src/dnssec.c
+@@ -341,9 +341,11 @@ static int to_wire(char *name)
+       if (*p >= 'A' && *p <= 'Z')
+         *p = *p - 'A' + 'a';
+       else if (*p == NAME_ESCAPE)
+-        for (q = p; *q; q++)
++        {
++          for (q = p; *q; q++)
+             *q = *(q+1);
+-             
++          (*p)--;
++        }
+       term = *p;
+       
+       if ((len = p - l) != 0)
+@@ -376,7 +378,8 @@ static void from_wire(char *name)
+         {
+           memmove(p+1, p, 1 + last - p);
+           len++;
+-          *p++ = NAME_ESCAPE;
++          *p++ = NAME_ESCAPE; 
++          (*p)++;
+         }
+       
+       l[len] = '.';
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 19fecc818c06..32df31ad603c 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -20,7 +20,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+                char *name, int isExtract, int extrabytes)
+ {
+   unsigned char *cp = (unsigned char *)name, *p = *pp, *p1 = NULL;
+-  unsigned int j, l, hops = 0;
++  unsigned int j, l, namelen = 0, hops = 0;
+   int retvalue = 1;
+   
+   if (isExtract)
+@@ -94,9 +94,15 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+           count = 256;
+         digs = ((count-1)>>2)+1;
+         
+-        /* output is \[x<hex>/siz]. which is digs+9 chars */
+-        if (cp - (unsigned char *)name + digs + 9 >= MAXDNAME)
++        /* output is \[x<hex>/siz]. which is digs+6/7/8 chars */
++        namelen += digs+6;
++        if (count > 9)
++          namelen++;
++        if (count > 99)
++          namelen++;
++        if (namelen+1 >= MAXDNAME)
+           return 0;
++
+         if (!CHECK_LEN(header, p, plen, (count-1)>>3))
+           return 0;
+@@ -119,7 +125,8 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+       }
+       else 
+       { /* label_type = 0 -> label. */
+-        if (cp - (unsigned char *)name + l + 1 >= MAXDNAME)
++        namelen += l;
++        if (namelen+1 >= MAXDNAME)
+           return 0;
+         if (!CHECK_LEN(header, p, plen, l))
+           return 0;
+@@ -132,8 +139,12 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+               if (option_bool(OPT_DNSSEC_VALID))
+                 {
+                   if (c == 0 || c == '.' || c == NAME_ESCAPE)
+-                    *cp++ = NAME_ESCAPE;
+-                  *cp++ = c;
++                    {
++                      *cp++ = NAME_ESCAPE;
++                      *cp++ = c+1;
++                    }
++                  else
++                    *cp++ = c; 
+                 }
+               else
+ #endif
+@@ -155,7 +166,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp,
+                     c1 += 'a' - 'A';
+ #ifdef HAVE_DNSSEC
+                   if (option_bool(OPT_DNSSEC_VALID) && c1 == NAME_ESCAPE)
+-                    c1 = *cp++;
++                    c1 = (*cp++)-1;
+ #endif
+                   
+                   if (c2 >= 'A' && c2 <= 'Z')
+diff --git a/src/util.c b/src/util.c
+index 0c1a48b4700a..9299703c6d30 100644
+--- a/src/util.c
++++ b/src/util.c
+@@ -229,7 +229,7 @@ unsigned char *do_rfc1035_name(unsigned char *p, char *sval)
+       {
+ #ifdef HAVE_DNSSEC
+         if (option_bool(OPT_DNSSEC_VALID) && *sval == NAME_ESCAPE)
+-          *p++ = *(++sval);
++          *p++ = (*(++sval))-1;
+         else
+ #endif                
+           *p++ = *sval;
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0083-Logs-in-DHCPv6-not-suppressed-by-dhcp6-quiet.patch b/src/patches/dnsmasq/0083-Logs-in-DHCPv6-not-suppressed-by-dhcp6-quiet.patch
new file mode 100644 (file)
index 0000000..96dc14b
--- /dev/null
@@ -0,0 +1,46 @@
+From a5ae1f85873829efe473075ad77806cc02792622 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Sat, 25 Apr 2015 21:46:10 +0100
+Subject: [PATCH 83/87] Logs in DHCPv6 not suppressed by dhcp6-quiet.
+
+---
+ CHANGELOG     | 6 +++++-
+ src/rfc3315.c | 4 ++--
+ 2 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 7f2b1e002e9e..af2b22cf8f73 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -103,7 +103,11 @@ version 2.73
+           Previously we provided correct answers to PTR queries
+           in such zones (including NS and SOA) but not direct
+           NS and SOA queries. Thanks to Johnny S. Lee for 
+-          pointing out the problem.
++          pointing out the problem.
++
++          Fix logging of DHCPREPLY which should be suppressed 
++          by quiet-dhcp6. Thanks to J. Pablo Abonia for 
++          spotting the problem.
+       
+ version 2.72
+diff --git a/src/rfc3315.c b/src/rfc3315.c
+index c45116a40a09..b4f5dd2db61f 100644
+--- a/src/rfc3315.c
++++ b/src/rfc3315.c
+@@ -1047,9 +1047,9 @@ static int dhcp6_no_relay(struct state *state, int msg_type, void *inbuff, size_
+                 {
+                   preferred_time = valid_time = 0;
+                   message = _("address invalid");
+-                }
++                } 
+-              if (message)
++              if (message && (message != state->hostname))
+                 log6_packet(state, "DHCPREPLY", req_addr, message);   
+               else
+                 log6_quiet(state, "DHCPREPLY", req_addr, message);
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0084-Make-get-version-work-when-repo-is-a-git-submodule.patch b/src/patches/dnsmasq/0084-Make-get-version-work-when-repo-is-a-git-submodule.patch
new file mode 100644 (file)
index 0000000..38670a8
--- /dev/null
@@ -0,0 +1,28 @@
+From 8efd731cc4ed2baa42aa69d0a9d336392e9987cb Mon Sep 17 00:00:00 2001
+From: "Johnny S. Lee" <_@jsl.io>
+Date: Sun, 26 Apr 2015 22:23:57 +0100
+Subject: [PATCH 84/87] Make get-version work when repo is a git submodule.
+
+---
+ bld/get-version | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/bld/get-version b/bld/get-version
+index 7ab75db729ac..5372869c0852 100755
+--- a/bld/get-version
++++ b/bld/get-version
+@@ -11,8 +11,9 @@
+ # If there is more than one v[0-9].* tag, sort them and use the
+ # first. This favours, eg v2.63 over 2.63rc6.
+-if which git >/dev/null 2>&1 && [ -d $1/.git ]; then
+-     cd $1; git describe | sed 's/^v//'
++if which git >/dev/null 2>&1 && \
++    ([ -d $1/.git ] || grep '^gitdir:' $1/.git >/dev/null 2>&1); then 
++    cd $1; git describe | sed 's/^v//'
+ elif grep '\$Format:%d\$' $1/VERSION >/dev/null 2>&1; then
+ # unsubstituted VERSION, but no git available.
+     echo UNKNOWN
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0085-Fix-argument-order-botch-which-broke-DNSSEC-for-TCP-.patch b/src/patches/dnsmasq/0085-Fix-argument-order-botch-which-broke-DNSSEC-for-TCP-.patch
new file mode 100644 (file)
index 0000000..04bee99
--- /dev/null
@@ -0,0 +1,40 @@
+From e66b4dff3c562c7836d5be4c26972d665ad783f1 Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 28 Apr 2015 20:45:57 +0100
+Subject: [PATCH 85/87] Fix argument-order botch which broke DNSSEC for TCP
+ queries.
+
+---
+ src/forward.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/src/forward.c b/src/forward.c
+index 1c7da3f5655c..a8e403c4b25e 100644
+--- a/src/forward.c
++++ b/src/forward.c
+@@ -1996,8 +1996,9 @@ unsigned char *tcp_request(int confd, time_t now,
+                           }
+                         else
+                           result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS"));
+-                         if (status == STAT_BOGUS && extract_request(header, m, daemon->namebuff, NULL))
+-                           domain = daemon->namebuff;
++                        
++                        if (status == STAT_BOGUS && extract_request(header, m, daemon->namebuff, NULL))
++                          domain = daemon->namebuff;
+                         log_query(F_KEYTAG | F_SECSTAT, domain, NULL, result);
+                         
+@@ -2040,8 +2041,8 @@ unsigned char *tcp_request(int confd, time_t now,
+ #endif
+                     m = process_reply(header, now, last_server, (unsigned int)m, 
+-                                      option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, bogusanswer,
+-                                      cache_secure, ad_question, do_bit, added_pheader, check_subnet, &peer_addr); 
++                                      option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, cache_secure, bogusanswer,
++                                      ad_question, do_bit, added_pheader, check_subnet, &peer_addr); 
+                     
+                     break;
+                   }
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0086-Don-t-remove-RRSIG-RR-from-answers-to-ANY-queries-wh.patch b/src/patches/dnsmasq/0086-Don-t-remove-RRSIG-RR-from-answers-to-ANY-queries-wh.patch
new file mode 100644 (file)
index 0000000..1fa5c7a
--- /dev/null
@@ -0,0 +1,29 @@
+From 2ed162ac204f3609fe4d9f9a0430baeaa352d88f Mon Sep 17 00:00:00 2001
+From: Simon Kelley <simon@thekelleys.org.uk>
+Date: Tue, 28 Apr 2015 21:26:35 +0100
+Subject: [PATCH 86/87] Don't remove RRSIG RR from answers to ANY queries when
+ the do bit is not set.
+
+---
+ src/rfc1035.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/rfc1035.c b/src/rfc1035.c
+index 32df31ad603c..5828055caa5d 100644
+--- a/src/rfc1035.c
++++ b/src/rfc1035.c
+@@ -1608,6 +1608,11 @@ size_t answer_request(struct dns_header *header, char *limit, size_t qlen,
+       GETSHORT(qtype, p); 
+       GETSHORT(qclass, p);
++      /* Don't filter RRSIGS from answers to ANY queries, even if do-bit
++       not set. */
++      if (qtype == T_ANY)
++      *do_bit = 1;
++
+       ans = 0; /* have we answered this question */
+       
+       if (qtype == T_TXT || qtype == T_ANY)
+-- 
+2.1.0
+
diff --git a/src/patches/dnsmasq/0087-Constify-some-DHCP-lease-management-functions.patch b/src/patches/dnsmasq/0087-Constify-some-DHCP-lease-management-functions.patch
new file mode 100644 (file)
index 0000000..8d1ca9e
--- /dev/null
@@ -0,0 +1,57 @@
+From 64bcff1c7c72eecda8750bc2dca8b4c5dc38a837 Mon Sep 17 00:00:00 2001
+From: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
+Date: Tue, 28 Apr 2015 21:55:18 +0100
+Subject: [PATCH 87/87] Constify some DHCP lease management functions.
+
+---
+ src/dnsmasq.h | 7 ++++---
+ src/lease.c   | 8 ++++----
+ 2 files changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/src/dnsmasq.h b/src/dnsmasq.h
+index 6fe4a4189188..824a86009439 100644
+--- a/src/dnsmasq.h
++++ b/src/dnsmasq.h
+@@ -1304,9 +1304,10 @@ void lease_update_slaac(time_t now);
+ void lease_set_iaid(struct dhcp_lease *lease, int iaid);
+ void lease_make_duid(time_t now);
+ #endif
+-void lease_set_hwaddr(struct dhcp_lease *lease, unsigned char *hwaddr,
+-                    unsigned char *clid, int hw_len, int hw_type, int clid_len, time_t now, int force);
+-void lease_set_hostname(struct dhcp_lease *lease, char *name, int auth, char *domain, char *config_domain);
++void lease_set_hwaddr(struct dhcp_lease *lease, const unsigned char *hwaddr,
++                    const unsigned char *clid, int hw_len, int hw_type,
++                    int clid_len, time_t now, int force);
++void lease_set_hostname(struct dhcp_lease *lease, const char *name, int auth, char *domain, char *config_domain);
+ void lease_set_expires(struct dhcp_lease *lease, unsigned int len, time_t now);
+ void lease_set_interface(struct dhcp_lease *lease, int interface, time_t now);
+ struct dhcp_lease *lease_find_by_client(unsigned char *hwaddr, int hw_len, int hw_type,  
+diff --git a/src/lease.c b/src/lease.c
+index 545bbb7fd09c..8adb60588671 100644
+--- a/src/lease.c
++++ b/src/lease.c
+@@ -813,9 +813,9 @@ void lease_set_iaid(struct dhcp_lease *lease, int iaid)
+ }
+ #endif
+-void lease_set_hwaddr(struct dhcp_lease *lease, unsigned char *hwaddr,
+-                    unsigned char *clid, int hw_len, int hw_type, int clid_len, 
+-                    time_t now, int force)
++void lease_set_hwaddr(struct dhcp_lease *lease, const unsigned char *hwaddr,
++                    const unsigned char *clid, int hw_len, int hw_type,
++                    int clid_len, time_t now, int force)
+ {
+ #ifdef HAVE_DHCP6
+   int change = force;
+@@ -897,7 +897,7 @@ static void kill_name(struct dhcp_lease *lease)
+   lease->hostname = lease->fqdn = NULL;
+ }
+-void lease_set_hostname(struct dhcp_lease *lease, char *name, int auth, char *domain, char *config_domain)
++void lease_set_hostname(struct dhcp_lease *lease, const char *name, int auth, char *domain, char *config_domain)
+ {
+   struct dhcp_lease *lease_tmp;
+   char *new_name = NULL, *new_fqdn = NULL;
+-- 
+2.1.0
+
diff --git a/src/patches/fireinfo-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch b/src/patches/fireinfo-Skip-search-for-hypervisor-name-when-the-CPU-string-.patch
new file mode 100644 (file)
index 0000000..24a8ca1
--- /dev/null
@@ -0,0 +1,34 @@
+From c667589410912ca980a78f417e86dd6585d58f9a Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Mon, 4 May 2015 16:00:31 +0200
+Subject: [PATCH] Skip search for hypervisor name when the CPU string is empty
+
+---
+ src/_fireinfo/fireinfo.c | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/_fireinfo/fireinfo.c b/src/_fireinfo/fireinfo.c
+index fc639d9d4cd9..6601c21a733f 100644
+--- a/src/_fireinfo/fireinfo.c
++++ b/src/_fireinfo/fireinfo.c
+@@ -156,11 +156,12 @@ int detect_hypervisor(int *hypervisor) {
+               *hypervisor = HYPER_OTHER;
+-              int id;
+-              for (id = HYPER_NONE + 1; id < HYPER_LAST; id++) {
+-                      if (strcmp(hypervisor_ids[id], sig.text) == 0) {
+-                              *hypervisor = id;
+-                              break;
++              if (*sig.text) {
++                      for (int id = HYPER_NONE + 1; id < HYPER_LAST; id++) {
++                              if (strcmp(hypervisor_ids[id], sig.text) == 0) {
++                                      *hypervisor = id;
++                                      break;
++                              }
+                       }
+               }
+-- 
+2.1.0
+
diff --git a/src/patches/glibc/glibc-rh1207995.patch b/src/patches/glibc/glibc-rh1207995.patch
new file mode 100644 (file)
index 0000000..1732de6
--- /dev/null
@@ -0,0 +1,27 @@
+#
+# Based on the following commit:
+#
+# commit f9d2d03254a58d92635a311a42253eeed5a40a47
+# Author: Andreas Schwab <schwab@suse.de>
+# Date:   Mon May 26 18:01:31 2014 +0200
+# 
+#     Fix invalid file descriptor reuse while sending DNS query (BZ #15946)
+# 
+# 2014-06-03  Andreas Schwab  <schwab@suse.de>
+# 
+#      [BZ #15946]
+#      * resolv/res_send.c (send_dg): Reload file descriptor after
+#      calling reopen.
+# 
+diff --git a/resolv/res_send.c b/resolv/res_send.c
+index 3273d55..af42b8a 100644
+--- a/resolv/res_send.c
++++ b/resolv/res_send.c
+@@ -1410,6 +1410,7 @@ send_dg(res_state statp,
+                                       retval = reopen (statp, terrno, ns);
+                                       if (retval <= 0)
+                                               return retval;
++                                      pfd[0].fd = EXT(statp).nssocks[ns];
+                               }
+                       }
+                       goto wait;
diff --git a/src/patches/glibc/glibc-rh1209375.patch b/src/patches/glibc/glibc-rh1209375.patch
new file mode 100644 (file)
index 0000000..74393f0
--- /dev/null
@@ -0,0 +1,18 @@
+@@ -, +, @@
+ resolv/nss_dns/dns-host.c:getanswer_r.
+---
+ resolv/nss_dns/dns-host.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+--- a/resolv/nss_dns/dns-host.c
++++ a/resolv/nss_dns/dns-host.c
+@@ -615,7 +615,8 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype,
+   int have_to_map = 0;
+   uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct host_data);
+   buffer += pad;
+-  if (__builtin_expect (buflen < sizeof (struct host_data) + pad, 0))
++  buflen = buflen > pad ? buflen - pad : 0;
++  if (__builtin_expect (buflen < sizeof (struct host_data), 0))
+     {
+       /* The buffer is too small.  */
+     too_small:
+--
index 3cab5c2778ba787ae7d99ebd794932dc984fe062..2395d86664dd28a4021a902c0a63bd9af4020d24 100644 (file)
@@ -1,6 +1,6 @@
-diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
---- openssl-1.0.2a.vanilla/Configure    2015-03-19 13:30:36.000000000 +0000
-+++ openssl-1.0.2a/Configure    2015-04-19 09:53:04.381491868 +0000
+diff -Nur openssl-1.0.2a-vanilla/Configure openssl-1.0.2a/Configure
+--- openssl-1.0.2a-vanilla/Configure   2015-03-19 13:30:36.000000000 +0000
++++ openssl-1.0.2a/Configure   2015-04-23 10:31:41.336569854 +0000
 @@ -348,7 +348,7 @@
  ####
  # *-generic* is endian-neutral target, but ./config is free to
@@ -10,7 +10,16 @@ diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
  "linux-ppc",  "gcc:-DB_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
  
  #######################################################################
-@@ -1675,7 +1676,7 @@ while (<IN>)
+@@ -389,7 +389,7 @@
+ "linux64-mips64",   "gcc:-mabi=64 -O3 -Wall -DBN_DIV3W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:64:dlfcn:linux-shared:-fPIC:-mabi=64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
+ #### IA-32 targets...
+ "linux-ia32-icc",     "icc:-DL_ENDIAN -O2::-D_REENTRANT::-ldl -no_cpprt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-KPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+-"linux-elf",  "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"linux-elf",  "gcc:-DL_ENDIAN \$(CFLAGS) -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_SONAMEVER)",
+ "linux-aout", "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out",
+ ####
+ "linux-generic64","gcc:-O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
+@@ -1737,7 +1737,7 @@
        elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/)
                {
                my $sotmp = $1;
@@ -19,10 +28,10 @@ diff -up openssl-1.0.1e/Configure.rpmbuild openssl-1.0.1e/Configure
                }
        elsif ($shared_extension ne "" && $shared_extension =~ /^\.[^\.]*\.[^\.]*\.dylib$/)
                {
-diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
---- openssl-1.0.1e/Makefile.org.rpmbuild       2013-02-11 16:26:04.000000000 +0100
-+++ openssl-1.0.1e/Makefile.org        2014-08-13 19:19:53.218005759 +0200
-@@ -10,6 +10,7 @@ SHLIB_VERSION_HISTORY=
+diff -Nur openssl-1.0.2a-vanilla/Makefile.org openssl-1.0.2a/Makefile.org
+--- openssl-1.0.2a-vanilla/Makefile.org        2015-03-19 13:30:36.000000000 +0000
++++ openssl-1.0.2a/Makefile.org        2015-04-23 10:30:03.184371933 +0000
+@@ -10,6 +10,7 @@
  SHLIB_MAJOR=
  SHLIB_MINOR=
  SHLIB_EXT=
@@ -30,7 +39,7 @@ diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
  PLATFORM=dist
  OPTIONS=
  CONFIGURE_ARGS=
-@@ -333,10 +334,9 @@ clean-shared:
+@@ -335,10 +336,9 @@
  link-shared:
        @ set -e; for i in $(SHLIBDIRS); do \
                $(MAKE) -f $(HERE)/Makefile.shared -e $(BUILDENV) \
@@ -42,7 +51,7 @@ diff -up openssl-1.0.1e/Makefile.org.rpmbuild openssl-1.0.1e/Makefile.org
        done
  
  build-shared: do_$(SHLIB_TARGET) link-shared
-@@ -347,7 +347,7 @@ do_$(SHLIB_TARGET):
+@@ -349,7 +349,7 @@
                        libs="$(LIBKRB5) $$libs"; \
                fi; \
                $(CLEARENV) && $(MAKE) -f Makefile.shared -e $(BUILDENV) \
diff --git a/src/patches/openssl-1.0.2a_auto_enable_padlock.patch b/src/patches/openssl-1.0.2a_auto_enable_padlock.patch
new file mode 100644 (file)
index 0000000..b5c0e95
--- /dev/null
@@ -0,0 +1,34 @@
+diff -Naur openssl-1.0.2a.org/crypto/engine/eng_all.c openssl-1.0.2a/crypto/engine/eng_all.c
+--- openssl-1.0.2a.org/crypto/engine/eng_all.c 2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/crypto/engine/eng_all.c     2015-04-27 12:27:05.063569969 +0200
+@@ -120,6 +120,14 @@
+     ENGINE_load_capi();
+ # endif
+ #endif
++#ifdef OPENSSL_NO_STATIC_ENGINE
++      ENGINE *e;
++      e = ENGINE_by_id("padlock");
++      if (e != NULL) {
++              ENGINE_add(e);
++              ENGINE_free(e);
++      }
++#endif
+     ENGINE_register_all_complete();
+ }
+diff -Naur openssl-1.0.2a.org/ssl/ssl_algs.c openssl-1.0.2a/ssl/ssl_algs.c
+--- openssl-1.0.2a.org/ssl/ssl_algs.c  2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/ssl/ssl_algs.c      2015-04-27 11:04:27.893399695 +0200
+@@ -151,5 +151,12 @@
+ #endif
+     /* initialize cipher/digest methods table */
+     ssl_load_ciphers();
++
++    /* Init available hardware crypto engines */
++    ENGINE_load_builtin_engines();
++    ENGINE_register_all_complete();
++    ENGINE * padlock = ENGINE_by_id("padlock");
++    if (padlock) ENGINE_set_default_ciphers(padlock);
++
+     return (1);
+ }
diff --git a/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch b/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch
new file mode 100644 (file)
index 0000000..097cc80
--- /dev/null
@@ -0,0 +1,11 @@
+diff -Naur openssl-1.0.2a.org/crypto/x86cpuid.pl openssl-1.0.2a/crypto/x86cpuid.pl
+--- openssl-1.0.2a.org/crypto/x86cpuid.pl      2015-03-19 14:30:36.000000000 +0100
++++ openssl-1.0.2a/crypto/x86cpuid.pl  2015-04-28 13:47:57.853521020 +0200
+@@ -71,6 +71,7 @@
+       &mov    ("eax",1);
+       &xor    ("ecx","ecx");
+       &cpuid  ();
++      &and    ("ecx",0xfffffdff);     # clear SSSE3 because it is incredible slow on AMD's
+       &bt     ("edx",28);
+       &jnc    (&label("generic"));
+       &shr    ("ebx",16);
diff --git a/src/patches/strongswan-5.3.0-stroke-Increase-stroke-buffer-size-to-8k.patch b/src/patches/strongswan-5.3.0-stroke-Increase-stroke-buffer-size-to-8k.patch
new file mode 100644 (file)
index 0000000..2252e31
--- /dev/null
@@ -0,0 +1,34 @@
+From 4b59d129fd1026bab37256af0df9ae7ace39e7ba Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Mon, 27 Apr 2015 18:49:45 +0200
+Subject: [PATCH] stroke: Increase stroke buffer size to 8k
+
+Complicated connections can have lots of arguments
+for the ike= and esp= directives in the ipsec.conf
+configuration file. strongSwan wouldn't import those
+because the size of the message that is send from
+stroke to charon exceeded the limit of 4k.
+
+This patch increases the size of the buffer that
+can be passed to charon to 8k which should be enough
+even for connections with longer configurations.
+---
+ src/stroke/stroke_msg.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/stroke/stroke_msg.h b/src/stroke/stroke_msg.h
+index c2b923f6db9a..c391efa00105 100644
+--- a/src/stroke/stroke_msg.h
++++ b/src/stroke/stroke_msg.h
+@@ -32,7 +32,7 @@
+  */
+ #define STROKE_SOCKET IPSEC_PIDDIR "/charon.ctl"
+-#define STROKE_BUF_LEN                4096
++#define STROKE_BUF_LEN                8192
+ typedef enum list_flag_t list_flag_t;
+-- 
+2.1.0
+
index eabb0c2956641bcb17676797f7ab9658fe2883c0..1ec9849eb7e3e14aae4c7bccf3b96ce0c1f4376b 100755 (executable)
@@ -907,7 +907,7 @@ sub generatemonthgraph{
        my $sth;
        my $cnt=0;
        #If we want to show Data from within last 2 months, get DATA from ACCT
-       if ( ! $grmon < ($mon+1) && $gryear == ($year+1900)){
+       if ( $grmon == ($mon)+1 && $gryear == ($year+1900)){
                $sth=&ACCT::getmonthgraphdata("ACCT",$from,$till,$grhost);
        }else{
                #If we want to show data from a date older than last two months, use ACCT_HIST
@@ -1959,9 +1959,9 @@ END
 sub viewtablehosts{
        $dbh=&ACCT::connectdb;
        &Header::openbox('100%', 'left', $Lang::tr{'acct hosts'});
-       my $mon=$_[0];
-       my $year=$_[1];
-       my ($from,$till)=&ACCT::getmonth($mon,$year);
+       my $mon1=$_[0];
+       my $year1=$_[1];
+       my ($from,$till)=&ACCT::getmonth($mon1,$year1);
        $count=0;
        #Menu to display another month
        print<<END;
@@ -1986,7 +1986,7 @@ END
                </select></td>
                <td style='text-align: center;'><select name='year'>
 END
-       for (my $j=2014;$j<=($year);$j++){
+       for (my $j=2014;$j<=($year1);$j++){
                if(($_[1]) eq $j){
                        print"<option selected>$j</option>";
                }else{
@@ -2011,7 +2011,12 @@ END
                <th></th>
        </tr>
 END
-       my $res = $dbh->selectall_arrayref("SELECT SUM(BYTES),min(TIME_RUN),max(TIME_RUN),NAME from ACCT where TIME_RUN between ".$from." and ".$till." group by NAME;");
+       my $res;
+       if (($mon)+1 == $mon1 && ($year)+1900 == $year1){
+               $res = $dbh->selectall_arrayref("SELECT SUM(BYTES),min(TIME_RUN),max(TIME_RUN),NAME from ACCT where TIME_RUN between ".$from." and ".$till." group by NAME;");
+       }else{
+               $res = $dbh->selectall_arrayref("SELECT SUM(BYTES),min(strftime('%s',TIME_RUN)),max(strftime('%s',TIME_RUN)),NAME from ACCT_HIST where date(TIME_RUN) > date($from,'unixepoch') and date(TIME_RUN) < date($till,'unixepoch') group by NAME;");
+       }
        my $sumbytes;
        my $type;
        my $lineval;
@@ -2036,8 +2041,8 @@ END
                                        <input type='image' src='/images/utilities-system-monitor.png' alt="$Lang::tr{'status'}" title="$Lang::tr{'status'}" />
                                        <input type='hidden' name='ACTION' value='viewgraph'>
                                        <input type='hidden' name='host' value='$name'>
-                                       <input type='hidden' name='month' value='$mon'>
-                                       <input type='hidden' name='year' value='$year'>
+                                       <input type='hidden' name='month' value='$mon1'>
+                                       <input type='hidden' name='year' value='$year1'>
                                        <input type='hidden' name='traffic' value="$Lang::tr{'acct sum'} $Lang::tr{'acct traffic'} $lineval $type">
                                        </form>
                                        
index 7969a5023908b9c3e5dc402e57d5f5b45f1a618b..58b154a34581d7435762d9f8b10126139a258b7d 100644 (file)
@@ -93,8 +93,10 @@ sub delbefore {
 }
 
 sub movedbdata {
-       $dbh->do("insert into ACCT_HIST select datetime(TIME_RUN,'unixepoch'),NAME,SUM(BYTES) from ACCT where  date(TIME_RUN,'unixepoch') < date('now','-2 months') group by NAME,date(TIME_RUN,'unixepoch');");
-       $dbh->do("DELETE FROM ACCT WHERE datetime(TIME_RUN,'unixepoch') < date('now','-2 months');");
+       &connectdb;
+       $dbh->do("insert into ACCT_HIST select datetime(TIME_RUN,'unixepoch'),NAME,SUM(BYTES) from ACCT where datetime(TIME_RUN,'unixepoch') < datetime('now','start of month') group by NAME,datetime(TIME_RUN,'unixepoch');");
+       $dbh->do("DELETE FROM ACCT WHERE datetime(TIME_RUN,'unixepoch') < date('now','start of month');");
+       &closedb;
 }
 
 sub gethourgraphdata {
@@ -119,10 +121,10 @@ sub getmonthgraphdata {
        my $name=$_[3];
        my $res;
        $dbh=connectdb;
-       if ($table eq 'ACCT'){
-               $res = $dbh->selectall_arrayref( "SELECT  strftime('%d.%m.%Y',xx.tag),(SELECT SUM(BYTES)/1024/1024 FROM ACCT WHERE date(TIME_RUN,'unixepoch') <= xx.tag and NAME = '".$name."') kum_bytes FROM (SELECT date(TIME_RUN,'unixepoch') tag,SUM(BYTES)/1024/1024 sbytes FROM ACCT WHERE NAME='".$name."' and TIME_RUN between ".$from." and ".$till." GROUP by date(TIME_RUN,'unixepoch')) xx;");
+       if ($table eq 'ACCT_HIST'){
+               $res = $dbh->selectall_arrayref( "SELECT strftime('%d.%m.%Y',TIME_RUN),(SELECT SUM(BYTES)/1024/1024 FROM ACCT_HIST WHERE TIME_RUN <= ah.TIME_RUN and TIME_RUN > date($from,'unixepoch') and NAME = '".$name."') kum_bytes FROM ACCT_HIST ah WHERE date(TIME_RUN) > date(".$from.",'unixepoch') AND date(TIME_RUN) < date(".$till.",'unixepoch') AND NAME = '".$name."' group by date(TIME_RUN);");
        }else{
-               $res = $dbh->selectall_arrayref( "SELECT TIME_RUN, (SELECT SUM(BYTES)/1024/1024 FROM ACCT_HIST WHERE TIME_RUN <= ah.TIME_RUN and NAME = '".$name."') kum_bytes FROM ACCT_HIST ah WHERE TIME_RUN BETWEEN date(".$from.",'unixepoch') AND date(".$till.",'unixepoch') AND NAME = '".$name."' group by TIME_RUN;");
+               $res = $dbh->selectall_arrayref( "SELECT strftime('%d.%m.%Y',xx.tag),(SELECT SUM(BYTES)/1024/1024 FROM ACCT WHERE date(TIME_RUN,'unixepoch') <= xx.tag and TIME_RUN > ".$from." and NAME = '".$name."') kum_bytes FROM (SELECT NAME,date(TIME_RUN,'unixepoch') tag,SUM(BYTES)/1024/1024 sbytes FROM ACCT WHERE NAME='".$name."' and TIME_RUN between ".$from." and ".$till." GROUP by NAME,date(TIME_RUN,'unixepoch')) xx;");
        }
        $dbh=closedb;
        return $res;
index 79fc7bae43eede00a9444d2c5e761cf7ec60793a..722268945826c0cd8d2228eb2d100f5011999131 100755 (executable)
@@ -100,7 +100,7 @@ if (-f $proxyenabled && $proxylog eq $Lang::tr{'running'}){
                open (FH,">/var/log/accounting.log");
                close (FH);
                chmod 0755, "/var/log/accounting.log";
-               #move all db entries older than 2 months to second table and cumulate them hourly
+               #move all db entries older than this month to second table and cumulate them daily
                &ACCT::movedbdata;
                &ACCT::logger($settings{'LOG'},"New Month. Old trafficvalues moved to ACCT_HIST Table\n");
                if ($settings{'USEMAIL'} eq 'on'){
similarity index 76%
rename from tools/checkwronginitlinks
rename to tools/checkrootfiles
index 65fc946b68e7b8c83e52d9be3309fdc4ca7821d0..74fab3e02310b6bce11bf37e8375f9bd02e7dea5 100755 (executable)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  info@ipfire.org                       #
+# Copyright (C) 2007-2015  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        #
@@ -32,3 +32,17 @@ if [ "${?}" == "0" ]; then
        grep -r "^var/run//*" ./config/rootfiles/
        echo "Comment this and create it at initskript if needed !"
 fi
+
+grep -r "/i586" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore >/dev/null 2>&1
+if [ "${?}" == "0" ]; then
+       echo "Error! '/i586' in rootfiles files found!"
+       grep -r "/i586" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore
+       echo "Replace by MACHINE !"
+fi
+
+grep -r "/armv5tel" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore >/dev/null 2>&1
+if [ "${?}" == "0" ]; then
+       echo "Error! '/armv5tel' in rootfiles files found!"
+       grep -r "/armv5tel" ./config/rootfiles/ --exclude gcc --exclude-dir oldcore
+       echo "Replace by MACHINE !"
+fi