Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Тестовые примеры / ch12 / scan2 / scan2_xdr
.c/*
* Please do not edit this file.
* It was generated using rpcgen.
*/
#include "scan2.h"
bool_t
xdr_name_t(register XDR *xdrs, name_t *objp)
{
register long *buf;
if (!xdr_string(xdrs, objp, MAXNLEN))
return (FALSE);
return (TRUE);
}
bool_t
xdr_argPtr(register XDR *xdrs, argPtr *objp)
{
register long *buf;
if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct arg_rec), (xdrproc_t) xdr_arg_rec))
return (FALSE);
return (TRUE);
}
bool_t
xdr_arg_rec(register XDR *xdrs, arg_rec *objp)
{
register long *buf;
if (!xdr_name_t(xdrs, &objp->dir_name))
return (FALSE);
if (!xdr_int(xdrs, &objp->lflag))
return (FALSE);
return (TRUE);
}
bool_t
xdr_infolist(register XDR *xdrs, infolist *objp)
{
register long *buf;
if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct dirinfo), (xdrproc_t) xdr_dirinfo))
return (FALSE);
return (TRUE);
}
bool_t
xdr_dirinfo(register XDR *xdrs, dirinfo *objp)
{
register long *buf;
if (!xdr_name_t(xdrs, &objp->name))
return (FALSE);
if (!xdr_u_int(xdrs, &objp->uid))
return (FALSE);
if (!xdr_long(xdrs, &objp->modtime))
return (FALSE);
if (!xdr_infolist(xdrs, &objp->next))
return (FALSE);
return (TRUE);
}
bool_t
xdr_res(register XDR *xdrs, res *objp)
{
register long *buf;
if (!xdr_int(xdrs, &objp->errno))
return (FALSE);
switch (objp->errno) {
case 0:
if (!xdr_infolist(xdrs, &objp->res_u.list))
return (FALSE);
break;
}
return (TRUE);
}