]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
3 years agoCOOKIES: Use getInnerRemote to determine IP 10289/head
Pieter Lexis [Mon, 20 Sep 2021 09:31:53 +0000 (11:31 +0200)] 
COOKIES: Use getInnerRemote to determine IP

3 years agoCOOKIE: Only send BADCOOKIE over UDP
Pieter Lexis [Mon, 20 Sep 2021 09:19:38 +0000 (11:19 +0200)] 
COOKIE: Only send BADCOOKIE over UDP

3 years agoRemove separate string_compare source
Pieter Lexis [Mon, 20 Sep 2021 09:12:34 +0000 (11:12 +0200)] 
Remove separate string_compare source

3 years agodnspacket: add missing include
Pieter Lexis [Mon, 20 Sep 2021 09:02:56 +0000 (11:02 +0200)] 
dnspacket: add missing include

3 years agoCOOKIES: remove comment
Pieter Lexis [Wed, 15 Sep 2021 13:11:07 +0000 (15:11 +0200)] 
COOKIES: remove comment

3 years agoCOOKIES: more constness, rm unused func
Pieter Lexis [Wed, 15 Sep 2021 08:02:40 +0000 (10:02 +0200)] 
COOKIES: more constness, rm unused func

3 years agocookies: move consts to class instead of defines
Pieter Lexis [Fri, 9 Jul 2021 09:51:50 +0000 (11:51 +0200)] 
cookies: move consts to class instead of defines

3 years agoApply suggestions from code review
Pieter Lexis [Fri, 9 Jul 2021 09:31:02 +0000 (11:31 +0200)] 
Apply suggestions from code review

Co-authored-by: Remi Gacogne <github@coredump.fr>
3 years agoCookies: use constant time comparison
Pieter Lexis [Wed, 2 Jun 2021 13:35:03 +0000 (15:35 +0200)] 
Cookies: use constant time comparison

3 years agoMove constantTimeStringEquals to its own file
Pieter Lexis [Wed, 2 Jun 2021 13:31:56 +0000 (15:31 +0200)] 
Move constantTimeStringEquals to its own file

3 years agoDon't store validation state in cookie object
Pieter Lexis [Tue, 1 Jun 2021 14:30:22 +0000 (16:30 +0200)] 
Don't store validation state in cookie object

3 years agoMake some cookie sizes constant, fix nits
Pieter Lexis [Tue, 1 Jun 2021 11:18:54 +0000 (13:18 +0200)] 
Make some cookie sizes constant, fix nits

3 years agoauth: Add counter for EDNS Cookies
Pieter Lexis [Tue, 13 Apr 2021 10:08:57 +0000 (12:08 +0200)] 
auth: Add counter for EDNS Cookies

3 years agoauth: Implement RFC 7872 and 9018 (COOKIES)
Pieter Lexis [Mon, 12 Apr 2021 10:58:56 +0000 (12:58 +0200)] 
auth: Implement RFC 7872 and 9018 (COOKIES)

This implements the siphash-based interoperable DNS COOKIES defined in
RFC 9018 for the authoritative server. The EDNSCookieOpt struct has been
expanded to accomodate this and can now has constructors and functions
to check and generate a server cookie.

Cookies will only be sent out if the client sent a cookie and the
edns-cookie-secret setting is configures. The auth will respond with
EDNS+FORMERR when the client cookie is malformed, BADCOOKIE when the
client sent a server cookie we can't decode or is invalid and a normal
response with a cookie (either new or sent by the client) when the
cookie can be validated.

3 years agoAdd function to make a bytestring from hex
Pieter Lexis [Tue, 6 Apr 2021 21:44:51 +0000 (23:44 +0200)] 
Add function to make a bytestring from hex

3 years agoComboAddress: Add toByteString() function
Pieter Lexis [Wed, 10 Jul 2019 12:32:04 +0000 (14:32 +0200)] 
ComboAddress: Add toByteString() function

