External Data Representation APIs
The eXternal Data Representation (XDR) functions define a uniform way to
represent data types and define a language that can describe data structures of
arbitrary complexity in a standard way.
All XDR APIs can translate data in two directions:
Serializing |
Translation from a local machine data
representation to canonical XDR form. |
Deserializing |
Translation from canonical XDR form to a local
machine representation. |
The eXternal Data Representation APIs are:
- xdr_array() (Translate between arrays and their XDR) is a filter primitive that translates between variable-length arrays and their corresponding external representations.
- xdr_bool() (Translate between Booleans and their XDR) is a filter primitive that translates between Booleans (C integers) and their external representations.
- xdr_bytes() (Translate between counted byte arrays and their XDR) is a filter primitive that translates between counted byte arrays and their external representations.
- xdr_char() (Translate between characters and their XDR) is a filter primitive that translates between C-language characters and their external representation.
- xdr_double() (Translate between double-precision and XDR) is a filter primitive that translates between C-language double-precision numbers and their external representations.
- xdr_double_char() (Translate between two-byte characters) is a filter primitive that translates between C-language 2-byte characters and their external representation.
- xdr_enum() (Translate between enumeration and XDR) is a filter primitive that translates between C-language enumeration (enum) and its external representation.
- xdr_float() (Translate between floats and their XDR) is a filter primitive that translates between C-language floating-point numbers (normalized single floating-point numbers) and their external representations.
- xdr_free() (Generic freeing function) recursively frees the object pointed to by the pointer passed in.
- xdr_int() (Translate between integers and their XDR) is a filter primitive that translates between C-language integers and their external representation.
- xdr_long() (Translate between long integers and their XDR) is a filter primitive that translates between C-language long integers and their external representations.
- xdr_netobj() (Translate between netobj structures and their XDR) is a filter primitive that translates between variable-length opaque data and its external representation.
- xdr_opaque() (Translate between fixed-size data and its XDR) is a filter primitive that translates between fixed-size opaque data and its external representation.
- xdr_pointer() (Provide pointer chasing within structures) provides pointer chasing within structures and serializes null pointers.
- xdr_reference() (Provide pointer chasing within structures) is a filter primitive that provides pointer chasing within structures.
- xdr_short() (Translate between short integers and their XDR) is a filter primitive that translates between C-language short integers and their external representation.
- xdr_string() (Translate between strings and their XDR) is a filter primitive that translates between C-language strings and their corresponding external representations.
- xdr_u_char() (Translate between unsigned characters and their XDR) is a filter primitive that translates between unsigned C-language characters and their external representations.
- xdr_u_int() (Translate between an unsigned integer and its XDR) is a filter primitive that translates between C-language unsigned integers and their external representations.
- xdr_u_long() (Translate between an unsigned long and its XDR) is a filter primitive that translates between C-language unsigned long integers and their external representations.
- xdr_u_short() (Translate between an unsigned short and its XDR) is a filter primitive that translates between C-language unsigned short integers and their external representations.
- xdr_union() (Translate between unions and their XDR) is a filter primitive that translates between discriminated C unions and their corresponding external representations.
- xdr_vector() (Translate between arrays and their XDR) is a filter primitive that translates between fixed-length arrays and their corresponding external representations.
- xdr_void() (Supply an XDR function to the RPC system) has no parameters.
- xdr_wrapstring() (Call the xdr_string() function) is a primitive that calls the xdr_string(xdr, sp, maxuint) API, where maxuint is the maximum value of an unsigned integer.