Yu Watanabe
25ac30bdb8
log: rename variables to store function call results
2023-11-16 09:21:10 +00:00
Yu Watanabe
ebfbc5b9d8
Merge pull request #30043 from mrc0mmand/more-assert_return
...
More `assert_return()` shenanigans
2023-11-16 11:28:33 +09:00
Yu Watanabe
335185f1f2
Merge pull request #30045 from poettering/discover-image-tweaklets
...
discover-image: tiny tweaklets
2023-11-16 11:28:04 +09:00
Yu Watanabe
4d8b8f79d0
Merge pull request #30044 from poettering/dissect-tool-tweaklets
...
systemd-dissect --discover tweaklets
2023-11-16 11:27:47 +09:00
Yu Watanabe
69f1c33425
test: sd_bus_process() may assign NULL even if it returns positive
...
Let's not trigger assert_return() needlessly.
Prompted by #30029 .
2023-11-16 09:35:44 +09:00
Yu Watanabe
ce5a6d5307
test: several cleanups for test-bus-chat
...
- use sd_bus_query_sender_creds() to retrieve credentials,
- read credentials only when we get credentials, to avoid triggering
assert_return(),
- downgrade log level of expected failure, and update log message about
unexpected success.
Prompted by #30029 .
2023-11-16 09:35:44 +09:00
Yu Watanabe
02dd646b16
sd-bus: drop SD_BUS_CREDS_AUGMENT flag
...
On checking if the message has enough credentials, the special flag
needs to be dropped.
Fixes a bug introduced by 705a415f68 .
2023-11-16 09:35:44 +09:00
Yu Watanabe
22185cb71e
sd-bus: insert missing space
2023-11-16 09:35:44 +09:00
Yu Watanabe
aecedc48a6
sd-device: do not trigger assertion by a bad udev rules
...
The assertion can be triggered by bad `$attr{[<subsys>/<sysname>]<attribute>}`
formatting. That's not a programmer's error, but a runtime error.
Prompted by #30029 .
2023-11-16 02:32:12 +09:00
Yu Watanabe
c0b927eb3a
dhcp: do not trigger assertion by malformed messages
...
This also changes error code from -ENODATA -> -EBADMSG,
as we received bad message in that case.
Prompted by #30029 .
2023-11-16 02:32:12 +09:00
Yu Watanabe
4f6ae86629
network: do not try to create netdev from tests
...
Prompted by #30029 .
2023-11-16 02:32:12 +09:00
Yu Watanabe
fdf759e3ae
sd-dhcp6-client: fix DUID data length passed to hexmem()
...
Fixes a bug introduced by 6b7d5b6eaf .
2023-11-15 14:41:02 +09:00
Yu Watanabe
1ae9a98292
dhcp: fix maximum DUID size
...
This effectively reverts 9291496011 .
This fixes the maximum length of DUID.
See RFC 8415 section 11.1.
2023-11-15 14:38:55 +09:00
Yu Watanabe
b3884498a9
dhcp: drop unused prototype
...
Follow-up for 53488ea352 .
2023-11-15 10:17:34 +09:00
Yu Watanabe
516cca5a51
Merge pull request #30027 from bluca/news
...
Update syscalls/hwdb/po
2023-11-15 10:17:19 +09:00
Yu Watanabe
921961c3a3
storagetm: use path to device node instead of devpath
...
To make the generated IDs equivalent when
- sd_device object is not provided,
- sd_device object is provided, but it does not have ID_SERIAL.
Follow-up for abc19a6ffa .
This also fixes missing voidification.
Fixes CID#1524253.
2023-11-14 08:52:40 +01:00
Yu Watanabe
aa78d138ed
Merge pull request #30005 from poettering/storagetm-plymout
...
storagetm: plymouth hookup
2023-11-14 02:39:17 +09:00
Yu Watanabe
4cec9b1b17
Merge pull request #30015 from poettering/tpm2-slow-tests
...
tests: skip slow tpm2 tests if slow tests aren't enabled
2023-11-14 02:38:33 +09:00
Yu Watanabe
4e2df3082d
Merge pull request #30010 from poettering/mount-tool-tweakles
...
mount-tool: trivial tweaklets
2023-11-14 02:38:09 +09:00
Yu Watanabe
175ff7bf0d
Merge pull request #30003 from poettering/vendor-model-unify
...
udev-util: add generic device_get_{vendor,model}_string() helpers
2023-11-14 02:36:08 +09:00
Yu Watanabe
58cde42f65
core: rename MemoryZswapCurrent -> MemoryZSwapCurrent
...
Follow-up for 26caa66867 .
2023-11-13 13:54:56 +01:00
Yu Watanabe
49a6f7c849
Merge pull request #29976 from YHNdnzj/session-by-leader-pidref
...
logind: switch sessions_by_leader to PidRef
2023-11-13 05:09:47 +09:00
Yu Watanabe
7fd93e5acc
Merge pull request #29968 from bluca/executor_selinux_lazy_load
...
executor: lazily load SELinux
2023-11-13 05:06:44 +09:00
Yu Watanabe
5996cc348c
conf-parser: fix argument type of ConfigPerfItemLookup
...
Prompted by #29972 .
2023-11-13 00:46:39 +09:00
Yu Watanabe
62c9beaa2c
conf-parser: inline variable declaration
2023-11-13 00:46:34 +09:00
Yu Watanabe
620788da17
TODO: fix typo
2023-11-11 17:58:14 +09:00
Yu Watanabe
49549a458c
Merge pull request #29929 from poettering/tty-reset-fixes
...
pid1: various fixes around TTY resets
2023-11-11 12:44:31 +09:00
Yu Watanabe
7fad66b1a7
Merge pull request #29958 from mrc0mmand/journal-line_max
...
journal: recalculate line_max when stdout stream state changes
2023-11-11 12:39:57 +09:00
Yu Watanabe
1805e2cb05
test-network: add test case for issue #29979
2023-11-11 03:57:59 +09:00
Yu Watanabe
fc4aa64c2d
network/dhcp6: skip to check existence of DHCPv6 address when UseAddress=no
...
Follow-up for 1536b7b2d0 and
5f950e5621 .
Fixes #29979 .
2023-11-11 03:30:34 +09:00
Yu Watanabe
f5e1781a9e
network/dhcp6: use link_check_address_ready() at one more place
2023-11-11 03:30:34 +09:00
Yu Watanabe
706cd85937
network/dhcp-pd: use correct flag when DHCPv4 6rd is enabled
...
Previously, Link.dhcp6_configured flag was unconditionally used even if
the route is configured based on the DHCPv4 protocol.
Follow-up for a27588d4e7 and
e49bad0179 .
2023-11-11 03:30:34 +09:00
Yu Watanabe
b5f7d1d550
Merge pull request #29937 from yuwata/network-fix-json-format
...
network: fix json output
2023-11-09 21:47:37 +09:00
Yu Watanabe
0bc649d6b0
Merge pull request #29949 from mrc0mmand/even-more-ntp-followups
...
busctl: send READY=1 when we become a monitor
2023-11-09 15:08:31 +09:00
Yu Watanabe
6900d90877
Merge pull request #29939 from YHNdnzj/fdopen-independent-mode
...
basic/fileio: drop O_CREAT in flags passed to fd_reopen
2023-11-09 15:07:11 +09:00
Yu Watanabe
797b237c77
test: use wait-online
2023-11-09 07:16:56 +09:00
Yu Watanabe
e1d4613eaa
test: prefix network config files with digits
2023-11-09 07:16:56 +09:00
Yu Watanabe
9bb589dc2d
networkd-test.py: prefix .network and .netdev files with digits
...
Otherwise config files generated by systemd-network-generator may
match with the test interfaces.
2023-11-09 07:16:56 +09:00
Yu Watanabe
2e978188cb
networkd-test.py: hide default .network files
...
To make the test works fine with -Ddefault-network=True.
2023-11-09 07:16:56 +09:00
Yu Watanabe
93252bfea7
meson: fix install path of example .network files
...
It seems that when 'rename' field is set, the path (instead of the
filename) is appended to the 'install_dir'.
Follow-up for 9b7a624267 .
Fixes #29925 .
2023-11-09 07:16:56 +09:00
Yu Watanabe
425e8065b7
Merge pull request #29932 from yuwata/default-network-cleanups
...
network: several cleanups for default .network files
2023-11-09 05:15:13 +09:00
Yu Watanabe
3aa47694d1
test-network: verify json format about DHCPv6 client status
2023-11-09 01:31:17 +09:00
Yu Watanabe
37b5051c95
network: fix json generation
...
When the DHCPv6 client is running in the information requesting mode,
then T1 and T2 are not set.
2023-11-09 01:30:03 +09:00
Yu Watanabe
0fd9bea38e
man: fix typo
...
Follow-up for a9d54de66d .
2023-11-09 00:09:13 +09:00
Yu Watanabe
e5188e4f9b
network: make 89-ethernet.network match only physical interfaces
...
For safety. We already add similar condition to a generated one:
c25aa6c8ac
2023-11-08 23:11:45 +09:00
Yu Watanabe
f139393dd2
network: use Kind= instead of Driver=
...
networkd ignores errors in reading driver through ethtool. The kind of
network interface is retrieved through netlink, and networkd checks
checks many failures. So, using Kind= should be safer.
No functional change, just for safety.
2023-11-08 22:59:57 +09:00
Yu Watanabe
dd51c4332f
resolve/mdns: silently ignore Known-Answers only packets
2023-11-08 22:45:14 +09:00
Yu Watanabe
6f087266e3
resolve/mdns: allow mDNS queries with truncation flag
...
If the query has many Known-Answers records, then the truncation flag is
set.
Fixes #29168 .
2023-11-08 22:45:14 +09:00
Yu Watanabe
614af79cfc
resolve: tweak logs about truncation
2023-11-08 22:45:07 +09:00
Yu Watanabe
e941da8425
meson: fix install path of example .network files
...
It seems that when 'rename' field is set, the path (instead of the
filename) is appended to the 'install_dir'.
Follow-up for 9b7a624267 .
Fixes #29925 .
2023-11-08 21:55:44 +09:00
Yu Watanabe
35dbb8b0d6
meson: disable -Ddefault-network by default
...
Follow-up for 9b7a624267 .
This may break existing setups. Let's disable it by default.
2023-11-08 21:48:30 +09:00
Yu Watanabe
7645e5a813
resolve/mdns: split out mdns_make_dummy_packet()
...
Then, this fixes the following issues:
- if dns_packet_append_zone() for other transaction is failed with
EMSGSIZE, the previously added key was not removed,
- if dns_transaction_prepare() for other transaction returns 0, then
we restated the loop without dropping previously appended keys, which
might not be necessary any more.
2023-11-08 21:38:54 +09:00
Yu Watanabe
6cfa4fc4ce
resolve/mdns: do not append packets without records
...
Previously, if we have only max_rr cached entries, then an empty packet
is appended.
Prompted by #29168 .
2023-11-08 21:38:22 +09:00
Yu Watanabe
905d0ea7b0
sd-dhcp-client,-server: set timestamp based on the time when received a packet
...
It seems that RFC does not say anything about the timestamp of lease
we should use: time that the client sent a request or received a reply.
In DHCPv6 client and NDisc, we use a timestamp that we receive a packet,
rather than we sent something. So, let's consistently use the same
logic for DHCPv4 client.
By using the logic, we will hopefully not forget to set timestamp again,
which is fixed by 089362976c .
2023-11-08 17:58:51 +09:00
Yu Watanabe
a57dd1d13f
sd-dhcp-client: move packet size check to dhcp_packet_verify_headers()
...
No functional change.
2023-11-08 17:54:52 +09:00
Yu Watanabe
7f42c66015
sd-dhcp-client: split out client_verify_message_header()
...
This is not necessary to be called when a packet is received through the
RAW socket, but should not hurt anything.
2023-11-08 17:54:30 +09:00
Yu Watanabe
9e6d587961
test: set working directory even if it is expected that the command fails
...
Otherwise, parsing may unexpectedly succeeds but fail to run writing
.network files with permission error.
Follow-up for 6bc5de53e8 .
2023-11-08 08:07:27 +01:00
Yu Watanabe
d9c4917b9e
vmspawn: fix memleak
...
Fixes CID#1523912.
2023-11-08 07:54:10 +01:00
Yu Watanabe
c62345ffc7
tree-wide: fix typo
2023-11-08 14:57:33 +09:00
Yu Watanabe
69f50bf35e
sd-dhcp-client: make client_handle_message() propagate critical error
...
Then, stop client in the caller side.
This also makes
- ignore all errors except for resource errors like OOM when FORCERENEW
is received,
- trigger assertion when an message received even if the client is
stopped.
This should not change any functionality. Just refactoring.
2023-11-08 13:03:40 +09:00
Yu Watanabe
b2622db0df
Merge pull request #29910 from yuwata/rapid-commit
...
dhcp: about rapid commit
2023-11-08 12:20:17 +09:00
Yu Watanabe
b86f60bfb3
network-generator: refuse unexpected trailing strings
2023-11-08 04:29:45 +09:00
Yu Watanabe
816c269e55
network-generator: allow to specify both IPv4 and IPv6 DNS servers
...
Follow-up for 923599523c .
2023-11-08 04:29:45 +09:00
Yu Watanabe
8ae81a1e00
network-generator: add missing assertions
2023-11-08 04:29:45 +09:00
Yu Watanabe
0b0865f509
network-generator: drop unused family argument
2023-11-08 04:29:45 +09:00
Yu Watanabe
13a462b9d5
network-generator: relax requirement for peer address, route destination, and gateway
...
No functional changes, as the caller already sets them.
2023-11-08 04:29:45 +09:00
Yu Watanabe
1fa0a4eff7
network: add [DHCPServer] RapidCommit= setting
2023-11-08 02:42:03 +09:00
Yu Watanabe
538ff0a60a
sd-dhcp-server: support rapid commit (RFC4039)
...
https://datatracker.ietf.org/doc/html/rfc4039
2023-11-08 02:39:59 +09:00
Yu Watanabe
089362976c
sd-dhcp-client: unconditionally set sd_dhcp_client.request_sent when a packet is sent
...
If a server replies an ACK for the initial DISCOVER, previously
request_sent was not set, so networkd handle the lease timed out.
Follow-up for 808b65a087 .
2023-11-08 02:18:15 +09:00
Yu Watanabe
c4efe0e51e
sd-dhcp-client: gracefully ignore OFFER with Rapid Commit option
...
Fixes #29904 .
2023-11-07 16:13:54 +01:00
Yu Watanabe
d377949085
test-network: test MultiPathRoute= via another interface
...
Prompted by https://github.com/systemd/systemd/pull/14194#issuecomment-1795489641 .
2023-11-06 20:59:49 +00:00
Yu Watanabe
3296b13b26
Merge pull request #29675 from DaanDeMeyer/kernel-install-json
...
kernel-install: Add --json option for inspect verb
2023-11-07 01:07:03 +09:00
Yu Watanabe
eba449fa81
sd-device-monitor: unconditionally increase buffer size by sd_device_monitor_new()
...
As suggested at https://github.com/systemd/systemd/pull/29872#discussion_r1382932633 :
> socket memory is these days accounted to the process that owns a socket,
> hence we shouldn't be too concerned that this might waste memory.
2023-11-06 20:39:51 +09:00
Yu Watanabe
986e182352
network: do not try to set invalid value for IPv6 hop limit
2023-11-06 15:53:25 +09:00
Yu Watanabe
39713b075f
network: fix indentation
...
Follow-up for f141b2c053 .
2023-11-06 15:53:01 +09:00
Yu Watanabe
93e583aaba
Revert "ndisc: Also set link hoplimit"
...
This reverts commit 0ba8374bb8 .
- link->network->ipv6_hop_limit must not be updated, as it may be used
by multiple interfaces,
- We may receive multiple RA from multiple routers with different hop
limit, and we should not make the default hop limit flicking,
- First of all, there is no reason that we need to update the default hop
limit,
- The original issue should be caused by the hash and compare functions
for Route object.
2023-11-06 15:33:10 +09:00
Yu Watanabe
4e601b7072
udevadm-trigger: extend receive buffer size
...
We may trigger huge number of devices and will receive many events.
Let's extend the buffer size, otherwise the buffer may be filled.
Fixes #29863 .
2023-11-06 14:50:50 +09:00
Yu Watanabe
e423b40d35
tree-wide: fix typo
2023-11-04 11:58:12 +09:00
Yu Watanabe
7682aedb4e
sd-journal: make generic_array_bisect_plus_one() take data object
...
Then, rename it to generic_array_bisect_for_data().
No functional change, just refactoring.
2023-11-04 11:48:20 +09:00
Yu Watanabe
a1b8d21fab
sd-journal: introduce journal_file_pin_object()
...
Previously, OBJECT_UNUSED was used for 'pinning' the mmap cache for an
object. But, OBJECT_UNUSED is also used for reading object when type
cannot be determined before read, e.g. when reading the tail object.
Let's introduce another category for pinning mmap cache, and use it when
we want to temporary pin an object.
2023-11-04 11:47:55 +09:00
Yu Watanabe
7a56f6b2b9
mmap-cache: introduce window_matches_by_addr()
...
It is similar to window_matches(), but checks the mapped address.
Mostly preparation for later commits.
2023-11-04 11:42:19 +09:00
Yu Watanabe
1a25ab663c
mmap-cache: introduce enum MMapCacheCategory
...
Then rename context -> category.
No functional change, just refactoring and modernization.
2023-11-04 11:41:15 +09:00
Yu Watanabe
2ebc9cc867
mmap-cache: drop Context and boolean flags in Window
...
No functional change, just refactoring.
2023-11-04 11:12:12 +09:00
Yu Watanabe
ab8f553d1e
sd-journal: rework generic_array_bisect()
...
- Rename generic_array_bisect_one() -> generic_array_bisect_step(), as there
is also generic_array_bisect_plus_one(), so the original name is confusing.
- Make generic_array_bisect_step() return TEST_GOTO_NEXT or TEST_GOTO_PREVIOUS
when the current array does not contain any matching entries.
- Make generic_array_bisect_step() symmetric with respect to the direction
we are going to, except for the journal corruption handling.
- Make generic_array_bisect_step() gracefully handle journal corruptions,
so the corruption handling in the caller side can be mostly dropped.
- Especially, when the last entry in an array is corrupted, previously
we tried to find a valid entry sequentially from the end of the array,
but now we anyway bisect the array. That should improve performance of
reading corrupted journal files.
- Return earlier when no entry linked to the chained array (n == 0).
- Add many comments.
No behavior change unless journal is corrupted.
2023-11-04 11:01:30 +09:00
Yu Watanabe
f6548f053d
sd-journal: drop redundant re-reading of entry array object
...
This effectively reverts e562f13158 .
In the loop of the generic_array_bisect(), the offset of the entry array
object is unchanged, the object is read at the beginning of the loop, and
we do not read any other entry array object. Hence, it is not necessary to
re-read the object every time we use the object.
2023-11-04 10:54:43 +09:00
Yu Watanabe
7636caf5b3
virt: also check if PID1 is in chroot
...
In PID1, running_in_chroot() is called by safety_checks(), but without
this change, the check did nothing.
2023-11-03 16:05:52 +00:00
Yu Watanabe
b75b8e1d02
Merge pull request #29836 from poettering/libiptc-dlopen
...
make libiptc dep a dlopen() one
2023-11-03 21:15:29 +09:00
Yu Watanabe
45a7ef454e
man: mention DHCPv4 Router option is ignored when Classless Static Routes option is received
...
For #29564 .
2023-11-03 10:14:59 +00:00
Yu Watanabe
08752450c7
Update NEWS
2023-11-03 12:02:51 +09:00
Yu Watanabe
6256c65aad
meson: /etc/systemd/network is also used by udevd
2023-11-03 12:02:51 +09:00
Yu Watanabe
9b7a624267
network: add meson option to rename .example files on install
...
Also this renames 80-ethernet.network.example -> 89-ethernet.network.example,
to make it have lower precedence over other default .network files for
Ethernet interfaces.
Closes #29765 .
2023-11-03 11:57:46 +09:00
Yu Watanabe
2c4534854a
man: mention that network files should be prefixed with number smaller than 70
2023-11-03 11:42:19 +09:00
Yu Watanabe
b94f59b9d5
network: make generated configs have higher precedence over default configs
...
We use 80- for default .network files. So, the generated files from the
kernel command line should have smaller prefix.
2023-11-03 11:42:19 +09:00
Yu Watanabe
71164ee9fe
network: disable IPv6AcceptRA= in several default config
...
Also,
- drop DHCP=no, as it is the default setting,
- enable IPv6SendRA= for wifi access point,
- enable MulticastDNS= for wifi adhoc mode.
2023-11-03 11:41:52 +09:00
Yu Watanabe
bae0bd0024
meson: install newly added example .network file
...
Follow-up for e6ba085398 .
2023-11-03 11:27:18 +09:00
Yu Watanabe
c57ff6230e
NEWS: several updates for networking
2023-11-02 15:36:29 +09:00
Yu Watanabe
f5a0831c32
Merge pull request #29817 from YHNdnzj/fchmodat2
...
Add support for fchmodat2 and use it where appropriate
2023-11-02 04:56:29 +09:00
Yu Watanabe
4314abf6d4
sd-netlink: res_id is 16bit but serial is 32bit
...
The explicit value here is not so important.
Let's chop off the higher bits.
Fixes the issue reported at
https://github.com/systemd/systemd/pull/29802#issuecomment-1788637950 .
2023-11-01 14:02:49 +00:00
Yu Watanabe
498a6de596
dhcp6: enterprise ID is 32bit
...
Follow-up for 6b44099b3b .
Fixes #29800 .
2023-11-01 13:19:59 +00:00
Yu Watanabe
4ef83d9c88
udev: revert workarounds for issues caused by the devlink creation optimization
...
This reverts the following two commits:
- "udev: decrease devlink priority for encrypted partitions"
c4521fc17b .
- "udev: decrease devlink priority for iso disks"
df1dccd255 .
These commits are workarounds for issues caused by
331aa7aa15 .
With the previous commit, these workarounds are not necessary anymore,
as partitions are always processed later than their whole disk, and
a decrypted volume is also processed later than its backing volume.
2023-11-01 19:47:00 +09:00