nfs_xdr.c 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617
  1. /*
  2. * Please do not edit this file.
  3. * It was generated using rpcgen.
  4. */
  5. #include "nfs.h"
  6. /* This file is copied from RFC1813
  7. * Copyright 1995 Sun Micrososystems (I assume)
  8. */
  9. bool_t
  10. xdr_uint64(register XDR *xdrs, uint64 *objp)
  11. {
  12. if (!xdr_u_longlong_t(xdrs, objp))
  13. return (FALSE);
  14. return (TRUE);
  15. }
  16. bool_t
  17. xdr_int64(register XDR *xdrs, int64 *objp)
  18. {
  19. if (!xdr_longlong_t(xdrs, objp))
  20. return (FALSE);
  21. return (TRUE);
  22. }
  23. bool_t
  24. xdr_uint32(register XDR *xdrs, uint32 *objp)
  25. {
  26. if (!xdr_u_long(xdrs, objp))
  27. return (FALSE);
  28. return (TRUE);
  29. }
  30. bool_t
  31. xdr_int32(register XDR *xdrs, int32 *objp)
  32. {
  33. if (!xdr_long(xdrs, objp))
  34. return (FALSE);
  35. return (TRUE);
  36. }
  37. bool_t
  38. xdr_filename3(register XDR *xdrs, filename3 *objp)
  39. {
  40. if (!xdr_string(xdrs, objp, ~0))
  41. return (FALSE);
  42. return (TRUE);
  43. }
  44. bool_t
  45. xdr_nfspath3(register XDR *xdrs, nfspath3 *objp)
  46. {
  47. if (!xdr_string(xdrs, objp, ~0))
  48. return (FALSE);
  49. return (TRUE);
  50. }
  51. bool_t
  52. xdr_fileid3(register XDR *xdrs, fileid3 *objp)
  53. {
  54. if (!xdr_uint64(xdrs, objp))
  55. return (FALSE);
  56. return (TRUE);
  57. }
  58. bool_t
  59. xdr_cookie3(register XDR *xdrs, cookie3 *objp)
  60. {
  61. if (!xdr_uint64(xdrs, objp))
  62. return (FALSE);
  63. return (TRUE);
  64. }
  65. bool_t
  66. xdr_cookieverf3(register XDR *xdrs, cookieverf3 objp)
  67. {
  68. if (!xdr_opaque(xdrs, objp, NFS3_COOKIEVERFSIZE))
  69. return (FALSE);
  70. return (TRUE);
  71. }
  72. bool_t
  73. xdr_createverf3(register XDR *xdrs, createverf3 objp)
  74. {
  75. if (!xdr_opaque(xdrs, objp, NFS3_CREATEVERFSIZE))
  76. return (FALSE);
  77. return (TRUE);
  78. }
  79. bool_t
  80. xdr_writeverf3(register XDR *xdrs, writeverf3 objp)
  81. {
  82. if (!xdr_opaque(xdrs, objp, NFS3_WRITEVERFSIZE))
  83. return (FALSE);
  84. return (TRUE);
  85. }
  86. bool_t
  87. xdr_uid3(register XDR *xdrs, uid3 *objp)
  88. {
  89. if (!xdr_uint32(xdrs, objp))
  90. return (FALSE);
  91. return (TRUE);
  92. }
  93. bool_t
  94. xdr_gid3(register XDR *xdrs, gid3 *objp)
  95. {
  96. if (!xdr_uint32(xdrs, objp))
  97. return (FALSE);
  98. return (TRUE);
  99. }
  100. bool_t
  101. xdr_size3(register XDR *xdrs, size3 *objp)
  102. {
  103. if (!xdr_uint64(xdrs, objp))
  104. return (FALSE);
  105. return (TRUE);
  106. }
  107. bool_t
  108. xdr_offset3(register XDR *xdrs, offset3 *objp)
  109. {
  110. if (!xdr_uint64(xdrs, objp))
  111. return (FALSE);
  112. return (TRUE);
  113. }
  114. bool_t
  115. xdr_mode3(register XDR *xdrs, mode3 *objp)
  116. {
  117. if (!xdr_uint32(xdrs, objp))
  118. return (FALSE);
  119. return (TRUE);
  120. }
  121. bool_t
  122. xdr_count3(register XDR *xdrs, count3 *objp)
  123. {
  124. if (!xdr_uint32(xdrs, objp))
  125. return (FALSE);
  126. return (TRUE);
  127. }
  128. bool_t
  129. xdr_nfsstat3(register XDR *xdrs, nfsstat3 *objp)
  130. {
  131. int enum_objp;
  132. enum_objp = *objp;
  133. if (!xdr_enum(xdrs, (enum_t *)objp))
  134. {
  135. *objp = enum_objp;
  136. return (FALSE);
  137. }
  138. *objp = enum_objp;
  139. return (TRUE);
  140. }
  141. bool_t
  142. xdr_ftype3(register XDR *xdrs, ftype3 *objp)
  143. {
  144. int enum_objp;
  145. enum_objp = *objp;
  146. if (!xdr_enum(xdrs, (enum_t *)objp))
  147. {
  148. *objp = enum_objp;
  149. return (FALSE);
  150. }
  151. *objp = enum_objp;
  152. return (TRUE);
  153. }
  154. bool_t
  155. xdr_stable_how(register XDR *xdrs, stable_how *objp)
  156. {
  157. int enum_objp;
  158. enum_objp = *objp;
  159. if (!xdr_enum(xdrs, (enum_t *)objp))
  160. {
  161. *objp = enum_objp;
  162. return (FALSE);
  163. }
  164. *objp = enum_objp;
  165. return (TRUE);
  166. }
  167. bool_t
  168. xdr_createmode3(register XDR *xdrs, createmode3 *objp)
  169. {
  170. int enum_objp;
  171. enum_objp = *objp;
  172. if (!xdr_enum(xdrs, (enum_t *)objp))
  173. {
  174. *objp = enum_objp;
  175. return (FALSE);
  176. }
  177. *objp = enum_objp;
  178. return (TRUE);
  179. }
  180. bool_t
  181. xdr_specdata3(register XDR *xdrs, specdata3 *objp)
  182. {
  183. if (!xdr_uint32(xdrs, &objp->specdata1))
  184. return (FALSE);
  185. if (!xdr_uint32(xdrs, &objp->specdata2))
  186. return (FALSE);
  187. return (TRUE);
  188. }
  189. bool_t
  190. xdr_nfs_fh3(register XDR *xdrs, nfs_fh3 *objp)
  191. {
  192. if (!xdr_bytes(xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, NFS3_FHSIZE))
  193. return (FALSE);
  194. return (TRUE);
  195. }
  196. bool_t
  197. xdr_nfstime3(register XDR *xdrs, nfstime3 *objp)
  198. {
  199. if (!xdr_uint32(xdrs, &objp->seconds))
  200. return (FALSE);
  201. if (!xdr_uint32(xdrs, &objp->nseconds))
  202. return (FALSE);
  203. return (TRUE);
  204. }
  205. bool_t
  206. xdr_fattr3(register XDR *xdrs, fattr3 *objp)
  207. {
  208. if (!xdr_ftype3(xdrs, &objp->type))
  209. return (FALSE);
  210. if (!xdr_mode3(xdrs, &objp->mode))
  211. return (FALSE);
  212. if (!xdr_uint32(xdrs, &objp->nlink))
  213. return (FALSE);
  214. if (!xdr_uid3(xdrs, &objp->uid))
  215. return (FALSE);
  216. if (!xdr_gid3(xdrs, &objp->gid))
  217. return (FALSE);
  218. if (!xdr_size3(xdrs, &objp->size))
  219. return (FALSE);
  220. if (!xdr_size3(xdrs, &objp->used))
  221. return (FALSE);
  222. if (!xdr_specdata3(xdrs, &objp->rdev))
  223. return (FALSE);
  224. if (!xdr_uint64(xdrs, &objp->fsid))
  225. return (FALSE);
  226. if (!xdr_fileid3(xdrs, &objp->fileid))
  227. return (FALSE);
  228. if (!xdr_nfstime3(xdrs, &objp->atime))
  229. return (FALSE);
  230. if (!xdr_nfstime3(xdrs, &objp->mtime))
  231. return (FALSE);
  232. if (!xdr_nfstime3(xdrs, &objp->ctime))
  233. return (FALSE);
  234. return (TRUE);
  235. }
  236. bool_t
  237. xdr_post_op_attr(register XDR *xdrs, post_op_attr *objp)
  238. {
  239. if (!xdr_bool(xdrs, &objp->attributes_follow))
  240. return (FALSE);
  241. switch (objp->attributes_follow) {
  242. case TRUE:
  243. if (!xdr_fattr3(xdrs, &objp->post_op_attr_u.attributes))
  244. return (FALSE);
  245. break;
  246. case FALSE:
  247. break;
  248. default:
  249. return (FALSE);
  250. }
  251. return (TRUE);
  252. }
  253. bool_t
  254. xdr_wcc_attr(register XDR *xdrs, wcc_attr *objp)
  255. {
  256. if (!xdr_size3(xdrs, &objp->size))
  257. return (FALSE);
  258. if (!xdr_nfstime3(xdrs, &objp->mtime))
  259. return (FALSE);
  260. if (!xdr_nfstime3(xdrs, &objp->ctime))
  261. return (FALSE);
  262. return (TRUE);
  263. }
  264. bool_t
  265. xdr_pre_op_attr(register XDR *xdrs, pre_op_attr *objp)
  266. {
  267. if (!xdr_bool(xdrs, &objp->attributes_follow))
  268. return (FALSE);
  269. switch (objp->attributes_follow) {
  270. case TRUE:
  271. if (!xdr_wcc_attr(xdrs, &objp->pre_op_attr_u.attributes))
  272. return (FALSE);
  273. break;
  274. case FALSE:
  275. break;
  276. default:
  277. return (FALSE);
  278. }
  279. return (TRUE);
  280. }
  281. bool_t
  282. xdr_wcc_data(register XDR *xdrs, wcc_data *objp)
  283. {
  284. if (!xdr_pre_op_attr(xdrs, &objp->before))
  285. return (FALSE);
  286. if (!xdr_post_op_attr(xdrs, &objp->after))
  287. return (FALSE);
  288. return (TRUE);
  289. }
  290. bool_t
  291. xdr_post_op_fh3(register XDR *xdrs, post_op_fh3 *objp)
  292. {
  293. if (!xdr_bool(xdrs, &objp->handle_follows))
  294. return (FALSE);
  295. switch (objp->handle_follows) {
  296. case TRUE:
  297. if (!xdr_nfs_fh3(xdrs, &objp->post_op_fh3_u.handle))
  298. return (FALSE);
  299. break;
  300. case FALSE:
  301. break;
  302. default:
  303. return (FALSE);
  304. }
  305. return (TRUE);
  306. }
  307. bool_t
  308. xdr_time_how(register XDR *xdrs, time_how *objp)
  309. {
  310. int enum_objp;
  311. enum_objp = *objp;
  312. if (!xdr_enum(xdrs, (enum_t *)objp))
  313. {
  314. *objp = enum_objp;
  315. return (FALSE);
  316. }
  317. *objp = enum_objp;
  318. return (TRUE);
  319. }
  320. bool_t
  321. xdr_set_mode3(register XDR *xdrs, set_mode3 *objp)
  322. {
  323. if (!xdr_bool(xdrs, &objp->set_it))
  324. return (FALSE);
  325. switch (objp->set_it) {
  326. case TRUE:
  327. if (!xdr_mode3(xdrs, &objp->set_mode3_u.mode))
  328. return (FALSE);
  329. break;
  330. }
  331. return (TRUE);
  332. }
  333. bool_t
  334. xdr_set_uid3(register XDR *xdrs, set_uid3 *objp)
  335. {
  336. if (!xdr_bool(xdrs, &objp->set_it))
  337. return (FALSE);
  338. switch (objp->set_it) {
  339. case TRUE:
  340. if (!xdr_uid3(xdrs, &objp->set_uid3_u.uid))
  341. return (FALSE);
  342. break;
  343. }
  344. return (TRUE);
  345. }
  346. bool_t
  347. xdr_set_gid3(register XDR *xdrs, set_gid3 *objp)
  348. {
  349. if (!xdr_bool(xdrs, &objp->set_it))
  350. return (FALSE);
  351. switch (objp->set_it) {
  352. case TRUE:
  353. if (!xdr_gid3(xdrs, &objp->set_gid3_u.gid))
  354. return (FALSE);
  355. break;
  356. }
  357. return (TRUE);
  358. }
  359. bool_t
  360. xdr_set_size3(register XDR *xdrs, set_size3 *objp)
  361. {
  362. if (!xdr_bool(xdrs, &objp->set_it))
  363. return (FALSE);
  364. switch (objp->set_it) {
  365. case TRUE:
  366. if (!xdr_size3(xdrs, &objp->set_size3_u.size))
  367. return (FALSE);
  368. break;
  369. }
  370. return (TRUE);
  371. }
  372. bool_t
  373. xdr_set_atime(register XDR *xdrs, set_atime *objp)
  374. {
  375. if (!xdr_time_how(xdrs, &objp->set_it))
  376. return (FALSE);
  377. switch (objp->set_it) {
  378. case SET_TO_CLIENT_TIME:
  379. if (!xdr_nfstime3(xdrs, &objp->set_atime_u.atime))
  380. return (FALSE);
  381. break;
  382. }
  383. return (TRUE);
  384. }
  385. bool_t
  386. xdr_set_mtime(register XDR *xdrs, set_mtime *objp)
  387. {
  388. if (!xdr_time_how(xdrs, &objp->set_it))
  389. return (FALSE);
  390. switch (objp->set_it) {
  391. case SET_TO_CLIENT_TIME:
  392. if (!xdr_nfstime3(xdrs, &objp->set_mtime_u.mtime))
  393. return (FALSE);
  394. break;
  395. }
  396. return (TRUE);
  397. }
  398. bool_t
  399. xdr_sattr3(register XDR *xdrs, sattr3 *objp)
  400. {
  401. if (!xdr_set_mode3(xdrs, &objp->mode))
  402. return (FALSE);
  403. if (!xdr_set_uid3(xdrs, &objp->uid))
  404. return (FALSE);
  405. if (!xdr_set_gid3(xdrs, &objp->gid))
  406. return (FALSE);
  407. if (!xdr_set_size3(xdrs, &objp->size))
  408. return (FALSE);
  409. if (!xdr_set_atime(xdrs, &objp->atime))
  410. return (FALSE);
  411. if (!xdr_set_mtime(xdrs, &objp->mtime))
  412. return (FALSE);
  413. return (TRUE);
  414. }
  415. bool_t
  416. xdr_diropargs3(register XDR *xdrs, diropargs3 *objp)
  417. {
  418. if (!xdr_nfs_fh3(xdrs, &objp->dir))
  419. return (FALSE);
  420. if (!xdr_filename3(xdrs, &objp->name))
  421. return (FALSE);
  422. return (TRUE);
  423. }
  424. bool_t
  425. xdr_GETATTR3args(register XDR *xdrs, GETATTR3args *objp)
  426. {
  427. if (!xdr_nfs_fh3(xdrs, &objp->object))
  428. return (FALSE);
  429. return (TRUE);
  430. }
  431. bool_t
  432. xdr_GETATTR3resok(register XDR *xdrs, GETATTR3resok *objp)
  433. {
  434. if (!xdr_fattr3(xdrs, &objp->obj_attributes))
  435. return (FALSE);
  436. return (TRUE);
  437. }
  438. bool_t
  439. xdr_GETATTR3res(register XDR *xdrs, GETATTR3res *objp)
  440. {
  441. if (!xdr_nfsstat3(xdrs, &objp->status))
  442. return (FALSE);
  443. switch (objp->status) {
  444. case NFS3_OK:
  445. if (!xdr_GETATTR3resok(xdrs, &objp->GETATTR3res_u.resok))
  446. return (FALSE);
  447. break;
  448. }
  449. return (TRUE);
  450. }
  451. bool_t
  452. xdr_sattrguard3(register XDR *xdrs, sattrguard3 *objp)
  453. {
  454. if (!xdr_bool(xdrs, &objp->check))
  455. return (FALSE);
  456. switch (objp->check) {
  457. case TRUE:
  458. if (!xdr_nfstime3(xdrs, &objp->sattrguard3_u.obj_ctime))
  459. return (FALSE);
  460. break;
  461. case FALSE:
  462. break;
  463. default:
  464. return (FALSE);
  465. }
  466. return (TRUE);
  467. }
  468. bool_t
  469. xdr_SETATTR3args(register XDR *xdrs, SETATTR3args *objp)
  470. {
  471. if (!xdr_nfs_fh3(xdrs, &objp->object))
  472. return (FALSE);
  473. if (!xdr_sattr3(xdrs, &objp->new_attributes))
  474. return (FALSE);
  475. if (!xdr_sattrguard3(xdrs, &objp->guard))
  476. return (FALSE);
  477. return (TRUE);
  478. }
  479. bool_t
  480. xdr_SETATTR3resok(register XDR *xdrs, SETATTR3resok *objp)
  481. {
  482. if (!xdr_wcc_data(xdrs, &objp->obj_wcc))
  483. return (FALSE);
  484. return (TRUE);
  485. }
  486. bool_t
  487. xdr_SETATTR3resfail(register XDR *xdrs, SETATTR3resfail *objp)
  488. {
  489. if (!xdr_wcc_data(xdrs, &objp->obj_wcc))
  490. return (FALSE);
  491. return (TRUE);
  492. }
  493. bool_t
  494. xdr_SETATTR3res(register XDR *xdrs, SETATTR3res *objp)
  495. {
  496. if (!xdr_nfsstat3(xdrs, &objp->status))
  497. return (FALSE);
  498. switch (objp->status) {
  499. case NFS3_OK:
  500. if (!xdr_SETATTR3resok(xdrs, &objp->SETATTR3res_u.resok))
  501. return (FALSE);
  502. break;
  503. default:
  504. if (!xdr_SETATTR3resfail(xdrs, &objp->SETATTR3res_u.resfail))
  505. return (FALSE);
  506. break;
  507. }
  508. return (TRUE);
  509. }
  510. bool_t
  511. xdr_LOOKUP3args(register XDR *xdrs, LOOKUP3args *objp)
  512. {
  513. if (!xdr_diropargs3(xdrs, &objp->what))
  514. return (FALSE);
  515. return (TRUE);
  516. }
  517. bool_t
  518. xdr_LOOKUP3resok(register XDR *xdrs, LOOKUP3resok *objp)
  519. {
  520. if (!xdr_nfs_fh3(xdrs, &objp->object))
  521. return (FALSE);
  522. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  523. return (FALSE);
  524. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  525. return (FALSE);
  526. return (TRUE);
  527. }
  528. bool_t
  529. xdr_LOOKUP3resfail(register XDR *xdrs, LOOKUP3resfail *objp)
  530. {
  531. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  532. return (FALSE);
  533. return (TRUE);
  534. }
  535. bool_t
  536. xdr_LOOKUP3res(register XDR *xdrs, LOOKUP3res *objp)
  537. {
  538. if (!xdr_nfsstat3(xdrs, &objp->status))
  539. return (FALSE);
  540. switch (objp->status) {
  541. case NFS3_OK:
  542. if (!xdr_LOOKUP3resok(xdrs, &objp->LOOKUP3res_u.resok))
  543. return (FALSE);
  544. break;
  545. default:
  546. if (!xdr_LOOKUP3resfail(xdrs, &objp->LOOKUP3res_u.resfail))
  547. return (FALSE);
  548. break;
  549. }
  550. return (TRUE);
  551. }
  552. bool_t
  553. xdr_ACCESS3args(register XDR *xdrs, ACCESS3args *objp)
  554. {
  555. if (!xdr_nfs_fh3(xdrs, &objp->object))
  556. return (FALSE);
  557. if (!xdr_uint32(xdrs, &objp->access))
  558. return (FALSE);
  559. return (TRUE);
  560. }
  561. bool_t
  562. xdr_ACCESS3resok(register XDR *xdrs, ACCESS3resok *objp)
  563. {
  564. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  565. return (FALSE);
  566. if (!xdr_uint32(xdrs, &objp->access))
  567. return (FALSE);
  568. return (TRUE);
  569. }
  570. bool_t
  571. xdr_ACCESS3resfail(register XDR *xdrs, ACCESS3resfail *objp)
  572. {
  573. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  574. return (FALSE);
  575. return (TRUE);
  576. }
  577. bool_t
  578. xdr_ACCESS3res(register XDR *xdrs, ACCESS3res *objp)
  579. {
  580. if (!xdr_nfsstat3(xdrs, &objp->status))
  581. return (FALSE);
  582. switch (objp->status) {
  583. case NFS3_OK:
  584. if (!xdr_ACCESS3resok(xdrs, &objp->ACCESS3res_u.resok))
  585. return (FALSE);
  586. break;
  587. default:
  588. if (!xdr_ACCESS3resfail(xdrs, &objp->ACCESS3res_u.resfail))
  589. return (FALSE);
  590. break;
  591. }
  592. return (TRUE);
  593. }
  594. bool_t
  595. xdr_READLINK3args(register XDR *xdrs, READLINK3args *objp)
  596. {
  597. if (!xdr_nfs_fh3(xdrs, &objp->symlink))
  598. return (FALSE);
  599. return (TRUE);
  600. }
  601. bool_t
  602. xdr_READLINK3resok(register XDR *xdrs, READLINK3resok *objp)
  603. {
  604. if (!xdr_post_op_attr(xdrs, &objp->symlink_attributes))
  605. return (FALSE);
  606. if (!xdr_nfspath3(xdrs, &objp->data))
  607. return (FALSE);
  608. return (TRUE);
  609. }
  610. bool_t
  611. xdr_READLINK3resfail(register XDR *xdrs, READLINK3resfail *objp)
  612. {
  613. if (!xdr_post_op_attr(xdrs, &objp->symlink_attributes))
  614. return (FALSE);
  615. return (TRUE);
  616. }
  617. bool_t
  618. xdr_READLINK3res(register XDR *xdrs, READLINK3res *objp)
  619. {
  620. if (!xdr_nfsstat3(xdrs, &objp->status))
  621. return (FALSE);
  622. switch (objp->status) {
  623. case NFS3_OK:
  624. if (!xdr_READLINK3resok(xdrs, &objp->READLINK3res_u.resok))
  625. return (FALSE);
  626. break;
  627. default:
  628. if (!xdr_READLINK3resfail(xdrs, &objp->READLINK3res_u.resfail))
  629. return (FALSE);
  630. break;
  631. }
  632. return (TRUE);
  633. }
  634. bool_t
  635. xdr_READ3args(register XDR *xdrs, READ3args *objp)
  636. {
  637. if (!xdr_nfs_fh3(xdrs, &objp->file))
  638. return (FALSE);
  639. if (!xdr_offset3(xdrs, &objp->offset))
  640. return (FALSE);
  641. if (!xdr_count3(xdrs, &objp->count))
  642. return (FALSE);
  643. return (TRUE);
  644. }
  645. bool_t
  646. xdr_READ3resok(register XDR *xdrs, READ3resok *objp)
  647. {
  648. if (!xdr_post_op_attr(xdrs, &objp->file_attributes))
  649. return (FALSE);
  650. if (!xdr_count3(xdrs, &objp->count))
  651. return (FALSE);
  652. if (!xdr_bool(xdrs, &objp->eof))
  653. return (FALSE);
  654. if (!xdr_bytes(xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
  655. return (FALSE);
  656. return (TRUE);
  657. }
  658. bool_t
  659. xdr_READ3resfail(register XDR *xdrs, READ3resfail *objp)
  660. {
  661. if (!xdr_post_op_attr(xdrs, &objp->file_attributes))
  662. return (FALSE);
  663. return (TRUE);
  664. }
  665. bool_t
  666. xdr_READ3res(register XDR *xdrs, READ3res *objp)
  667. {
  668. if (!xdr_nfsstat3(xdrs, &objp->status))
  669. return (FALSE);
  670. switch (objp->status) {
  671. case NFS3_OK:
  672. if (!xdr_READ3resok(xdrs, &objp->READ3res_u.resok))
  673. return (FALSE);
  674. break;
  675. default:
  676. if (!xdr_READ3resfail(xdrs, &objp->READ3res_u.resfail))
  677. return (FALSE);
  678. break;
  679. }
  680. return (TRUE);
  681. }
  682. bool_t
  683. xdr_WRITE3args(register XDR *xdrs, WRITE3args *objp)
  684. {
  685. if (!xdr_nfs_fh3(xdrs, &objp->file))
  686. return (FALSE);
  687. if (!xdr_offset3(xdrs, &objp->offset))
  688. return (FALSE);
  689. if (!xdr_count3(xdrs, &objp->count))
  690. return (FALSE);
  691. if (!xdr_stable_how(xdrs, &objp->stable))
  692. return (FALSE);
  693. if (!xdr_bytes(xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
  694. return (FALSE);
  695. return (TRUE);
  696. }
  697. bool_t
  698. xdr_WRITE3resok(register XDR *xdrs, WRITE3resok *objp)
  699. {
  700. if (!xdr_wcc_data(xdrs, &objp->file_wcc))
  701. return (FALSE);
  702. if (!xdr_count3(xdrs, &objp->count))
  703. return (FALSE);
  704. if (!xdr_stable_how(xdrs, &objp->committed))
  705. return (FALSE);
  706. if (!xdr_writeverf3(xdrs, objp->verf))
  707. return (FALSE);
  708. return (TRUE);
  709. }
  710. bool_t
  711. xdr_WRITE3resfail(register XDR *xdrs, WRITE3resfail *objp)
  712. {
  713. if (!xdr_wcc_data(xdrs, &objp->file_wcc))
  714. return (FALSE);
  715. return (TRUE);
  716. }
  717. bool_t
  718. xdr_WRITE3res(register XDR *xdrs, WRITE3res *objp)
  719. {
  720. if (!xdr_nfsstat3(xdrs, &objp->status))
  721. return (FALSE);
  722. switch (objp->status) {
  723. case NFS3_OK:
  724. if (!xdr_WRITE3resok(xdrs, &objp->WRITE3res_u.resok))
  725. return (FALSE);
  726. break;
  727. default:
  728. if (!xdr_WRITE3resfail(xdrs, &objp->WRITE3res_u.resfail))
  729. return (FALSE);
  730. break;
  731. }
  732. return (TRUE);
  733. }
  734. bool_t
  735. xdr_createhow3(register XDR *xdrs, createhow3 *objp)
  736. {
  737. if (!xdr_createmode3(xdrs, &objp->mode))
  738. return (FALSE);
  739. switch (objp->mode) {
  740. case UNCHECKED:
  741. case GUARDED:
  742. if (!xdr_sattr3(xdrs, &objp->createhow3_u.obj_attributes))
  743. return (FALSE);
  744. break;
  745. case EXCLUSIVE:
  746. if (!xdr_createverf3(xdrs, objp->createhow3_u.verf))
  747. return (FALSE);
  748. break;
  749. default:
  750. return (FALSE);
  751. }
  752. return (TRUE);
  753. }
  754. bool_t
  755. xdr_CREATE3args(register XDR *xdrs, CREATE3args *objp)
  756. {
  757. if (!xdr_diropargs3(xdrs, &objp->where))
  758. return (FALSE);
  759. if (!xdr_createhow3(xdrs, &objp->how))
  760. return (FALSE);
  761. return (TRUE);
  762. }
  763. bool_t
  764. xdr_CREATE3resok(register XDR *xdrs, CREATE3resok *objp)
  765. {
  766. if (!xdr_post_op_fh3(xdrs, &objp->obj))
  767. return (FALSE);
  768. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  769. return (FALSE);
  770. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  771. return (FALSE);
  772. return (TRUE);
  773. }
  774. bool_t
  775. xdr_CREATE3resfail(register XDR *xdrs, CREATE3resfail *objp)
  776. {
  777. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  778. return (FALSE);
  779. return (TRUE);
  780. }
  781. bool_t
  782. xdr_CREATE3res(register XDR *xdrs, CREATE3res *objp)
  783. {
  784. if (!xdr_nfsstat3(xdrs, &objp->status))
  785. return (FALSE);
  786. switch (objp->status) {
  787. case NFS3_OK:
  788. if (!xdr_CREATE3resok(xdrs, &objp->CREATE3res_u.resok))
  789. return (FALSE);
  790. break;
  791. default:
  792. if (!xdr_CREATE3resfail(xdrs, &objp->CREATE3res_u.resfail))
  793. return (FALSE);
  794. break;
  795. }
  796. return (TRUE);
  797. }
  798. bool_t
  799. xdr_MKDIR3args(register XDR *xdrs, MKDIR3args *objp)
  800. {
  801. if (!xdr_diropargs3(xdrs, &objp->where))
  802. return (FALSE);
  803. if (!xdr_sattr3(xdrs, &objp->attributes))
  804. return (FALSE);
  805. return (TRUE);
  806. }
  807. bool_t
  808. xdr_MKDIR3resok(register XDR *xdrs, MKDIR3resok *objp)
  809. {
  810. if (!xdr_post_op_fh3(xdrs, &objp->obj))
  811. return (FALSE);
  812. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  813. return (FALSE);
  814. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  815. return (FALSE);
  816. return (TRUE);
  817. }
  818. bool_t
  819. xdr_MKDIR3resfail(register XDR *xdrs, MKDIR3resfail *objp)
  820. {
  821. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  822. return (FALSE);
  823. return (TRUE);
  824. }
  825. bool_t
  826. xdr_MKDIR3res(register XDR *xdrs, MKDIR3res *objp)
  827. {
  828. if (!xdr_nfsstat3(xdrs, &objp->status))
  829. return (FALSE);
  830. switch (objp->status) {
  831. case NFS3_OK:
  832. if (!xdr_MKDIR3resok(xdrs, &objp->MKDIR3res_u.resok))
  833. return (FALSE);
  834. break;
  835. default:
  836. if (!xdr_MKDIR3resfail(xdrs, &objp->MKDIR3res_u.resfail))
  837. return (FALSE);
  838. break;
  839. }
  840. return (TRUE);
  841. }
  842. bool_t
  843. xdr_symlinkdata3(register XDR *xdrs, symlinkdata3 *objp)
  844. {
  845. if (!xdr_sattr3(xdrs, &objp->symlink_attributes))
  846. return (FALSE);
  847. if (!xdr_nfspath3(xdrs, &objp->symlink_data))
  848. return (FALSE);
  849. return (TRUE);
  850. }
  851. bool_t
  852. xdr_SYMLINK3args(register XDR *xdrs, SYMLINK3args *objp)
  853. {
  854. if (!xdr_diropargs3(xdrs, &objp->where))
  855. return (FALSE);
  856. if (!xdr_symlinkdata3(xdrs, &objp->symlink))
  857. return (FALSE);
  858. return (TRUE);
  859. }
  860. bool_t
  861. xdr_SYMLINK3resok(register XDR *xdrs, SYMLINK3resok *objp)
  862. {
  863. if (!xdr_post_op_fh3(xdrs, &objp->obj))
  864. return (FALSE);
  865. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  866. return (FALSE);
  867. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  868. return (FALSE);
  869. return (TRUE);
  870. }
  871. bool_t
  872. xdr_SYMLINK3resfail(register XDR *xdrs, SYMLINK3resfail *objp)
  873. {
  874. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  875. return (FALSE);
  876. return (TRUE);
  877. }
  878. bool_t
  879. xdr_SYMLINK3res(register XDR *xdrs, SYMLINK3res *objp)
  880. {
  881. if (!xdr_nfsstat3(xdrs, &objp->status))
  882. return (FALSE);
  883. switch (objp->status) {
  884. case NFS3_OK:
  885. if (!xdr_SYMLINK3resok(xdrs, &objp->SYMLINK3res_u.resok))
  886. return (FALSE);
  887. break;
  888. default:
  889. if (!xdr_SYMLINK3resfail(xdrs, &objp->SYMLINK3res_u.resfail))
  890. return (FALSE);
  891. break;
  892. }
  893. return (TRUE);
  894. }
  895. bool_t
  896. xdr_devicedata3(register XDR *xdrs, devicedata3 *objp)
  897. {
  898. if (!xdr_sattr3(xdrs, &objp->dev_attributes))
  899. return (FALSE);
  900. if (!xdr_specdata3(xdrs, &objp->spec))
  901. return (FALSE);
  902. return (TRUE);
  903. }
  904. bool_t
  905. xdr_mknoddata3(register XDR *xdrs, mknoddata3 *objp)
  906. {
  907. if (!xdr_ftype3(xdrs, &objp->type))
  908. return (FALSE);
  909. switch (objp->type) {
  910. case NFS3CHR:
  911. case NFS3BLK:
  912. if (!xdr_devicedata3(xdrs, &objp->mknoddata3_u.device))
  913. return (FALSE);
  914. break;
  915. case NFS3SOCK:
  916. case NFS3FIFO:
  917. if (!xdr_sattr3(xdrs, &objp->mknoddata3_u.pipe_attributes))
  918. return (FALSE);
  919. break;
  920. }
  921. return (TRUE);
  922. }
  923. bool_t
  924. xdr_MKNOD3args(register XDR *xdrs, MKNOD3args *objp)
  925. {
  926. if (!xdr_diropargs3(xdrs, &objp->where))
  927. return (FALSE);
  928. if (!xdr_mknoddata3(xdrs, &objp->what))
  929. return (FALSE);
  930. return (TRUE);
  931. }
  932. bool_t
  933. xdr_MKNOD3resok(register XDR *xdrs, MKNOD3resok *objp)
  934. {
  935. if (!xdr_post_op_fh3(xdrs, &objp->obj))
  936. return (FALSE);
  937. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  938. return (FALSE);
  939. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  940. return (FALSE);
  941. return (TRUE);
  942. }
  943. bool_t
  944. xdr_MKNOD3resfail(register XDR *xdrs, MKNOD3resfail *objp)
  945. {
  946. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  947. return (FALSE);
  948. return (TRUE);
  949. }
  950. bool_t
  951. xdr_MKNOD3res(register XDR *xdrs, MKNOD3res *objp)
  952. {
  953. if (!xdr_nfsstat3(xdrs, &objp->status))
  954. return (FALSE);
  955. switch (objp->status) {
  956. case NFS3_OK:
  957. if (!xdr_MKNOD3resok(xdrs, &objp->MKNOD3res_u.resok))
  958. return (FALSE);
  959. break;
  960. default:
  961. if (!xdr_MKNOD3resfail(xdrs, &objp->MKNOD3res_u.resfail))
  962. return (FALSE);
  963. break;
  964. }
  965. return (TRUE);
  966. }
  967. bool_t
  968. xdr_REMOVE3args(register XDR *xdrs, REMOVE3args *objp)
  969. {
  970. if (!xdr_diropargs3(xdrs, &objp->object))
  971. return (FALSE);
  972. return (TRUE);
  973. }
  974. bool_t
  975. xdr_REMOVE3resok(register XDR *xdrs, REMOVE3resok *objp)
  976. {
  977. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  978. return (FALSE);
  979. return (TRUE);
  980. }
  981. bool_t
  982. xdr_REMOVE3resfail(register XDR *xdrs, REMOVE3resfail *objp)
  983. {
  984. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  985. return (FALSE);
  986. return (TRUE);
  987. }
  988. bool_t
  989. xdr_REMOVE3res(register XDR *xdrs, REMOVE3res *objp)
  990. {
  991. if (!xdr_nfsstat3(xdrs, &objp->status))
  992. return (FALSE);
  993. switch (objp->status) {
  994. case NFS3_OK:
  995. if (!xdr_REMOVE3resok(xdrs, &objp->REMOVE3res_u.resok))
  996. return (FALSE);
  997. break;
  998. default:
  999. if (!xdr_REMOVE3resfail(xdrs, &objp->REMOVE3res_u.resfail))
  1000. return (FALSE);
  1001. break;
  1002. }
  1003. return (TRUE);
  1004. }
  1005. bool_t
  1006. xdr_RMDIR3args(register XDR *xdrs, RMDIR3args *objp)
  1007. {
  1008. if (!xdr_diropargs3(xdrs, &objp->object))
  1009. return (FALSE);
  1010. return (TRUE);
  1011. }
  1012. bool_t
  1013. xdr_RMDIR3resok(register XDR *xdrs, RMDIR3resok *objp)
  1014. {
  1015. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  1016. return (FALSE);
  1017. return (TRUE);
  1018. }
  1019. bool_t
  1020. xdr_RMDIR3resfail(register XDR *xdrs, RMDIR3resfail *objp)
  1021. {
  1022. if (!xdr_wcc_data(xdrs, &objp->dir_wcc))
  1023. return (FALSE);
  1024. return (TRUE);
  1025. }
  1026. bool_t
  1027. xdr_RMDIR3res(register XDR *xdrs, RMDIR3res *objp)
  1028. {
  1029. if (!xdr_nfsstat3(xdrs, &objp->status))
  1030. return (FALSE);
  1031. switch (objp->status) {
  1032. case NFS3_OK:
  1033. if (!xdr_RMDIR3resok(xdrs, &objp->RMDIR3res_u.resok))
  1034. return (FALSE);
  1035. break;
  1036. default:
  1037. if (!xdr_RMDIR3resfail(xdrs, &objp->RMDIR3res_u.resfail))
  1038. return (FALSE);
  1039. break;
  1040. }
  1041. return (TRUE);
  1042. }
  1043. bool_t
  1044. xdr_RENAME3args(register XDR *xdrs, RENAME3args *objp)
  1045. {
  1046. if (!xdr_diropargs3(xdrs, &objp->from))
  1047. return (FALSE);
  1048. if (!xdr_diropargs3(xdrs, &objp->to))
  1049. return (FALSE);
  1050. return (TRUE);
  1051. }
  1052. bool_t
  1053. xdr_RENAME3resok(register XDR *xdrs, RENAME3resok *objp)
  1054. {
  1055. if (!xdr_wcc_data(xdrs, &objp->fromdir_wcc))
  1056. return (FALSE);
  1057. if (!xdr_wcc_data(xdrs, &objp->todir_wcc))
  1058. return (FALSE);
  1059. return (TRUE);
  1060. }
  1061. bool_t
  1062. xdr_RENAME3resfail(register XDR *xdrs, RENAME3resfail *objp)
  1063. {
  1064. if (!xdr_wcc_data(xdrs, &objp->fromdir_wcc))
  1065. return (FALSE);
  1066. if (!xdr_wcc_data(xdrs, &objp->todir_wcc))
  1067. return (FALSE);
  1068. return (TRUE);
  1069. }
  1070. bool_t
  1071. xdr_RENAME3res(register XDR *xdrs, RENAME3res *objp)
  1072. {
  1073. if (!xdr_nfsstat3(xdrs, &objp->status))
  1074. return (FALSE);
  1075. switch (objp->status) {
  1076. case NFS3_OK:
  1077. if (!xdr_RENAME3resok(xdrs, &objp->RENAME3res_u.resok))
  1078. return (FALSE);
  1079. break;
  1080. default:
  1081. if (!xdr_RENAME3resfail(xdrs, &objp->RENAME3res_u.resfail))
  1082. return (FALSE);
  1083. break;
  1084. }
  1085. return (TRUE);
  1086. }
  1087. bool_t
  1088. xdr_LINK3args(register XDR *xdrs, LINK3args *objp)
  1089. {
  1090. if (!xdr_nfs_fh3(xdrs, &objp->file))
  1091. return (FALSE);
  1092. if (!xdr_diropargs3(xdrs, &objp->link))
  1093. return (FALSE);
  1094. return (TRUE);
  1095. }
  1096. bool_t
  1097. xdr_LINK3resok(register XDR *xdrs, LINK3resok *objp)
  1098. {
  1099. if (!xdr_post_op_attr(xdrs, &objp->file_attributes))
  1100. return (FALSE);
  1101. if (!xdr_wcc_data(xdrs, &objp->linkdir_wcc))
  1102. return (FALSE);
  1103. return (TRUE);
  1104. }
  1105. bool_t
  1106. xdr_LINK3resfail(register XDR *xdrs, LINK3resfail *objp)
  1107. {
  1108. if (!xdr_post_op_attr(xdrs, &objp->file_attributes))
  1109. return (FALSE);
  1110. if (!xdr_wcc_data(xdrs, &objp->linkdir_wcc))
  1111. return (FALSE);
  1112. return (TRUE);
  1113. }
  1114. bool_t
  1115. xdr_LINK3res(register XDR *xdrs, LINK3res *objp)
  1116. {
  1117. if (!xdr_nfsstat3(xdrs, &objp->status))
  1118. return (FALSE);
  1119. switch (objp->status) {
  1120. case NFS3_OK:
  1121. if (!xdr_LINK3resok(xdrs, &objp->LINK3res_u.resok))
  1122. return (FALSE);
  1123. break;
  1124. default:
  1125. if (!xdr_LINK3resfail(xdrs, &objp->LINK3res_u.resfail))
  1126. return (FALSE);
  1127. break;
  1128. }
  1129. return (TRUE);
  1130. }
  1131. bool_t
  1132. xdr_READDIR3args(register XDR *xdrs, READDIR3args *objp)
  1133. {
  1134. if (!xdr_nfs_fh3(xdrs, &objp->dir))
  1135. return (FALSE);
  1136. if (!xdr_cookie3(xdrs, &objp->cookie))
  1137. return (FALSE);
  1138. if (!xdr_cookieverf3(xdrs, objp->cookieverf))
  1139. return (FALSE);
  1140. if (!xdr_count3(xdrs, &objp->count))
  1141. return (FALSE);
  1142. return (TRUE);
  1143. }
  1144. bool_t
  1145. xdr_entry3(register XDR *xdrs, entry3 *objp)
  1146. {
  1147. if (!xdr_fileid3(xdrs, &objp->fileid))
  1148. return (FALSE);
  1149. if (!xdr_filename3(xdrs, &objp->name))
  1150. return (FALSE);
  1151. if (!xdr_cookie3(xdrs, &objp->cookie))
  1152. return (FALSE);
  1153. if (!xdr_pointer(xdrs, (char **)&objp->nextentry, sizeof (entry3), (xdrproc_t) xdr_entry3))
  1154. return (FALSE);
  1155. return (TRUE);
  1156. }
  1157. bool_t
  1158. xdr_dirlist3(register XDR *xdrs, dirlist3 *objp)
  1159. {
  1160. if (!xdr_pointer(xdrs, (char **)&objp->entries, sizeof (entry3), (xdrproc_t) xdr_entry3))
  1161. return (FALSE);
  1162. if (!xdr_bool(xdrs, &objp->eof))
  1163. return (FALSE);
  1164. return (TRUE);
  1165. }
  1166. bool_t
  1167. xdr_READDIR3resok(register XDR *xdrs, READDIR3resok *objp)
  1168. {
  1169. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  1170. return (FALSE);
  1171. if (!xdr_cookieverf3(xdrs, objp->cookieverf))
  1172. return (FALSE);
  1173. if (!xdr_dirlist3(xdrs, &objp->reply))
  1174. return (FALSE);
  1175. return (TRUE);
  1176. }
  1177. bool_t
  1178. xdr_READDIR3resfail(register XDR *xdrs, READDIR3resfail *objp)
  1179. {
  1180. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  1181. return (FALSE);
  1182. return (TRUE);
  1183. }
  1184. bool_t
  1185. xdr_READDIR3res(register XDR *xdrs, READDIR3res *objp)
  1186. {
  1187. if (!xdr_nfsstat3(xdrs, &objp->status))
  1188. return (FALSE);
  1189. switch (objp->status) {
  1190. case NFS3_OK:
  1191. if (!xdr_READDIR3resok(xdrs, &objp->READDIR3res_u.resok))
  1192. return (FALSE);
  1193. break;
  1194. default:
  1195. if (!xdr_READDIR3resfail(xdrs, &objp->READDIR3res_u.resfail))
  1196. return (FALSE);
  1197. break;
  1198. }
  1199. return (TRUE);
  1200. }
  1201. bool_t
  1202. xdr_READDIRPLUS3args(register XDR *xdrs, READDIRPLUS3args *objp)
  1203. {
  1204. if (!xdr_nfs_fh3(xdrs, &objp->dir))
  1205. return (FALSE);
  1206. if (!xdr_cookie3(xdrs, &objp->cookie))
  1207. return (FALSE);
  1208. if (!xdr_cookieverf3(xdrs, objp->cookieverf))
  1209. return (FALSE);
  1210. if (!xdr_count3(xdrs, &objp->dircount))
  1211. return (FALSE);
  1212. if (!xdr_count3(xdrs, &objp->maxcount))
  1213. return (FALSE);
  1214. return (TRUE);
  1215. }
  1216. bool_t
  1217. xdr_entryplus3(register XDR *xdrs, entryplus3 *objp)
  1218. {
  1219. if (!xdr_fileid3(xdrs, &objp->fileid))
  1220. return (FALSE);
  1221. if (!xdr_filename3(xdrs, &objp->name))
  1222. return (FALSE);
  1223. if (!xdr_cookie3(xdrs, &objp->cookie))
  1224. return (FALSE);
  1225. if (!xdr_post_op_attr(xdrs, &objp->name_attributes))
  1226. return (FALSE);
  1227. if (!xdr_post_op_fh3(xdrs, &objp->name_handle))
  1228. return (FALSE);
  1229. if (!xdr_pointer(xdrs, (char **)&objp->nextentry, sizeof (entryplus3), (xdrproc_t) xdr_entryplus3))
  1230. return (FALSE);
  1231. return (TRUE);
  1232. }
  1233. bool_t
  1234. xdr_dirlistplus3(register XDR *xdrs, dirlistplus3 *objp)
  1235. {
  1236. if (!xdr_pointer(xdrs, (char **)&objp->entries, sizeof (entryplus3), (xdrproc_t) xdr_entryplus3))
  1237. return (FALSE);
  1238. if (!xdr_bool(xdrs, &objp->eof))
  1239. return (FALSE);
  1240. return (TRUE);
  1241. }
  1242. bool_t
  1243. xdr_READDIRPLUS3resok(register XDR *xdrs, READDIRPLUS3resok *objp)
  1244. {
  1245. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  1246. return (FALSE);
  1247. if (!xdr_cookieverf3(xdrs, objp->cookieverf))
  1248. return (FALSE);
  1249. if (!xdr_dirlistplus3(xdrs, &objp->reply))
  1250. return (FALSE);
  1251. return (TRUE);
  1252. }
  1253. bool_t
  1254. xdr_READDIRPLUS3resfail(register XDR *xdrs, READDIRPLUS3resfail *objp)
  1255. {
  1256. if (!xdr_post_op_attr(xdrs, &objp->dir_attributes))
  1257. return (FALSE);
  1258. return (TRUE);
  1259. }
  1260. bool_t
  1261. xdr_READDIRPLUS3res(register XDR *xdrs, READDIRPLUS3res *objp)
  1262. {
  1263. if (!xdr_nfsstat3(xdrs, &objp->status))
  1264. return (FALSE);
  1265. switch (objp->status) {
  1266. case NFS3_OK:
  1267. if (!xdr_READDIRPLUS3resok(xdrs, &objp->READDIRPLUS3res_u.resok))
  1268. return (FALSE);
  1269. break;
  1270. default:
  1271. if (!xdr_READDIRPLUS3resfail(xdrs, &objp->READDIRPLUS3res_u.resfail))
  1272. return (FALSE);
  1273. break;
  1274. }
  1275. return (TRUE);
  1276. }
  1277. bool_t
  1278. xdr_FSSTAT3args(register XDR *xdrs, FSSTAT3args *objp)
  1279. {
  1280. if (!xdr_nfs_fh3(xdrs, &objp->fsroot))
  1281. return (FALSE);
  1282. return (TRUE);
  1283. }
  1284. bool_t
  1285. xdr_FSSTAT3resok(register XDR *xdrs, FSSTAT3resok *objp)
  1286. {
  1287. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1288. return (FALSE);
  1289. if (!xdr_size3(xdrs, &objp->tbytes))
  1290. return (FALSE);
  1291. if (!xdr_size3(xdrs, &objp->fbytes))
  1292. return (FALSE);
  1293. if (!xdr_size3(xdrs, &objp->abytes))
  1294. return (FALSE);
  1295. if (!xdr_size3(xdrs, &objp->tfiles))
  1296. return (FALSE);
  1297. if (!xdr_size3(xdrs, &objp->ffiles))
  1298. return (FALSE);
  1299. if (!xdr_size3(xdrs, &objp->afiles))
  1300. return (FALSE);
  1301. if (!xdr_uint32(xdrs, &objp->invarsec))
  1302. return (FALSE);
  1303. return (TRUE);
  1304. }
  1305. bool_t
  1306. xdr_FSSTAT3resfail(register XDR *xdrs, FSSTAT3resfail *objp)
  1307. {
  1308. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1309. return (FALSE);
  1310. return (TRUE);
  1311. }
  1312. bool_t
  1313. xdr_FSSTAT3res(register XDR *xdrs, FSSTAT3res *objp)
  1314. {
  1315. if (!xdr_nfsstat3(xdrs, &objp->status))
  1316. return (FALSE);
  1317. switch (objp->status) {
  1318. case NFS3_OK:
  1319. if (!xdr_FSSTAT3resok(xdrs, &objp->FSSTAT3res_u.resok))
  1320. return (FALSE);
  1321. break;
  1322. default:
  1323. if (!xdr_FSSTAT3resfail(xdrs, &objp->FSSTAT3res_u.resfail))
  1324. return (FALSE);
  1325. break;
  1326. }
  1327. return (TRUE);
  1328. }
  1329. bool_t
  1330. xdr_FSINFO3args(register XDR *xdrs, FSINFO3args *objp)
  1331. {
  1332. if (!xdr_nfs_fh3(xdrs, &objp->fsroot))
  1333. return (FALSE);
  1334. return (TRUE);
  1335. }
  1336. bool_t
  1337. xdr_FSINFO3resok(register XDR *xdrs, FSINFO3resok *objp)
  1338. {
  1339. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1340. return (FALSE);
  1341. if (!xdr_uint32(xdrs, &objp->rtmax))
  1342. return (FALSE);
  1343. if (!xdr_uint32(xdrs, &objp->rtpref))
  1344. return (FALSE);
  1345. if (!xdr_uint32(xdrs, &objp->rtmult))
  1346. return (FALSE);
  1347. if (!xdr_uint32(xdrs, &objp->wtmax))
  1348. return (FALSE);
  1349. if (!xdr_uint32(xdrs, &objp->wtpref))
  1350. return (FALSE);
  1351. if (!xdr_uint32(xdrs, &objp->wtmult))
  1352. return (FALSE);
  1353. if (!xdr_uint32(xdrs, &objp->dtpref))
  1354. return (FALSE);
  1355. if (!xdr_size3(xdrs, &objp->maxfilesize))
  1356. return (FALSE);
  1357. if (!xdr_nfstime3(xdrs, &objp->time_delta))
  1358. return (FALSE);
  1359. if (!xdr_uint32(xdrs, &objp->properties))
  1360. return (FALSE);
  1361. return (TRUE);
  1362. }
  1363. bool_t
  1364. xdr_FSINFO3resfail(register XDR *xdrs, FSINFO3resfail *objp)
  1365. {
  1366. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1367. return (FALSE);
  1368. return (TRUE);
  1369. }
  1370. bool_t
  1371. xdr_FSINFO3res(register XDR *xdrs, FSINFO3res *objp)
  1372. {
  1373. if (!xdr_nfsstat3(xdrs, &objp->status))
  1374. return (FALSE);
  1375. switch (objp->status) {
  1376. case NFS3_OK:
  1377. if (!xdr_FSINFO3resok(xdrs, &objp->FSINFO3res_u.resok))
  1378. return (FALSE);
  1379. break;
  1380. default:
  1381. if (!xdr_FSINFO3resfail(xdrs, &objp->FSINFO3res_u.resfail))
  1382. return (FALSE);
  1383. break;
  1384. }
  1385. return (TRUE);
  1386. }
  1387. bool_t
  1388. xdr_PATHCONF3args(register XDR *xdrs, PATHCONF3args *objp)
  1389. {
  1390. if (!xdr_nfs_fh3(xdrs, &objp->object))
  1391. return (FALSE);
  1392. return (TRUE);
  1393. }
  1394. bool_t
  1395. xdr_PATHCONF3resok(register XDR *xdrs, PATHCONF3resok *objp)
  1396. {
  1397. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1398. return (FALSE);
  1399. if (!xdr_uint32(xdrs, &objp->linkmax))
  1400. return (FALSE);
  1401. if (!xdr_uint32(xdrs, &objp->name_max))
  1402. return (FALSE);
  1403. if (!xdr_bool(xdrs, &objp->no_trunc))
  1404. return (FALSE);
  1405. if (!xdr_bool(xdrs, &objp->chown_restricted))
  1406. return (FALSE);
  1407. if (!xdr_bool(xdrs, &objp->case_insensitive))
  1408. return (FALSE);
  1409. if (!xdr_bool(xdrs, &objp->case_preserving))
  1410. return (FALSE);
  1411. return (TRUE);
  1412. }
  1413. bool_t
  1414. xdr_PATHCONF3resfail(register XDR *xdrs, PATHCONF3resfail *objp)
  1415. {
  1416. if (!xdr_post_op_attr(xdrs, &objp->obj_attributes))
  1417. return (FALSE);
  1418. return (TRUE);
  1419. }
  1420. bool_t
  1421. xdr_PATHCONF3res(register XDR *xdrs, PATHCONF3res *objp)
  1422. {
  1423. if (!xdr_nfsstat3(xdrs, &objp->status))
  1424. return (FALSE);
  1425. switch (objp->status) {
  1426. case NFS3_OK:
  1427. if (!xdr_PATHCONF3resok(xdrs, &objp->PATHCONF3res_u.resok))
  1428. return (FALSE);
  1429. break;
  1430. default:
  1431. if (!xdr_PATHCONF3resfail(xdrs, &objp->PATHCONF3res_u.resfail))
  1432. return (FALSE);
  1433. break;
  1434. }
  1435. return (TRUE);
  1436. }
  1437. bool_t
  1438. xdr_COMMIT3args(register XDR *xdrs, COMMIT3args *objp)
  1439. {
  1440. if (!xdr_nfs_fh3(xdrs, &objp->file))
  1441. return (FALSE);
  1442. if (!xdr_offset3(xdrs, &objp->offset))
  1443. return (FALSE);
  1444. if (!xdr_count3(xdrs, &objp->count))
  1445. return (FALSE);
  1446. return (TRUE);
  1447. }
  1448. bool_t
  1449. xdr_COMMIT3resok(register XDR *xdrs, COMMIT3resok *objp)
  1450. {
  1451. if (!xdr_wcc_data(xdrs, &objp->file_wcc))
  1452. return (FALSE);
  1453. if (!xdr_writeverf3(xdrs, objp->verf))
  1454. return (FALSE);
  1455. return (TRUE);
  1456. }
  1457. bool_t
  1458. xdr_COMMIT3resfail(register XDR *xdrs, COMMIT3resfail *objp)
  1459. {
  1460. if (!xdr_wcc_data(xdrs, &objp->file_wcc))
  1461. return (FALSE);
  1462. return (TRUE);
  1463. }
  1464. bool_t
  1465. xdr_COMMIT3res(register XDR *xdrs, COMMIT3res *objp)
  1466. {
  1467. if (!xdr_nfsstat3(xdrs, &objp->status))
  1468. return (FALSE);
  1469. switch (objp->status) {
  1470. case NFS3_OK:
  1471. if (!xdr_COMMIT3resok(xdrs, &objp->COMMIT3res_u.resok))
  1472. return (FALSE);
  1473. break;
  1474. default:
  1475. if (!xdr_COMMIT3resfail(xdrs, &objp->COMMIT3res_u.resfail))
  1476. return (FALSE);
  1477. break;
  1478. }
  1479. return (TRUE);
  1480. }