diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2021-08-21 16:00:38 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2021-08-21 16:00:38 +0000 |
commit | 69286d2b0f16b4b770170b74b6a9e7c2ed2b9823 (patch) | |
tree | 745e6793b426c82af1a8ec294d3eba0f5cbcce74 | |
parent | Adding upstream version 1.5.1. (diff) | |
download | dnsdist-69286d2b0f16b4b770170b74b6a9e7c2ed2b9823.tar.xz dnsdist-69286d2b0f16b4b770170b74b6a9e7c2ed2b9823.zip |
Adding debian version 1.5.1-3.debian/1.5.1-3debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
-rw-r--r-- | debian/.gitlab-ci.yml | 6 | ||||
-rw-r--r-- | debian/changelog | 265 | ||||
-rw-r--r-- | debian/config/dnsdist.conf | 5 | ||||
-rwxr-xr-x | debian/configure-helpers/net-snmp-config | 21 | ||||
-rw-r--r-- | debian/control | 43 | ||||
-rw-r--r-- | debian/copyright | 282 | ||||
-rw-r--r-- | debian/dnsdist.dirs | 1 | ||||
-rw-r--r-- | debian/dnsdist.examples | 1 | ||||
-rw-r--r-- | debian/dnsdist.init | 13 | ||||
-rw-r--r-- | debian/dnsdist.lintian-overrides | 2 | ||||
-rw-r--r-- | debian/dnsdist.postinst | 40 | ||||
-rw-r--r-- | debian/docs | 1 | ||||
-rw-r--r-- | debian/gbp.conf | 4 | ||||
-rw-r--r-- | debian/lintian-brush.conf | 1 | ||||
l--------- | debian/missing-sources/d3.js | 1 | ||||
l--------- | debian/missing-sources/jquery.js | 1 | ||||
l--------- | debian/missing-sources/moment.js | 1 | ||||
l--------- | debian/missing-sources/rickshaw.js | 1 | ||||
-rw-r--r-- | debian/patches/0001-dnsdist-Fix-eBPF-filtering-of-long-qnames.patch | 254 | ||||
-rw-r--r-- | debian/patches/series | 1 | ||||
-rwxr-xr-x | debian/rules | 59 | ||||
-rw-r--r-- | debian/source/format | 1 | ||||
-rw-r--r-- | debian/source/lintian-overrides | 5 | ||||
-rw-r--r-- | debian/upstream/metadata | 6 | ||||
-rw-r--r-- | debian/upstream/signing-key.asc | 143 | ||||
-rw-r--r-- | debian/watch | 3 |
26 files changed, 1161 insertions, 0 deletions
diff --git a/debian/.gitlab-ci.yml b/debian/.gitlab-ci.yml new file mode 100644 index 0000000..5c575a1 --- /dev/null +++ b/debian/.gitlab-ci.yml @@ -0,0 +1,6 @@ +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml + +variables: + RELEASE: 'unstable' diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..4c68608 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,265 @@ +dnsdist (1.5.1-3) unstable; urgency=medium + + * Disable GnuTLS, one crypto lib is enough + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 18 Dec 2020 14:12:25 +0000 + +dnsdist (1.5.1-2) unstable; urgency=medium + + * Simplify build rules + * Bump Standards-Version to 4.5.1 + * Build with luajit on amd64, and Lua 5.1 on other archs. + Once #908137 is fixed, we should enable luajit on arm64 too. + Unfortunately we were building with Lua 5.3 earlier, so this + is a feature "regression" of sorts - but it can be much faster. + * Add upstream patch fixing an eBPF long qname issue + + -- Chris Hofstaedtler <zeha@debian.org> Thu, 17 Dec 2020 22:20:04 +0000 + +dnsdist (1.5.1-1) unstable; urgency=medium + + * New upstream version 1.5.1 + + -- Chris Hofstaedtler <zeha@debian.org> Thu, 01 Oct 2020 13:06:31 +0000 + +dnsdist (1.5.0-1) unstable; urgency=medium + + * New upstream version 1.5.0 + * Update ownership rules for /etc/dnsdist/dnsdist.conf + * Update Standards-Version to 4.5.0, dh compat to 13 + + -- Chris Hofstaedtler <zeha@debian.org> Thu, 30 Jul 2020 22:49:16 +0000 + +dnsdist (1.4.0-2) unstable; urgency=medium + + [ Debian Janitor ] + * Set upstream metadata fields: Bug-Submit. + + [ Chris Hofstaedtler ] + * Add upstream patch to fix FTBFS with gcc 10 (Closes: #957145) + * d/copyright: rename GPL-3-or-Autoconf license paragraph + + -- Chris Hofstaedtler <zeha@debian.org> Wed, 22 Jul 2020 21:50:19 +0000 + +dnsdist (1.4.0-1) unstable; urgency=medium + + * New upstream version 1.4.0 + + -- Chris Hofstaedtler <zeha@debian.org> Wed, 20 Nov 2019 17:47:14 +0000 + +dnsdist (1.4.0~rc5-1) unstable; urgency=medium + + * New upstream version 1.4.0~rc5 + * Bump Standards-Version to 4.4.1 + + -- Chris Hofstaedtler <zeha@debian.org> Tue, 05 Nov 2019 19:43:53 +0000 + +dnsdist (1.4.0~rc3-1) unstable; urgency=medium + + * New upstream version 1.4.0~rc3 + + -- Chris Hofstaedtler <zeha@debian.org> Tue, 01 Oct 2019 12:02:39 +0000 + +dnsdist (1.4.0~rc2-1) unstable; urgency=medium + + [ Debian Janitor ] + * Re-export upstream signing key without extra signatures. + * Set fields Upstream-Contact in debian/copyright. + * Remove obsolete fields Name, Contact from debian/upstream/metadata. + + [ Chris Hofstaedtler ] + * New upstream version 1.4.0~rc2 + Build with CDB and LMDB for new features. + + -- Chris Hofstaedtler <zeha@debian.org> Mon, 02 Sep 2019 19:39:24 +0000 + +dnsdist (1.4.0~rc1-1) unstable; urgency=medium + + * New upstream version 1.4.0~rc1 + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 30 Aug 2019 11:11:52 +0000 + +dnsdist (1.4.0~beta1-3) unstable; urgency=medium + + * d/rules: remove harmless extra argument to dh_auto_configure + * Update init script. + Thanks to Jens Meißner <heptalium@gmx.de> (Closes: #934162) + + -- Chris Hofstaedtler <zeha@debian.org> Wed, 07 Aug 2019 22:38:35 +0000 + +dnsdist (1.4.0~beta1-2) unstable; urgency=medium + + * Build with libcap + * d/control, d/rules: clean up and sync with pdns(-recursor) + * Enable DNS-over-HTTPS support + * Reenable RE2 + * Filter net-snmp-config flags, see #870734 + * Ship sysvinit script (Closes: #832136) + + -- Chris Hofstaedtler <zeha@debian.org> Sun, 21 Jul 2019 20:04:10 +0000 + +dnsdist (1.4.0~beta1-1) unstable; urgency=medium + + * New upstream version 1.4.0~beta1 + * Build-Depend on systemd for proper version detection + * Bump Standards-Version to 4.4.0 + * Use debhelper-compat v12 + * Ship DEP12 UpstreamMetadata per user request + * d/copyright: Update + * d/control: Set Rules-Requires-Root: no + * d/rules: use variables from pkg-info.mk + * d/rules: stop removing RestrictAddressFamilies from systemd service file + * d/rules: fix trailing whitespace + * Install SNMP MIB + + -- Chris Hofstaedtler <zeha@debian.org> Sun, 21 Jul 2019 15:18:15 +0000 + +dnsdist (1.3.3-3) unstable; urgency=medium + + * Enable SNMP support + + -- Chris Hofstaedtler <zeha@debian.org> Tue, 12 Feb 2019 08:54:00 +0000 + +dnsdist (1.3.3-2) unstable; urgency=medium + + * Set secpoll suffix and add default config file to turn it off + + -- Chris Hofstaedtler <zeha@debian.org> Sat, 10 Nov 2018 14:49:21 +0000 + +dnsdist (1.3.3-1) unstable; urgency=medium + + * New upstream version 1.3.3, including fix for CVE-2018-14663 + (Closes: #913231). + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 09 Nov 2018 19:34:32 +0000 + +dnsdist (1.3.2-1) unstable; urgency=medium + + * New upstream version 1.3.2 + * Bump Standards-Version to 4.1.5 + * Drop upstream applied patches + + -- Chris Hofstaedtler <zeha@debian.org> Mon, 23 Jul 2018 07:16:30 +0000 + +dnsdist (1.3.0-4) unstable; urgency=medium + + * Update test-dnsdistrings patch to avoid further s390x failure + + -- Chris Hofstaedtler <zeha@debian.org> Tue, 03 Apr 2018 11:40:14 +0000 + +dnsdist (1.3.0-3) unstable; urgency=medium + + * Avoid hard test failure for a soft condition + + -- Chris Hofstaedtler <zeha@debian.org> Tue, 03 Apr 2018 07:57:07 +0000 + +dnsdist (1.3.0-2) unstable; urgency=medium + + * Add patch from upstream to fix test/build failure + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 30 Mar 2018 11:49:47 +0000 + +dnsdist (1.3.0-1) unstable; urgency=medium + + * New upstream version 1.3.0 + * Enable DNS-over-TLS and libfstrm. + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 30 Mar 2018 08:45:33 +0000 + +dnsdist (1.2.1-1) unstable; urgency=medium + + * New upstream version 1.2.1 + * Avoid debian-rules-is-dh_make-template lintian error + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 16 Feb 2018 10:41:23 +0000 + +dnsdist (1.2.0-3) unstable; urgency=medium + + * Enable tests at build time + + -- Chris Hofstaedtler <zeha@debian.org> Fri, 19 Jan 2018 21:58:27 +0000 + +dnsdist (1.2.0-2) unstable; urgency=medium + + * Update Maintainer: as alioth is going away + * Update Vcs-* URLs to point to salsa.debian.org + * Bump Standards-Version to 4.1.3 (no changes) + + -- Chris Hofstaedtler <zeha@debian.org> Thu, 18 Jan 2018 20:30:13 +0000 + +dnsdist (1.2.0-1) unstable; urgency=medium + + * New upstream version 1.2.0, fixes CVE-2016-7069, CVE-2017-7557. + (Closes: #872854) + * Install config example + * Remove now-default options to dh + * Force rebuild of dnslabeltext.cc + * Update debian/copyright + * Bump Standards-Version to 4.1.0 + + -- Christian Hofstaedtler <zeha@debian.org> Tue, 22 Aug 2017 09:47:47 +0000 + +dnsdist (1.1.0-2) unstable; urgency=medium + + * Bump debhelper compat to 10 for systemd support. + * Drop our outdated copy of dnsdist.service, instead patch the + upstream supplied one at install time to keep -u, -g. + * Drop RestrictAddressFamilies from .service file on 32bit. + This feature is broken in systemd before v233. (See also #849817) + + -- Christian Hofstaedtler <zeha@debian.org> Sat, 31 Dec 2016 15:50:47 +0000 + +dnsdist (1.1.0-1) unstable; urgency=medium + + * New upstream version 1.1.0, upload to unstable. + + -- Christian Hofstaedtler <zeha@debian.org> Thu, 29 Dec 2016 15:52:06 +0000 + +dnsdist (1.1.0~beta2-2) experimental; urgency=medium + + * Build with LDFLAGS=-latomic to fix FTBFS on powerpc + + -- Christian Hofstaedtler <zeha@debian.org> Sun, 18 Dec 2016 14:11:59 +0000 + +dnsdist (1.1.0~beta2-1) experimental; urgency=medium + + * New upstream (beta) release, target experimental. + * Enable protobuf, re2, systemd integration features. + + -- Christian Hofstaedtler <zeha@debian.org> Sat, 17 Dec 2016 19:42:08 +0000 + +dnsdist (1.0.0-2) unstable; urgency=medium + + * Move package to pkg-dns team. + * Bump Standards-Version to 3.9.8. + * Enable extra hardening features for daemons. + * Sort included html files to improve reproducibility. + + -- Christian Hofstaedtler <zeha@debian.org> Sun, 03 Jul 2016 13:40:56 +0200 + +dnsdist (1.0.0-1) unstable; urgency=medium + + * New upstream version. + * debian/watch: fix versionmangle substiution confusion + + -- Christian Hofstaedtler <zeha@debian.org> Thu, 21 Apr 2016 13:45:37 +0000 + +dnsdist (1.0.0~beta1-1) unstable; urgency=medium + + * New upstream version. + * Use https site in debian/watch. + + -- Christian Hofstaedtler <zeha@debian.org> Fri, 15 Apr 2016 16:17:47 +0000 + +dnsdist (1.0.0~alpha2-2) unstable; urgency=medium + + * Update Standards-Version to 3.9.7 with no other changes + * Add debian/watch file + + -- Christian Hofstaedtler <zeha@debian.org> Wed, 24 Feb 2016 22:57:52 +0000 + +dnsdist (1.0.0~alpha2-1) unstable; urgency=medium + + * Initial release. (Closes: #813823) + + -- Christian Hofstaedtler <zeha@debian.org> Sat, 13 Feb 2016 01:43:50 +0000 diff --git a/debian/config/dnsdist.conf b/debian/config/dnsdist.conf new file mode 100644 index 0000000..87dc035 --- /dev/null +++ b/debian/config/dnsdist.conf @@ -0,0 +1,5 @@ +-- dnsdist configuration file, an example can be found in /usr/share/doc/dnsdist/examples/ + +-- disable security status polling via DNS +setSecurityPollSuffix("") + diff --git a/debian/configure-helpers/net-snmp-config b/debian/configure-helpers/net-snmp-config new file mode 100755 index 0000000..6d8d6e7 --- /dev/null +++ b/debian/configure-helpers/net-snmp-config @@ -0,0 +1,21 @@ +#!/bin/bash + +if [ "$1" = "--cflags" ]; then + FLAGS=$(/usr/bin/net-snmp-config --cflags) + MYFLAGS="" + for flag in $FLAGS; do + if [[ "$flag" =~ -DNETSNMP* ]]; then + MYFLAGS="$MYFLAGS $flag" + fi + done + echo "$MYFLAGS" + exit 0 + +elif [ "$1" = "--netsnmp-agent-libs" ]; then + /usr/bin/net-snmp-config "$@" + exit $? + +else + echo "E: debian/configure-helpers/net-snmp-config: unknown flag $1" >&2 + exit 1 +fi diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..c32c476 --- /dev/null +++ b/debian/control @@ -0,0 +1,43 @@ +Source: dnsdist +Section: net +Priority: optional +Standards-Version: 4.5.1 +Maintainer: dnsdist packagers <dnsdist@packages.debian.org> +Uploaders: Chris Hofstaedtler <zeha@debian.org> +Build-Depends: debhelper-compat (= 13), + libboost-all-dev, + libcap-dev [linux-any], + libcdb-dev, + libedit-dev, + libfstrm-dev, + libh2o-dev, + libh2o-evloop-dev, + liblmdb-dev, + liblua5.1-0-dev [!amd64], + libluajit-5.1-dev [amd64] | liblua5.1-0-dev, + libprotobuf-dev, + libre2-dev, + libsnmp-dev, + libsodium-dev, + libssl-dev, + libsystemd-dev, + pkg-config, + protobuf-compiler, + ragel, + systemd +Vcs-Git: https://salsa.debian.org/dns-team/dnsdist.git +Vcs-Browser: https://salsa.debian.org/dns-team/dnsdist +Homepage: https://dnsdist.org +Rules-Requires-Root: no + +Package: dnsdist +Architecture: any +Pre-Depends: ${misc:Pre-Depends} +Depends: adduser, + ${misc:Depends}, + ${shlibs:Depends} +Description: DNS loadbalancer + Highly DoS- and abuse-aware load balancing tool for DNS traffic, + with Lua scripting and configuration capability. + Can be configured to use various sets of rules to classify, route + and reject traffic. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..04af6a5 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,282 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: dnsdist +Source: https://dnsdist.org +Upstream-Contact: https://mailman.powerdns.com/mailman/listinfo/dnsdist + +Files: * +Copyright: 2002-2019 PowerDNS.COM BV and contributors +License: GPL-2 with OpenSSL Exception + +Files: debian/* +Copyright: 2002-2019 PowerDNS.COM BV and contributors + 2016-2019 Christian Hofstaedtler <zeha@debian.org> +License: GPL-2 with OpenSSL Exception +Comment: Debian packaging is under same license as upstream code + +Files: ext/incbin/* +Copyright: 2015, Dale Weiler +License: Unlicense + +Files: ext/ipcrypt/* +Copyright: 2015-2018, Frank Denis <j@pureftpd.org> +License: ISC + +Files: ext/json11/* +Copyright: 2013 Dropbox, Inc. +License: Expat + +Files: ext/libbpf/* +Copyright: 2015, 2016 Alexei Starovoitov <ast@plumgrid.com> +License: GPL-2 +Comment: taken from Linux kernel source + +Files: ext/luawrapper/* +Copyright: 2013, Pierre KRIEGER +License: BSD-3 + +Files: ext/yahttp/* +Copyright: 2014 Aki Tuomi +License: Expat + +Files: compile ltmain.sh +Copyright: 1996-2011 Free Software Foundation, Inc. +License: GPL-2+ + +Files: m4/ax_cxx_compile_stdcxx_11.m4 +Copyright: 2008 Benjamin Kosnik <bkoz@redhat.com> + 2012 Zack Weinberg <zackw@panix.com> + 2013 Roy Stogner <roystgnr@ices.utexas.edu> + 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com> +License: free-generic + +Files: m4/boost.m4 +Copyright: 2007-2011, 2014 Benoit Sigoure <tsuna@lrde.epita.fr> +License: GPL-3-or-Autoconf + +Files: m4/libtool.m4 m4/lt*.m4 +Copyright: 1996-2011 Free Software Foundation, Inc. +License: free-fsf + +Files: m4/systemd.m4 +Copyright: 2014 Luis R. Rodriguez <mcgrof@suse.com> + 2016 Pieter Lexis <pieter.lexis@powerdns.com> +License: GPL-2+ + +Files: m4/warnings.m4 +Copyright: 2008-2015 Free Software Foundation, Inc. +License: free-fsf + +Files: m4/pdns_d_fortify_source.m4 m4/pdns_param_ssp_buffer_size.m4 m4/pdns_pie.m4 m4/pdns_relro.m4 m4/pdns_stack_protector.m4 +Copyright: 2013 Red Hat, Inc. +License: LGPL-2.1+ + +Files: src_js/d3.js +Copyright: 2010-2016 Mike Bostock +License: Expat + +Files: src_js/jquery.js +Copyright: JS Foundation and other contributors +License: Expat + +Files: src_js/moment.js +Copyright: JS Foundation and other contributors +License: Expat + +Files: src_js/rickshaw.js +Copyright: 2011-2014 by Shutterstock Images, LLC +License: Expat + +License: Unlicense + This is free and unencumbered software released into the public domain. + . + Anyone is free to copy, modify, publish, use, compile, sell, or + distribute this software, either in source code form or as a compiled + binary, for any purpose, commercial or non-commercial, and by any + means. + . + In jurisdictions that recognize copyright laws, the author or authors + of this software dedicate any and all copyright interest in the + software to the public domain. We make this dedication for the benefit + of the public at large and to the detriment of our heirs and + successors. We intend this dedication to be an overt act of + relinquishment in perpetuity of all present and future rights to this + software under copyright law. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + . + For more information, please refer to <http://unlicense.org/> + +License: GPL-2 with OpenSSL Exception + This program is free software; you can redistribute it and/or modify + it under the terms of version 2 of the GNU General Public License as + published by the Free Software Foundation. + . + In addition, for the avoidance of any doubt, permission is granted to + link this program with OpenSSL and to (re)distribute the binaries + produced as the result of such linking. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + . + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + `/usr/share/common-licenses/GPL-2'. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + +License: ISC + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: BSD-3 + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the <organization> nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library. If not, see + <http://www.gnu.org/licenses/>. + . + On Debian systems, the full text of the GNU Lesser General Public + License version 2.1 can be found in the file + `/usr/share/common-licenses/LGPL-2.1'. + +License: GPL-2 + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + . + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + `/usr/share/common-licenses/GPL-2'. + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + . + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + `/usr/share/common-licenses/GPL-2'. + +License: GPL-3-or-Autoconf + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + . + Additional permission under section 7 of the GNU General Public + License, version 3 ("GPLv3"): + . + If you convey this file as part of a work that contains a + configuration script generated by Autoconf, you may do so under + terms of your choice. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + . + On Debian systems, the full text of the GNU General Public + License version 3 can be found in the file + `/usr/share/common-licenses/GPL-3'. + +License: free-fsf + This file is free software; the Free Software Foundation gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + +License: free-generic + Copying and distribution of this file, with or without modification, are + permitted in any medium without royalty provided the copyright notice + and this notice are preserved. This file is offered as-is, without any + warranty. diff --git a/debian/dnsdist.dirs b/debian/dnsdist.dirs new file mode 100644 index 0000000..a97ae06 --- /dev/null +++ b/debian/dnsdist.dirs @@ -0,0 +1 @@ +/etc/dnsdist diff --git a/debian/dnsdist.examples b/debian/dnsdist.examples new file mode 100644 index 0000000..636562b --- /dev/null +++ b/debian/dnsdist.examples @@ -0,0 +1 @@ +dnsdist.conf diff --git a/debian/dnsdist.init b/debian/dnsdist.init new file mode 100644 index 0000000..a3f4996 --- /dev/null +++ b/debian/dnsdist.init @@ -0,0 +1,13 @@ +#!/usr/bin/env /lib/init/init-d-script +### BEGIN INIT INFO +# Provides: dnsdist +# Required-Start: $syslog $remote_fs +# Required-Stop: $syslog $remote_fs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: DNS Loadbalancer +# Description: Debian init script to start the dnsdist daemon. +### END INIT INFO +DAEMON=/usr/bin/dnsdist +START_ARGS="-b -m" +DAEMON_ARGS="-u _dnsdist -g _dnsdist --supervised" diff --git a/debian/dnsdist.lintian-overrides b/debian/dnsdist.lintian-overrides new file mode 100644 index 0000000..08c94bf --- /dev/null +++ b/debian/dnsdist.lintian-overrides @@ -0,0 +1,2 @@ +# Often this file will contain passwords. +dnsdist: non-standard-file-perm etc/dnsdist/dnsdist.conf 0640 != 0644 diff --git a/debian/dnsdist.postinst b/debian/dnsdist.postinst new file mode 100644 index 0000000..8a4fda1 --- /dev/null +++ b/debian/dnsdist.postinst @@ -0,0 +1,40 @@ +#! /bin/sh + +set -e + +# summary of how this script can be called: +# * <postinst> `configure' <most-recently-configured-version> +# * <old-postinst> `abort-upgrade' <new version> +# * <conflictor's-postinst> `abort-remove' `in-favour' <package> +# <new-version> +# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' +# <failed-install-package> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +case "$1" in + configure) + + adduser --force-badname --system --home /nonexistent --group \ + --no-create-home --quiet _dnsdist || true + + chown root:_dnsdist /etc/dnsdist/dnsdist.conf + chmod g+r /etc/dnsdist/dnsdist.conf + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..b43bf86 --- /dev/null +++ b/debian/docs @@ -0,0 +1 @@ +README.md diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 0000000..9eee0d4 --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,4 @@ +[DEFAULT] +pristine-tar = True +multimaint-merge = True +patch-numbers = False diff --git a/debian/lintian-brush.conf b/debian/lintian-brush.conf new file mode 100644 index 0000000..e3ca1f5 --- /dev/null +++ b/debian/lintian-brush.conf @@ -0,0 +1 @@ +allow-reformatting = true diff --git a/debian/missing-sources/d3.js b/debian/missing-sources/d3.js new file mode 120000 index 0000000..19eca87 --- /dev/null +++ b/debian/missing-sources/d3.js @@ -0,0 +1 @@ +../../src_js/d3.js
\ No newline at end of file diff --git a/debian/missing-sources/jquery.js b/debian/missing-sources/jquery.js new file mode 120000 index 0000000..a2586f4 --- /dev/null +++ b/debian/missing-sources/jquery.js @@ -0,0 +1 @@ +../../src_js/jquery.js
\ No newline at end of file diff --git a/debian/missing-sources/moment.js b/debian/missing-sources/moment.js new file mode 120000 index 0000000..0cd9cc4 --- /dev/null +++ b/debian/missing-sources/moment.js @@ -0,0 +1 @@ +../../src_js/moment.js
\ No newline at end of file diff --git a/debian/missing-sources/rickshaw.js b/debian/missing-sources/rickshaw.js new file mode 120000 index 0000000..c136703 --- /dev/null +++ b/debian/missing-sources/rickshaw.js @@ -0,0 +1 @@ +../../src_js/rickshaw.js
\ No newline at end of file diff --git a/debian/patches/0001-dnsdist-Fix-eBPF-filtering-of-long-qnames.patch b/debian/patches/0001-dnsdist-Fix-eBPF-filtering-of-long-qnames.patch new file mode 100644 index 0000000..5ce8c51 --- /dev/null +++ b/debian/patches/0001-dnsdist-Fix-eBPF-filtering-of-long-qnames.patch @@ -0,0 +1,254 @@ +From 759309e81c38cedd26e84a2d75c538f88313700f Mon Sep 17 00:00:00 2001 +From: Remi Gacogne <remi.gacogne@powerdns.com> +Date: Mon, 9 Nov 2020 14:46:08 +0100 +Subject: [PATCH] dnsdist: Fix eBPF filtering of long qnames + +This commit switches to the use of eBPF positive offsets to access +the content of the transport and application layers, since using +negative offsets (needed to access the other layers) led to issues +with long qnames. +This is cleaner anyway :-) + +(cherry picked from commit abbc72876eabc7a1745f50e7a9ff4c41b4bbef62) +--- + bpf-filter.ebpf.src | 8 +- + bpf-filter.main.ebpf | 152 ++++++++++++++++---------------------- + 2 files changed, 71 insertions(+), 89 deletions(-) + +diff --git a/bpf-filter.ebpf.src b/bpf-filter.ebpf.src +index f1c5effcb..9f5866906 100644 +--- a/bpf-filter.ebpf.src ++++ b/bpf-filter.ebpf.src +@@ -401,6 +401,9 @@ int bpf_qname_filter(struct __sk_buff *skb) + int bpf_dns_filter(struct __sk_buff *skb) { + u8 ip_proto; + int proto_off; ++ /* nh_off will contain a negative offset, used in BPF to get access to ++ the MAC/network layers, as positive values are used to get access to ++ the transport layer */ + int nh_off = BPF_LL_OFF + ETH_HLEN; + + if (skb->protocol == ntohs(0x0800)) { +@@ -457,7 +460,10 @@ int bpf_dns_filter(struct __sk_buff *skb) { + } + + struct QNameKey qkey = { 0 }; +- int dns_off = proto_off + sizeof(struct udphdr); ++ /* switch to positive offsets here, as we have seen some issues ++ when accessing the content of the transport layer with negative offsets ++ https://github.com/PowerDNS/pdns/issues/9626 */ ++ int dns_off = sizeof(struct udphdr); + int qname_off = dns_off + sizeof(struct dnsheader); + skb->cb[0] = (uint32_t) qname_off; + u16 qtype; +diff --git a/bpf-filter.main.ebpf b/bpf-filter.main.ebpf +index 954b98a39..452a7d33b 100644 +--- a/bpf-filter.main.ebpf ++++ b/bpf-filter.main.ebpf +@@ -1,71 +1,65 @@ + /* generated from the bpf_dns_filter() function in bpf-filter.ebpf.src */ + BPF_MOV64_REG(BPF_REG_6,BPF_REG_1), ++BPF_MOV64_IMM(BPF_REG_7,2147483647), + BPF_LDX_MEM(BPF_W,BPF_REG_1,BPF_REG_6,16), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,ntohs(0x86dd),14), +-BPF_MOV64_IMM(BPF_REG_0,2147483647), +-BPF_JMP_IMM(BPF_JNE,BPF_REG_1,ntohs(0x0800),160), ++BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,ntohs(0x86dd),11), ++BPF_JMP_IMM(BPF_JNE,BPF_REG_1,ntohs(0x0800),109), + BPF_LD_ABS(BPF_W,-2097126), +-BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_0,-4), ++BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_0,-256), + BPF_LD_MAP_FD(BPF_REG_1,d_v4map.fd), + BPF_MOV64_REG(BPF_REG_2,BPF_REG_10), +-BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-4), ++BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-256), + BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,0,47), +-BPF_MOV64_IMM(BPF_REG_1,1), +-BPF_RAW_INSN(BPF_STX|BPF_XADD|BPF_DW,BPF_REG_0,BPF_REG_1,0,0), +-BPF_MOV64_IMM(BPF_REG_0,0), +-BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,148), ++BPF_JMP_IMM(BPF_JNE,BPF_REG_0,0,98), ++BPF_LD_ABS(BPF_B,-2097129), ++BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,39), + BPF_LD_ABS(BPF_B,-2097130), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-24), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-256), + BPF_LD_ABS(BPF_B,-2097129), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-23), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-255), + BPF_LD_ABS(BPF_B,-2097128), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-22), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-254), + BPF_LD_ABS(BPF_B,-2097127), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-21), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-253), + BPF_LD_ABS(BPF_B,-2097126), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-20), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-252), + BPF_LD_ABS(BPF_B,-2097125), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-19), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-251), + BPF_LD_ABS(BPF_B,-2097124), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-18), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-250), + BPF_LD_ABS(BPF_B,-2097123), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-17), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-249), + BPF_LD_ABS(BPF_B,-2097122), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-16), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-248), + BPF_LD_ABS(BPF_B,-2097121), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-15), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-247), + BPF_LD_ABS(BPF_B,-2097120), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-14), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-246), + BPF_LD_ABS(BPF_B,-2097119), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-13), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-245), + BPF_LD_ABS(BPF_B,-2097118), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-12), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-244), + BPF_LD_ABS(BPF_B,-2097117), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-11), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-243), + BPF_LD_ABS(BPF_B,-2097116), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-10), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-242), + BPF_LD_ABS(BPF_B,-2097115), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-9), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-241), + BPF_LD_MAP_FD(BPF_REG_1,d_v6map.fd), + BPF_MOV64_REG(BPF_REG_2,BPF_REG_10), +-BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-24), ++BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-256), + BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,0,1), +-BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,-43), +-BPF_LD_IMM64_RAW(BPF_REG_7,BPF_REG_0,4292870218), ++BPF_JMP_IMM(BPF_JNE,BPF_REG_0,0,58), + BPF_LD_ABS(BPF_B,-2097132), +-BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,3), +-BPF_LD_IMM64_RAW(BPF_REG_7,BPF_REG_0,4292870198), +-BPF_LD_ABS(BPF_B,-2097129), +-BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), +-BPF_ALU64_IMM(BPF_AND,BPF_REG_1,255), +-BPF_MOV64_IMM(BPF_REG_0,2147483647), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,6,98), ++BPF_ALU64_IMM(BPF_AND,BPF_REG_0,255), ++BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,6,58), + BPF_MOV64_IMM(BPF_REG_1,0), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_1,-26), +-BPF_STX_MEM(BPF_H,BPF_REG_10,BPF_REG_1,-28), +-BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_1,-32), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_1,-2), ++BPF_STX_MEM(BPF_H,BPF_REG_10,BPF_REG_1,-4), ++BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_1,-8), ++BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-16), ++BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-24), ++BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-32), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-40), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-48), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-56), +@@ -94,67 +88,49 @@ BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-232), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-240), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-248), + BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-256), +-BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-264), +-BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-272), +-BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-280), +-BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_7,48), +-BPF_MOV64_REG(BPF_REG_8,BPF_REG_7), +-BPF_ALU64_IMM(BPF_LSH,BPF_REG_8,32), +-BPF_ALU64_IMM(BPF_ARSH,BPF_REG_8,32), +-BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_B,BPF_REG_0,BPF_REG_8,0,0), +-BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), +-BPF_MOV64_REG(BPF_REG_2,BPF_REG_1), +-BPF_ALU64_IMM(BPF_AND,BPF_REG_2,192), +-BPF_MOV64_IMM(BPF_REG_0,0), +-BPF_JMP_IMM(BPF_JGT,BPF_REG_2,63,53), +-BPF_MOV64_REG(BPF_REG_8,BPF_REG_1), +-BPF_ALU64_IMM(BPF_AND,BPF_REG_8,255), +-BPF_JMP_IMM(BPF_JNE,BPF_REG_8,0,22), +-BPF_ALU64_IMM(BPF_OR,BPF_REG_7,1), +-BPF_ALU64_IMM(BPF_LSH,BPF_REG_7,32), +-BPF_ALU64_IMM(BPF_ARSH,BPF_REG_7,32), +-BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_H,BPF_REG_0,BPF_REG_7,0,0), ++BPF_MOV64_IMM(BPF_REG_1,20), ++BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_1,48), ++BPF_LD_ABS(BPF_B,20), ++BPF_MOV64_REG(BPF_REG_8,BPF_REG_0), ++BPF_MOV64_IMM(BPF_REG_7,0), ++BPF_JMP_IMM(BPF_JGT,BPF_REG_8,63,17), ++BPF_JMP_IMM(BPF_JNE,BPF_REG_8,0,18), ++BPF_LD_ABS(BPF_H,21), + BPF_MOV64_REG(BPF_REG_6,BPF_REG_0), + BPF_LD_MAP_FD(BPF_REG_1,d_qnamemap.fd), + BPF_MOV64_REG(BPF_REG_2,BPF_REG_10), +-BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-280), ++BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-256), + BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem), +-BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), +-BPF_MOV64_IMM(BPF_REG_0,2147483647), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,0,37), +-BPF_LDX_MEM(BPF_H,BPF_REG_2,BPF_REG_1,8), +-BPF_JMP_IMM(BPF_JEQ,BPF_REG_2,255,3), ++BPF_MOV64_IMM(BPF_REG_7,2147483647), ++BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,0,7), ++BPF_LDX_MEM(BPF_H,BPF_REG_1,BPF_REG_0,8), ++BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,255,2), + BPF_ALU64_IMM(BPF_AND,BPF_REG_6,65535), +-BPF_MOV64_IMM(BPF_REG_0,2147483647), +-BPF_JMP_REG(BPF_JNE,BPF_REG_6,BPF_REG_2,32), +-BPF_MOV64_IMM(BPF_REG_2,1), +-BPF_RAW_INSN(BPF_STX|BPF_XADD|BPF_DW,BPF_REG_1,BPF_REG_2,0,0), +-BPF_MOV64_IMM(BPF_REG_0,0), +-BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,28), ++BPF_JMP_REG(BPF_JNE,BPF_REG_1,BPF_REG_6,3), ++BPF_MOV64_IMM(BPF_REG_1,1), ++BPF_RAW_INSN(BPF_STX|BPF_XADD|BPF_DW,BPF_REG_0,BPF_REG_1,0,0), ++BPF_MOV64_IMM(BPF_REG_7,0), ++BPF_MOV64_REG(BPF_REG_0,BPF_REG_7), ++BPF_EXIT_INSN(), + BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_8,52), +-BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_1,-280), +-BPF_ALU64_IMM(BPF_OR,BPF_REG_7,1), +-BPF_ALU64_IMM(BPF_LSH,BPF_REG_7,32), +-BPF_ALU64_IMM(BPF_ARSH,BPF_REG_7,32), +-BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_B,BPF_REG_0,BPF_REG_7,0,0), ++BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_8,-256), ++BPF_LD_ABS(BPF_B,21), ++BPF_MOV64_REG(BPF_REG_2,BPF_REG_0), ++BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-65), ++BPF_ALU64_IMM(BPF_LSH,BPF_REG_2,32), ++BPF_ALU64_IMM(BPF_RSH,BPF_REG_2,32), + BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), + BPF_ALU64_IMM(BPF_ADD,BPF_REG_1,32), +-BPF_MOV64_REG(BPF_REG_2,BPF_REG_0), +-BPF_ALU64_IMM(BPF_AND,BPF_REG_2,255), +-BPF_MOV64_IMM(BPF_REG_3,91), ++BPF_MOV64_IMM(BPF_REG_3,26), + BPF_JMP_REG(BPF_JGT,BPF_REG_3,BPF_REG_2,1), + BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), +-BPF_MOV64_IMM(BPF_REG_3,64), +-BPF_JMP_REG(BPF_JGT,BPF_REG_2,BPF_REG_3,1), +-BPF_MOV64_REG(BPF_REG_1,BPF_REG_0), +-BPF_LD_IMM64_RAW(BPF_REG_2,BPF_REG_0,4294967295), +-BPF_ALU64_REG(BPF_ADD,BPF_REG_8,BPF_REG_2), ++BPF_ALU64_IMM(BPF_ADD,BPF_REG_8,-1), ++BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_8,60), + BPF_ALU64_IMM(BPF_AND,BPF_REG_1,255), + BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_1,56), +-BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_8,60), + BPF_LD_MAP_FD(BPF_REG_2,d_filtermap.fd), + BPF_MOV64_REG(BPF_REG_1,BPF_REG_6), + BPF_MOV64_IMM(BPF_REG_3,0), + BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_tail_call), +-BPF_MOV64_IMM(BPF_REG_0,2147483647), +-BPF_EXIT_INSN(), ++BPF_MOV64_IMM(BPF_REG_7,2147483647), ++BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,-25), +-- +2.29.2 + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..3f04f26 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +0001-dnsdist-Fix-eBPF-filtering-of-long-qnames.patch diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..e034bd3 --- /dev/null +++ b/debian/rules @@ -0,0 +1,59 @@ +#!/usr/bin/make -f + +# Turn on all hardening flags, as we're a networked daemon. +export DEB_BUILD_MAINT_OPTIONS=hardening=+all +# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/* +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/default.mk + +# Vendor and version +CXXFLAGS += -DPACKAGEVERSION='"$(DEB_VERSION).$(DEB_VENDOR)"' + + +%: + dh $@ + +override_dh_auto_clean: + dh_auto_clean + rm -f dnslabeltext.cc + +override_dh_auto_configure: + chmod a+x debian/configure-helpers/* + PATH=debian/configure-helpers/:$$PATH dh_auto_configure -- \ + --sysconfdir=/etc/dnsdist \ + --enable-systemd --with-systemd=/lib/systemd/system \ + --enable-unit-tests \ + --disable-silent-rules \ + --enable-dnscrypt \ + --enable-dns-over-https \ + --enable-dns-over-tls \ + --enable-dnstap \ + --with-ebpf \ + --with-gnutls=no \ + --with-libsodium \ + --with-libssl \ + --with-lua \ + --with-net-snmp \ + --with-protobuf \ + --with-re2 \ + --with-service-user='_dnsdist' \ + --with-service-group='_dnsdist' \ + $(CONFIGURE_ARGS) + +override_dh_auto_build-arch: + dh_auto_build -- V=1 + +override_dh_install: + dh_auto_install + install -m 0640 debian/config/dnsdist.conf debian/dnsdist/etc/dnsdist/ + install -d debian/dnsdist/usr/share/dnsdist/snmp + install -m 644 -t debian/dnsdist/usr/share/dnsdist/snmp DNSDIST-MIB.txt + +override_dh_installexamples: + cp dnsdistconf.lua dnsdist.conf + dh_installexamples + rm -f dnsdist.conf + +override_dh_fixperms: + dh_fixperms + chmod 0640 debian/dnsdist/etc/dnsdist/dnsdist.conf diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 0000000..2f26f7d --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,5 @@ +# Sources are in src_js/ +dnsdist source: source-contains-prebuilt-javascript-object html/js/d3.min.js +dnsdist source: source-contains-prebuilt-javascript-object html/js/jquery.min.js +dnsdist source: source-contains-prebuilt-javascript-object html/js/moment.min.js +dnsdist source: source-contains-prebuilt-javascript-object html/js/rickshaw.min.js diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 0000000..549073d --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,6 @@ +Bug-Submit: https://github.com/powerdns/pdns/issues/new +Repository: https://github.com/PowerDNS/pdns.git +Repository-Browse: https://github.com/powerdns/pdns +Homepage: https://www.dnsdist.org/ +Bug-Database: https://github.com/powerdns/pdns/issues +Security-Contact: https://doc.powerdns.com/authoritative/security.html diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc new file mode 100644 index 0000000..3374c9b --- /dev/null +++ b/debian/upstream/signing-key.asc @@ -0,0 +1,143 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +i2OblZ9Wkvts +=m7Xq +-----END PGP PUBLIC KEY BLOCK----- diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..8c81a53 --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +# Site Directory Pattern Version Script +version=3 +opts="pgpsigurlmangle=s/$/.asc/,versionmangle=s/-/~/" https://downloads.powerdns.com/releases/ dnsdist-([0-9]+.*)\.tar\.bz2 debian uupdate |