3 years agofind crypto_shorthash in sodium for siphash-2-4
Pieter Lexis [Tue, 6 Apr 2021 21:15:09 +0000 (23:15 +0200)] 
find crypto_shorthash in sodium for siphash-2-4

3 years agoMerge pull request #10718 from rgacogne/rec-ns-not-aa-in-dname-answers
Remi Gacogne [Mon, 20 Sep 2021 07:49:13 +0000 (09:49 +0200)] 
Merge pull request #10718 from rgacogne/rec-ns-not-aa-in-dname-answers

rec: Only the DNAME records are authoritative in DNAME answers

3 years agoMerge pull request #9662 from cmouse/patch-1604087167
Peter van Dijk [Fri, 17 Sep 2021 14:06:01 +0000 (16:06 +0200)] 
Merge pull request #9662 from cmouse/patch-1604087167

Coverity fixes

3 years agoMerge pull request #10653 from rgacogne/lock-guarded-auth
Peter van Dijk [Fri, 17 Sep 2021 12:50:02 +0000 (14:50 +0200)] 
Merge pull request #10653 from rgacogne/lock-guarded-auth

auth: Convert locks to LockGuarded

3 years agoMerge pull request #10157 from rgacogne/ddist-hashed-passwords
Remi Gacogne [Fri, 17 Sep 2021 08:03:41 +0000 (10:03 +0200)] 
Merge pull request #10157 from rgacogne/ddist-hashed-passwords

Move to hashed passwords for the web interface

3 years agocomfun.cc: Fix issues 9662/head
Aki Tuomi [Fri, 5 Mar 2021 09:55:31 +0000 (11:55 +0200)] 
comfun.cc: Fix issues

3 years agoMerge pull request #10729 from rgacogne/ddist-doc-deps
Remi Gacogne [Fri, 17 Sep 2021 07:28:03 +0000 (09:28 +0200)] 
Merge pull request #10729 from rgacogne/ddist-doc-deps

dnsdist: Update the list of dependencies in the documentation

3 years agodistributor.hh: Document threadname truncation
Aki Tuomi [Mon, 2 Nov 2020 07:58:10 +0000 (09:58 +0200)] 
distributor.hh: Document threadname truncation

3 years agopdns: stubresolver - Ignore waitForPipe error, handled later
Aki Tuomi [Fri, 30 Oct 2020 20:41:47 +0000 (22:41 +0200)] 
pdns: stubresolver - Ignore waitForPipe error, handled later

3 years agopdns: signingpipe - Ignore waitForPipe error, handled later
Aki Tuomi [Fri, 30 Oct 2020 20:41:18 +0000 (22:41 +0200)] 
pdns: signingpipe - Ignore waitForPipe error, handled later

3 years agopdns: distributor - Initialize question id and callback
Aki Tuomi [Fri, 30 Oct 2020 20:30:22 +0000 (22:30 +0200)] 
pdns: distributor - Initialize question id and callback

3 years agoglobal: Check setsockopt return value
Aki Tuomi [Fri, 5 Mar 2021 09:57:04 +0000 (11:57 +0200)] 
global: Check setsockopt return value

3 years agopdns: dnsseckeeper - Clarify cache clearing never fails
Aki Tuomi [Fri, 30 Oct 2020 19:47:22 +0000 (21:47 +0200)] 
pdns: dnsseckeeper - Clarify cache clearing never fails

3 years agopdns: svc-records - Delete default constructor
Aki Tuomi [Fri, 30 Oct 2020 19:46:11 +0000 (21:46 +0200)] 
pdns: svc-records - Delete default constructor

It is not usable

3 years agoMerge pull request #10660 from Habbie/auth-proxy-protocol
Peter van Dijk [Thu, 16 Sep 2021 14:24:38 +0000 (16:24 +0200)] 
Merge pull request #10660 from Habbie/auth-proxy-protocol

auth: incoming PROXY support

3 years agodnsdist: Update Outgoing regression tests for hashed credentials 10157/head
Remi Gacogne [Wed, 15 Sep 2021 07:44:18 +0000 (09:44 +0200)] 
dnsdist: Update Outgoing regression tests for hashed credentials

