mount_xdr.c 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. /*
  2. * Copyright (c) 2006-2021, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. */
  9. /*
  10. * Please do not edit this file.
  11. * It was generated using rpcgen.
  12. */
  13. #include "mount.h"
  14. /* This file is copied from RFC1813
  15. * Copyright 1995 Sun Micrososystems (I assume)
  16. */
  17. bool_t
  18. xdr_fhandle3(register XDR *xdrs, fhandle3 *objp)
  19. {
  20. if (!xdr_bytes(xdrs, (char **)&objp->fhandle3_val, (unsigned int *) &objp->fhandle3_len, FHSIZE3))
  21. return (FALSE);
  22. return (TRUE);
  23. }
  24. bool_t
  25. xdr_dirpath(register XDR *xdrs, dirpath *objp)
  26. {
  27. if (!xdr_string(xdrs, objp, MNTPATHLEN))
  28. return (FALSE);
  29. return (TRUE);
  30. }
  31. bool_t
  32. xdr_name(register XDR *xdrs, name *objp)
  33. {
  34. if (!xdr_string(xdrs, objp, MNTNAMLEN))
  35. return (FALSE);
  36. return (TRUE);
  37. }
  38. bool_t
  39. xdr_exports(register XDR *xdrs, exports *objp)
  40. {
  41. if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct exportnode), (xdrproc_t) xdr_exportnode))
  42. return (FALSE);
  43. return (TRUE);
  44. }
  45. bool_t
  46. xdr_groups(register XDR *xdrs, groups *objp)
  47. {
  48. if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct groupnode), (xdrproc_t) xdr_groupnode))
  49. return (FALSE);
  50. return (TRUE);
  51. }
  52. bool_t
  53. xdr_mountlist(register XDR *xdrs, mountlist *objp)
  54. {
  55. if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct mountbody), (xdrproc_t) xdr_mountbody))
  56. return (FALSE);
  57. return (TRUE);
  58. }
  59. bool_t
  60. xdr_mountstat3(register XDR *xdrs, mountstat3 *objp)
  61. {
  62. int enum_objp;
  63. enum_objp = *objp;
  64. if (!xdr_enum(xdrs, (enum_t *)&enum_objp))
  65. {
  66. *objp = (mountstat3)enum_objp;
  67. return (FALSE);
  68. }
  69. return (TRUE);
  70. }
  71. bool_t
  72. xdr_mountres3_ok(register XDR *xdrs, mountres3_ok *objp)
  73. {
  74. if (!xdr_fhandle3(xdrs, &objp->fhandle))
  75. return (FALSE);
  76. if (!xdr_array(xdrs, (char **)&objp->auth_flavors.auth_flavors_val, (unsigned int *) &objp->auth_flavors.auth_flavors_len, ~0,
  77. sizeof (int), (xdrproc_t) xdr_int))
  78. return (FALSE);
  79. return (TRUE);
  80. }
  81. bool_t
  82. xdr_mountres3(register XDR *xdrs, mountres3 *objp)
  83. {
  84. if (!xdr_mountstat3(xdrs, &objp->fhs_status))
  85. return (FALSE);
  86. switch (objp->fhs_status) {
  87. case MNT3_OK:
  88. if (!xdr_mountres3_ok(xdrs, &objp->mountres3_u.mountinfo))
  89. return (FALSE);
  90. break;
  91. default :
  92. return (FALSE);
  93. }
  94. return (TRUE);
  95. }
  96. bool_t
  97. xdr_mountbody(register XDR *xdrs, mountbody *objp)
  98. {
  99. if (!xdr_name(xdrs, &objp->ml_hostname))
  100. return (FALSE);
  101. if (!xdr_dirpath(xdrs, &objp->ml_directory))
  102. return (FALSE);
  103. if (!xdr_mountlist(xdrs, &objp->ml_next))
  104. return (FALSE);
  105. return (TRUE);
  106. }
  107. bool_t
  108. xdr_groupnode(register XDR *xdrs, groupnode *objp)
  109. {
  110. if (!xdr_name(xdrs, &objp->gr_name))
  111. return (FALSE);
  112. if (!xdr_groups(xdrs, &objp->gr_next))
  113. return (FALSE);
  114. return (TRUE);
  115. }
  116. bool_t
  117. xdr_exportnode(register XDR *xdrs, exportnode *objp)
  118. {
  119. if (!xdr_dirpath(xdrs, &objp->ex_dir))
  120. return (FALSE);
  121. if (!xdr_groups(xdrs, &objp->ex_groups))
  122. return (FALSE);
  123. if (!xdr_exports(xdrs, &objp->ex_next))
  124. return (FALSE);
  125. return (TRUE);
  126. }