[systemd-devel] [RFC][PATCH] networkd: add a basic network daemon
Holger Winkelmann [TP]
hw at travelping.com
Tue Nov 5 22:56:32 PST 2013
good morning,
We really like to see this direct, how ever would it not better to join
efforts for network management. I.e. arch Linux claims with netctl [1]
to do network management "the systems way. and there are a few other
attempts to do network managent. I.e. netconfd [2] of openWRT is doing
network management (kind of monolitic) as a daemon as well which can
be configured via Bus RPC. (OK ubus in this case). Not to mention
the desktop centric network manager.
Can somebody explain the goals of systemd-networkd? If this just a small
basic tool will be replaced if more features are required or a new attempt
to for general network management?
[1] https://wiki.archlinux.org/index.php/netctl
https://github.com/joukewitteveen/netctl
[2] http://wiki.openwrt.org/doc/techref/netifd
BR,
Holger
----- Original Message -----
> On Wed, 06.11.13 01:33, Tom Gundersen (teg at jklm.no) wrote:
> > Short-term TODO:
> > - make rtnl calls asynchronous
>
> Don't wait for too long for this! The longer you wait the more code you
> have to rework for this. And you shouldn't underestimate how complex
> changes from sync to async are...
>
> > Gateway=192.168.1.1
> > Address=label at 192.168.1.23/24
> > Address=fe80::9aee:94ff:fe3f:c618/64
>
> Hmm, what's the plan regarding confguration of scopes and other
> attributes of addresses? Is the "label@" syntax your invention or has
> this been used elsewhere (I am not opposed to the syntax, just curious).
>
> > + sd_event_add_io(m->event,
> > + udev_monitor_get_fd(m->udev_monitor),
> > + EPOLLIN,
> > + manager_dispatch_link_udev,
> > + (void *)m,
> > + &m->udev_event_source);
>
> Missing return value check! (and cast to void* is unnecessary, in C
> all pointers automatically downgrade to void* without casting anyway)
>
> > + if (r < 0) {
> > + log_warning("Colud not parse config file %s: %s",
> > filename, strerror(-r));
>
> ^^^^^^ Typo
>
> > + return r;
> > + } else
> > + log_debug("Parsed configuration file %s", filename);
> > +
> > + network->filename = strdup(filename);
>
> OOM check missing!
>
> > +static void networks_free(Manager *manager) {
> > + Network *network, *network_next;
> > +
> > + if (!manager)
> > + return;
> > +
> > + LIST_FOREACH_SAFE(networks, network, network_next,
> > manager->networks) {
> > + network_free(network);
> > + }
>
> I usually just use:
>
> while ((network = manager->networks))
> network_free(free);
>
> Which should do the job too.
>
> > +struct Link {
> > + uint64_t ifindex;
>
> Hmm is this really an uint64_t? if_nametoindex(3) suggestes it's an
> "unsigned"?
>
> But yeah, looks great. Commit.
>
> Lennart
>
> --
> Lennart Poettering, Red Hat
> _______________________________________________
> systemd-devel mailing list
> systemd-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/systemd-devel
>
--
Holger Winkelmann
Managing Director
email: hw at travelping.com
phone: +49-391-819099-223
mobil: +49-171-5594745
http://www.linkedin.com/in/hwinkel
----------------- enabling your networks ---------------------
Travelping GmbH phone: +49-391-8190990
Roentgenstr. 13 fax: +49-391-819099299
D-39108 Magdeburg email: info at travelping.com
GERMANY web: http://www.travelping.com
Company Registration: Amtsgericht Stendal Reg No.: HRB 10578
Geschaeftsfuehrer: Holger Winkelmann | VAT ID No.: DE236673780
--------------------------------------------------------------
More information about the systemd-devel
mailing list