]> git.ipfire.org Git - zone-sync.git/log
zone-sync.git
11 days agomain: Add the option to run multiple zones at the same time master
Michael Tremer [Thu, 21 May 2026 16:21:52 +0000 (16:21 +0000)] 
main: Add the option to run multiple zones at the same time

By default, zone-sync is parsing one zone, then updating it, and so on.
The main reason is that loading following zones could block the event
loop which means that an ongoing transfer can time out for no aparent
reason.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 days agoconfigure: Bump version to 0.0.2
Michael Tremer [Tue, 19 May 2026 16:36:49 +0000 (16:36 +0000)] 
configure: Bump version to 0.0.2

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 days agoMakefile: Add a helper command to upload a release tarball
Michael Tremer [Tue, 19 May 2026 16:36:10 +0000 (16:36 +0000)] 
Makefile: Add a helper command to upload a release tarball

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 days agomain: Unconditionally dump the zone 0.0.1
Michael Tremer [Tue, 19 May 2026 16:22:34 +0000 (16:22 +0000)] 
main: Unconditionally dump the zone

dns_zone_flush() does not always write the zone data. Since we call it
at point where we have definitely received some data (i.e. the zone has
changed), we can just force to dump it.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 days agomain: Add a --quiet flag for less logging
Michael Tremer [Tue, 19 May 2026 16:16:44 +0000 (16:16 +0000)] 
main: Add a --quiet flag for less logging

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 days agomain: Use a more sensible default path
Michael Tremer [Tue, 19 May 2026 15:28:55 +0000 (15:28 +0000)] 
main: Use a more sensible default path

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Don't fail if the static analyzer didn't find any problems
Michael Tremer [Tue, 19 May 2026 09:37:05 +0000 (09:37 +0000)] 
jenkins: Don't fail if the static analyzer didn't find any problems

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Disable Fedora
Michael Tremer [Tue, 19 May 2026 09:30:39 +0000 (09:30 +0000)] 
jenkins: Disable Fedora

The BIND headers seem to have been heavily patched and it is hard work
to make it compile. Since this is currently not really one of our target
platforms, I am just disabling building for Fedora.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agoRevert "configure: Search for bind headers in /usr/include/bind9"
Michael Tremer [Tue, 19 May 2026 09:29:56 +0000 (09:29 +0000)] 
Revert "configure: Search for bind headers in /usr/include/bind9"

This reverts commit ffd3e8f53a176dd0d920e6a9a3bca731a2bce022.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agoRevert "configure: Go back to C11"
Michael Tremer [Tue, 19 May 2026 09:29:50 +0000 (09:29 +0000)] 
Revert "configure: Go back to C11"

This reverts commit 29cc6a7935985e06e25916417151b49e34b7ef08.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agoconfigure: Go back to C11
Michael Tremer [Tue, 19 May 2026 09:00:01 +0000 (09:00 +0000)] 
configure: Go back to C11

On Fedora, the BIND headers seem to want old atomic semantics. Our own
code shouldn't matter much as we are not using any modern features.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Add help text
Michael Tremer [Mon, 18 May 2026 17:20:06 +0000 (17:20 +0000)] 
main: Add help text

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agoconfigure: Search for bind headers in /usr/include/bind9
Michael Tremer [Mon, 18 May 2026 17:18:50 +0000 (17:18 +0000)] 
configure: Search for bind headers in /usr/include/bind9

