590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek/*
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek Authors:
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek Jakub Hrozek <jhrozek@redhat.com>
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek Pavel Březina <pbrezina@redhat.com>
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek Copyright (C) 2014 Red Hat
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek This program is free software; you can redistribute it and/or modify
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek it under the terms of the GNU General Public License as published by
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek the Free Software Foundation; either version 3 of the License, or
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek (at your option) any later version.
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek This program is distributed in the hope that it will be useful,
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek but WITHOUT ANY WARRANTY; without even the implied warranty of
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek GNU General Public License for more details.
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek You should have received a copy of the GNU General Public License
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek along with this program. If not, see <http://www.gnu.org/licenses/>.
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek*/
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek#ifndef IFP_DOMAINS_H_
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek#define IFP_DOMAINS_H_
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
7f0b01bf0a8f5c5b3ef145e81511b6db2cb4f98fPavel Březina#include "responder/ifp/ifp_iface.h"
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek#include "responder/ifp/ifp_private.h"
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek/* org.freedesktop.sssd.infopipe */
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozekint ifp_list_domains(struct sbus_request *dbus_req,
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek void *data);
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozekint ifp_find_domain_by_name(struct sbus_request *dbus_req,
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek void *data,
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek const char *arg_name);
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina/* org.freedesktop.sssd.infopipe.Domains */
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_name(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_provider(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_primary_servers(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char ***_out,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina int *_out_len);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_backup_servers(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char ***_out,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina int *_out_len);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_min_id(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina uint32_t *_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_max_id(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina uint32_t *_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_realm(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_forest(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_login_format(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_fqdn_format(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_enumerable(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina bool *_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_use_fqdn(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina bool *_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_subdomain(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina bool *_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březinavoid ifp_dom_get_parent_domain(struct sbus_request *dbus_req,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina void *data,
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina const char **_out);
d387c4608dbd3ca056e18e85313ef51aac146fd2Pavel Březina
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březinaint ifp_domains_domain_is_online(struct sbus_request *sbus_req,
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březina void *data);
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březina
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březinaint ifp_domains_domain_list_services(struct sbus_request *sbus_req,
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březina void *data);
9e9ad4cb181c6c0ec70caacfb31319753f889e98Pavel Březina
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březinaint ifp_domains_domain_active_server(struct sbus_request *sbus_req,
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina void *data,
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina const char *service);
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březinaint ifp_domains_domain_list_servers(struct sbus_request *sbus_req,
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina void *data,
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina const char *service);
bd4c2ed5aec7f57ea04500f0e43f151eedfdde45Pavel Březina
c6cf752337f5977ce3753b7113dc1a2342c86319Pavel Březinaint ifp_domains_domain_refresh_access_rules(struct sbus_request *sbus_req,
c6cf752337f5977ce3753b7113dc1a2342c86319Pavel Březina void *data);
c6cf752337f5977ce3753b7113dc1a2342c86319Pavel Březina
590582be38cdbfde387fcc57df92903d48c5a083Jakub Hrozek#endif /* IFP_DOMAINS_H_ */