3 years agodnsdist: Reduce the "non-hashed password" messages to the info level
Remi Gacogne [Wed, 30 Jun 2021 14:25:53 +0000 (16:25 +0200)] 
dnsdist: Reduce the "non-hashed password" messages to the info level

3 years agoDocument that hashed credentials can be used without 'webserver-hash-plaintext-creden...
Remi Gacogne [Wed, 30 Jun 2021 14:04:04 +0000 (16:04 +0200)] 
Document that hashed credentials can be used without 'webserver-hash-plaintext-credentials'

3 years agorec: Add "hash-password" to the rec_control help
Remi Gacogne [Wed, 30 Jun 2021 13:57:00 +0000 (15:57 +0200)] 
rec: Add "hash-password" to the rec_control help

3 years agoUpdate m4/pdns_check_libcrypto.m4
Remi Gacogne [Tue, 29 Jun 2021 10:30:22 +0000 (12:30 +0200)] 
Update m4/pdns_check_libcrypto.m4

Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
3 years agoCredentials: Fix compilation without OpenSSL 1.1.1
Remi Gacogne [Wed, 23 Jun 2021 16:00:25 +0000 (18:00 +0200)] 
Credentials: Fix compilation without OpenSSL 1.1.1

3 years agoCredentials: Fix formatting issues
Remi Gacogne [Wed, 23 Jun 2021 15:57:15 +0000 (17:57 +0200)] 
Credentials: Fix formatting issues

3 years agoWhitelist 'scrypt' for the spell checker
Remi Gacogne [Wed, 23 Jun 2021 15:41:57 +0000 (17:41 +0200)] 
Whitelist 'scrypt' for the spell checker

3 years agodnsdist: Convert the regression tests to the new password storage format
Remi Gacogne [Wed, 23 Jun 2021 15:40:41 +0000 (17:40 +0200)] 
dnsdist: Convert the regression tests to the new password storage format

3 years agoCredentials: Apply comments from code review
Remi Gacogne [Mon, 21 Jun 2021 16:30:14 +0000 (18:30 +0200)] 
Credentials: Apply comments from code review

3 years agoCredentials: Fix a missing semicolon
Remi Gacogne [Mon, 21 Jun 2021 16:14:55 +0000 (18:14 +0200)] 
Credentials: Fix a missing semicolon

3 years agoauth: Allow hashing with a custom work factor
Remi Gacogne [Mon, 21 Jun 2021 16:14:15 +0000 (18:14 +0200)] 
auth: Allow hashing with a custom work factor

3 years agorec: Allow hashing with a custom work factor
Remi Gacogne [Mon, 21 Jun 2021 16:14:02 +0000 (18:14 +0200)] 
rec: Allow hashing with a custom work factor

3 years agodnsdist: Allow hashing with a custom work factor
Remi Gacogne [Mon, 21 Jun 2021 15:53:17 +0000 (17:53 +0200)] 
dnsdist: Allow hashing with a custom work factor

3 years agoUse OpenSSL's scrypt for secure credential storage
Remi Gacogne [Sat, 12 Jun 2021 15:40:09 +0000 (17:40 +0200)] 
Use OpenSSL's scrypt for secure credential storage

3 years agorec_control, pdnsutil: Read the credentials from the terminal/stdin
Remi Gacogne [Fri, 9 Apr 2021 13:15:09 +0000 (15:15 +0200)] 
rec_control, pdnsutil: Read the credentials from the terminal/stdin

3 years agoMake the hashing of plaintext credentials optional
Remi Gacogne [Fri, 9 Apr 2021 10:29:09 +0000 (12:29 +0200)] 
Make the hashing of plaintext credentials optional

3 years agoActually check whether crypto_pwhash_str() is available
Remi Gacogne [Thu, 8 Apr 2021 16:35:51 +0000 (18:35 +0200)] 
Actually check whether crypto_pwhash_str() is available

Instead of just checking if libsodium is there.

