summaryrefslogtreecommitdiff
path: root/src/network
AgeCommit message (Collapse)Author
2014-01-03networkd: dhcp - avoid null pointer dereferenceTom Gundersen
2014-01-03networkd: add more asserts and ignore all events when link has failedTom Gundersen
2014-01-02networkd: only track state of links we are managingTom Gundersen
If a network is not (yet) set for a link, we do not care about its state (as we anyway don't know what to do with it).
2014-01-02networkd: improve loggingTom Gundersen
Remove redundant messages, add some debugging ones and make wording more uniform.
2014-01-02networkd: fix NULL pointer derefKay Sievers
2014-01-02networkd: fix getting initial stateTom Gundersen
We were requesting the state and then ignoring it...
2014-01-01networkd: add DHCPv4 supportTom Gundersen
This adds basic DHCPv4 support. Link-sense is enabled unconditionally, but the plan is to make that configurable. I tested this in a VM with lots of NICs and over wifi in the various coffee shops I found this Christmas, but more testing would definitely be appreciated.
2014-01-01networkd: distinguish between static and dynamic addresses/routesTom Gundersen
Static addresses/routes are associated with a network. Dynamic addresses/routes are associtade with links (as the corresponding network may be shared by several links).
2014-01-01network: add support for dropping addressTom Gundersen
2013-12-18core,logind,networkd: check for udev device initialization via enumeration ↵Lennart Poettering
matches Instead of checking each device after we got it, check wuth an enumeration filter instead, to make it more efficient.
2013-12-18core,logind,networkd: don't pick up devices from udev before they finished ↵Lennart Poettering
udev initialization Managers shouldn't pick up the devices the manage before udev finished initialization, hence check explicitly for that.
2013-12-17networkd: bridge - fix state machineTom Gundersen
We were entering BRIDGE_STATE_CREATED rather than BRIDGE_STATE_READY.
2013-12-17networkd: link - remove useless statesTom Gundersen
Rework the state-machine a bit.
2013-12-17networkd: rename link_update_flags to link_updateTom Gundersen
We are likely to track more than the flags in the future.
2013-12-17networkd: add support for Route sectionsTom Gundersen
2013-12-17networkd: correct logging messageTom Gundersen
2013-12-16network: more asserts to shut up scan-buildThomas Hindoe Paaboel Andersen
2013-12-16network: use SETLINK to bring up interfacesTom Gundersen
2013-12-16rtnl: replace message_append by typesafe versionsTom Gundersen
2013-12-16rtnl: simplify route_new()Tom Gundersen
Drop most of the arguments and instead introduce set_dst_prefixlen().
2013-12-16rtnl: simplify link_new()Tom Gundersen
Drop most of the arguments and instead introduce link_set_{flags,type}.
2013-12-13event: be more conservative when returning errors from event handler callbacksLennart Poettering
We really should return errors from event handlers if we have a continous problem and don't know any other solution.
2013-12-11event: hook up sd-event with the service watchdog logicLennart Poettering
Adds a new call sd_event_set_watchdog() that can be used to hook up the event loop with the watchdog supervision logic of systemd. If enabled and $WATCHDOG_USEC is set the event loop will ping the invoking systemd daemon right after coming back from epoll_wait() but not more often than $WATCHDOG_USEC/4. The epoll_wait() will sleep no longer than $WATCHDOG_USEC/4*3, to make sure the service manager is called in time. This means that setting WatchdogSec= in a .service file and calling sd_event_set_watchdog() in your daemon is enough to hook it up with the watchdog logic.
2013-12-04networkd: add link-sense and simplify state-machine a bitTom Gundersen
This listens to rtnetlink for changes to IFF_UP and IFF_LOWER_UP (link sense). The latter is simply logged at the moment, but will be useful once we add dhcp support.
2013-11-28Remove some unused variablesZbigniew Jędrzejewski-Szmek
2013-11-28networkd: fix several Address entries in [Network] sectionTom Gundersen
2013-11-27networkd: Initialize variable to NULLPatrik Flykt
If any number of arguments are given, _cleanup_manager_free_ is used with unitialized memory causing a crash.
2013-11-26networkd: add bridge supportTom Gundersen
A bridge is specified in a .netdev file with a section [Bridge] and at least the entry Name=. A link may be joined to a bridge if the .network applied to it has a Bridge= entry giving the name of the bridge in its [Network] section. We eagerly create all bridges on startup, and links are added to bridges as soon as they both appear.
2013-11-26networkd: minor fixesTom Gundersen
In particular, store the ifname, though we should only use it carefully, as it is not guaranteed to be stable. Using it for logging is fine though.
2013-11-25networkd: use correct printf formatterDave Reisner
uint64_t can be formatted correctly with %ju, rather than casting to unsigned and potentially losing accuracy.
2013-11-25delete unused variablesThomas Hindoe Paaboel Andersen
2013-11-25networkd: add support for [Address] sectionsTom Gundersen
This will allow specifying more options per address than the simple Address= entry in the [Network] section. Preliminary support for the same functionality for [Route] sections are added, but not yet hooked up, as more testing is needed.
2013-11-25conf-parser: distinguish between multiple sections with the same nameTom Gundersen
Pass on the line on which a section was decleared to the parsers, so they can distinguish between multiple sections (if they chose to). Currently no parsers take advantage of this, but a follow-up patch will do that to distinguish [Address] Address=192.168.0.1/24 Label=one [Address] Address=192.168.0.2/24 Label=two from [Address] Address=192.168.0.1/24 Label=one Address=192.168.0.2/24 Label=two
2013-11-23networkd: fix buildTom Gundersen
Forgot to 'git add'...
2013-11-23networkd: use Type=notifyTom Gundersen
Also start earlier during boot.
2013-11-21networkd: make sure Network and Link can always be freedTom Gundersen
Also, don't fail a link just because we can't find its MAC address.
2013-11-21networkd: avoid segfaultTom Gundersen
2013-11-21networkd: don't filter on udev tagsTom Gundersen
This removed the requirement for devices to be tagged with 'systemd-networkd' before they will be visible to networkd. Still, as by default we don't ship any .network files, network devices will simply be tracked, but not touched, unless the admin configures things explicitly.
2013-11-19networkd: make sure Links and Networks are freedTom Gundersen
2013-11-17networkd: make all calls asyncTom Gundersen
2013-11-17networkd: store netmask and mac address explicitlyTom Gundersen
2013-11-13rtnl: rename rtnl_bus_send_with_reply_and_block() to rtnl_bus_call()Tom Gundersen
Follow the equivalent rename in sd-bus to stay as similar as possible.
2013-11-12bus: introduce concept of a "default" event loop per-thread and make use of ↵Lennart Poettering
it everywhere Try to emphasize a bit that there should be a mapping between event loops and threads, hence introduce a logic that there's one "default" event loop for each thread, that can be queried via "sd_event_default()".
2013-11-10network: fix testsTom Gundersen
One of the tests were assuming the network configuration dirs exist. We can't do that, so disable it for now.
2013-11-09networkd: add a basic network daemonTom Gundersen
This daemon listens for and configures network devices tagged with 'systemd-networkd'. By default, no devices are tagged so this daemon can safely run in parallel with existing network daemons/scripts. Networks are configured in /etc/systemd/network/*.network. The first .network file that matches a given link is applied. The matching logic is similar to the one for .link files, but additionally supports matching on interface name. The mid-term aim is to provide an alternative to ad-hoc scripts currently used in initrd's and for wired setups that don't change much (e.g., as seen on servers/and some embedded systems). Currently, static addresses and a gateway can be configured. Example .network file: [Match] Name=wlp2s0 [Network] Description=My Network Gateway=192.168.1.1 Address=192.168.1.23/24 Address=fe80::9aee:94ff:fe3f:c618/64