Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | network: Restrict the valid charset of DNR names | Ronan Pigott | 2024-10-29 | 1 | -0/+6 |
| | | | | | | | | | Not all possible DNS names will survive serialization. Restrict the set of valid dns names to LDH encoded names. Fixes: 25c33e350042 (network: parse RFC9463 DHCPv4 DNR option, 2024-01-16) Fixes: a07e83cc58f6 (network: Parse RFC9463 DHCPv6 DNR option, 2024-01-17) Fixes: 0c90d1d2f243 (ndisc: Parse RFC9463 encrypted DNS (DNR) option, 2024-01-19) | ||||
* | Merge pull request #34848 from ↵ | Lennart Poettering | 2024-10-22 | 1 | -29/+11 |
|\ | | | | | | | | | yuwata/network-dhcpv6-do-not-request-ia-pd-on-info-req network/dhcp6: do not request IA_PD on information requesting mode | ||||
| * | network/dhcp6: do not request IA_PD when running in the other-information mode | Yu Watanabe | 2024-10-21 | 1 | -29/+11 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts the following commits: - 180cc5421d9712fb95a6bbc725dc8ba459360c8b "sd-dhcp6-client: allow to request IA_PD on information requesting mode" - cf7a403e470368049165ecff7ac7686928778d7c "sd-dhcp6-lease: adjust information refresh time with lifetime of IA_PD" - 1918eda30d12e1ba3ee55921c18ec53267463e24 "network/dhcp6: process hostname and IA_PD on information requesting mode" As per discussion in #34299, https://github.com/systemd/systemd/issues/34299#issuecomment-2425153221 the offending commits violate RFC 8415 section 18.2.6: > The client uses an Information-request message to obtain > configuration information without having addresses and/or delegated > prefixes assigned to it. | ||||
* | | Merge pull request #30952 from rpigott/resolved-dnr | Lennart Poettering | 2024-10-22 | 1 | -0/+103 |
|\ \ | |/ |/| | RFC9463: Discovery of Network-designated Resolvers | ||||
| * | network: add dnr resolvers to networkctl status json output | Ronan Pigott | 2024-10-21 | 1 | -1/+1 |
| | | |||||
| * | network: Parse RFC9463 DHCPv6 DNR option | Ronan Pigott | 2024-10-21 | 1 | -0/+103 |
| | | | | | | | | | | Implement the parsing for V6_DNR DHCPv6 option. This does the same as the DHCP V4_DNR option. | ||||
* | | sd-dhcp6-lease: adjust information refresh time with lifetime of IA_PD | Yu Watanabe | 2024-10-15 | 1 | -6/+29 |
| | | | | | | | | For the case when IRT is too large but lifetime of IA_PD is too short. | ||||
* | | sd-dhcp6-client: allow to request IA_PD on information requesting mode | Yu Watanabe | 2024-10-15 | 1 | -5/+0 |
| | | | | | | | | To support RFC 7084, WPD-4. | ||||
* | | sd-dhcp6-lease: use free_and_replace_full() | Yu Watanabe | 2024-10-15 | 1 | -4/+2 |
| | | |||||
* | | tree-wide: use strv_extend_strv_consume() where appropriate | Mike Yuan | 2024-09-21 | 1 | -1/+1 |
|/ | |||||
* | dhcp: introduce sd_dhcp_duid and move relevant functions to sd_dhcp_duid.[ch] | Yu Watanabe | 2023-12-22 | 1 | -1/+1 |
| | |||||
* | dhcp: cleanup headers included by dhcp-identifier.h | Yu Watanabe | 2023-12-22 | 1 | -0/+1 |
| | |||||
* | Rename {dual,triple}_timestamp_get to {dual,triple}_timestamp_now | Zbigniew Jędrzejewski-Szmek | 2023-11-13 | 1 | -1/+1 |
| | | | | | | Those functions take a pointer to a timestamp and return a timestamp pointer, so the reader would be justified to think that those are just getters. Rename them to avoid confusion. | ||||
* | dhcp6: enterprise ID is 32bit | Yu Watanabe | 2023-11-01 | 1 | -1/+1 |
| | | | | | | Follow-up for 6b44099b3baff64af1ef58db8e38ecddc8070e9b. Fixes #29800. | ||||
* | networkd: Add DHCP vendor specific options to dbus API | Nandakumar Raghavan | 2023-10-27 | 1 | -0/+86 |
| | | | | | | Add DHCP vendor specific options to expose in dbus API. This will be added to the JSON output when we query org.freedesktop.network1.Manager object. | ||||
* | sd-dhcp6-client: introduce sd_dhcp6_lease_get_t1() and friends | Yu Watanabe | 2023-09-20 | 1 | -13/+40 |
| | |||||
* | sd-dhcp6-client: use be32_sec_to_usec() at more places | Yu Watanabe | 2023-09-20 | 1 | -15/+11 |
| | |||||
* | sd-dhcp6-client: rework IA_NA or IA_PD getters | Yu Watanabe | 2023-09-20 | 1 | -26/+109 |
| | | | | | | | | | This splits sd_dhcp6_lease_get_address() into small pieces, and introduce FOREACH_DHCP6_ADDRESS() macro. Also, the lifetimes provided by _get_address_lifetime() are now in usec, and _get_address_lifetime_timestamp() provides timestamp. The same change is also applied for IA_PD. | ||||
* | sd-dhcp6-client: introduce sd_dhcp6_lease_has_pd_prefix() and friend | Yu Watanabe | 2023-09-20 | 1 | -0/+8 |
| | | | | No functional change, just refactoring. | ||||
* | Merge pull request #28132 from rpigott/dhcp-captive-portal | Yu Watanabe | 2023-07-03 | 1 | -0/+35 |
|\ | | | | | Implement RFC8910: captive portal dhcp options | ||||
| * | dhcp6-client: parse RFC8910 captive portal dhcp6 option | Ronan Pigott | 2023-06-30 | 1 | -0/+35 |
| | | |||||
* | | sd-dhcp6-lease: ignore invalid byte(s) at the end of the packet | Philipp Kern | 2023-06-29 | 1 | -0/+5 |
|/ | | | | | | | | | | | | | | Oracle Cloud sends malformed DHCPv6 replies that have an invalid byte at the end, which cannot be parsed as an option code. networkd currently can cope with the invalid option (it is ignored), but the whole packet is ignored altogether because of the additional null at the end. It's better to be liberal in what we accept and actually assign an address, given that the reply contains a valid IA_NA. Fixes #28183. | ||||
* | sd-dhcp6: always append the default status message generated from status code | Yu Watanabe | 2023-01-16 | 1 | -4/+2 |
| | | | | Fixes #25988. | ||||
* | all: avoid various "-Wcast-align=strict" warnings | Thomas Haller | 2022-12-09 | 1 | -1/+1 |
| | |||||
* | dhcp6: gracefully handle NoBinding error | Yu Watanabe | 2022-08-12 | 1 | -1/+1 |
| | | | | | | | When we receive NoBinding status code, the requesting binding (address or any other information) does not exist anymore in the server. Hence, resending the request is meaningless. Let's restart the transaction from the beginning in that case. | ||||
* | sd-dhcp6-client: add more debugging logs on parsing message | Yu Watanabe | 2022-07-14 | 1 | -12/+22 |
| | |||||
* | dhcp: make option names singular | Yu Watanabe | 2022-04-03 | 1 | -3/+3 |
| | |||||
* | tree-wide: add a space after if, switch, for, and while | Yu Watanabe | 2022-04-01 | 1 | -1/+1 |
| | |||||
* | list: make LIST_FOREACH() and LIST_FOREACH_BACKWARDS() safer | Yu Watanabe | 2022-03-19 | 1 | -1/+1 |
| | |||||
* | list: declare iterator of LIST_FOREACH() in the loop | Yu Watanabe | 2022-03-19 | 1 | -3/+0 |
| | |||||
* | sd-dhcp6-client: logs invalid NTP option | Yu Watanabe | 2022-02-14 | 1 | -1/+1 |
| | | | | | Returning negative errno triggers to produce debugging log in dhcp6_lease_parse_message(). | ||||
* | sd-dhcp6-client: split dhcp6-internal.h into two | Yu Watanabe | 2022-02-14 | 1 | -2/+1 |
| | | | | Also, this moves string tables to dhcp6-protocol.c. | ||||
* | sd-dhcp6-client: add log about Information Refresh Time | Yu Watanabe | 2022-02-14 | 1 | -3/+6 |
| | | | | | And store IRT only when the client is running in information requesting mode. | ||||
* | sd-dhcp6-client: use memcmp_nn() at one more place | Yu Watanabe | 2022-02-14 | 1 | -5/+7 |
| | |||||
* | sd-dhcp6-client: set lease expiration timer in client_enter_bound_state() | Yu Watanabe | 2022-02-14 | 1 | -17/+10 |
| | | | | | | The timer must be active until the client get re-enter bound state, and the timeout must be determined by the lease acquired when entering the bound state. | ||||
* | sd-dhcp6-client: introduce dhcp6_lease_new_from_message() | Yu Watanabe | 2022-02-14 | 1 | -1/+250 |
| | |||||
* | sd-dhcp6-client: use structured initializer | Yu Watanabe | 2022-02-14 | 1 | -2/+4 |
| | |||||
* | sd-dhcp6-lease: unify lease lifetime calculation | Yu Watanabe | 2022-02-14 | 1 | -19/+58 |
| | |||||
* | sd-dhcp6-client: always use ENODATA when a lease does not have requested data | Yu Watanabe | 2022-02-14 | 1 | -7/+7 |
| | |||||
* | sd-dhcp6-client: introduce dhcp6_ia_free() | Yu Watanabe | 2022-02-14 | 1 | -16/+17 |
| | |||||
* | sd-dhcp6-client: unify IA option header | Yu Watanabe | 2022-02-14 | 1 | -1/+1 |
| | | | | This also fixes possible unaligned read of message. | ||||
* | sd-dhcp6-lease: reset client or server ID when length is zero | Yu Watanabe | 2022-02-14 | 1 | -12/+14 |
| | | | | Addresses https://github.com/systemd/systemd/pull/22406#issuecomment-1029391091. | ||||
* | sd-dhcp6-lease: convert assert_return() -> assert() in non-public functions | Yu Watanabe | 2022-02-14 | 1 | -66/+63 |
| | |||||
* | sd-dhcp6-client: rename ia -> ia_na, pd -> ia_pd in sd_dhcp6_lease | Yu Watanabe | 2022-02-14 | 1 | -5/+5 |
| | | | | The previous naming is quite misleading. | ||||
* | dhcp6: make sd_dhcp6_lease_get_dns() and friends accepts NULL | Yu Watanabe | 2021-11-26 | 1 | -7/+9 |
| | |||||
* | sd-dhcp6-client: introduce dhcp6_lease_{get,set}_clientid() | Yu Watanabe | 2021-11-01 | 1 | -0/+32 |
| | |||||
* | sd-dhcp6-client: prefix variables which store results with "ret_" | Yu Watanabe | 2021-11-01 | 1 | -8/+8 |
| | |||||
* | Merge pull request #21200 from yuwata/sd-dhcp6-client-server-address | Yu Watanabe | 2021-11-01 | 1 | -0/+8 |
|\ | | | | | sd-dhcp6-client: introduce sd_dhcp6_lease_get_server_address() | ||||
| * | sd-dhcp6-client: introduce sd_dhcp6_lease_get_server_address() | Yu Watanabe | 2021-11-01 | 1 | -0/+8 |
| | | |||||
* | | sd-dhcp6: drop unused functions | Yu Watanabe | 2021-11-01 | 1 | -18/+0 |
|/ |