3 years agoUse sodium_memcmp() if CRYPTO_memcmp() is not available
Remi Gacogne [Thu, 8 Apr 2021 16:33:59 +0000 (18:33 +0200)] 
Use sodium_memcmp() if CRYPTO_memcmp() is not available

3 years agoauth: Be more straightforward in pdnsutil for 'hash-password'
Remi Gacogne [Thu, 8 Apr 2021 16:25:14 +0000 (18:25 +0200)] 
auth: Be more straightforward in pdnsutil for 'hash-password'

3 years agorec: Be more straightforward in rec_control for 'hash-password'
Remi Gacogne [Thu, 8 Apr 2021 16:24:21 +0000 (18:24 +0200)] 
rec: Be more straightforward in rec_control for 'hash-password'

3 years agodnsdist: Clarify that setWebserverConfig() wants a hashed password
Remi Gacogne [Thu, 8 Apr 2021 16:20:46 +0000 (18:20 +0200)] 
dnsdist: Clarify that setWebserverConfig() wants a hashed password

3 years agoRun the credentials unit tests in the auth and rec as well
Remi Gacogne [Thu, 8 Apr 2021 16:19:43 +0000 (18:19 +0200)] 
Run the credentials unit tests in the auth and rec as well

3 years agoFix formatting
Remi Gacogne [Wed, 31 Mar 2021 11:42:51 +0000 (13:42 +0200)] 
Fix formatting

3 years agodnsdist: Fix formatting in test-credentials_cc.cc
Remi Gacogne [Wed, 31 Mar 2021 09:43:09 +0000 (11:43 +0200)] 
dnsdist: Fix formatting in test-credentials_cc.cc

3 years agoCircleCI: ixfrdist needs the sodium library now
Remi Gacogne [Wed, 31 Mar 2021 09:35:27 +0000 (11:35 +0200)] 
CircleCI: ixfrdist needs the sodium library now

3 years agodnsdist: API keys should now be hashed as well
Remi Gacogne [Wed, 31 Mar 2021 09:07:25 +0000 (11:07 +0200)] 
dnsdist: API keys should now be hashed as well

3 years agoauth: Add speed tests for the credentials class
Remi Gacogne [Wed, 31 Mar 2021 07:52:57 +0000 (09:52 +0200)] 
auth: Add speed tests for the credentials class

3 years agodnsdist: Add unit tests for the credentials class
Remi Gacogne [Wed, 31 Mar 2021 07:52:44 +0000 (09:52 +0200)] 
dnsdist: Add unit tests for the credentials class

3 years agodnsdist: We want to know if the password was hashed, not if it is now
Remi Gacogne [Wed, 31 Mar 2021 07:52:03 +0000 (09:52 +0200)] 
dnsdist: We want to know if the password was hashed, not if it is now

3 years agorec: Document that the webserver password and API key can be hashed
Remi Gacogne [Wed, 31 Mar 2021 07:07:16 +0000 (09:07 +0200)] 
rec: Document that the webserver password and API key can be hashed

3 years agoauth: Document that the webserver password and API key can be hashed
Remi Gacogne [Wed, 31 Mar 2021 07:06:45 +0000 (09:06 +0200)] 
auth: Document that the webserver password and API key can be hashed

3 years agodnsdist: Document that the API key can now be hashed as well
Remi Gacogne [Wed, 31 Mar 2021 07:06:18 +0000 (09:06 +0200)] 
dnsdist: Document that the API key can now be hashed as well

3 years agoAttempt at constant-time credentials verification without sodium
Remi Gacogne [Tue, 30 Mar 2021 17:25:11 +0000 (19:25 +0200)] 
Attempt at constant-time credentials verification without sodium

3 years agorec: Implement rec_control hash-password
Remi Gacogne [Tue, 30 Mar 2021 15:57:33 +0000 (17:57 +0200)] 
rec: Implement rec_control hash-password

3 years agoauth: Implement pdnsutil hash-password
Remi Gacogne [Tue, 30 Mar 2021 15:57:11 +0000 (17:57 +0200)] 
auth: Implement pdnsutil hash-password

