Initial import of the CDE 2.1.30 sources from the Open Group.
[oweals/cde.git] / cde / programs / dtcm / libDtCmP / dtfns.h
1 /* $XConsortium: dtfns.h /main/3 1995/11/03 10:37:45 rswiston $ */
2 /*      @(#)dtfns.h 1.3 94/11/07 SMI    */
3
4 /*                                                                      *
5  * (c) Copyright 1993, 1994 Hewlett-Packard Company                     *
6  * (c) Copyright 1993, 1994 International Business Machines Corp.       *
7  * (c) Copyright 1993, 1994 Sun Microsystems, Inc.                      *
8  * (c) Copyright 1993, 1994 Novell, Inc.                                *
9  */
10
11
12 #ifndef _DTFNS_H
13 #define _DTFNS_H
14
15 #ifdef FNS
16
17 #include <fns/fns.h>
18
19 #define DTFNS_SEPERATOR         ':'
20
21 #define DTFNS_ORG_NAME          "org"
22 #define DTFNS_ORG_LEN           3
23
24 #define DTFNS_SITE_NAME         "site"
25 #define DTFNS_SITE_LEN          4
26
27 #define DTFNS_MYORG_NAME        "myorg"
28 #define DTFNS_MYORG_LEN         5
29
30 #define DTFNS_HOSTORG_NAME      "hostorg"
31 #define DTFNS_HOSTORG_LEN       7
32
33 #define DTFNS_HOST_NAME         "host"
34 #define DTFNS_HOST_LEN          4
35
36 #define DTFNS_THISUSER_NAME     "thisuser"
37 #define DTFNS_THISUSER_LEN      8
38
39 #define DTFNS_USER_NAME         "user"
40 #define DTFNS_USER_LEN          4
41
42 #define DTFNS_SERVICE_NAME      "service"
43 #define DTFNS_SERVICE_LEN       7
44
45 #define DTFNS_LONG_NAME_LEN     8               /* Longest of above names */
46
47 #define DTFNS_NULL_CONTEXT_TYPE         "SUNW_nscontext_null"
48 #define DTFNS_SERVICE_CONTEXT_TYPE      "SUNW_nscontext_service"
49
50 #define FNS_LIBRARY             "libfns.so.1"
51
52 extern int dtfns_init(void);
53 extern int dtfns_available(void);
54 extern int dtfns_service_name(const char *name, const char *type,
55                               const char *service, const char *service_type,
56                               const char *org, char *buf, const int size);
57 extern int dtfns_isa_helix_name(const char *);
58 extern int dtfns_lookup_str(const char *, char **, char *, int,
59                             char *, int);
60 extern int dtfns_str_from_ref(NS_Reference_t *, int posn,
61                               char *addr_buf, int addr_size,
62                               char *type_buf, int type_size);
63 extern int dtfns_append_to_ref(NS_Reference_t *, const char *addr,
64                                const char *addr_type);
65 extern int dtfns_bind_str(const char *name, const char *ref_type,
66                           char *types[], const char *new_str);
67
68 extern NS_Reference_t * dtfns_lookup_ref(const char *);
69 extern void             dtfns_myorg_name(char *, int);
70 extern NS_Context_t *   dtfns_get_initial_ctx(void);
71
72 extern const NS_ReferenceAddress_t * dtfns_addr_from_ref(const NS_Reference_t *,
73                                 char**, void**);
74 extern int   dtfns_str_from_addr(const NS_ReferenceAddress_t *, char *dbuf, int,
75                                                 char *tbuf, int);
76 extern NS_ReferenceAddress_t * dtfns_create_str_addr(const char *data,
77                                                     const char *type);
78
79 extern int dtfns_insert_addr(NS_Reference_t *, void **,
80                                 const NS_ReferenceAddress_t *);
81 extern int dtfns_delete_addr(NS_Reference_t *, void **);
82
83 #endif /* FNS */
84
85 #endif /* _DTFNS_H */
86