bool_t xdr_readres (XDR *xdrs, readres *objp) { register int32_t *buf; if (!xdr_int (xdrs, &objp->status)) return FALSE; if (!xdr_string (xdrs, &objp->data, ~0)) return FALSE; return TRUE; }
bool_t xdr_remote_client_run_cmd_args (XDR *xdrs, remote_client_run_cmd_args *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->cmdstring, MAX_CMD_LEN)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_remote_client_run_cmd_outcome (XDR *xdrs, remote_client_run_cmd_outcome *objp) { register int32_t *buf; if (!xdr_int (xdrs, &objp->valid)) return FALSE; if (!xdr_string (xdrs, &objp->outputline, MAX_CMD_OUTPUT_LINE_LEN)) return FALSE; return TRUE; }
bool_t xdr_remote_client_dirlist_args (XDR *xdrs, remote_client_dirlist_args *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->remotepathname, MAX_PATHNAME_LEN)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_remote_client_cntrl_args (XDR *xdrs, remote_client_cntrl_args *objp) { register int32_t *buf; if (!xdr_bool (xdrs, &objp->clear_shared_memory_flag)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_remote_client_cancel_tag_args (XDR *xdrs, remote_client_cancel_tag_args *objp) { register int32_t *buf; if (!xdr_u_int (xdrs, &objp->tag)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_remote_client_clear_ident_args (XDR *xdrs, remote_client_clear_ident_args *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->identstring, MAX_IDENT_LEN)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_uvfsstat(XDR *xdrs, uvfsstat *objp) { register int32_t *buf; if (!xdr_int(xdrs, objp)) { return (FALSE); } return (TRUE); }
bool_t xdr_remote_client_query_cmdlog_args (XDR *xdrs, remote_client_query_cmdlog_args *objp) { register int32_t *buf; if (!xdr_u_int (xdrs, &objp->index)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }
bool_t xdr_array_in (XDR *xdrs, array_in *objp) { register int32_t *buf; if (!xdr_pointer (xdrs, (char **)&objp->value, sizeof (int), (xdrproc_t) xdr_int)) return FALSE; if (!xdr_int (xdrs, &objp->size)) return FALSE; return TRUE; }
bool_t xdr_result (XDR *xdrs, result *objp) { register int32_t *buf; if (!xdr_int (xdrs, &objp->status)) return FALSE; if (!xdr_String (xdrs, &objp->resultData)) return FALSE; return TRUE; }
static int encode_kv(XDR *x, const char *k, const char *v) { int32_t n = 1; if (!xdr_string(x, (char **)&k, _LU_MAXLUSTRLEN)) return 1; if (!xdr_int(x, &n)) return 1; if (!xdr_string(x, (char **)&v, _LU_MAXLUSTRLEN)) return 1; return 0; }
bool_t xdr_stuff (XDR *xdrs, stuff *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->name, 64)) return FALSE; if (!xdr_int (xdrs, &objp->val)) return FALSE; return TRUE; }
bool_t xdr_umntres(XDR *xdrs, umntres *objp) { if (amuDebug(D_XDRTRACE)) plog(XLOG_DEBUG, "xdr_mntres:"); if (!xdr_int(xdrs, &objp->status)) return (FALSE); return (TRUE); }
void ltspfs_readlink (int sockfd, XDR *in) { XDR out; char path[PATH_MAX]; char buf[PATH_MAX]; /* linkname */ char output[LTSP_MAXBUF]; char *bufptr = buf; int i; /* readlink doesn't terminate with a null */ memset (buf, 0, PATH_MAX); if (get_fn(sockfd, in, path)) { /* Get the link source */ eacces(sockfd); return; } if (readlink (path, buf, PATH_MAX) == -1) { status_return(sockfd, FAIL); return; } if (!strncmp(buf, mountpoint, strlen(mountpoint))) /* adjust link target */ bufptr += strlen(mountpoint); xdrmem_create(&out, output, LTSP_MAXBUF, XDR_ENCODE); i = 0; xdr_int(&out, &i); /* First, the dummy length */ xdr_int(&out, &i); /* Then the 0 status return */ xdr_string(&out, &bufptr, PATH_MAX); /* Link target */ i = xdr_getpos(&out); /* Get our position */ xdr_setpos(&out, 0); /* Rewind to the beginning */ xdr_int(&out, &i); /* Rewrite with proper length */ xdr_destroy(&out); if (debug) info("returning ok", output); writen(sockfd, output, i); }
bool_t xdr_stats(XDR *xdrs, stats *objp) { if (!xdr_vector(xdrs, (char *)objp->cp_time, CPUSTATES, sizeof(int), xdr_int)) { return (FALSE); } if (!xdr_vector(xdrs, (char *)objp->dk_xfer, DK_NDRIVE, sizeof(int), xdr_int)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->v_pgpgin)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->v_pgpgout)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->v_pswpin)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->v_pswpout)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->v_intr)) { return (FALSE); } if (!xdr_int(xdrs, &objp->if_ipackets)) { return (FALSE); } if (!xdr_int(xdrs, &objp->if_ierrors)) { return (FALSE); } if (!xdr_int(xdrs, &objp->if_oerrors)) { return (FALSE); } if (!xdr_int(xdrs, &objp->if_collisions)) { return (FALSE); } if (!xdr_int(xdrs, &objp->if_opackets)) { return (FALSE); } return (TRUE); }
/* * XDR a char */ bool_t xdr_char(XDR *xdrs, char *cp) { int i; i = (*cp); if (!xdr_int(xdrs, &i)) { return (FALSE); } *cp = i; return (TRUE); }
static int xdr_RPGP_text_t (XDR *xdrs, RPGP_text_t *text) { int len; if (xdrs->x_op == XDR_DECODE) { text->comp_params = NULL; text->text = NULL; } else len = strlen (text->text) + 1; if (xdr_int (xdrs, &(text->comp_type)) == 0 || xdr_int (xdrs, &(text->numof_comp_params)) == 0 || (text->numof_comp_params > 0 && xdr_array (xdrs, (char **)&(text->comp_params), (unsigned int *)&(text->numof_comp_params), MAX_ARRAY_SIZE, sizeof (RPGP_parameter_t), (xdrproc_t)xdr_RPGP_parameter_t) == 0) || xdr_bytes (xdrs, (char **)&(text->text), (unsigned int *)&len, MAX_ARRAY_SIZE) == 0) return (0); return (1); }
bool_t xdr_nlm_sm_status(XDR *xdrs, nlm_sm_status *objp) { if (!xdr_string(xdrs, &objp->mon_name, LM_MAXSTRLEN)) return (FALSE); if (!xdr_int(xdrs, &objp->state)) return (FALSE); if (!xdr_opaque(xdrs, objp->priv, 16)) return (FALSE); return (TRUE); }
bool_t xdr_nlm4_shareres(XDR *xdrs, nlm4_shareres *objp) { if (!xdr_netobj(xdrs, &objp->cookie)) return (FALSE); if (!xdr_nlm4_stats(xdrs, &objp->stat)) return (FALSE); if (!xdr_int(xdrs, &objp->sequence)) return (FALSE); return (TRUE); }
bool_t xdr_gf1_cli_umount_req (XDR *xdrs, gf1_cli_umount_req *objp) { register int32_t *buf; buf = NULL; if (!xdr_int (xdrs, &objp->lazy)) return FALSE; if (!xdr_string (xdrs, &objp->path, ~0)) return FALSE; return TRUE; }
bool_t xdr_gf1_cli_probe_req (XDR *xdrs, gf1_cli_probe_req *objp) { register int32_t *buf; buf = NULL; if (!xdr_string (xdrs, &objp->hostname, ~0)) return FALSE; if (!xdr_int (xdrs, &objp->port)) return FALSE; return TRUE; }
bool_t xdr_gf1_cli_peer_list_req (XDR *xdrs, gf1_cli_peer_list_req *objp) { register int32_t *buf; buf = NULL; if (!xdr_int (xdrs, &objp->flags)) return FALSE; if (!xdr_bytes (xdrs, (char **)&objp->dict.dict_val, (u_int *) &objp->dict.dict_len, ~0)) return FALSE; return TRUE; }
/* * XDR enumerations */ bool_t xdr_enum(XDR *xdrs, enum_t *ep) { enum sizecheck { SIZEVAL }; /* used to find the size of an enum */ /* * enums are treated as ints */ /* CONSTCOND */ assert(sizeof (enum sizecheck) == sizeof (int32_t)); return (xdr_int(xdrs, (int *)ep)); }
bool_t xdr_passwd (XDR *xdrs, passwd *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->pw_name, ~0)) return FALSE; if (!xdr_string (xdrs, &objp->pw_passwd, ~0)) return FALSE; if (!xdr_int (xdrs, &objp->pw_uid)) return FALSE; if (!xdr_int (xdrs, &objp->pw_gid)) return FALSE; if (!xdr_string (xdrs, &objp->pw_gecos, ~0)) return FALSE; if (!xdr_string (xdrs, &objp->pw_dir, ~0)) return FALSE; if (!xdr_string (xdrs, &objp->pw_shell, ~0)) return FALSE; return TRUE; }
bool_t xdr_gd1_mgmt_brick_op_req (XDR *xdrs, gd1_mgmt_brick_op_req *objp) { if (!xdr_string (xdrs, &objp->name, ~0)) return FALSE; if (!xdr_int (xdrs, &objp->op)) return FALSE; if (!xdr_bytes (xdrs, (char **)&objp->input.input_val, (u_int *) &objp->input.input_len, ~0)) return FALSE; return TRUE; }
bool_t xdr_gf1_cli_sync_volume_req (XDR *xdrs, gf1_cli_sync_volume_req *objp) { if (!xdr_int (xdrs, &objp->flags)) return FALSE; if (!xdr_string (xdrs, &objp->volname, ~0)) return FALSE; if (!xdr_string (xdrs, &objp->hostname, ~0)) return FALSE; return TRUE; }
bool_t xdr_gf1_cli_remove_brick_req (XDR *xdrs, gf1_cli_remove_brick_req *objp) { if (!xdr_string (xdrs, &objp->volname, ~0)) return FALSE; if (!xdr_int (xdrs, &objp->count)) return FALSE; if (!xdr_bytes (xdrs, (char **)&objp->bricks.bricks_val, (u_int *) &objp->bricks.bricks_len, ~0)) return FALSE; return TRUE; }
bool_t xdr_rpcb_stat(XDR *xdrs, rpcb_stat *objp) { if (!xdr_rpcbs_proc(xdrs, objp->info)) { return (FALSE); } if (!xdr_int(xdrs, &objp->setinfo)) { return (FALSE); } if (!xdr_int(xdrs, &objp->unsetinfo)) { return (FALSE); } if (!xdr_rpcbs_addrlist_ptr(xdrs, &objp->addrinfo)) { return (FALSE); } if (!xdr_rpcbs_rmtcalllist_ptr(xdrs, &objp->rmtinfo)) { return (FALSE); } return (TRUE); }
bool_t xdr_remote_client_execute_cmd_args (XDR *xdrs, remote_client_execute_cmd_args *objp) { register int32_t *buf; if (!xdr_string (xdrs, &objp->cmdstring, MAX_CMD_LEN)) return FALSE; if (!xdr_envlist (xdrs, &objp->environment_settings)) return FALSE; if (!xdr_int (xdrs, &objp->run_in_shell)) return FALSE; if (!xdr_int (xdrs, &objp->tag)) return FALSE; if (!xdr_Iu32 (xdrs, &objp->actionresultID)) return FALSE; if (!xdr_Iu32 (xdrs, &objp->workqueueID)) return FALSE; if (!xdr_int (xdrs, &objp->msglevel)) return FALSE; return TRUE; }