3 years agoSupport hashed credentials (password, API key) in the auth and rec
Remi Gacogne [Tue, 30 Mar 2021 15:56:45 +0000 (17:56 +0200)] 
Support hashed credentials (password, API key) in the auth and rec

3 years agodnsdist: Make hashed passwords more transparent to use
Remi Gacogne [Tue, 30 Mar 2021 15:55:23 +0000 (17:55 +0200)] 
dnsdist: Make hashed passwords more transparent to use

3 years agodnsdist: Fix a missing space in the documentation
Remi Gacogne [Wed, 10 Mar 2021 08:58:24 +0000 (09:58 +0100)] 
dnsdist: Fix a missing space in the documentation

3 years agodnsdist: Fix a weird sentence in the documentation
Remi Gacogne [Wed, 10 Mar 2021 08:48:47 +0000 (09:48 +0100)] 
dnsdist: Fix a weird sentence in the documentation

Co-authored-by: Peter van Dijk <peter.van.dijk@powerdns.com>
3 years agodnsdist: Move to hashed passwords for the web interface
Remi Gacogne [Tue, 9 Mar 2021 17:27:56 +0000 (18:27 +0100)] 
dnsdist: Move to hashed passwords for the web interface

It is not very good practice to keep the password in plaintext in
the configuration file as well as in memory at runtime.

3 years agoMerge pull request #10725 from Habbie/remote-check-debug
Peter van Dijk [Thu, 16 Sep 2021 11:17:42 +0000 (13:17 +0200)] 
Merge pull request #10725 from Habbie/remote-check-debug

gh actions: auth make check: cat remotebackend test log

3 years agonote PROXY/trusted-notification-proxy interaction 10660/head
Peter van Dijk [Thu, 16 Sep 2021 10:50:30 +0000 (12:50 +0200)] 
note PROXY/trusted-notification-proxy interaction

3 years agoalso test proxy+ecs
Peter van Dijk [Thu, 16 Sep 2021 10:04:45 +0000 (12:04 +0200)] 
also test proxy+ecs

3 years agoremove useless .toString()
Peter van Dijk [Thu, 16 Sep 2021 08:50:29 +0000 (10:50 +0200)] 
remove useless .toString()

3 years agoclarify meaning of inner_remote
Peter van Dijk [Thu, 16 Sep 2021 08:46:00 +0000 (10:46 +0200)] 
clarify meaning of inner_remote

3 years agoAllow farsightsec and fullycapable (found in third-parties URLs) 10729/head
Remi Gacogne [Thu, 16 Sep 2021 08:40:42 +0000 (10:40 +0200)] 
Allow farsightsec and fullycapable (found in third-parties URLs)

3 years agogh actions: auth make check: cat remotebackend test log 10725/head
Peter van Dijk [Wed, 15 Sep 2021 11:46:08 +0000 (13:46 +0200)] 
gh actions: auth make check: cat remotebackend test log

3 years agodnsdist: Update the list of dependencies in the documentation
Remi Gacogne [Thu, 16 Sep 2021 07:52:44 +0000 (09:52 +0200)] 
dnsdist: Update the list of dependencies in the documentation

3 years agowhitespace
Peter van Dijk [Mon, 13 Sep 2021 11:48:43 +0000 (13:48 +0200)] 
whitespace

3 years agofix bug
Peter van Dijk [Mon, 30 Aug 2021 11:18:37 +0000 (13:18 +0200)] 
fix bug

3 years agouse right remote for 2136 ACL
Peter van Dijk [Mon, 30 Aug 2021 10:12:56 +0000 (12:12 +0200)] 
use right remote for 2136 ACL

3 years agouse right remote in accounting
Peter van Dijk [Mon, 30 Aug 2021 10:06:46 +0000 (12:06 +0200)] 
use right remote in accounting

3 years agouse the right address in a bunch more places
Peter van Dijk [Mon, 30 Aug 2021 09:57:12 +0000 (11:57 +0200)] 
use the right address in a bunch more places

