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