rx: Constify rx_opaque_populate
[openafs.git] / src / rx / xdr_afsuuid.c
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  *
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 /*
11  * xdr_afsuuid.c, XDR routine for built in afsUUID data type.
12  */
13
14 #include <afsconfig.h>
15 #include <afs/param.h>
16
17 #if defined(KERNEL) && !defined(UKERNEL)
18 #ifdef AFS_LINUX20_ENV
19 #include "h/string.h"
20 #else
21 #include <sys/param.h>
22 #include <sys/systm.h>
23 #endif
24 #include <roken.h>
25 #endif
26 #include "xdr.h"
27
28 int
29 xdr_afsUUID(XDR * xdrs, afsUUID * objp)
30 {
31     if (!xdr_afs_uint32(xdrs, &objp->time_low)) {
32         return (FALSE);
33     }
34     if (!xdr_u_short(xdrs, &objp->time_mid)) {
35         return (FALSE);
36     }
37     if (!xdr_u_short(xdrs, &objp->time_hi_and_version)) {
38         return (FALSE);
39     }
40     if (!xdr_char(xdrs, &objp->clock_seq_hi_and_reserved)) {
41         return (FALSE);
42     }
43     if (!xdr_char(xdrs, &objp->clock_seq_low)) {
44         return (FALSE);
45     }
46     /* Cast needed here because xdrproc_t officially takes 3 args :-( */
47     if (!xdr_vector(xdrs, (char *)objp->node, 6, sizeof(char), (xdrproc_t)xdr_char)) {
48         return (FALSE);
49     }
50     return (TRUE);
51 }