What does errno 72 (EBADRPC) mean?

 
Could be also:
ConstantTypeOS
ERROR_REDIR_PAUSEDWin32 errorWindows
EMULTIHOPerrnoLinux
ELOCKUNMAPPEDerrnoSolaris
CANCEL_STATE_IN_COMPLETED_IRPBugCheck CodeWindows
Previous Next
ESTALE ERPCMISMATCH

EBADRPC

EBADRPC is Darwin’s errno for an RPC structure that the receiving code considers invalid. It belongs to the XNU group of NFS and ONC RPC errors, but the errno alone is not an on-wire reply status. The failure may arise while an RPC implementation is parsing, decoding, or otherwise validating the message structure available to it.

ONC RPC version 2 describes its messages with XDR. The message includes an xid, a message type, and a call or reply body; an RPC call also carries the RPC protocol version, program number, program version, procedure number, credentials, verifier, and procedure-specific parameters. A malformed or misinterpreted structure therefore cannot be diagnosed from a hostname alone: preserve the endpoint and the protocol fields that identify the exact call.

Why this is not a single server-side status

RFC 5531 defines GARBAGE_ARGS as an accepted-call reply in which the remote procedure cannot decode its parameters. That wire-level condition is not synonymous with Darwin EBADRPC. A log containing EBADRPC should be traced back to the API or library that produced it before assigning blame to the server, the network, or the application payload.

Focused diagnostic steps

  • Preserve the call’s xid, server endpoint, transport, RPC program, program version, and procedure number. These fields tie a client error to a specific message exchange.
  • Where policy permits, capture and decode the complete RPC record. On TCP, ONC RPC uses record marking to delimit messages; a partial capture is not enough to prove a malformed record.
  • Compare the client’s XDR definitions and generated stubs with the server interface version. A structure layout or decoder disagreement is a different problem from an unavailable program or procedure.
  • Do not redact the distinction into a generic “network error”: reachability and transport timeouts have different evidence and different remedies.

References


Looking for a different code? Search another status or error code.