Skip to main content

Extensible XDR Discriminated Union Primitive Type

Document Type Expired Internet-Draft (individual)
Expired & archived
Authors Thomas Keiser , Andrew Deason
Last updated 2013-03-14 (Latest revision 2012-09-10)
RFC stream (None)
Intended RFC status (None)
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state Expired
Telechat date (None)
Responsible AD (None)
Send notices to (None)

This Internet-Draft is no longer active. A copy of the expired Internet-Draft is available in these formats:


AFS-3 relies upon XDR to carry Rx RPC call payloads. XDR discriminated unions are ill-suited to cases where the protocol needs to evolve without inventing new RPCs, i.e., unknown discriminant values cause the entire XDR payload to fail the decoding step. While this can be circumvented through the use of opaque payloads (and recursive XDR invocations), such solutions are inelegant and difficult to implement. This memo defines a new XDR primitive type, "ext-union", which is derived from the XDR discriminated union primitive type, but with two key variations: 1) each leg contains a length field, and 2) no default leg is supported. Internet Draft Comments Comments regarding this draft are solicited. Please include the AFS-3 protocol standardization mailing list ( as a recipient of any comments. AFS-3 Document State This document is in state "draft", as per the document state definitions set forth in [I-D.wilkinson-afs3-standardisation].


Thomas Keiser
Andrew Deason

(Note: The e-mail addresses provided for the authors of this Internet-Draft may no longer be valid.)