[balsa] Use utsname.domainname if it is available



commit 8b756a83fc8d9f1ae0f96e43578379a0b9691790
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date:   Tue Aug 29 11:28:01 2017 -0400

    Use utsname.domainname if it is available
    
        * libbalsa/misc.c (libbalsa_get_domainname): use
        utsname.domainname if it is available.

 ChangeLog       |    5 +++++
 libbalsa/misc.c |   11 ++++++++++-
 2 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index f41ab64..fd62f23 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2017-08-29  Peter Bloomfield  <pbloomfield bellsouth net>
 
+       * libbalsa/misc.c (libbalsa_get_domainname): use
+       utsname.domainname if it is available.
+
+2017-08-29  Peter Bloomfield  <pbloomfield bellsouth net>
+
        * libbalsa/libbalsa.c (libbalsa_init): drop unused call to
        uname.
 
diff --git a/libbalsa/misc.c b/libbalsa/misc.c
index 40b2ff8..e1356c4 100644
--- a/libbalsa/misc.c
+++ b/libbalsa/misc.c
@@ -46,6 +46,7 @@
 
 static const gchar *libbalsa_get_codeset_name(const gchar *txt, 
                                              LibBalsaCodeset Codeset);
+#ifndef HAVE_STRUCT_UTSNAME_DOMAINNAME
 static int getdnsdomainname(char *s, size_t l);
 
 static int 
@@ -95,12 +96,19 @@ getdnsdomainname (char *s, size_t l)
   fclose (f);
   return (-1);
 }
+#endif                          /* !HAVE_STRUCT_UTSNAME_DOMAINNAME */
 
 gchar *
 libbalsa_get_domainname(void)
 {
-    char domainname[256]; /* arbitrary length */
     struct utsname utsname;
+#ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
+
+    uname(&utsname);
+
+    return g_strdup(utsname.domainname);
+#else                           /* HAVE_STRUCT_UTSNAME_DOMAINNAME */
+    char domainname[256]; /* arbitrary length */
     gchar *d;
  
     uname(&utsname);
@@ -113,6 +121,7 @@ libbalsa_get_domainname(void)
        return g_strdup(domainname);
     }
     return NULL;
+#endif                          /* HAVE_STRUCT_UTSNAME_DOMAINNAME */
 }
 
 /* libbalsa_find_word:


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]