1/* 2 * Please do not edit this file. 3 * It was generated using rpcgen. 4 */ 5 6#include "xcom_vp.h" 7/* Copyright (c) 2010, 2021, Oracle and/or its affiliates. 8 9 This program is free software; you can redistribute it and/or modify 10 it under the terms of the GNU General Public License, version 2.0, 11 as published by the Free Software Foundation. 12 13 This program is also distributed with certain software (including 14 but not limited to OpenSSL) that is licensed under separate terms, 15 as designated in a particular file or component or in included license 16 documentation. The authors of MySQL hereby grant you an additional 17 permission to link the program and your derivative works with the 18 separately licensed software that they have included with MySQL. 19 20 This program is distributed in the hope that it will be useful, 21 but WITHOUT ANY WARRANTY; without even the implied warranty of 22 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23 GNU General Public License, version 2.0, for more details. 24 25 You should have received a copy of the GNU General Public License 26 along with this program; if not, write to the Free Software 27 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ 28 29#include "xcom_vp_platform.h" 30 31bool_t 32xdr_xcom_proto (XDR *xdrs, xcom_proto *objp) 33{ 34 register int32_t *buf; 35 36 if (!xdr_enum (xdrs, (enum_t *) objp)) 37 return FALSE; 38 return TRUE; 39} 40 41bool_t 42xdr_x_proto_range (XDR *xdrs, x_proto_range *objp) 43{ 44 register int32_t *buf; 45 46 if (!xdr_xcom_proto (xdrs, &objp->min_proto)) 47 return FALSE; 48 if (!xdr_xcom_proto (xdrs, &objp->max_proto)) 49 return FALSE; 50 return TRUE; 51} 52 53bool_t 54xdr_delivery_status (XDR *xdrs, delivery_status *objp) 55{ 56 register int32_t *buf; 57 58 if (!xdr_enum (xdrs, (enum_t *) objp)) 59 return FALSE; 60 return TRUE; 61} 62 63bool_t 64xdr_cons_type (XDR *xdrs, cons_type *objp) 65{ 66 register int32_t *buf; 67 68 if (!xdr_enum (xdrs, (enum_t *) objp)) 69 return FALSE; 70 return TRUE; 71} 72 73bool_t 74xdr_node_no (XDR *xdrs, node_no *objp) 75{ 76 register int32_t *buf; 77 78 if (!xdr_uint32_t (xdrs, objp)) 79 return FALSE; 80 return TRUE; 81} 82 83bool_t 84xdr_synode_no (XDR *xdrs, synode_no *objp) 85{ 86 register int32_t *buf; 87 88 if (!xdr_uint32_t (xdrs, &objp->group_id)) 89 return FALSE; 90 if (!xdr_uint64_t (xdrs, &objp->msgno)) 91 return FALSE; 92 if (!xdr_node_no (xdrs, &objp->node)) 93 return FALSE; 94 return TRUE; 95} 96 97bool_t 98xdr_trans_id (XDR *xdrs, trans_id *objp) 99{ 100 register int32_t *buf; 101 102 if (!xdr_synode_no (xdrs, &objp->cfg)) 103 return FALSE; 104 if (!xdr_uint32_t (xdrs, &objp->pc)) 105 return FALSE; 106 return TRUE; 107} 108 109bool_t 110xdr_node_set (XDR *xdrs, node_set *objp) 111{ 112 register int32_t *buf; 113 114 if (!xdr_array (xdrs, (char **)&objp->node_set_val, (u_int *) &objp->node_set_len, 100, 115 sizeof (bool_t), (xdrproc_t) xdr_bool)) 116 return FALSE; 117 return TRUE; 118} 119 120bool_t 121xdr_blob (XDR *xdrs, blob *objp) 122{ 123 register int32_t *buf; 124 125 if (!xdr_bytes (xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, 1024)) 126 return FALSE; 127 return TRUE; 128} 129 130bool_t 131xdr_node_address_1_0 (XDR *xdrs, node_address_1_0 *objp) 132{ 133 register int32_t *buf; 134 135 if (!xdr_string (xdrs, &objp->address, 1024)) 136 return FALSE; 137 if (!xdr_blob (xdrs, &objp->uuid)) 138 return FALSE; 139 return TRUE; 140} 141 142bool_t 143xdr_node_list_1_0 (XDR *xdrs, node_list_1_0 *objp) 144{ 145 register int32_t *buf; 146 147 if (!xdr_array (xdrs, (char **)&objp->node_list_1_0_val, (u_int *) &objp->node_list_1_0_len, 100, 148 sizeof (node_address_1_0), (xdrproc_t) xdr_node_address_1_0)) 149 return FALSE; 150 return TRUE; 151} 152 153bool_t 154xdr_node_address (XDR *xdrs, node_address *objp) 155{ 156 register int32_t *buf; 157 158 if (!xdr_string (xdrs, &objp->address, 1024)) 159 return FALSE; 160 if (!xdr_blob (xdrs, &objp->uuid)) 161 return FALSE; 162 if (!xdr_x_proto_range (xdrs, &objp->proto)) 163 return FALSE; 164 return TRUE; 165} 166 167bool_t 168xdr_node_list (XDR *xdrs, node_list *objp) 169{ 170 register int32_t *buf; 171 172 if (!xdr_array (xdrs, (char **)&objp->node_list_val, (u_int *) &objp->node_list_len, 100, 173 sizeof (node_address), (xdrproc_t) xdr_node_address)) 174 return FALSE; 175 return TRUE; 176} 177/* 178 Custom xdr functions to coerce rpcgen into handling different protocol versions. 179 Protocol version is passed in an extended XDR object. 180*/ 181 182#ifndef VERSION_CONTROL 183#define VERSION_CONTROL 184 185extern xcom_proto const my_min_xcom_version; /* The minimum protocol version I am able to understand */ 186extern xcom_proto const my_xcom_version; /* The maximum protocol version I am able to understand */ 187 188typedef node_list node_list_1_1; /* Alias for real type to avoid generating xdr call to xdr_node_list */ 189 190extern bool_t xdr_node_list_1_1 (XDR *, node_list_1_1*); 191 192#endif 193#ifndef CHECKED_DATA 194#define CHECKED_DATA 195typedef struct { 196 u_int data_len; 197 char *data_val; 198} checked_data; 199extern bool_t xdr_checked_data (XDR *, checked_data*); 200#endif 201 202bool_t 203xdr_cargo_type (XDR *xdrs, cargo_type *objp) 204{ 205 register int32_t *buf; 206 207 if (!xdr_enum (xdrs, (enum_t *) objp)) 208 return FALSE; 209 return TRUE; 210} 211 212bool_t 213xdr_node_no_array (XDR *xdrs, node_no_array *objp) 214{ 215 register int32_t *buf; 216 217 if (!xdr_array (xdrs, (char **)&objp->node_no_array_val, (u_int *) &objp->node_no_array_len, 100, 218 sizeof (node_no), (xdrproc_t) xdr_node_no)) 219 return FALSE; 220 return TRUE; 221} 222 223bool_t 224xdr_synode_no_array (XDR *xdrs, synode_no_array *objp) 225{ 226 register int32_t *buf; 227 228 if (!xdr_array (xdrs, (char **)&objp->synode_no_array_val, (u_int *) &objp->synode_no_array_len, 1024, 229 sizeof (synode_no), (xdrproc_t) xdr_synode_no)) 230 return FALSE; 231 return TRUE; 232} 233 234bool_t 235xdr_uncommitted_list (XDR *xdrs, uncommitted_list *objp) 236{ 237 register int32_t *buf; 238 239 if (!xdr_uint32_t (xdrs, &objp->active)) 240 return FALSE; 241 if (!xdr_synode_no_array (xdrs, &objp->vers)) 242 return FALSE; 243 return TRUE; 244} 245 246bool_t 247xdr_repository (XDR *xdrs, repository *objp) 248{ 249 register int32_t *buf; 250 251 if (!xdr_synode_no (xdrs, &objp->vers)) 252 return FALSE; 253 if (!xdr_synode_no_array (xdrs, &objp->msg_list)) 254 return FALSE; 255 if (!xdr_uncommitted_list (xdrs, &objp->u_list)) 256 return FALSE; 257 return TRUE; 258} 259 260bool_t 261xdr_x_error (XDR *xdrs, x_error *objp) 262{ 263 register int32_t *buf; 264 265 if (!xdr_int32_t (xdrs, &objp->nodeid)) 266 return FALSE; 267 if (!xdr_int32_t (xdrs, &objp->code)) 268 return FALSE; 269 if (!xdr_string (xdrs, &objp->message, 10240)) 270 return FALSE; 271 return TRUE; 272} 273 274bool_t 275xdr_trans_data (XDR *xdrs, trans_data *objp) 276{ 277 register int32_t *buf; 278 279 if (!xdr_trans_id (xdrs, &objp->tid)) 280 return FALSE; 281 if (!xdr_int32_t (xdrs, &objp->pc)) 282 return FALSE; 283 if (!xdr_string (xdrs, &objp->cluster_name, 1024)) 284 return FALSE; 285 if (!xdr_x_error (xdrs, &objp->errmsg)) 286 return FALSE; 287 return TRUE; 288} 289 290bool_t 291xdr_app_u (XDR *xdrs, app_u *objp) 292{ 293 register int32_t *buf; 294 295 if (!xdr_cargo_type (xdrs, &objp->c_t)) 296 return FALSE; 297 switch (objp->c_t) { 298 case unified_boot_type: 299 case add_node_type: 300 case remove_node_type: 301 case force_config_type: 302 case xcom_boot_type: 303 case xcom_set_group: 304 if (!xdr_node_list_1_1 (xdrs, &objp->app_u_u.nodes)) 305 return FALSE; 306 break; 307 case xcom_recover: 308 if (!xdr_repository (xdrs, &objp->app_u_u.rep)) 309 return FALSE; 310 break; 311 case app_type: 312 if (!xdr_checked_data (xdrs, &objp->app_u_u.data)) 313 return FALSE; 314 break; 315 case query_type: 316 break; 317 case query_next_log: 318 break; 319 case exit_type: 320 case reset_type: 321 break; 322 case remove_reset_type: 323 break; 324 case begin_trans: 325 break; 326 case prepared_trans: 327 case abort_trans: 328 if (!xdr_trans_data (xdrs, &objp->app_u_u.td)) 329 return FALSE; 330 break; 331 case view_msg: 332 if (!xdr_node_set (xdrs, &objp->app_u_u.present)) 333 return FALSE; 334 break; 335 case set_cache_limit: 336 if (!xdr_uint64_t(xdrs, &objp->app_u_u.cache_limit)) 337 return (FALSE); 338 break; 339 default: 340 break; 341 } 342 return TRUE; 343} 344 345bool_t 346xdr_recover_action (XDR *xdrs, recover_action *objp) 347{ 348 register int32_t *buf; 349 350 if (!xdr_enum (xdrs, (enum_t *) objp)) 351 return FALSE; 352 return TRUE; 353} 354 355bool_t 356xdr_app_data (XDR *xdrs, app_data *objp) 357{ 358 register int32_t *buf; 359 360 361 if (xdrs->x_op == XDR_ENCODE) { 362 if (!xdr_synode_no (xdrs, &objp->unique_id)) 363 return FALSE; 364 if (!xdr_uint32_t (xdrs, &objp->group_id)) 365 return FALSE; 366 if (!xdr_uint64_t (xdrs, &objp->lsn)) 367 return FALSE; 368 if (!xdr_synode_no (xdrs, &objp->app_key)) 369 return FALSE; 370 if (!xdr_cons_type (xdrs, &objp->consensus)) 371 return FALSE; 372 if (!xdr_double (xdrs, &objp->expiry_time)) 373 return FALSE; 374 buf = XDR_INLINE (xdrs, 3 * BYTES_PER_XDR_UNIT); 375 if (buf == NULL) { 376 if (!xdr_bool (xdrs, &objp->notused)) 377 return FALSE; 378 if (!xdr_bool (xdrs, &objp->log_it)) 379 return FALSE; 380 if (!xdr_bool (xdrs, &objp->chosen)) 381 return FALSE; 382 383 } else { 384 IXDR_PUT_BOOL(buf, objp->notused); 385 IXDR_PUT_BOOL(buf, objp->log_it); 386 IXDR_PUT_BOOL(buf, objp->chosen); 387 } 388 if (!xdr_recover_action (xdrs, &objp->recover)) 389 return FALSE; 390 if (!xdr_app_u (xdrs, &objp->body)) 391 return FALSE; 392 if (!xdr_pointer (xdrs, (char **)&objp->next, sizeof (app_data), (xdrproc_t) xdr_app_data)) 393 return FALSE; 394 return TRUE; 395 } else if (xdrs->x_op == XDR_DECODE) { 396 if (!xdr_synode_no (xdrs, &objp->unique_id)) 397 return FALSE; 398 if (!xdr_uint32_t (xdrs, &objp->group_id)) 399 return FALSE; 400 if (!xdr_uint64_t (xdrs, &objp->lsn)) 401 return FALSE; 402 if (!xdr_synode_no (xdrs, &objp->app_key)) 403 return FALSE; 404 if (!xdr_cons_type (xdrs, &objp->consensus)) 405 return FALSE; 406 if (!xdr_double (xdrs, &objp->expiry_time)) 407 return FALSE; 408 buf = XDR_INLINE (xdrs, 3 * BYTES_PER_XDR_UNIT); 409 if (buf == NULL) { 410 if (!xdr_bool (xdrs, &objp->notused)) 411 return FALSE; 412 if (!xdr_bool (xdrs, &objp->log_it)) 413 return FALSE; 414 if (!xdr_bool (xdrs, &objp->chosen)) 415 return FALSE; 416 417 } else { 418 objp->notused = IXDR_GET_BOOL(buf); 419 objp->log_it = IXDR_GET_BOOL(buf); 420 objp->chosen = IXDR_GET_BOOL(buf); 421 } 422 if (!xdr_recover_action (xdrs, &objp->recover)) 423 return FALSE; 424 if (!xdr_app_u (xdrs, &objp->body)) 425 return FALSE; 426 if (!xdr_pointer (xdrs, (char **)&objp->next, sizeof (app_data), (xdrproc_t) xdr_app_data)) 427 return FALSE; 428 return TRUE; 429 } 430 431 if (!xdr_synode_no (xdrs, &objp->unique_id)) 432 return FALSE; 433 if (!xdr_uint32_t (xdrs, &objp->group_id)) 434 return FALSE; 435 if (!xdr_uint64_t (xdrs, &objp->lsn)) 436 return FALSE; 437 if (!xdr_synode_no (xdrs, &objp->app_key)) 438 return FALSE; 439 if (!xdr_cons_type (xdrs, &objp->consensus)) 440 return FALSE; 441 if (!xdr_double (xdrs, &objp->expiry_time)) 442 return FALSE; 443 if (!xdr_bool (xdrs, &objp->notused)) 444 return FALSE; 445 if (!xdr_bool (xdrs, &objp->log_it)) 446 return FALSE; 447 if (!xdr_bool (xdrs, &objp->chosen)) 448 return FALSE; 449 if (!xdr_recover_action (xdrs, &objp->recover)) 450 return FALSE; 451 if (!xdr_app_u (xdrs, &objp->body)) 452 return FALSE; 453 if (!xdr_pointer (xdrs, (char **)&objp->next, sizeof (app_data), (xdrproc_t) xdr_app_data)) 454 return FALSE; 455 return TRUE; 456} 457 458bool_t 459xdr_app_data_ptr (XDR *xdrs, app_data_ptr *objp) 460{ 461 register int32_t *buf; 462 463 if (!xdr_pointer (xdrs, (char **)objp, sizeof (app_data), (xdrproc_t) xdr_app_data)) 464 return FALSE; 465 return TRUE; 466} 467 468bool_t 469xdr_app_data_ptr_array (XDR *xdrs, app_data_ptr_array *objp) 470{ 471 register int32_t *buf; 472 473 if (!xdr_array (xdrs, (char **)&objp->app_data_ptr_array_val, (u_int *) &objp->app_data_ptr_array_len, 1024, 474 sizeof (app_data_ptr), (xdrproc_t) xdr_app_data_ptr)) 475 return FALSE; 476 return TRUE; 477} 478 479bool_t 480xdr_app_data_list (XDR *xdrs, app_data_list *objp) 481{ 482 register int32_t *buf; 483 484 if (!xdr_pointer (xdrs, (char **)objp, sizeof (app_data_ptr), (xdrproc_t) xdr_app_data_ptr)) 485 return FALSE; 486 return TRUE; 487} 488 489bool_t 490xdr_key_range (XDR *xdrs, key_range *objp) 491{ 492 register int32_t *buf; 493 494 if (!xdr_synode_no (xdrs, &objp->k1)) 495 return FALSE; 496 if (!xdr_synode_no (xdrs, &objp->k2)) 497 return FALSE; 498 return TRUE; 499} 500 501bool_t 502xdr_bit_mask (XDR *xdrs, bit_mask *objp) 503{ 504 register int32_t *buf; 505 506 if (!xdr_uint32_t (xdrs, objp)) 507 return FALSE; 508 return TRUE; 509} 510 511#define BITS_PER_BYTE 8 512#define MASK_BITS ((uint32_t)(sizeof (bit_mask) * BITS_PER_BYTE)) /* bits per mask */ 513#define howmany_words(x, y) (((x)+((y)-1))/(y)) 514 515 516bool_t 517xdr_bit_set (XDR *xdrs, bit_set *objp) 518{ 519 register int32_t *buf; 520 521 if (!xdr_array (xdrs, (char **)&objp->bits.bits_val, (u_int *) &objp->bits.bits_len, 100, 522 sizeof (bit_mask), (xdrproc_t) xdr_bit_mask)) 523 return FALSE; 524 return TRUE; 525} 526#define BIT_OP(__n, __p, __op, __inv) ((__p)->bits.bits_val[(__n)/MASK_BITS] __op __inv (1u << ((__n) % MASK_BITS))) 527#define BIT_XOR(__n, __p) BIT_OP(__n, __p, ^=, ) 528#define BIT_SET(__n, __p) BIT_OP(__n, __p, |=, ) 529#define BIT_CLR(__n, __p) BIT_OP(__n, __p, &=, ~) 530#define BIT_ISSET(__n, __p) (BIT_OP(__n, __p, &, ) != 0ul) 531#define BIT_ZERO(__p) memset((__p)->bits.bits_val, 0, (__p)->bits.bits_len * sizeof(*(__p)->bits.bits_val)) 532extern bit_set *new_bit_set(uint32_t bits); 533extern bit_set *clone_bit_set(bit_set *orig); 534extern void free_bit_set(bit_set *bs); 535 536bool_t 537xdr_ballot (XDR *xdrs, ballot *objp) 538{ 539 register int32_t *buf; 540 541 if (!xdr_int32_t (xdrs, &objp->cnt)) 542 return FALSE; 543 if (!xdr_node_no (xdrs, &objp->node)) 544 return FALSE; 545 return TRUE; 546} 547 548bool_t 549xdr_pax_op (XDR *xdrs, pax_op *objp) 550{ 551 register int32_t *buf; 552 553 if (!xdr_enum (xdrs, (enum_t *) objp)) 554 return FALSE; 555 return TRUE; 556} 557 558bool_t 559xdr_pax_msg_type (XDR *xdrs, pax_msg_type *objp) 560{ 561 register int32_t *buf; 562 563 if (!xdr_enum (xdrs, (enum_t *) objp)) 564 return FALSE; 565 return TRUE; 566} 567 568bool_t 569xdr_start_t (XDR *xdrs, start_t *objp) 570{ 571 register int32_t *buf; 572 573 if (!xdr_enum (xdrs, (enum_t *) objp)) 574 return FALSE; 575 return TRUE; 576} 577 578bool_t 579xdr_snapshot (XDR *xdrs, snapshot *objp) 580{ 581 register int32_t *buf; 582 583 if (!xdr_synode_no (xdrs, &objp->vers)) 584 return FALSE; 585 if (!xdr_app_data_ptr_array (xdrs, &objp->snap)) 586 return FALSE; 587 if (!xdr_uncommitted_list (xdrs, &objp->u_list)) 588 return FALSE; 589 return TRUE; 590} 591 592bool_t 593xdr_config (XDR *xdrs, config *objp) 594{ 595 register int32_t *buf; 596 597 if (!xdr_synode_no (xdrs, &objp->start)) 598 return FALSE; 599 if (!xdr_synode_no (xdrs, &objp->boot_key)) 600 return FALSE; 601 if (!xdr_node_list_1_1 (xdrs, &objp->nodes)) 602 return FALSE; 603 return TRUE; 604} 605 606bool_t 607xdr_config_ptr (XDR *xdrs, config_ptr *objp) 608{ 609 register int32_t *buf; 610 611 if (!xdr_pointer (xdrs, (char **)objp, sizeof (config), (xdrproc_t) xdr_config)) 612 return FALSE; 613 return TRUE; 614} 615 616bool_t 617xdr_configs (XDR *xdrs, configs *objp) 618{ 619 register int32_t *buf; 620 621 if (!xdr_array (xdrs, (char **)&objp->configs_val, (u_int *) &objp->configs_len, 100, 622 sizeof (config_ptr), (xdrproc_t) xdr_config_ptr)) 623 return FALSE; 624 return TRUE; 625} 626 627bool_t 628xdr_gcs_snapshot (XDR *xdrs, gcs_snapshot *objp) 629{ 630 register int32_t *buf; 631 632 if (!xdr_synode_no (xdrs, &objp->log_start)) 633 return FALSE; 634 if (!xdr_configs (xdrs, &objp->cfg)) 635 return FALSE; 636 if (!xdr_blob (xdrs, &objp->app_snap)) 637 return FALSE; 638 return TRUE; 639} 640 641bool_t 642xdr_client_reply_code (XDR *xdrs, client_reply_code *objp) 643{ 644 register int32_t *buf; 645 646 if (!xdr_enum (xdrs, (enum_t *) objp)) 647 return FALSE; 648 return TRUE; 649} 650 651bool_t 652xdr_pax_msg_1_1(register XDR *xdrs, pax_msg_1_1 *objp) 653{ 654 register int32_t *buf; 655 656 if (!xdr_node_no (xdrs, &objp->to)) 657 return FALSE; 658 if (!xdr_node_no (xdrs, &objp->from)) 659 return FALSE; 660 if (!xdr_uint32_t (xdrs, &objp->group_id)) 661 return FALSE; 662 if (!xdr_synode_no (xdrs, &objp->max_synode)) 663 return FALSE; 664 if (!xdr_start_t (xdrs, &objp->start_type)) 665 return FALSE; 666 if (!xdr_ballot (xdrs, &objp->reply_to)) 667 return FALSE; 668 if (!xdr_ballot (xdrs, &objp->proposal)) 669 return FALSE; 670 if (!xdr_pax_op (xdrs, &objp->op)) 671 return FALSE; 672 if (!xdr_synode_no (xdrs, &objp->synode)) 673 return FALSE; 674 if (!xdr_pax_msg_type (xdrs, &objp->msg_type)) 675 return FALSE; 676 if (!xdr_pointer (xdrs, (char **)&objp->receivers, sizeof (bit_set), (xdrproc_t) xdr_bit_set)) 677 return FALSE; 678 if (!xdr_pointer (xdrs, (char **)&objp->a, sizeof (app_data), (xdrproc_t) xdr_app_data)) 679 return FALSE; 680 if (!xdr_pointer (xdrs, (char **)&objp->snap, sizeof (snapshot), (xdrproc_t) xdr_snapshot)) 681 return FALSE; 682 if (!xdr_pointer (xdrs, (char **)&objp->gcs_snap, sizeof (gcs_snapshot), (xdrproc_t) xdr_gcs_snapshot)) 683 return FALSE; 684 if (!xdr_client_reply_code (xdrs, &objp->cli_err)) 685 return FALSE; 686 if (!xdr_bool (xdrs, &objp->force_delivery)) 687 return FALSE; 688 if (!xdr_int32_t (xdrs, &objp->refcnt)) 689 return FALSE; 690 return TRUE; 691} 692 693bool_t 694xdr_pax_msg_1_2(register XDR *xdrs, pax_msg_1_2 *objp) 695{ 696 register int32_t *buf; 697 698 if (!xdr_node_no (xdrs, &objp->to)) 699 return FALSE; 700 if (!xdr_node_no (xdrs, &objp->from)) 701 return FALSE; 702 if (!xdr_uint32_t (xdrs, &objp->group_id)) 703 return FALSE; 704 if (!xdr_synode_no (xdrs, &objp->max_synode)) 705 return FALSE; 706 if (!xdr_start_t (xdrs, &objp->start_type)) 707 return FALSE; 708 if (!xdr_ballot (xdrs, &objp->reply_to)) 709 return FALSE; 710 if (!xdr_ballot (xdrs, &objp->proposal)) 711 return FALSE; 712 if (!xdr_pax_op (xdrs, &objp->op)) 713 return FALSE; 714 if (!xdr_synode_no (xdrs, &objp->synode)) 715 return FALSE; 716 if (!xdr_pax_msg_type (xdrs, &objp->msg_type)) 717 return FALSE; 718 if (!xdr_pointer (xdrs, (char **)&objp->receivers, sizeof (bit_set), (xdrproc_t) xdr_bit_set)) 719 return FALSE; 720 if (!xdr_pointer (xdrs, (char **)&objp->a, sizeof (app_data), (xdrproc_t) xdr_app_data)) 721 return FALSE; 722 if (!xdr_pointer (xdrs, (char **)&objp->snap, sizeof (snapshot), (xdrproc_t) xdr_snapshot)) 723 return FALSE; 724 if (!xdr_pointer (xdrs, (char **)&objp->gcs_snap, sizeof (gcs_snapshot), (xdrproc_t) xdr_gcs_snapshot)) 725 return FALSE; 726 if (!xdr_client_reply_code (xdrs, &objp->cli_err)) 727 return FALSE; 728 if (!xdr_bool (xdrs, &objp->force_delivery)) 729 return FALSE; 730 if (!xdr_int32_t (xdrs, &objp->refcnt)) 731 return FALSE; 732 if (!xdr_synode_no (xdrs, &objp->delivered_msg)) 733 return FALSE; 734 735 return TRUE; 736} 737#ifndef PAX_MSG_TYPEDEF 738#define PAX_MSG_TYPEDEF 739typedef pax_msg_1_2 pax_msg; 740extern bool_t xdr_pax_msg (XDR *, pax_msg*); 741#endif 742 743bool_t 744xdr_file_name (XDR *xdrs, file_name *objp) 745{ 746 register int32_t *buf; 747 748 if (!xdr_string (xdrs, objp, 1024)) 749 return FALSE; 750 return TRUE; 751} 752 753bool_t 754xdr_file_name_array (XDR *xdrs, file_name_array *objp) 755{ 756 register int32_t *buf; 757 758 if (!xdr_array (xdrs, (char **)&objp->file_name_array_val, (u_int *) &objp->file_name_array_len, 1024, 759 sizeof (file_name), (xdrproc_t) xdr_file_name)) 760 return FALSE; 761 return TRUE; 762} 763 764bool_t 765xdr_file_copy_data (XDR *xdrs, file_copy_data *objp) 766{ 767 register int32_t *buf; 768 769 if (!xdr_string (xdrs, &objp->clustername, 1024)) 770 return FALSE; 771 if (!xdr_string (xdrs, &objp->copydir, 1024)) 772 return FALSE; 773 if (!xdr_string (xdrs, &objp->server, 1024)) 774 return FALSE; 775 if (!xdr_int32_t (xdrs, &objp->copy_port)) 776 return FALSE; 777 return TRUE; 778} 779