]> git.ipfire.org Git - thirdparty/systemd.git/commit
networkd: rework headers to avoid circular includes
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 29 Apr 2016 02:52:04 +0000 (22:52 -0400)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 29 Apr 2016 23:01:28 +0000 (19:01 -0400)
commit634f0f983c57e41292dd36c7327e99316ff61aa3
tree3001bda48db13713279ac42ca1650fc49cdaecda
parent26ccc1d0875b0e0c4306b03a52aff712c23d46c7
networkd: rework headers to avoid circular includes

Header files were organized in a way where the includer would add various
typedefs used by the includee before including it, resulting in a tangled
web of dependencies between files.

Replace this with the following logic:

          networkd.h
         /          \
networkd-link.h      \
networkd-ipv4ll.h--\__\
networkd-fdb.h         \
networkd-network.h    netword-netdev-*.h
networkd-route.h           \
                      networkd-netdev.h

If a pointer to a structure defined in a different header file is needed,
use a typedef line instead of including the whole header.
29 files changed:
src/network/networkd-address-pool.h
src/network/networkd-address.h
src/network/networkd-dhcp4.c
src/network/networkd-dhcp6.c
src/network/networkd-fdb.h
src/network/networkd-ipv4ll.c
src/network/networkd-link.c
src/network/networkd-link.h
src/network/networkd-lldp-tx.c
src/network/networkd-ndisc.c
src/network/networkd-netdev-bond.c
src/network/networkd-netdev-bond.h
src/network/networkd-netdev-bridge.c
src/network/networkd-netdev-bridge.h
src/network/networkd-netdev-dummy.h
src/network/networkd-netdev-gperf.gperf
src/network/networkd-netdev-ipvlan.h
src/network/networkd-netdev-macvlan.h
src/network/networkd-netdev-tunnel.h
src/network/networkd-netdev-tuntap.c
src/network/networkd-netdev-tuntap.h
src/network/networkd-netdev-veth.h
src/network/networkd-netdev-vlan.h
src/network/networkd-netdev-vxlan.c
src/network/networkd-netdev-vxlan.h
src/network/networkd-netdev.h
src/network/networkd-network.h
src/network/networkd-route.h
src/network/networkd.h