Fedora is packaging the headers in a different place.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Be less verbose when logging
Michael Tremer [Mon, 18 May 2026 17:06:11 +0000 (17:06 +0000)] 
main: Be less verbose when logging

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Don't double-free the transport
Michael Tremer [Mon, 18 May 2026 17:00:53 +0000 (17:00 +0000)] 
main: Don't double-free the transport

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Don't try to shutdown the event loop if it does not exist
Michael Tremer [Mon, 18 May 2026 17:00:27 +0000 (17:00 +0000)] 
main: Don't try to shutdown the event loop if it does not exist

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Store the XFR object with the zone context and clean it up
Michael Tremer [Mon, 18 May 2026 16:58:09 +0000 (16:58 +0000)] 
main: Store the XFR object with the zone context and clean it up

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Fetch the zone context on cleanup
Michael Tremer [Mon, 18 May 2026 16:55:33 +0000 (16:55 +0000)] 
main: Fetch the zone context on cleanup

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Create a little context for each zone
Michael Tremer [Mon, 18 May 2026 16:52:16 +0000 (16:52 +0000)] 
main: Create a little context for each zone

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Decrement the counter of running zones again
Michael Tremer [Mon, 18 May 2026 16:40:44 +0000 (16:40 +0000)] 
main: Decrement the counter of running zones again

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Shut down if no zone transfers were ever started
Michael Tremer [Mon, 18 May 2026 16:23:01 +0000 (16:23 +0000)] 
main: Shut down if no zone transfers were ever started

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Set error code on error
Michael Tremer [Mon, 18 May 2026 16:04:40 +0000 (16:04 +0000)] 
main: Set error code on error

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Call zone_done() when the XFR could not be started
Michael Tremer [Mon, 18 May 2026 16:02:24 +0000 (16:02 +0000)] 
main: Call zone_done() when the XFR could not be started

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Create a global error code that we can return
Michael Tremer [Mon, 18 May 2026 15:56:15 +0000 (15:56 +0000)] 
main: Create a global error code that we can return

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Cleanup the zone if we could not load it
Michael Tremer [Mon, 18 May 2026 15:55:50 +0000 (15:55 +0000)] 
main: Cleanup the zone if we could not load it

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Use the correct package name for liburcu on Fedora
Michael Tremer [Mon, 18 May 2026 15:55:15 +0000 (15:55 +0000)] 
jenkins: Use the correct package name for liburcu on Fedora

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: It is actually 2026
Michael Tremer [Mon, 18 May 2026 15:46:56 +0000 (15:46 +0000)] 
main: It is actually 2026

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Fedora does not have liburcu
Michael Tremer [Mon, 18 May 2026 15:40:10 +0000 (15:40 +0000)] 
jenkins: Fedora does not have liburcu

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Don't fail if we could not upload any test artifacts
Michael Tremer [Mon, 18 May 2026 15:39:31 +0000 (15:39 +0000)] 
jenkins: Don't fail if we could not upload any test artifacts

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Install liburcu development files
Michael Tremer [Mon, 18 May 2026 15:26:38 +0000 (15:26 +0000)] 
jenkins: Install liburcu development files

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Install OpenSSL
Michael Tremer [Mon, 18 May 2026 15:19:49 +0000 (15:19 +0000)] 
jenkins: Install OpenSSL

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Use the correct formatter for the serial
Michael Tremer [Mon, 18 May 2026 15:12:49 +0000 (15:12 +0000)] 
main: Use the correct formatter for the serial

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: logger: Check formatting arguments
Michael Tremer [Mon, 18 May 2026 15:12:13 +0000 (15:12 +0000)] 
main: logger: Check formatting arguments

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Explicitely install libuv development files
Michael Tremer [Mon, 18 May 2026 15:08:58 +0000 (15:08 +0000)] 
jenkins: Explicitely install libuv development files

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Install autoconf-archive on all distributions
Michael Tremer [Mon, 18 May 2026 14:52:24 +0000 (14:52 +0000)] 
jenkins: Install autoconf-archive on all distributions

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agojenkins: Initial file
Michael Tremer [Mon, 18 May 2026 14:38:46 +0000 (14:38 +0000)] 
jenkins: Initial file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Use a reasonable debug level
Michael Tremer [Mon, 18 May 2026 14:22:08 +0000 (14:22 +0000)] 
main: Use a reasonable debug level

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 weeks agomain: Set the correct path for the journal file
Michael Tremer [Mon, 18 May 2026 14:20:31 +0000 (14:20 +0000)] 
main: Set the correct path for the journal file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Add a --secure flag instead of letting users choose the transport
Michael Tremer [Mon, 11 May 2026 17:03:14 +0000 (17:03 +0000)] 
main: Add a --secure flag instead of letting users choose the transport

