|
1 /* |
|
2 * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. |
|
3 */ |
|
4 |
|
5 /* |
|
6 * Solaris Kerberos |
|
7 * This is a private header file, therefore the interfaces that this file |
|
8 * declares are subject to change without prior notice. |
|
9 */ |
|
10 |
|
11 #ifndef _PROF_SOLARIS_H |
|
12 #define _PROF_SOLARIS_H |
|
13 |
|
14 #include <profile.h> |
|
15 #include <sys/types.h> |
|
16 |
|
17 #define K5_PROFILE_VAL_SUCCESS 0 |
|
18 #define K5_PROFILE_VAL_DEF_REALM_CASE 1 |
|
19 #define K5_PROFILE_VAL_REALM_CASE 2 |
|
20 #define K5_PROFILE_VAL_NO_DEF_IN_REALM 3 |
|
21 #define K5_PROFILE_VAL_NO_DEF_REALM 4 |
|
22 #define K5_PROFILE_VAL_NULL_REALM 5 |
|
23 #define K5_PROFILE_VAL_NO_DOM_REALM_MAP 6 |
|
24 #define K5_PROFILE_VAL_KDC_NO_REALM 7 |
|
25 #define K5_PROFILE_VAL_ADMIN_NO_REALM 8 |
|
26 #define K5_PROFILE_VAL_DOM_REALM_CASE 9 |
|
27 #define K5_PROFILE_VAL_NO_REALM 10 |
|
28 |
|
29 typedef struct _profile_options { |
|
30 char *name; |
|
31 int *value; |
|
32 int found; |
|
33 } profile_options_boolean; |
|
34 |
|
35 typedef struct _profile_times { |
|
36 char *name; |
|
37 char **value; |
|
38 int found; |
|
39 } profile_option_strings; |
|
40 |
|
41 errcode_t |
|
42 profile_get_options_boolean(profile_t, char **, profile_options_boolean *); |
|
43 |
|
44 errcode_t |
|
45 profile_get_options_string(profile_t, char **, profile_option_strings *); |
|
46 |
|
47 long k5_profile_init(char *filename, profile_t *profile); |
|
48 long k5_profile_release(profile_t profile); |
|
49 void k5_profile_abandon(profile_t profile); |
|
50 long k5_profile_add_domain_mapping(profile_t profile, char *domain, |
|
51 char *realm); |
|
52 long k5_profile_remove_domain_mapping(profile_t profile, char *realm); |
|
53 long k5_profile_get_realm_entry(profile_t profile, char *realm, char *name, |
|
54 char ***ret_value); |
|
55 long k5_profile_add_realm_entry(profile_t profile, char *realm, char *name, |
|
56 char **values); |
|
57 long k5_profile_get_libdefaults_entry(profile_t profile, char *name, |
|
58 char **ret_value); |
|
59 long k5_profile_add_libdefaults_entry(profile_t profile, char *name, |
|
60 char *value); |
|
61 long k5_profile_get_default_realm(profile_t profile, char **realm); |
|
62 long k5_profile_get_realms(profile_t profile, char ***realms); |
|
63 long k5_profile_add_realm(profile_t profile, char *realm, char *master, |
|
64 char **kdcs, boolean_t set_change, boolean_t default_realm); |
|
65 long k5_profile_remove_xrealm_mapping(profile_t profile, char *realm); |
|
66 long k5_profile_remove_realm(profile_t profile, char *realm); |
|
67 long k5_profile_add_xrealm_mapping(profile_t profile, char *source, |
|
68 char *target, char *inter); |
|
69 long k5_profile_validate(profile_t profile, char *realm, int *val_err, |
|
70 char **val, boolean_t master_required, boolean_t kdc_required); |
|
71 long k5_profile_validate_get_error_msg(profile_t profile, int err, char *val, |
|
72 char **err_msg); |
|
73 long k5_profile_set_libdefaults(profile_t profile, char *realm); |
|
74 |
|
75 #endif /* _PROF_SOLARIS_H */ |