Systemd/src/systemd
Timo Rothenpieler 14b66dbc92 dhcp4: fix DHCP on InfiniBand interfaces
With these patches applied, networkd is successfully able to get an
address from a DHCP server on an IPoIB interface.

1)
Makes networkd pass the actual interface type to the dhcp client,
instead of hardcoding it to Ethernet.

2)
Fixes some issues in handling the larger (20 Byte) IB MAC addresses in
the dhcp code.

3)
Add a new field to networkds Link struct, which holds the interface
broadcast address.

3.1)
Modify the DHCP code to also expect the broadcast address as parameter.
On an Ethernet-Interface the Broadcast address never changes and is always
all 6 bytes set to 0xFF.
On an IB one however it is not neccesarily always the same, thus
fetching the actual address from the interface is neccesary.

4)
Only the last 8 bytes of an IB MAC are stable, so when using an IB MAC to
generate a client ID, only pass those 8 bytes.
2020-10-28 14:44:43 +01:00
..
_sd-common.h _sd-common.h: avoid parsing errors with Coverity 2020-08-06 16:26:57 +02:00
meson.build sd-dhcp6: Introduce vendor specific information 2020-05-29 13:36:42 +02:00
sd-bus-protocol.h sd-bus: move SD_BUS_MAXIMUM_(SIGNATURE|NAME)_LENGTH to sd-bus-protocol.h 2020-09-04 23:51:21 +02:00
sd-bus-vtable.h sd-bus: introduce new SD_BUS_VTABLE_ABSOLUTE_OFFSET vtable flag 2020-05-13 16:57:44 +02:00
sd-bus.h sd-bus: move SD_BUS_MAXIMUM_(SIGNATURE|NAME)_LENGTH to sd-bus-protocol.h 2020-09-04 23:51:21 +02:00
sd-daemon.h Introduce sd_notify_barrier 2020-05-01 03:22:47 +05:30
sd-device.h sd-device: introduce sd_device_set_sysattr_valuef() 2020-09-11 17:41:10 +09:00
sd-dhcp-client.h dhcp4: fix DHCP on InfiniBand interfaces 2020-10-28 14:44:43 +01:00
sd-dhcp-lease.h sd-dhcp: clean-up of DHCP lease server code 2020-05-30 14:18:43 +02:00
sd-dhcp-option.h dhcp: remove struct sd_dhcp_raw_option 2019-11-18 23:37:22 +09:00
sd-dhcp-server.h network: clean-up DHCP lease server data configuration 2020-06-18 13:08:18 +09:00
sd-dhcp6-client.h network: DHCP6 - introduce DHCP6 DUID to string 2020-06-10 19:17:28 +02:00
sd-dhcp6-lease.h dhcp6: parse the FQDN option 2020-08-03 09:36:18 +02:00
sd-dhcp6-option.h sd-dhcp6: Introduce vendor specific information 2020-05-29 13:36:42 +02:00
sd-event.h sd-event: optionally, if an event source fails, exit the event loop 2020-10-07 09:38:41 +02:00
sd-hwdb.h tree-wide: drop copyright headers from frequent contributors 2018-06-20 11:58:53 +02:00
sd-id128.h tree-wide: drop duplicated blank lines 2019-07-15 18:41:27 +02:00
sd-ipv4acd.h ipv4ll: do not reset conflict counter on restart 2019-12-11 13:26:31 +09:00
sd-ipv4ll.h tree-wide: use proper unicode © instead of (C) where we can 2018-06-14 10:20:20 +02:00
sd-journal.h sd-journal: when enumerating, continue even after an inaccessible field 2020-07-21 17:42:11 +02:00
sd-lldp.h all: fix minor typos 2020-07-07 18:52:49 +09:00
sd-login.h Rewrite sd_machine_get_ifindices() to avoid FOREACH_WORD() 2020-09-09 09:34:54 +02:00
sd-messages.h core: systemd-oomd pid1 integration 2020-10-07 17:12:24 -07:00
sd-ndisc.h tree-wide: fix spelling errors 2020-04-21 23:21:08 +02:00
sd-netlink.h sd-netlink: introduce sd_netlink_message_read_data() 2020-10-08 02:51:23 +09:00
sd-network.h sd-network: drop unused functions 2020-06-23 19:13:05 +09:00
sd-path.h sd-path: drop "-dir" and "-path" suffixes from path enums 2020-05-28 23:54:35 +02:00
sd-radv.h radv: introduce sd_radv_is_running() 2020-07-20 15:29:12 +09:00
sd-resolve.h tree-wide: add whitespace between type and variable name 2018-12-04 09:29:54 +01:00
sd-utf8.h tree-wide: drop empty lines in the begining of comments 2018-06-29 10:50:23 +09:00