2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
6 * These libraries and programs are free software; you can
7 * redistribute them and/or modify them under the terms of the GNU
8 * Lesser General Public License as published by the Free Software
9 * Foundation; either version 2 of the License, or (at your option)
12 * These libraries and programs are distributed in the hope that
13 * they will be useful, but WITHOUT ANY WARRANTY; without even the
14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU Lesser General Public License for more
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these libraries and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /* $XConsortium: cmcb.h /main/1 1996/04/21 19:21:59 drk $ */
25 * (c) Copyright 1993, 1994 Hewlett-Packard Company
26 * (c) Copyright 1993, 1994 International Business Machines Corp.
27 * (c) Copyright 1993, 1994 Novell, Inc.
28 * (c) Copyright 1993, 1994 Sun Microsystems, Inc.
35 #include <rpc/types.h>
49 * cal_attr_data - contain names of calendar attributes updated
52 struct cmcb_cal_attr_data {
56 typedef struct cmcb_cal_attr_data cmcb_cal_attr_data;
59 * add_entry_data - contain information of the deleted entry
62 struct cmcb_add_entry_data {
65 typedef struct cmcb_add_entry_data cmcb_add_entry_data;
68 * delete_entry_data - contain information of the deleted entry
71 struct cmcb_delete_entry_data {
76 typedef struct cmcb_delete_entry_data cmcb_delete_entry_data;
79 * update_entry_data - contain information of the updated entry
80 * if new entry id is not resulted from the update, oldid will be
81 * set to a NULL string ("").
84 struct cmcb_update_entry_data {
90 typedef struct cmcb_update_entry_data cmcb_update_entry_data;
93 * update_data - contains the update reason and specific information
94 * about the update. No additional data is provided for CSA_CALENDAR_LOGON,
95 * CSA_CALENDAR_DELETED, and CSA_CALENDAR_ATTRIBUTE_UPDATED
97 struct cmcb_update_data {
100 cmcb_cal_attr_data *cdata; /* data for cal attrs update */
101 cmcb_add_entry_data *adata; /* data for CSA_ENTRY_ADDED */
102 cmcb_delete_entry_data *ddata; /* data for CSA_ENTRY_DELETED */
103 cmcb_update_entry_data *udata; /* data for CSA_ENTRY_UPDATED */
106 typedef struct cmcb_update_data cmcb_update_data;
108 struct cmcb_update_callback_args {
111 cmcb_update_data data;
113 typedef struct cmcb_update_callback_args cmcb_update_callback_args;
115 #define AGENTVERS_2 ((unsigned long)(2))
117 #if defined(__STDC__) || defined(__cplusplus)
118 #define CMCB_UPDATE_CALLBACK ((unsigned long)(1))
119 extern void * cmcb_update_callback_2(cmcb_update_callback_args *, CLIENT *);
120 extern void * cmcb_update_callback_2_svc(cmcb_update_callback_args *, struct svc_req *);
121 extern int agentprog_2_freeresult(SVCXPRT *, xdrproc_t, caddr_t);
124 #define CMCB_UPDATE_CALLBACK ((unsigned long)(1))
125 extern void * cmcb_update_callback_2();
126 extern void * cmcb_update_callback_2_svc();
127 extern int agentprog_2_freeresult();
130 /* the xdr functions */
132 #if defined(__STDC__) || defined(__cplusplus)
133 extern bool_t xdr_cmcb_cal_attr_data(XDR *, cmcb_cal_attr_data*);
134 extern bool_t xdr_cmcb_add_entry_data(XDR *, cmcb_add_entry_data*);
135 extern bool_t xdr_cmcb_delete_entry_data(XDR *, cmcb_delete_entry_data*);
136 extern bool_t xdr_cmcb_update_entry_data(XDR *, cmcb_update_entry_data*);
137 extern bool_t xdr_cmcb_update_data(XDR *, cmcb_update_data*);
138 extern bool_t xdr_cmcb_update_callback_args(XDR *, cmcb_update_callback_args*);
141 extern bool_t xdr_cmcb_cal_attr_data();
142 extern bool_t xdr_cmcb_add_entry_data();
143 extern bool_t xdr_cmcb_delete_entry_data();
144 extern bool_t xdr_cmcb_update_entry_data();
145 extern bool_t xdr_cmcb_update_data();
146 extern bool_t xdr_cmcb_update_callback_args();