]> xenbits.xensource.com Git - libvirt.git/commitdiff
nss: Use macro to generate public API names
authorMichal Privoznik <mprivozn@redhat.com>
Sun, 4 Dec 2016 10:56:44 +0000 (11:56 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 6 Dec 2016 12:33:18 +0000 (13:33 +0100)
The name of the exported functions for an NSS module is quite
fixed, it is derived from the module name:

  _nss_$module_$function

Since we will create another NSS module with very similar
implementation we might as well generate the function names at
the compile time.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
tests/nsslinktest.c
tests/nsstest.c
tools/nss/libvirt_nss.c
tools/nss/libvirt_nss.h

index 0232e362a3cadad12d78704c3c2b16477297f991..a81a6d331ad6a44aff3eef12e865317c887efeb8 100644 (file)
@@ -33,7 +33,7 @@ int main(int argc ATTRIBUTE_UNUSED,
      * the fact this test has been built successfully means
      * there's no linkage problem and therefore success is
      * returned. */
-    _nss_libvirt_gethostbyname_r(NULL, NULL, NULL, 0, &err, &herrno);
+    NSS_NAME(gethostbyname)(NULL, NULL, NULL, 0, &err, &herrno);
 
     return EXIT_SUCCESS;
 }
index 8648c4afb66b5804865e76fb336b048c582f548b..c7fb11fd51da5b222b3e308cf5a64d48771665dc 100644 (file)
@@ -53,12 +53,12 @@ testGetHostByName(const void *opaque)
 
     memset(&resolved, 0, sizeof(resolved));
 
-    rv = _nss_libvirt_gethostbyname2_r(data->hostname,
-                                       data->af,
-                                       &resolved,
-                                       buf, sizeof(buf),
-                                       &tmp_errno,
-                                       &tmp_herrno);
+    rv = NSS_NAME(gethostbyname2)(data->hostname,
+                                  data->af,
+                                  &resolved,
+                                  buf, sizeof(buf),
+                                  &tmp_errno,
+                                  &tmp_herrno);
 
     if (rv == NSS_STATUS_TRYAGAIN ||
         rv == NSS_STATUS_UNAVAIL ||
index 0d59825298109939647a94376a7e816bd32cb687..d77c9ece55fb4afad87e3855871012fcc5764cfd 100644 (file)
@@ -253,23 +253,23 @@ findLease(const char *name,
 
 
 enum nss_status
-_nss_libvirt_gethostbyname_r(const char *name, struct hostent *result,
-                             char *buffer, size_t buflen, int *errnop,
-                             int *herrnop)
+NSS_NAME(gethostbyname)(const char *name, struct hostent *result,
+                        char *buffer, size_t buflen, int *errnop,
+                        int *herrnop)
 {
     int af = ((_res.options & RES_USE_INET6) ? AF_INET6 : AF_INET);
 
-    return _nss_libvirt_gethostbyname3_r(name, af, result, buffer, buflen,
-                                         errnop, herrnop, NULL, NULL);
+    return NSS_NAME(gethostbyname3)(name, af, result, buffer, buflen,
+                                    errnop, herrnop, NULL, NULL);
 }
 
 enum nss_status
-_nss_libvirt_gethostbyname2_r(const char *name, int af, struct hostent *result,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop)
+NSS_NAME(gethostbyname2)(const char *name, int af, struct hostent *result,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop)
 {
-    return _nss_libvirt_gethostbyname3_r(name, af, result, buffer, buflen,
-                                         errnop, herrnop, NULL, NULL);
+    return NSS_NAME(gethostbyname3)(name, af, result, buffer, buflen,
+                                    errnop, herrnop, NULL, NULL);
 }
 
 static inline void *
@@ -287,9 +287,9 @@ move_and_align(void *buf, size_t len, size_t *idx)
 }
 
 enum nss_status
-_nss_libvirt_gethostbyname3_r(const char *name, int af, struct hostent *result,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop, int32_t *ttlp, char **canonp)
+NSS_NAME(gethostbyname3)(const char *name, int af, struct hostent *result,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop, int32_t *ttlp, char **canonp)
 {
     enum nss_status ret = NSS_STATUS_UNAVAIL;
     char *r_name, **r_aliases, *r_addr, *r_addr_next, **r_addr_list;
@@ -405,9 +405,9 @@ _nss_libvirt_gethostbyname3_r(const char *name, int af, struct hostent *result,
 
 #ifdef HAVE_STRUCT_GAIH_ADDRTUPLE
 enum nss_status
-_nss_libvirt_gethostbyname4_r(const char *name, struct gaih_addrtuple **pat,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop, int32_t *ttlp)
+NSS_NAME(gethostbyname4)(const char *name, struct gaih_addrtuple **pat,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop, int32_t *ttlp)
 {
     enum nss_status ret = NSS_STATUS_UNAVAIL;
     leaseAddress *addr = NULL;
@@ -517,9 +517,9 @@ aiforaf(const char *name, int af, struct addrinfo *pai, struct addrinfo **aip)
     struct addrinfo hints, *res0, *res;
     char **addrList;
 
-    if ((ret = _nss_libvirt_gethostbyname2_r(name, af, &resolved,
-                                             buf, sizeof(buf),
-                                             &err, &herr)) != NS_SUCCESS)
+    if ((ret = NSS_NAME(gethostbyname2)(name, af, &resolved,
+                                        buf, sizeof(buf),
+                                        &err, &herr)) != NS_SUCCESS)
         return;
 
     addrList = resolved.h_addr_list;
@@ -604,8 +604,7 @@ _nss_compat_gethostbyname2_r(void *retval, void *mdata ATTRIBUTE_UNUSED, va_list
     errnop = va_arg(ap, int *);
     herrnop = va_arg(ap, int *);
 
-    ret = _nss_libvirt_gethostbyname2_r(
-              name, af, result, buffer, buflen, errnop, herrnop);
+    ret = NSS_NAME(gethostbyname2)(name, af, result, buffer, buflen, errnop, herrnop);
     *(struct hostent **)retval = (ret == NS_SUCCESS) ? result : NULL;
 
     return ret;
index e025e6362c2c0905a8c7d6ad96debee5aba27337..481d8828b6479123efb2d9a865832b614edbb60a 100644 (file)
 # include <nss.h>
 # include <netdb.h>
 
+# define NSS_NAME(s) _nss_libvirt_##s##_r
+
 enum nss_status
-_nss_libvirt_gethostbyname_r(const char *name, struct hostent *result,
-                             char *buffer, size_t buflen, int *errnop,
-                             int *herrnop);
+NSS_NAME(gethostbyname)(const char *name, struct hostent *result,
+                        char *buffer, size_t buflen, int *errnop,
+                        int *herrnop);
 
 enum nss_status
-_nss_libvirt_gethostbyname2_r(const char *name, int af, struct hostent *result,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop);
+NSS_NAME(gethostbyname2)(const char *name, int af, struct hostent *result,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop);
 enum nss_status
-_nss_libvirt_gethostbyname3_r(const char *name, int af, struct hostent *result,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop, int32_t *ttlp, char **canonp);
+NSS_NAME(gethostbyname3)(const char *name, int af, struct hostent *result,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop, int32_t *ttlp, char **canonp);
 # ifdef HAVE_STRUCT_GAIH_ADDRTUPLE
 enum nss_status
-_nss_libvirt_gethostbyname4_r(const char *name, struct gaih_addrtuple **pat,
-                              char *buffer, size_t buflen, int *errnop,
-                              int *herrnop, int32_t *ttlp);
+NSS_NAME(gethostbyname4)(const char *name, struct gaih_addrtuple **pat,
+                         char *buffer, size_t buflen, int *errnop,
+                         int *herrnop, int32_t *ttlp);
 # endif /* HAVE_STRUCT_GAIH_ADDRTUPLE */
 
 # if defined(HAVE_BSD_NSS)