This sounds simpler than handling the more complicated logic.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Configure the TLS transport
Michael Tremer [Mon, 11 May 2026 16:50:03 +0000 (16:50 +0000)] 
main: Configure the TLS transport

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Include zone name in log messages after transfer
Michael Tremer [Mon, 11 May 2026 16:09:35 +0000 (16:09 +0000)] 
main: Include zone name in log messages after transfer

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Don't go crazy on the debug log level
Michael Tremer [Mon, 11 May 2026 16:01:01 +0000 (16:01 +0000)] 
main: Don't go crazy on the debug log level

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Enable debug logging only when requested
Michael Tremer [Mon, 11 May 2026 15:59:28 +0000 (15:59 +0000)] 
main: Enable debug logging only when requested

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Fix the logger from crashing
Michael Tremer [Mon, 11 May 2026 15:59:08 +0000 (15:59 +0000)] 
main: Fix the logger from crashing

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Choose the correct port to connect to
Michael Tremer [Mon, 11 May 2026 15:43:17 +0000 (15:43 +0000)] 
main: Choose the correct port to connect to

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Allow the user to choose the transport type
Michael Tremer [Mon, 11 May 2026 15:26:55 +0000 (15:26 +0000)] 
main: Allow the user to choose the transport type

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Correctly pass error code if the CLI parsing fails
Michael Tremer [Mon, 11 May 2026 15:20:30 +0000 (15:20 +0000)] 
main: Correctly pass error code if the CLI parsing fails

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Create the source address struct once at startup
Michael Tremer [Mon, 11 May 2026 15:19:19 +0000 (15:19 +0000)] 
main: Create the source address struct once at startup

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Take and resolve the primary IP address
Michael Tremer [Mon, 11 May 2026 15:16:22 +0000 (15:16 +0000)] 
main: Take and resolve the primary IP address

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Add a convenience function to parse dns_name_t from string
Michael Tremer [Mon, 11 May 2026 14:44:26 +0000 (14:44 +0000)] 
main: Add a convenience function to parse dns_name_t from string

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Re-use the same cleanup handler on error
Michael Tremer [Mon, 11 May 2026 14:17:19 +0000 (14:17 +0000)] 
main: Re-use the same cleanup handler on error

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Add a counter to terminate the event loop
Michael Tremer [Mon, 11 May 2026 14:14:08 +0000 (14:14 +0000)] 
main: Add a counter to terminate the event loop

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Build out fetching zone data
Michael Tremer [Mon, 11 May 2026 14:05:57 +0000 (14:05 +0000)] 
main: Build out fetching zone data

This is just about working, but needs a lot more to be robust.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Setup logging from the libraries
Michael Tremer [Mon, 11 May 2026 12:40:10 +0000 (12:40 +0000)] 
main: Setup logging from the libraries

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Make the context static
Michael Tremer [Mon, 11 May 2026 11:58:55 +0000 (11:58 +0000)] 
main: Make the context static

The BIND API does not allow us to carry around a custom pointer which
prevents us from passing the context dynamically.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Add a path where to store the zones
Michael Tremer [Mon, 11 May 2026 10:57:18 +0000 (10:57 +0000)] 
main: Add a path where to store the zones

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Store and process all zones
Michael Tremer [Mon, 11 May 2026 09:23:53 +0000 (09:23 +0000)] 
main: Store and process all zones

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Create a new network manager
Michael Tremer [Mon, 11 May 2026 09:13:28 +0000 (09:13 +0000)] 
main: Create a new network manager

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Create an event loop and launch it
Michael Tremer [Mon, 11 May 2026 09:02:47 +0000 (09:02 +0000)] 
main: Create an event loop and launch it

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Create a basic logger
Michael Tremer [Mon, 11 May 2026 09:02:28 +0000 (09:02 +0000)] 
main: Create a basic logger

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Allocate a memory context
Michael Tremer [Mon, 11 May 2026 08:44:42 +0000 (08:44 +0000)] 
main: Allocate a memory context

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agoconfigure: Link against libdns and libisc
Michael Tremer [Mon, 11 May 2026 08:30:53 +0000 (08:30 +0000)] 
configure: Link against libdns and libisc

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agomain: Add a very basic command line parser
Michael Tremer [Sun, 10 May 2026 11:34:57 +0000 (11:34 +0000)] 
main: Add a very basic command line parser

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
3 weeks agoInitial commit
Michael Tremer [Sun, 10 May 2026 11:22:09 +0000 (11:22 +0000)] 
Initial commit

This creates some basic tooling with autotools.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>