mount.nfs: squelch compiler warning for TI-RPC builds
authorChuck Lever <chuck.lever@oracle.com>
Thu, 5 Mar 2009 11:21:34 +0000 (06:21 -0500)
committerSteve Dickson <steved@redhat.com>
Thu, 5 Mar 2009 11:21:34 +0000 (06:21 -0500)
The printf format string in nfs_pp_debug() assumes the @program and
@version arguments are unsigned long, because the legacy RPC headers
define both rpcprog_t and rpcvers_t as unsigned long types.

However, the TI-RPC headers define both types as uint32_t, which
requires a different printf format type.  If we replace the legacy
headers with TI-RPC headers, this type mismatch generates compiler
warnings that are nothing but noise.

We are about to provide a switch at ./configure time to allow the use
of either the legacy RPC headers or the TI-RPC headers, so we need
a printf format that works in both cases.

To squelch the compiler warnings that occur when using the TI-RPC
headers, cast both arguments in the fprintf statement to the widest of
the two types ("unsigned long" or "uint32_t").

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
utils/mount/network.c

index b41388e..bcd0c0f 100644 (file)
@@ -546,8 +546,9 @@ static void nfs_pp_debug(const struct sockaddr *sap, const socklen_t salen,
                strcat(buf, "unknown host");
        }
 
-       fprintf(stderr, _("%s: trying %s prog %ld vers %ld prot %s port %d\n"),
-                       progname, buf, program, version,
+       fprintf(stderr, _("%s: trying %s prog %lu vers %lu prot %s port %d\n"),
+                       progname, buf, (unsigned long)program,
+                       (unsigned long)version,
                        (protocol == IPPROTO_UDP ? _("UDP") : _("TCP")),
                        port);
 }