diff options
Diffstat (limited to 'ident/identity.h')
-rw-r--r-- | ident/identity.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/ident/identity.h b/ident/identity.h new file mode 100644 index 0000000..0ee129d --- /dev/null +++ b/ident/identity.h | |||
@@ -0,0 +1,39 @@ | |||
1 | /* This file is part of GNU Pies. | ||
2 | Copyright (C) 2015 Sergey Poznyakoff | ||
3 | |||
4 | GNU Pies is free software; you can redistribute it and/or modify | ||
5 | it under the terms of the GNU General Public License as published by | ||
6 | the Free Software Foundation; either version 3, or (at your option) | ||
7 | any later version. | ||
8 | |||
9 | GNU Pies is distributed in the hope that it will be useful, | ||
10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | GNU General Public License for more details. | ||
13 | |||
14 | You should have received a copy of the GNU General Public License | ||
15 | along with GNU Pies. If not, see <http://www.gnu.org/licenses/>. */ | ||
16 | |||
17 | typedef struct pies_identity *pies_identity_t; | ||
18 | typedef struct pies_identity_provider *pies_identity_provider_t; | ||
19 | typedef struct pies_identity_mechanism *pies_identity_mechanism_t; | ||
20 | |||
21 | pies_identity_t pies_identity_create (char const *user); | ||
22 | void pies_identity_destroy (pies_identity_t id); | ||
23 | |||
24 | int pies_authenticate (pies_identity_provider_t pr, pies_identity_t id, | ||
25 | char const *passwd); | ||
26 | int pies_identity_is_user (pies_identity_t id, char * const * users); | ||
27 | int pies_identity_is_group_member (pies_identity_t id, char * const * groups); | ||
28 | |||
29 | char const *pies_identity_provider_name (pies_identity_provider_t p); | ||
30 | |||
31 | int pies_identity_mechanism_register (pies_identity_mechanism_t mech); | ||
32 | void pies_config_identity_mechanisms_help (void); | ||
33 | int pies_config_provider (struct grecs_node *node); | ||
34 | |||
35 | extern struct pies_identity_mechanism system_identity_mechanism; | ||
36 | #ifdef WITH_PAM | ||
37 | extern struct pies_identity_mechanism pam_identity_mechanism; | ||
38 | #endif | ||
39 | extern struct grecs_list *identity_provider_list; | ||