LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch of Package systemd (Project Base:System)

From: Ludwig Nussel <ludwig.nussel@suse.de>
Date: Mon, 26 Nov 2012 09:49:42 +0100
Subject: avoid assertion if invalid address familily is passed to
 gethostbyaddr_r (bnc#791101)

---
 src/nss-myhostname/nss-myhostname.c | 6 ++++++
 1 file changed, 6 insertions(+)

--- systemd-206_git201308300826.orig/src/nss-myhostname/nss-myhostname.c
+++ systemd-206_git201308300826/src/nss-myhostname/nss-myhostname.c
@@ -442,6 +442,12 @@ enum nss_status _nss_myhostname_gethostb
         uint32_t local_address_ipv4 = LOCALADDRESS_IPV4;
         const char *canonical = NULL, *additional = NULL;
 
+        if (af != AF_INET && af != AF_INET6) {
+                *errnop = EAFNOSUPPORT;
+                *h_errnop = NO_DATA;
+                return NSS_STATUS_UNAVAIL;
+        }
+
         if (len != PROTO_ADDRESS_SIZE(af)) {
                 *errnop = EINVAL;
                 *h_errnop = NO_RECOVERY;