]> git.puffer.fish Git - matthieu/frr.git/commitdiff
Handle hostname/domainname properly for FreeBSD
authorMitesh Kanjariya <mitesh@cumulusnetworks.com>
Fri, 25 Aug 2017 23:36:31 +0000 (16:36 -0700)
committerMitesh Kanjariya <mitesh@cumulusnetworks.com>
Fri, 25 Aug 2017 23:36:31 +0000 (16:36 -0700)
Signed-off-by: Mitesh Kanjariya <mitesh@cumulusnetworks.com>
bgpd/bgpd.c
lib/command.c

index c64ebf1222a950ff7cf1ed85e9d19146a1496883..8b70c24ac2941f2804ec7ef5e70ec9c382fc45f5 100644 (file)
@@ -2766,15 +2766,17 @@ static struct bgp *bgp_create(as_t *as, const char *name,
                XFREE(MTYPE_BGP_PEER_HOST, bgp->peer_self->hostname);
                bgp->peer_self->hostname = NULL;
        }
-       bgp->peer_self->hostname = XSTRDUP(MTYPE_BGP_PEER_HOST,
-                                          hostname_get());
+       if (hostname_get())
+               bgp->peer_self->hostname = XSTRDUP(MTYPE_BGP_PEER_HOST,
+                                                  hostname_get());
 
        if (bgp->peer_self->domainname != NULL) {
                XFREE(MTYPE_BGP_PEER_HOST, bgp->peer_self->domainname);
                bgp->peer_self->domainname = NULL;
        }
-       bgp->peer_self->domainname = XSTRDUP(MTYPE_BGP_PEER_HOST,
-                                            domainname_get());
+       if (domainname_get())
+               bgp->peer_self->domainname = XSTRDUP(MTYPE_BGP_PEER_HOST,
+                                                    domainname_get());
        bgp->peer = list_new();
        bgp->peer->cmp = (int (*)(void *, void *))peer_cmp;
        bgp->peerhash = hash_create(peer_hash_key_make, peer_hash_same, NULL);
index 78d8dbdc6238e332c318acbbbdd051eeee974d58..2d262c11468dcc9a66562406a1acb72508cd08ad 100644 (file)
@@ -130,12 +130,6 @@ struct host host;
  */
 const char *hostname_get(void)
 {
-       struct utsname names;
-
-       if (!host.name) {
-               uname(&names);
-               host.name = XSTRDUP(MTYPE_HOST, names.nodename);
-       }
        return host.name;
 }
 
@@ -144,14 +138,6 @@ const char *hostname_get(void)
  */
 const char *domainname_get(void)
 {
-       struct utsname names;
-
-       if (!host.name || !host.domainname) {
-#ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
-               uname(&names);
-               host.domainname = XSTRDUP(MTYPE_HOST, names.domainname);
-#endif
-       }
        return host.domainname;
 }