1/*
2 * This file is auto generated.  Please do not edit it.
3 */
4
5#ifndef __KERBEROSPROFILE__
6#define __KERBEROSPROFILE__
7
8#ifndef __has_extension
9#define __has_extension(x) 0
10#endif
11
12#ifndef KERBEROS_APPLE_DEPRECATED
13#if __has_extension(attribute_deprecated_with_message)
14#define KERBEROS_APPLE_DEPRECATED(x) __attribute__((deprecated(x)))
15#else
16#if !defined(__GNUC__) && !defined(__attribute__)
17#define __attribute__(x)
18#endif
19#define KERBEROS_APPLE_DEPRECATED(x) __attribute__((deprecated))
20#endif
21#endif
22
23/*
24 * profile.h
25 */
26
27#ifndef _KRB5_PROFILE_H
28#define _KRB5_PROFILE_H
29
30#if defined(_WIN32)
31#include <win-mac.h>
32#endif
33
34#if defined(__MACH__) && defined(__APPLE__)
35#    include <TargetConditionals.h>
36#    if TARGET_RT_MAC_CFM
37#        error "Use KfM 4.0 SDK headers for CFM compilation."
38#    endif
39#endif
40
41#ifndef KRB5_CALLCONV
42#define KRB5_CALLCONV
43#define KRB5_CALLCONV_C
44#endif
45
46typedef struct _profile_t *profile_t;
47
48/*
49 * Used by the profile iterator in prof_get.c
50 */
51#define PROFILE_ITER_LIST_SECTION	0x0001
52#define PROFILE_ITER_SECTIONS_ONLY	0x0002
53#define PROFILE_ITER_RELATIONS_ONLY	0x0004
54
55#ifdef __cplusplus
56extern "C" {
57#endif /* __cplusplus */
58
59typedef char* profile_filespec_t;	/* path as C string */
60typedef char* profile_filespec_list_t;	/* list of : separated paths, C string */
61typedef const char * const_profile_filespec_t;	/* path as C string */
62typedef const char * const_profile_filespec_list_t;	/* list of : separated paths, C string */
63
64long KRB5_CALLCONV profile_init
65	(const_profile_filespec_t *files, profile_t *ret_profile);
66
67long KRB5_CALLCONV profile_init_path
68	(const_profile_filespec_list_t filelist, profile_t *ret_profile);
69
70void KRB5_CALLCONV profile_configuration_updated
71	(void);
72
73long KRB5_CALLCONV profile_flush
74	(profile_t profile);
75long KRB5_CALLCONV profile_flush_to_file
76	(profile_t profile, const_profile_filespec_t outfile);
77long KRB5_CALLCONV profile_flush_to_buffer
78	(profile_t profile, char **bufp);
79void KRB5_CALLCONV profile_free_buffer
80	(profile_t profile, char *buf);
81
82long KRB5_CALLCONV profile_is_writable
83	(profile_t profile, int *writable);
84long KRB5_CALLCONV profile_is_modified
85	(profile_t profile, int *modified);
86
87void KRB5_CALLCONV profile_abandon
88	(profile_t profile);
89
90void KRB5_CALLCONV profile_release
91	(profile_t profile);
92
93long KRB5_CALLCONV profile_get_values
94	(profile_t profile, const char *const *names, char ***ret_values);
95
96void KRB5_CALLCONV profile_free_list
97	(char **list);
98
99long KRB5_CALLCONV profile_get_string
100	(profile_t profile, const char *name, const char *subname,
101			const char *subsubname, const char *def_val,
102			char **ret_string);
103long KRB5_CALLCONV profile_get_integer
104	(profile_t profile, const char *name, const char *subname,
105			const char *subsubname, int def_val,
106			int *ret_default);
107
108long KRB5_CALLCONV profile_get_boolean
109	(profile_t profile, const char *name, const char *subname,
110			const char *subsubname, int def_val,
111			int *ret_default);
112
113long KRB5_CALLCONV profile_get_relation_names
114	(profile_t profile, const char **names, char ***ret_names);
115
116long KRB5_CALLCONV profile_get_subsection_names
117	(profile_t profile, const char **names, char ***ret_names);
118
119long KRB5_CALLCONV profile_iterator_create
120	(profile_t profile, const char *const *names,
121		   int flags, void **ret_iter);
122
123void KRB5_CALLCONV profile_iterator_free
124	(void **iter_p);
125
126long KRB5_CALLCONV profile_iterator
127	(void	**iter_p, char **ret_name, char **ret_value);
128
129void KRB5_CALLCONV profile_release_string (char *str);
130
131long KRB5_CALLCONV profile_update_relation
132	(profile_t profile, const char **names,
133		   const char *old_value, const char *new_value);
134
135long KRB5_CALLCONV profile_clear_relation
136	(profile_t profile, const char **names);
137
138long KRB5_CALLCONV profile_rename_section
139	(profile_t profile, const char **names,
140		   const char *new_name);
141
142long KRB5_CALLCONV profile_add_relation
143	(profile_t profile, const char **names,
144		   const char *new_value);
145
146#ifdef __cplusplus
147}
148#endif /* __cplusplus */
149
150#endif /* _KRB5_PROFILE_H */
151/*
152 * et-h-prof_err.h:
153 * This file is automatically generated; please do not edit it.
154 */
155
156#include <Kerberos/com_err.h>
157
158#define PROF_VERSION                             (-1429577728L)
159#define PROF_MAGIC_NODE                          (-1429577727L)
160#define PROF_NO_SECTION                          (-1429577726L)
161#define PROF_NO_RELATION                         (-1429577725L)
162#define PROF_ADD_NOT_SECTION                     (-1429577724L)
163#define PROF_SECTION_WITH_VALUE                  (-1429577723L)
164#define PROF_BAD_LINK_LIST                       (-1429577722L)
165#define PROF_BAD_GROUP_LVL                       (-1429577721L)
166#define PROF_BAD_PARENT_PTR                      (-1429577720L)
167#define PROF_MAGIC_ITERATOR                      (-1429577719L)
168#define PROF_SET_SECTION_VALUE                   (-1429577718L)
169#define PROF_EINVAL                              (-1429577717L)
170#define PROF_READ_ONLY                           (-1429577716L)
171#define PROF_SECTION_NOTOP                       (-1429577715L)
172#define PROF_SECTION_SYNTAX                      (-1429577714L)
173#define PROF_RELATION_SYNTAX                     (-1429577713L)
174#define PROF_EXTRA_CBRACE                        (-1429577712L)
175#define PROF_MISSING_OBRACE                      (-1429577711L)
176#define PROF_MAGIC_PROFILE                       (-1429577710L)
177#define PROF_MAGIC_SECTION                       (-1429577709L)
178#define PROF_TOPSECTION_ITER_NOSUPP              (-1429577708L)
179#define PROF_INVALID_SECTION                     (-1429577707L)
180#define PROF_END_OF_SECTIONS                     (-1429577706L)
181#define PROF_BAD_NAMESET                         (-1429577705L)
182#define PROF_NO_PROFILE                          (-1429577704L)
183#define PROF_MAGIC_FILE                          (-1429577703L)
184#define PROF_FAIL_OPEN                           (-1429577702L)
185#define PROF_EXISTS                              (-1429577701L)
186#define PROF_BAD_BOOLEAN                         (-1429577700L)
187#define PROF_BAD_INTEGER                         (-1429577699L)
188#define PROF_MAGIC_FILE_DATA                     (-1429577698L)
189#define ERROR_TABLE_BASE_prof (-1429577728L)
190
191extern const struct error_table et_prof_error_table;
192
193#if !defined(_WIN32)
194/* for compatibility with older versions... */
195extern void initialize_prof_error_table (void) /*@modifies internalState@*/;
196#else
197#define initialize_prof_error_table()
198#endif
199
200#if !defined(_WIN32)
201#define init_prof_err_tbl initialize_prof_error_table
202#define prof_err_base ERROR_TABLE_BASE_prof
203#endif
204
205#endif /* __KERBEROSPROFILE__ */
206