- get maximum data length for transmission
#include <rpc/rpcsec_gss.h> int rpc_gss_max_data_length(AUTH *handle, int max_tp_unit_len);
int rpc_gss_svc_max_data_length(struct svc_req *req, int max_tp_unit_len);
Performing a security transformation on a piece of data generally produces data with a different (usually greater) length. For some transports, such as UDP, there is a maximum length of data which can be sent out in one data unit. Applications need to know the maximum size a piece of data can be before it's transformed, so that the resulting data will still "fit" on the transport. These two functions return that maximum size.
rpc_gss_max_data_length() is the client-side version; rpc_gss_svc_max_data_length() is the server-side version.
An RPC context handle of type AUTH, returned when a context is created (for example, by rpc_gss_seccreate(). Security service and QOP are bound to this handle, eliminating any need to specify them.
The maximum size of a piece of data allowed by the transport.
A pointer to an RPC svc_req structure, containing information on the context (for example, program number and credentials).
Both functions return the maximum size of untransformed data allowed, as an int.
See attributes(5) for descriptions of the following attributes:
Linn, J. RFC 2078, Generic Security Service Application Program Interface, Version 2. Network Working Group. January 1997.