Back to index

glibc  2.9
nis_callback.h
Go to the documentation of this file.
00001 /*
00002  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
00003  * unrestricted use provided that this legend is included on all tape
00004  * media and as a part of the software program in whole or part.  Users
00005  * may copy or modify Sun RPC without charge, but are not authorized
00006  * to license or distribute it to anyone else except as part of a product or
00007  * program developed by the user or with the express written consent of
00008  * Sun Microsystems, Inc.
00009  *
00010  * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
00011  * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
00012  * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
00013  *
00014  * Sun RPC is provided with no support and without any obligation on the
00015  * part of Sun Microsystems, Inc. to assist in its use, correction,
00016  * modification or enhancement.
00017  *
00018  * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
00019  * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
00020  * OR ANY PART THEREOF.
00021  *
00022  * In no event will Sun Microsystems, Inc. be liable for any lost revenue
00023  * or profits or other special, indirect and consequential damages, even if
00024  * Sun has been advised of the possibility of such damages.
00025  *
00026  * Sun Microsystems, Inc.
00027  * 2550 Garcia Avenue
00028  * Mountain View, California  94043
00029  */
00030 #ifndef _RPCSVC_NIS_CALLBACK_H
00031 #define _RPCSVC_NIS_CALLBACK_H 1
00032 
00033 #include <rpc/rpc.h>
00034 #include <rpcsvc/nis.h>
00035 
00036 __BEGIN_DECLS
00037 
00038 typedef nis_object *obj_p;
00039 
00040 struct cback_data {
00041        struct {
00042               u_int entries_len;
00043               obj_p *entries_val;
00044        } entries;
00045 };
00046 typedef struct cback_data cback_data;
00047 
00048 #define CB_PROG 100302
00049 #define CB_VERS 1
00050 
00051 #define CBPROC_RECEIVE 1
00052 extern  bool_t * cbproc_receive_1 (cback_data *, CLIENT *) __THROW;
00053 extern  bool_t * cbproc_receive_1_svc (cback_data *, struct svc_req *) __THROW;
00054 
00055 #define CBPROC_FINISH 2
00056 extern  void * cbproc_finish_1 (void *, CLIENT *) __THROW;
00057 extern  void * cbproc_finish_1_svc (void *, struct svc_req *) __THROW;
00058 
00059 #define CBPROC_ERROR 3
00060 extern  void * cbproc_error_1 (nis_error *, CLIENT *) __THROW;
00061 extern  void * cbproc_error_1_svc (nis_error *, struct svc_req *) __THROW;
00062 extern int cb_prog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t) __THROW;
00063 
00064 /* the xdr functions */
00065 
00066 extern  bool_t xdr_obj_p (XDR *, obj_p*) __THROW;
00067 extern  bool_t xdr_cback_data (XDR *, cback_data*) __THROW;
00068 
00069 __END_DECLS
00070 
00071 #endif /* !_RPCVSC_NIS_CALLBACK_H */