Lines Matching refs:xdr

30 #include <rpc/xdr.h>
2816 * An xdr packed nvlist is encoded as:
2822 * - encoded nvpairs, the format of one xdr encoded nvpair is:
2834 nvs_xdr_create(nvstream_t *nvs, XDR *xdr, char *buf, size_t buflen)
2836 /* xdr data must be 4 byte aligned */
2842 xdrmem_create(xdr, buf, (uint_t)buflen, XDR_ENCODE);
2843 nvs->nvs_private = xdr;
2846 xdrmem_create(xdr, buf, (uint_t)buflen, XDR_DECODE);
2847 nvs->nvs_private = xdr;
2876 XDR *xdr = nvs->nvs_private;
2878 if (!xdr_int(xdr, &nvl->nvl_version) ||
2879 !xdr_u_int(xdr, &nvl->nvl_nvflag))
2901 XDR *xdr = nvs->nvs_private;
2904 if (!xdr_int(xdr, &zero) || !xdr_int(xdr, &zero))
2912 * The format of xdr encoded nvpair is:
2924 XDR *xdr = nvs->nvs_private;
2926 ASSERT(xdr != NULL && nvp != NULL);
2933 if (!xdr_string(xdr, &buf, buflen - 1))
2938 if (!xdr_int(xdr, (int *)&nvp->nvp_type) ||
2939 !xdr_int(xdr, &nvp->nvp_value_elem))
2983 ret = xdr_char(xdr, buf);
2987 ret = xdr_short(xdr, (void *)buf);
2991 ret = xdr_u_short(xdr, (void *)buf);
2996 ret = xdr_int(xdr, (void *)buf);
3000 ret = xdr_u_int(xdr, (void *)buf);
3004 ret = xdr_longlong_t(xdr, (void *)buf);
3008 ret = xdr_u_longlong_t(xdr, (void *)buf);
3015 ret = xdr_longlong_t(xdr, (void *)buf);
3019 ret = xdr_double(xdr, (void *)buf);
3023 ret = xdr_string(xdr, &buf, buflen - 1);
3027 ret = xdr_opaque(xdr, buf, nelem);
3032 ret = xdr_array(xdr, &buf, &nelem, buflen, sizeof (int8_t),
3037 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (int16_t),
3042 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (uint16_t),
3048 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (int32_t),
3053 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (uint32_t),
3058 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (int64_t),
3063 ret = xdr_array(xdr, &buf, &nelem, buflen / sizeof (uint64_t),
3082 if (xdr_string(xdr, &buf, buflen - 1) != TRUE)
3121 nvp_sz += 4; /* 4 is the minimum xdr unit */
3200 * The NVS_XDR_MAX_LEN macro takes a packed xdr buffer of size x and estimates
3203 * See comments above nvpair_xdr_op() for the format of xdr encoding.
3204 * The size of a xdr packed nvpair without any data is 5 words.
3209 * the strings. These pointers are not encoded into the packed xdr buffer.
3212 * of length 0, then each string is endcoded in xdr format as a single word.
3229 XDR *xdr = nvs->nvs_private;
3241 if (!xdr_int(xdr, &encode_len) || !xdr_int(xdr, &decode_len))
3250 if (!xdr_int(xdr, &encode_len) || !xdr_int(xdr, &decode_len))
3259 if (!xdr_control(xdr, XDR_GET_BYTES_AVAIL, &bytesrec))
3284 XDR xdr;
3289 if ((err = nvs_xdr_create(nvs, &xdr, buf + sizeof (nvs_header_t),