Показать сообщение отдельно

  #3  
Старый 21.03.2008, 14:25
ZipaCna
Познающий
Регистрация: 29.02.2008
Сообщений: 66
Провел на форуме:
139469

Репутация: 33
По умолчанию

Если ты заглянеш в http://forum.antichat.ru/thread59471.html

То там ты найдеш решение своих проблем... а именно...

ypupdate_prot.h

Код:
/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#ifndef _YPUPDATE_PROT_H_RPCGEN
#define _YPUPDATE_PROT_H_RPCGEN

#include <rpc/rpc.h>

/* @(#)ypupdate_prot.x 1.5 90/01/03 Copyr 1990, Sun Micro */

/*
 * Compiled from ypupdate_prot.x using rpcgen
 * This is NOT source code!
 * DO NOT EDIT THIS FILE!
 */
#define MAXMAPNAMELEN 255
#define MAXYPDATALEN 1023
#define MAXERRMSGLEN 255

typedef struct {
	u_int yp_buf_len;
	char *yp_buf_val;
} yp_buf;
#ifdef __cplusplus 
extern "C" bool_t xdr_yp_buf(XDR *, yp_buf*);
#elif __STDC__ 
extern  bool_t xdr_yp_buf(XDR *, yp_buf*);
#else /* Old Style C */ 
bool_t xdr_yp_buf();
#endif /* Old Style C */ 


struct ypupdate_args {
	char *mapname;
	yp_buf key;
	yp_buf datum;
};
typedef struct ypupdate_args ypupdate_args;
#ifdef __cplusplus 
extern "C" bool_t xdr_ypupdate_args(XDR *, ypupdate_args*);
#elif __STDC__ 
extern  bool_t xdr_ypupdate_args(XDR *, ypupdate_args*);
#else /* Old Style C */ 
bool_t xdr_ypupdate_args();
#endif /* Old Style C */ 


struct ypdelete_args {
	char *mapname;
	yp_buf key;
};
typedef struct ypdelete_args ypdelete_args;
#ifdef __cplusplus 
extern "C" bool_t xdr_ypdelete_args(XDR *, ypdelete_args*);
#elif __STDC__ 
extern  bool_t xdr_ypdelete_args(XDR *, ypdelete_args*);
#else /* Old Style C */ 
bool_t xdr_ypdelete_args();
#endif /* Old Style C */ 


#define YPU_PROG ((u_long)100028)
#define YPU_VERS ((u_long)1)

#ifdef __cplusplus
#define YPU_CHANGE ((u_long)1)
extern "C" u_int * ypu_change_1(ypupdate_args *, CLIENT *);
extern "C" u_int * ypu_change_1_svc(ypupdate_args *, struct svc_req *);
#define YPU_INSERT ((u_long)2)
extern "C" u_int * ypu_insert_1(ypupdate_args *, CLIENT *);
extern "C" u_int * ypu_insert_1_svc(ypupdate_args *, struct svc_req *);
#define YPU_DELETE ((u_long)3)
extern "C" u_int * ypu_delete_1(ypdelete_args *, CLIENT *);
extern "C" u_int * ypu_delete_1_svc(ypdelete_args *, struct svc_req *);
#define YPU_STORE ((u_long)4)
extern "C" u_int * ypu_store_1(ypupdate_args *, CLIENT *);
extern "C" u_int * ypu_store_1_svc(ypupdate_args *, struct svc_req *);

#elif __STDC__
#define YPU_CHANGE ((u_long)1)
extern  u_int * ypu_change_1(ypupdate_args *, CLIENT *);
extern  u_int * ypu_change_1_svc(ypupdate_args *, struct svc_req *);
#define YPU_INSERT ((u_long)2)
extern  u_int * ypu_insert_1(ypupdate_args *, CLIENT *);
extern  u_int * ypu_insert_1_svc(ypupdate_args *, struct svc_req *);
#define YPU_DELETE ((u_long)3)
extern  u_int * ypu_delete_1(ypdelete_args *, CLIENT *);
extern  u_int * ypu_delete_1_svc(ypdelete_args *, struct svc_req *);
#define YPU_STORE ((u_long)4)
extern  u_int * ypu_store_1(ypupdate_args *, CLIENT *);
extern  u_int * ypu_store_1_svc(ypupdate_args *, struct svc_req *);

#else /* Old Style C */ 
#define YPU_CHANGE ((u_long)1)
extern  u_int * ypu_change_1();
extern  u_int * ypu_change_1_svc();
#define YPU_INSERT ((u_long)2)
extern  u_int * ypu_insert_1();
extern  u_int * ypu_insert_1_svc();
#define YPU_DELETE ((u_long)3)
extern  u_int * ypu_delete_1();
extern  u_int * ypu_delete_1_svc();
#define YPU_STORE ((u_long)4)
extern  u_int * ypu_store_1();
extern  u_int * ypu_store_1_svc();
#endif /* Old Style C */ 

#endif /* !_YPUPDATE_PROT_H_RPCGEN */
и

ypupdate_prot_xdr.c

Код:
/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#include "ypupdate_prot.h"
/* @(#)ypupdate_prot.x 1.5 90/01/03 Copyr 1990, Sun Micro */

/*
 * Compiled from ypupdate_prot.x using rpcgen
 * This is NOT source code!
 * DO NOT EDIT THIS FILE!
 */

bool_t
xdr_yp_buf(XDR *xdrs, yp_buf *objp)
{

	 register long *buf;

	 if (!xdr_bytes(xdrs, (char **)&objp->yp_buf_val, (u_int *)&objp->yp_buf_len, MAXYPDATALEN)) {
		 return (FALSE);
	 }
	return (TRUE);
}

bool_t
xdr_ypupdate_args(XDR *xdrs, ypupdate_args *objp)
{

	 register long *buf;

	 if (!xdr_string(xdrs, &objp->mapname, MAXMAPNAMELEN)) {
		 return (FALSE);
	 }
	 if (!xdr_yp_buf(xdrs, &objp->key)) {
		 return (FALSE);
	 }
	 if (!xdr_yp_buf(xdrs, &objp->datum)) {
		 return (FALSE);
	 }
	return (TRUE);
}

bool_t
xdr_ypdelete_args(XDR *xdrs, ypdelete_args *objp)
{

	 register long *buf;

	 if (!xdr_string(xdrs, &objp->mapname, MAXMAPNAMELEN)) {
		 return (FALSE);
	 }
	 if (!xdr_yp_buf(xdrs, &objp->key)) {
		 return (FALSE);
	 }
	return (TRUE);
}