]>
git.feebdaed.xyz Git - 0xmirror/libreswan.git/log
Andrew Cagney [Wed, 24 Dec 2025 13:33:02 +0000 (08:33 -0500)]
Merge resolve: skip helper when there's no DNS
Andrew Cagney [Wed, 24 Dec 2025 13:32:22 +0000 (08:32 -0500)]
testing: shuffle subnets= test output
Andrew Cagney [Wed, 24 Dec 2025 13:19:23 +0000 (08:19 -0500)]
ddns: skip helper when DNS isn't needed
main motivation is to make adding non-DNS connections more
deterministic
Andrew Cagney [Wed, 24 Dec 2025 12:59:24 +0000 (07:59 -0500)]
testing: tweak ikev2-ddns-03-manual-delayed output
Andrew Cagney [Tue, 23 Dec 2025 20:52:09 +0000 (15:52 -0500)]
Merge ddns: use unbound, when enabled, to resolve right=right.libreswan.org
notes:
- `ipsec whack --dns` expects an uncached resolve
hence code is creating unbound context on every request
the command should instead flush the cache (but how?)
see #2559 ipsec ddns should flush cache
- the tests needed dnssec disabled (but still use unbound)
else things didn't validate
- there's still unbound code for looking up dnskeys
see #2560 merge resolve helper and ikev2_ipseckey?
- need to update ttoaddress_dns() to use unbound
but this means somehow making ipsec.conf's dns* settings
available to that code; for instance in showhostkey
see #2333 should ttoaddress_dns() call unbound_resolve() when available?
close #2353 should a half resolved connection orient
close #1749 ikev2-ddns-02 fails intermittently
Andrew Cagney [Fri, 19 Dec 2025 18:29:31 +0000 (13:29 -0500)]
resolve: use UNBOUND when enabled
Andrew Cagney [Tue, 23 Dec 2025 14:44:15 +0000 (09:44 -0500)]
testing: update DDNS tests to demonstrate unbound pluto's behaviour
- update messages
- add -ready variant HOST and UNBOUND tests
demonstrates behaviour when things can resolve
- shuffle to -delayed, HOST and UNBOUND tests
the name only becomes available after conn is added
Andrew Cagney [Fri, 19 Dec 2025 18:15:30 +0000 (13:15 -0500)]
building: define both USE_UNBOUND and USE_DNSSEC
latter is a misnomer, it enables a feature
Andrew Cagney [Fri, 19 Dec 2025 18:05:51 +0000 (13:05 -0500)]
unbound: replace unbound_resolve() with unbound_sync_resolve()
... takes ub_ctx parameter; and return ub_ctx from
unbound_sync_init().
Drop static dns_ctx variable.
Also delete unbound_ctx_free(), and call from whack_shutdown.c.
No point trying to free the never set dns_ctx.
Andrew Cagney [Mon, 22 Dec 2025 19:18:42 +0000 (14:18 -0500)]
Merge ddns: separate out `ipsec whack --ddns ...`
Only manually perform ddns when connection has pending
CHECK_DDNS event. Fix case when it wasn't.
Andrew Cagney [Mon, 22 Dec 2025 16:26:31 +0000 (11:26 -0500)]
testing kvm: pass (KVM_)USE_SYSTEMD_WATCHDOG to KVM builds
Andrew Cagney [Mon, 22 Dec 2025 16:03:14 +0000 (11:03 -0500)]
testing: use ipsec whack --ddns --name named
Andrew Cagney [Mon, 22 Dec 2025 15:23:28 +0000 (10:23 -0500)]
ipsec whack --ddns: move command to whack_ddns.[hc] ....
support:
ipsec whack --ddns --name connection
only trigger a DNS check on connections when an outstanding
CHECK_DDNS event
Andrew Cagney [Mon, 22 Dec 2025 15:20:10 +0000 (10:20 -0500)]
orient: don't delete CHECK_DDNS event when successfull
follow-up
connections: try to orient partially resolved connections
Andrew Cagney [Mon, 22 Dec 2025 15:18:08 +0000 (10:18 -0500)]
Merge orient: fix stray space in log message
Andrew Cagney [Mon, 22 Dec 2025 15:17:38 +0000 (10:17 -0500)]
testing: update orient output
Andrew Cagney [Mon, 22 Dec 2025 14:57:26 +0000 (09:57 -0500)]
orient: fix stray space in orient details
... and always show when DNS is needed
Andrew Cagney [Mon, 22 Dec 2025 00:40:07 +0000 (19:40 -0500)]
Merge connections: more debug logging of events
Andrew Cagney [Mon, 22 Dec 2025 00:39:12 +0000 (19:39 -0500)]
testing: update connection event logs
esp the IMPAIR
Andrew Cagney [Sat, 20 Dec 2025 00:12:46 +0000 (19:12 -0500)]
connection: more event debug-logging
Andrew Cagney [Fri, 19 Dec 2025 16:24:07 +0000 (11:24 -0500)]
resolver: merge resolve_extracted_host_addrs() into resolve_helper()
Andrew Cagney [Sun, 21 Dec 2025 15:47:31 +0000 (10:47 -0500)]
Merge connections: try to orient partially resolved connections
for instance, when the peer needs DNS but not the local end
see #2556 dns hostnames never looked up again during revive
Andrew Cagney [Sun, 21 Dec 2025 15:46:52 +0000 (10:46 -0500)]
testing: expect ikev2-ddns-03 to still need DNS
Andrew Cagney [Sun, 21 Dec 2025 15:46:27 +0000 (10:46 -0500)]
connections: log when loaded+oriented connection still needs DNS
Andrew Cagney [Sat, 20 Dec 2025 14:43:34 +0000 (09:43 -0500)]
connections: try to orient when DNS failed
Andrew Cagney [Sat, 20 Dec 2025 15:09:50 +0000 (10:09 -0500)]
connections: compute the need for DNS
instead of setting a bit
Andrew Cagney [Sat, 20 Dec 2025 23:30:27 +0000 (18:30 -0500)]
Merge connections: include "oriented" when logging a successfull conection add
This means:
oriented: all is good
unoriented: left/right didn't match
<blank>: can't orient as not listening
close #1625 when adding a connection, log successfull orientation
(more details can come later)
Andrew Cagney [Sat, 20 Dec 2025 23:29:16 +0000 (18:29 -0500)]
testing: expect "oriented" when adding connection
... which means lack of oriented hints at a problem
Andrew Cagney [Sat, 20 Dec 2025 16:24:47 +0000 (11:24 -0500)]
orient: always log when a connection is oriented
creating three clear cases:
- oriented
- unoriented (but listening)
- (blank) not listening, hence not oriented
Andrew Cagney [Fri, 19 Dec 2025 16:15:08 +0000 (11:15 -0500)]
Merge resolve: add .needs.dns and .needs.route bits
to indicate that the host address needs further work
Per #2556 dns hostnames never looked up again during revive
just note that the code still needs to be changed so that
needing DDNS and/or default route isn't a reason to not attempt
orientation.
Andrew Cagney [Fri, 19 Dec 2025 04:02:38 +0000 (23:02 -0500)]
resolve: move defaultroute call out of helper
Andrew Cagney [Fri, 19 Dec 2025 04:14:47 +0000 (23:14 -0500)]
resolve: copy extracted host_addrs to resolved host_addrs
Andrew Cagney [Thu, 18 Dec 2025 21:14:02 +0000 (16:14 -0500)]
resolve: merge struct resolved_host_addrs and struct host_addrs
Andrew Cagney [Thu, 18 Dec 2025 21:07:02 +0000 (16:07 -0500)]
extract: add .needs{dns,route} to extracted struct host_addrs
Andrew Cagney [Thu, 18 Dec 2025 20:05:51 +0000 (15:05 -0500)]
extract: rename struct extracted_host_addrs et.al.
struct extracted_host_addrs -> host_addrs
extract_host_addrs() -> host_addrs_from_whack_message()
extrat_host_addrs_from_configs() -> host_addrs_from_connection_config()
Andrew Cagney [Fri, 19 Dec 2025 01:56:11 +0000 (20:56 -0500)]
Merge addconn: add --quite, pass in during startup
so that addconn doesn't echo any normal pluto messages
back to pluto
as suggested by Wofferl
see #2553 ipsec start hangs with addconn when having many tunnels
close #1119 pluto logs as addconn double
Andrew Cagney [Thu, 18 Dec 2025 22:05:11 +0000 (17:05 -0500)]
addconn: add --quiet parameter
when set suppress normal logs from pluto; during
startup invoke addconn --quiet to stop a logging
loop
Andrew Cagney [Thu, 11 Dec 2025 14:41:38 +0000 (09:41 -0500)]
server: give global events, notably EVENT_SD_WATCHDOG, highest priority
Two things:
- global timers get their own priority
- dispatch is limited to 1s so that low priority tasks
can't lock out high priority events
There's a suspicion that, under load, the SYSTEMD watchdog event
was being drowned out by all the other events - libevent
makes no ordering guarentees.
Andrew Cagney [Thu, 18 Dec 2025 18:40:25 +0000 (13:40 -0500)]
libipsecconf: move starterwhack.[hc] to addconn.c
not much left, and only caller
Andrew Cagney [Thu, 18 Dec 2025 16:58:43 +0000 (11:58 -0500)]
Merge server: sprinkle timing over all events
Andrew Cagney [Mon, 15 Dec 2025 20:45:51 +0000 (15:45 -0500)]
server: use vdbg_{start,stop}() to time timeout events
... and pass verbose+inception to callback
Andrew Cagney [Thu, 18 Dec 2025 13:40:36 +0000 (08:40 -0500)]
Merge addconn: move startup "listen" into pluto
During startup-addconn's listen, Pluto sends orientation
logs to addconn while ignoring addconn's attempts to
output those same messages.
see #1119 pluto logs as addconn double
There's no good reason for addconn to duplicate this output
during startup. Later.
see #2553 ipsec start hangs with addconn when having many tunnels
Should be mitigated by this change.
Andrew Cagney [Wed, 17 Dec 2025 17:12:33 +0000 (12:12 -0500)]
pluto: move startup "listen" into pluto
run after addconn exits; and drop from --autoall code
path
Andrew Cagney [Wed, 17 Dec 2025 16:11:35 +0000 (11:11 -0500)]
pluto: move whack_listen{} to whack_listen.[hc]
Andrew Cagney [Thu, 18 Dec 2025 02:04:27 +0000 (21:04 -0500)]
Merge logging: log IGNORING when pluto isn't listening
close #2555 listening doesn't appear in the status
Andrew Cagney [Thu, 18 Dec 2025 00:18:12 +0000 (19:18 -0500)]
testing: in basic-pluto-08-misc, load ipsec.conf
was missing it, failing to properly start, and not telling anyone
Andrew Cagney [Mon, 15 Dec 2025 20:11:16 +0000 (15:11 -0500)]
server: use vdbg_{start,stop}() to time accept listeners
... and pass verbose to callback
Andrew Cagney [Mon, 15 Dec 2025 20:03:32 +0000 (15:03 -0500)]
server: use vdbg_{start,stop}() to time read listeners
and pass verbose to callback
Andrew Cagney [Mon, 15 Dec 2025 19:40:02 +0000 (14:40 -0500)]
server: use vdbg_{start,stop}() to time signal handlers
and pass verbose to callback
Andrew Cagney [Mon, 15 Dec 2025 19:27:07 +0000 (14:27 -0500)]
server: use vdbg_{start,stop}() to track global event times
Andrew Cagney [Thu, 18 Dec 2025 00:01:16 +0000 (19:01 -0500)]
ddns: fix compile error from new vdbg_stop() signature
Andrew Cagney [Wed, 17 Dec 2025 23:51:18 +0000 (18:51 -0500)]
Merge ddns: offload to resolve_helper.[hc]
Andrew Cagney [Wed, 17 Dec 2025 14:56:35 +0000 (09:56 -0500)]
ddns: move build_connection_host_and_proposals_from_resolve() et.al. calls to resolve_helper.c
et.al. being orient()
Andrew Cagney [Wed, 17 Dec 2025 19:55:51 +0000 (14:55 -0500)]
testing: in wait-until-pluto-started, wait for pluto to start listening
... as in "Accepting new ..."
Andrew Cagney [Wed, 17 Dec 2025 19:55:25 +0000 (14:55 -0500)]
ipsec briefstatus: show IGNORING when !listening
Andrew Cagney [Wed, 17 Dec 2025 14:36:02 +0000 (09:36 -0500)]
ddns: make resolve_extracted_host_addrs() static to resolve_helper.c
Andrew Cagney [Wed, 17 Dec 2025 14:28:25 +0000 (09:28 -0500)]
ddns: use resolve_helper() in connection_check_ddns()
... only detach whack after the helper returns
Andrew Cagney [Wed, 17 Dec 2025 15:21:06 +0000 (10:21 -0500)]
Merge logging: add log prefix to to vdbg_{start,stop}(), use in updown
Andrew Cagney [Wed, 17 Dec 2025 13:53:29 +0000 (08:53 -0500)]
updown: use vdbg_{start,stop}()
Andrew Cagney [Tue, 16 Dec 2025 23:13:47 +0000 (18:13 -0500)]
timing: replace pri_cpu_usage() with jam_cpu_usage()
Andrew Cagney [Mon, 15 Dec 2025 19:17:21 +0000 (14:17 -0500)]
logging: change vdbg_{start,stop}() to function wrappers
... and make output more like logtime
Andrew Cagney [Wed, 17 Dec 2025 13:36:22 +0000 (08:36 -0500)]
Merge connections: move resolve offload to after extract
... closer to ddns
Andrew Cagney [Wed, 17 Dec 2025 13:35:45 +0000 (08:35 -0500)]
testing: shuffle subnets=... output
Andrew Cagney [Wed, 17 Dec 2025 13:35:08 +0000 (08:35 -0500)]
connections: resolve connection after extract
... closer to how ddns wants to do it
Andrew Cagney [Tue, 16 Dec 2025 19:52:13 +0000 (14:52 -0500)]
defaultroute: make logging more robust
Andrew Cagney [Mon, 15 Dec 2025 19:11:36 +0000 (14:11 -0500)]
logging: add verbose param to pri_verbose macro
... and replace pri_verbose with VERBOSE_JAMBUF(), when possible
Andrew Cagney [Tue, 16 Dec 2025 22:50:19 +0000 (17:50 -0500)]
Merge updown: add timing
Andrew Cagney [Tue, 16 Dec 2025 20:19:44 +0000 (15:19 -0500)]
updown: add timing to all updown commands
Andrew Cagney [Mon, 15 Dec 2025 21:25:23 +0000 (16:25 -0500)]
updown: replace do_updown() with updown_connection_spd()
drop child parameter, expect SPD to be member of connection
Note: log param can't be dropped as function is called
both with a connection and a state logger
Andrew Cagney [Mon, 15 Dec 2025 21:15:00 +0000 (16:15 -0500)]
updown: factor updown_child_spd() out of updown_child_spds()
nee do_updown_child()
and replace do_updown() calls with updown_child_spd() where
applicable
Andrew Cagney [Tue, 16 Dec 2025 17:52:06 +0000 (12:52 -0500)]
orient: pass verbose, make caller responsible for whack attach/detach
orient() doesn't have enough context to known when
detach is warrented.
Andrew Cagney [Mon, 15 Dec 2025 20:49:28 +0000 (15:49 -0500)]
Merge systemd: log messages being sent to systemd
Andrew Cagney [Mon, 15 Dec 2025 20:48:38 +0000 (15:48 -0500)]
testing: expect systemd messages when stderr logger
Andrew Cagney [Mon, 15 Dec 2025 20:48:16 +0000 (15:48 -0500)]
systemd: log messages sent to systemd
Andrew Cagney [Mon, 15 Dec 2025 14:19:09 +0000 (09:19 -0500)]
Merge connections: replace global PENDING_DDNS with per-conn CHECK_DDNS
Andrew Cagney [Mon, 15 Dec 2025 14:18:03 +0000 (09:18 -0500)]
testing: update check-02-enumcheck
doing the enum shuffle
Andrew Cagney [Sun, 14 Dec 2025 14:48:28 +0000 (09:48 -0500)]
events: drop EVENT_PENDING_DDNS, replaced by CONNECTION_CHECK_DDNS
Andrew Cagney [Sat, 13 Dec 2025 23:33:24 +0000 (18:33 -0500)]
connections: use per-connection CHECK_DDNS
Andrew Cagney [Mon, 15 Dec 2025 00:10:05 +0000 (19:10 -0500)]
Merge connections: don't try to orient a conn with invalid DNS
Andrew Cagney [Sun, 14 Dec 2025 23:00:36 +0000 (18:00 -0500)]
Merge server: sprinkle verbose over callbacks
Andrew Cagney [Sun, 14 Dec 2025 22:59:58 +0000 (17:59 -0500)]
server: pass verbose to event callback
Andrew Cagney [Sun, 14 Dec 2025 22:55:37 +0000 (17:55 -0500)]
testing: expect conn with DNS fail to not orient
Andrew Cagney [Sun, 14 Dec 2025 22:54:11 +0000 (17:54 -0500)]
connections: during load, don't try orienting a connection with unresolved addresses
Andrew Cagney [Sat, 13 Dec 2025 23:42:19 +0000 (18:42 -0500)]
kernel: sprinkle verbose over shunt code
Andrew Cagney [Thu, 11 Dec 2025 19:00:05 +0000 (14:00 -0500)]
logging: drop const from verbose's logger
hard to add references when it's const
Andrew Cagney [Tue, 9 Dec 2025 23:00:35 +0000 (18:00 -0500)]
documentation: entity tweaks
for instance, use | not , for alternatives
Andrew Cagney [Tue, 9 Dec 2025 14:46:29 +0000 (09:46 -0500)]
ipsecconf: rename ipsecconf/config_{conn,setup}.[hc] to ipsecconf/{conn,setup}.[hc]
matching short name used in ipsec.conf.5's sources; and assumes
ipsec.conf will only have these two sections
Andrew Cagney [Tue, 9 Dec 2025 20:07:38 +0000 (15:07 -0500)]
Merge connections: add per-connection CHECK_DDNS event
currently unused
Andrew Cagney [Thu, 4 Dec 2025 14:44:08 +0000 (09:44 -0500)]
testing: update check-02-enumcheck
Andrew Cagney [Thu, 4 Dec 2025 14:34:05 +0000 (09:34 -0500)]
connections: add definitions for CONNECTION_CHECK_DDNS_EVENT
and split:
schedule_connection_event()
into
schedule_connection_revival()
schedule_connection_check_ddns()
the latter isn't yet used
Andrew Cagney [Tue, 9 Dec 2025 03:12:35 +0000 (22:12 -0500)]
documentation: sprinkle IDs (anchors) over ipsec.conf.5
Andrew Cagney [Mon, 8 Dec 2025 22:37:40 +0000 (17:37 -0500)]
documentation: filling in defaults for "config setup"
Andrew Cagney [Mon, 8 Dec 2025 03:38:54 +0000 (22:38 -0500)]
documentation: sprinkle allowed values over many ipsec.conf.5 options
For instance:
leftcat={yes,no}
rightcat={yes,no}
Unburry the default value, moving it to its own paragraph:
The default value is <option>no</option>.
Drop the sentence:
Accepted values are <option>no</option> (the default) and
<option>yes</option>.
Andrew Cagney [Mon, 8 Dec 2025 00:29:07 +0000 (19:29 -0500)]
building: fix ipsec.conf.5 depenencies
Andrew Cagney [Sun, 7 Dec 2025 21:37:38 +0000 (16:37 -0500)]
documentation: split d.ipsec.conf/ into setup/, conn/, and sect/ subdirs
matching conn and setup options, and sect/ for section files
Andrew Cagney [Thu, 4 Dec 2025 14:32:24 +0000 (09:32 -0500)]
logging: let VERBOSE() be used as a parameter
Andrew Cagney [Thu, 4 Dec 2025 03:06:35 +0000 (22:06 -0500)]
Merge resolve: move event based ub_ctx to ikev2_ipseckey.c
and away from the blocking code
Andrew Cagney [Thu, 4 Dec 2025 03:05:15 +0000 (22:05 -0500)]
resolve: move ub_ctx_create_event() call to ikev2_ipseckey.c
and isolate the event ub_ctx to just that file
Andrew Cagney [Thu, 4 Dec 2025 03:02:41 +0000 (22:02 -0500)]
Merge resolve: move ipsec-add resolve code to resolve_helper.[hc]
Andrew Cagney [Tue, 2 Dec 2025 21:33:53 +0000 (16:33 -0500)]
extract: move resolve+dns code to resolve_helper.[hc]