ad_access.h revision a8356a0c98ee44e7256bb1c7767159c70e1fc218
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher/*
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher SSSD
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher Authors:
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher Stephen Gallagher <sgallagh@redhat.com>
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher Copyright (C) 2012 Red Hat
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher This program is free software; you can redistribute it and/or modify
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher it under the terms of the GNU General Public License as published by
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher the Free Software Foundation; either version 3 of the License, or
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher (at your option) any later version.
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher This program is distributed in the hope that it will be useful,
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher but WITHOUT ANY WARRANTY; without even the implied warranty of
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher GNU General Public License for more details.
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher You should have received a copy of the GNU General Public License
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher along with this program. If not, see <http://www.gnu.org/licenses/>.
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher*/
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher#ifndef AD_ACCESS_H_
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher#define AD_ACCESS_H_
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagherstruct ad_access_ctx {
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher struct dp_option *ad_options;
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher struct sdap_access_ctx *sdap_access_ctx;
72ae534f5aef6d2e5d3f2f51299aede5abf9687eJakub Hrozek struct ad_id_ctx *ad_id_ctx;
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley /* supported GPO access control modes */
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley enum gpo_access_control_mode {
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley GPO_ACCESS_CONTROL_DISABLED,
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley GPO_ACCESS_CONTROL_PERMISSIVE,
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley GPO_ACCESS_CONTROL_ENFORCING
60cab26b12df9a2153823972cde0c38ca86e01b9Yassir Elley } gpo_access_control_mode;
ff4b603cc14ea6ea15caaf89a03e927920124af4Yassir Elley int gpo_cache_timeout;
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley /* supported GPO map options */
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley enum gpo_map_type {
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_INTERACTIVE = 0,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_REMOTE_INTERACTIVE,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_NETWORK,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_BATCH,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_SERVICE,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_PERMIT,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_DENY,
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley GPO_MAP_NUM_OPTS
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley } gpo_map_type;
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley hash_table_t *gpo_map_options_table;
a8356a0c98ee44e7256bb1c7767159c70e1fc218Yassir Elley enum gpo_map_type gpo_default_right;
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher};
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallaghervoid
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagherad_access_handler(struct be_req *breq);
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher
a4cce2c98eedecb5d3b47da62104634cae268434Stephen Gallagher#endif /* AD_ACCESS_H_ */