allow usage of getrpcbynumber() instead of getrpcbynumber_r()

libtirpc does not implement the reentrant function getrpcbynumber_r(),
so allow quota to use the non-reentrant version getrpcbynumber(). This
should not be a problem as quota tools are not multi-threaded.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Index: b/configure.in
===================================================================
--- a/configure.in
+++ b/configure.in
@@ -182,6 +182,12 @@
 AC_C_CONST
 AC_C_INLINE
 
+AC_CHECK_FUNCS([getrpcbynumber getrpcbynumber_r])
+
+if test "$ac_cv_func_getrpcbynumber_r" != "yes" -a "$ac_cv_func_getrpcbynumber" != "yes"; then
+   AC_MSG_ERROR([Neither getrpcbynumber_r nor getrpcbynumber are available])
+fi
+
 AC_ARG_ENABLE(altformat,
 	[  --enable-altformat=[yes/no]     Enable alternative format used by edquota [default=yes].],
 	,
Index: b/svc_socket.c
===================================================================
--- a/svc_socket.c
+++ b/svc_socket.c
@@ -55,7 +55,12 @@
 	addr.sin_family = AF_INET;
 
 	if (!port) {
+#if HAVE_GETRPCBYNUMBER_R
 		ret = getrpcbynumber_r(number, &rpcbuf, rpcdata, sizeof(rpcdata), &rpcp);
+#else
+		rpcp = getrpcbynumber(number);
+		ret = 0;
+#endif
 		if (ret == 0 && rpcp != NULL) {
 			/* First try name */
 			ret = getservbyname_r(rpcp->r_name, proto, &servbuf, servdata,
