diff options
author | Vincent Bernat <vincent@bernat.ch> | 2021-02-10 16:53:57 +0100 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2021-02-10 16:53:57 +0100 |
commit | 714238716ef36f1dfc5721055e2ec4affd42ebfa (patch) | |
tree | 50564bd78326443e2376f2095251b6b1c0871afc /sysdep/unix/main.c | |
parent | 00b85905b9f5081eb2fce0ed79542085278e9f42 (diff) |
BGP: Add support for BGP hostname capability
This is an implementation of draft-walton-bgp-hostname-capability-02.
It is implemented since quite some time for FRR and in datacenter, this
gives a nice output to avoid using IP addresses.
It is disabled by default. The hostname is retrieved from uname(2) and
can be overriden with "hostname" option. The domain name is never set
nor displayed.
Minor changes by committer.
Diffstat (limited to 'sysdep/unix/main.c')
-rw-r--r-- | sysdep/unix/main.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sysdep/unix/main.c b/sysdep/unix/main.c index 2c7e3cef..67e76655 100644 --- a/sysdep/unix/main.c +++ b/sysdep/unix/main.c @@ -20,6 +20,7 @@ #include <pwd.h> #include <grp.h> #include <sys/stat.h> +#include <sys/utsname.h> #include <libgen.h> #include "nest/bird.h" @@ -89,6 +90,21 @@ drop_gid(gid_t gid) } /* + * Hostname + */ + +char * +get_hostname(linpool *lp) +{ + struct utsname uts = {}; + + if (uname(&uts) < 0) + return NULL; + + return lp_strdup(lp, uts.nodename); +} + +/* * Reading the Configuration */ |