[systemd-commits] 2 commits - src/core src/libsystemd-rtnl

Tom Gundersen tomegun at kemper.freedesktop.org
Thu Dec 19 13:00:17 PST 2013


 src/core/loopback-setup.c          |    6 ++++--
 src/libsystemd-rtnl/rtnl-message.c |    6 +++---
 2 files changed, 7 insertions(+), 5 deletions(-)

New commits:
commit 4d47756b8fa5eb6bc75b7aa2345eb31e6bc10e9a
Author: Tom Gundersen <teg at jklm.no>
Date:   Thu Dec 19 21:28:50 2013 +0100

    rtnl: correctly get the size of data to be appended
    
    This fixes:
      systemd[1]: Failed to configure loopback device: Numerical result out of range

diff --git a/src/libsystemd-rtnl/rtnl-message.c b/src/libsystemd-rtnl/rtnl-message.c
index c62eca9..24f2e6f 100644
--- a/src/libsystemd-rtnl/rtnl-message.c
+++ b/src/libsystemd-rtnl/rtnl-message.c
@@ -447,7 +447,7 @@ int sd_rtnl_message_append_u32(sd_rtnl_message *m, unsigned short type, uint32_t
                         return -ENOTSUP;
         }
 
-        r = add_rtattr(m, type, &data, sizeof(&data));
+        r = add_rtattr(m, type, &data, sizeof(uint32_t));
         if (r < 0)
                 return r;
 
@@ -508,7 +508,7 @@ int sd_rtnl_message_append_in_addr(sd_rtnl_message *m, unsigned short type, cons
                         return -ENOTSUP;
         }
 
-        r = add_rtattr(m, type, data, sizeof(data));
+        r = add_rtattr(m, type, data, sizeof(struct in_addr));
         if (r < 0)
                 return r;
 
@@ -568,7 +568,7 @@ int sd_rtnl_message_append_in6_addr(sd_rtnl_message *m, unsigned short type, con
                         return -ENOTSUP;
         }
 
-        r = add_rtattr(m, type, data, sizeof(data));
+        r = add_rtattr(m, type, data, sizeof(struct in6_addr));
         if (r < 0)
                 return r;
 

commit 753e98788a9bcbd3bba2b3006672c003ae72eefa
Author: Tom Gundersen <teg at jklm.no>
Date:   Thu Dec 19 20:11:34 2013 +0100

    loopback-setup: correctly set flags and scope for ipv6 address

diff --git a/src/core/loopback-setup.c b/src/core/loopback-setup.c
index d3669e9..ffe661a 100644
--- a/src/core/loopback-setup.c
+++ b/src/core/loopback-setup.c
@@ -51,7 +51,8 @@ static int add_addresses(sd_rtnl *rtnl, int if_loopback, struct in_addr *ipv4_ad
         _cleanup_sd_rtnl_message_unref_ sd_rtnl_message *ipv4 = NULL, *ipv6 = NULL;
         int r;
 
-        r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET, 8, IFA_F_PERMANENT, RT_SCOPE_HOST, &ipv4);
+        r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET, 8,
+                                     IFA_F_PERMANENT, RT_SCOPE_HOST, &ipv4);
         if (r < 0)
                 return r;
 
@@ -68,7 +69,8 @@ static int add_addresses(sd_rtnl *rtnl, int if_loopback, struct in_addr *ipv4_ad
         if (!socket_ipv6_is_supported())
                 return 0;
 
-        r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET6, 128, 0, 0, &ipv6);
+        r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET6, 128,
+                                     IFA_F_PERMANENT, RT_SCOPE_HOST, &ipv6);
         if (r < 0)
                 return r;
 



More information about the systemd-commits mailing list