]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-nfs.c
TESTrun: Use more 'newdir' and 'diffdir' variables
[tcpdump] / print-nfs.c
index 8bb4718e0a8319080b49db8c8cd638021b56c829..bbce49536f2acf653179c742e85bccc4d324c534 100644 (file)
@@ -896,15 +896,17 @@ nfs_printfh(netdissect_options *ndo,
                if (spacep)
                        *spacep = '\0';
 
-               ND_PRINT(" fh %s/", temp);
+               ND_PRINT(" fh ");
+               fn_print_str(ndo, (const u_char *)temp);
+               ND_PRINT("/");
        } else {
                ND_PRINT(" fh %u,%u/",
                             fsid.Fsid_dev.Major, fsid.Fsid_dev.Minor);
        }
 
-       if(fsid.Fsid_dev.Minor == 257)
+       if(fsid.Fsid_dev.Minor == UINT_MAX && fsid.Fsid_dev.Major == UINT_MAX)
                /* Print the undecoded handle */
-               ND_PRINT("%s", fsid.Opaque_Handle);
+               fn_print_str(ndo, (const u_char *)fsid.Opaque_Handle);
        else
                ND_PRINT("%u", ino);
 }
@@ -1558,7 +1560,7 @@ interp_reply(netdissect_options *ndo,
                if (dp == NULL)
                        goto trunc;
                if (v3) {
-                       if (parsewccres(ndo, dp, ndo->ndo_vflag, &nfserr) == 0)
+                       if (parsewccres(ndo, dp, ndo->ndo_vflag, &nfserr) == NULL)
                                goto trunc;
                } else {
                        if (parseattrstat(ndo, dp, !ndo->ndo_qflag, 0, &nfserr) == 0)