dtcm: Resolve CID 87822
[oweals/cde.git] / cde / programs / dtcm / server / callback.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
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)
10  * any later version.
11  *
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
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these librararies and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /* $XConsortium: callback.h /main/4 1995/11/09 12:40:25 rswiston $ */
24 /*
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.
29  */
30
31 #ifndef _CALLBACK_H
32 #define _CALLBACK_H
33
34 #include "ansi_c.h"
35 #include "rtable4.h"
36
37 typedef struct __DtCmsRegistrationInfo {
38         char    *client;
39         int     types;
40         u_long  prognum;
41         u_long  versnum;
42         u_long  procnum;
43         int     pid;
44         struct  __DtCmsRegistrationInfo *next;
45 } _DtCmsRegistrationInfo;
46
47 extern _DtCmsRegistrationInfo *_DtCmsMakeRegistrationInfo P((
48                                 char *client,
49                                 int types,
50                                 u_long prognum,
51                                 u_long versnum,
52                                 u_long procnum,
53                                 int pid));
54
55 extern void _DtCmsFreeRegistrationInfo P((_DtCmsRegistrationInfo *w));
56
57 extern _DtCmsRegistrationInfo *_DtCmsGetRegistration P((
58                                 _DtCmsRegistrationInfo **rlist,
59                                 char *client,
60                                 u_long prognum,
61                                 u_long versnum,
62                                 u_long procnum,
63                                 int pid));
64
65 extern _DtCmsRegistrationInfo *_DtCmsRemoveRegistration P((
66                                 _DtCmsRegistrationInfo *rlist,
67                                 _DtCmsRegistrationInfo *rinfo));
68
69 extern _DtCmsRegistrationInfo *_DtCmsCheckRegistrationList P((
70                                 _DtCmsRegistrationInfo *rlist));
71
72 extern _DtCmsRegistrationInfo * _DtCmsDoV1CbForV4Data P((
73                                 _DtCmsRegistrationInfo  *rlist,
74                                 char                    *source,
75                                 int                     pid,
76                                 cms_key                 *key1,
77                                 cms_key                 *key2));
78
79 extern _DtCmsRegistrationInfo *_DtCmsDoV1Callback P((
80                                         _DtCmsRegistrationInfo *rlist,
81                                         char *source,
82                                         int pid,
83                                         Appt_4 *a));
84
85 extern _DtCmsRegistrationInfo *_DtCmsDoOpenCalCallback P((
86                                         _DtCmsRegistrationInfo *rlist,
87                                         char *cal,
88                                         char *user,
89                                         int pid));
90
91 extern _DtCmsRegistrationInfo *_DtCmsDoRemoveCalCallback P((
92                                         _DtCmsRegistrationInfo *rlist,
93                                         char *cal,
94                                         char *user,
95                                         int pid));
96
97 extern _DtCmsRegistrationInfo *_DtCmsDoUpdateCalAttrsCallback P((
98                                         _DtCmsRegistrationInfo  *rlist,
99                                         char                    *cal,
100                                         char                    *user,
101                                         uint                    num_attrs,
102                                         cms_attribute           *attrs,
103                                         int                     pid));
104
105 extern _DtCmsRegistrationInfo *_DtCmsDoInsertEntryCallback P((
106                                         _DtCmsRegistrationInfo *rlist,
107                                         char *cal,
108                                         char *source,
109                                         long id,
110                                         int pid));
111
112 extern _DtCmsRegistrationInfo *_DtCmsDoDeleteEntryCallback P((
113                                         _DtCmsRegistrationInfo *rlist,
114                                         char *cal,
115                                         char *source,
116                                         long id,
117                                         int scope,
118                                         time_t time,
119                                         int pid));
120
121 extern _DtCmsRegistrationInfo *_DtCmsDoUpdateEntryCallback P((
122                                         _DtCmsRegistrationInfo *rlist,
123                                         char *cal,
124                                         char *source,
125                                         long newid,
126                                         long oldid,
127                                         int scope,
128                                         long time,
129                                         int pid));
130
131 extern void _DtCmsListRegistration P((_DtCmsRegistrationInfo *rlist,
132                                       char *cal));
133
134
135 #endif