summaryrefslogtreecommitdiff
path: root/src/network/networkd-manager.c
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2014-03-31 17:17:56 +0200
committerTom Gundersen <teg@jklm.no>2014-03-31 17:17:56 +0200
commit208612034e16c6af0406fa0572da975bf8747d2e (patch)
treebb4afded7d6b0922c31f57c39e0f9e293b306383 /src/network/networkd-manager.c
parent689703f618f99661ca75db7c74984ec0fed27e08 (diff)
networkd: rewind rtnl message between passing it to functions
This makes updating link status on netdev links work again.
Diffstat (limited to 'src/network/networkd-manager.c')
-rw-r--r--src/network/networkd-manager.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c
index ddbdabbff9..d903d0d60e 100644
--- a/src/network/networkd-manager.c
+++ b/src/network/networkd-manager.c
@@ -323,8 +323,14 @@ static int manager_rtnl_process_link(sd_rtnl *rtnl, sd_rtnl_message *message, vo
NetDev *netdev;
r = netdev_get(m, name, &netdev);
- if (r >= 0)
+ if (r >= 0) {
netdev_set_ifindex(netdev, message);
+ r = sd_rtnl_message_rewind(message);
+ if (r < 0) {
+ log_debug("could not rewind rtnl message");
+ return 0;
+ }
+ }
}
r = link_get(m, ifindex, &link);