3 years agolua2backend: use inner IP
Peter van Dijk [Mon, 30 Aug 2021 09:25:01 +0000 (11:25 +0200)] 
lua2backend: use inner IP

3 years agoremotebackend: use inner IP
Peter van Dijk [Mon, 30 Aug 2021 09:21:54 +0000 (11:21 +0200)] 
remotebackend: use inner IP

3 years agodocument the two new auth settings
Peter van Dijk [Fri, 27 Aug 2021 19:45:00 +0000 (21:45 +0200)] 
document the two new auth settings

3 years agoauth: incoming PROXY support for:
Peter van Dijk [Tue, 24 Aug 2021 08:44:44 +0000 (10:44 +0200)] 
auth: incoming PROXY support for:
* AXFR ACLs
* NOTIFY sources
* getting the remote address in LUA records

3 years agoadd opcode support to sdig (so we can send NOTIFY)
Peter van Dijk [Fri, 27 Aug 2021 10:23:43 +0000 (12:23 +0200)] 
add opcode support to sdig (so we can send NOTIFY)

3 years agosdig: insert missing space and []
Peter van Dijk [Mon, 23 Aug 2021 14:16:39 +0000 (16:16 +0200)] 
sdig: insert missing space and []

3 years agoMerge pull request #10728 from rgacogne/ddist-document-dq-getprotocol
Remi Gacogne [Wed, 15 Sep 2021 19:31:30 +0000 (21:31 +0200)] 
Merge pull request #10728 from rgacogne/ddist-document-dq-getprotocol

dnsdist: Document DNSQuestion:getProtocol()

3 years agoMerge pull request #10724 from rgacogne/ddist-iostateguard-dtor
Remi Gacogne [Wed, 15 Sep 2021 13:40:07 +0000 (15:40 +0200)] 
Merge pull request #10724 from rgacogne/ddist-iostateguard-dtor

dnsdist: Handle exception raised in IOStateGuard's destructor

3 years agodnsdist: Document DNSQuestion:getProtocol() 10728/head
Remi Gacogne [Wed, 15 Sep 2021 13:33:29 +0000 (15:33 +0200)] 
dnsdist: Document DNSQuestion:getProtocol()

3 years agoMerge pull request #10704 from rgacogne/ddist-tcp-workers-default
Remi Gacogne [Wed, 15 Sep 2021 13:14:16 +0000 (15:14 +0200)] 
Merge pull request #10704 from rgacogne/ddist-tcp-workers-default

dnsdist: Stop raising the number of TCP workers to the number of TCP binds

3 years agoUpdate pdns/syncres.cc 10718/head
Remi Gacogne [Wed, 15 Sep 2021 13:13:34 +0000 (15:13 +0200)] 
Update pdns/syncres.cc

Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
3 years agoMerge pull request #10599 from rgacogne/rec-stricter-checks-ds
Remi Gacogne [Wed, 15 Sep 2021 11:45:16 +0000 (13:45 +0200)] 
Merge pull request #10599 from rgacogne/rec-stricter-checks-ds

rec: Be more strict when validating DS wrt parent/child NSEC(3)s

3 years agoMerge pull request #10721 from Habbie/new-nose
Peter van Dijk [Wed, 15 Sep 2021 11:36:51 +0000 (13:36 +0200)] 
Merge pull request #10721 from Habbie/new-nose

require nose >= 1.3.7 everywhere

3 years agoMerge pull request #10698 from rgacogne/ddist161-changelog
Remi Gacogne [Wed, 15 Sep 2021 09:01:12 +0000 (11:01 +0200)] 
Merge pull request #10698 from rgacogne/ddist161-changelog

dnsdist: Prepare ChangeLog and secpoll for 1.6.1

3 years agodnsdist: Handle exception raised in IOStateGuard's destructor 10724/head
Remi Gacogne [Wed, 15 Sep 2021 08:15:52 +0000 (10:15 +0200)] 
dnsdist: Handle exception raised in IOStateGuard's destructor

Reported by Coverity (CID 372512).