ipa_common.c revision e0d861963e10c5aba79ad87f8c48b0ce1bec06ca
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco IPA Provider Common Functions
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco Simo Sorce <ssorce@redhat.com>
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco Copyright (C) 2009 Red Hat
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco This program is free software; you can redistribute it and/or modify
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco it under the terms of the GNU General Public License as published by
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco the Free Software Foundation; either version 3 of the License, or
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco (at your option) any later version.
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco This program is distributed in the hope that it will be useful,
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco but WITHOUT ANY WARRANTY; without even the implied warranty of
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco GNU General Public License for more details.
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco You should have received a copy of the GNU General Public License
eb32a77fdb57f20c042b7b79b28a4fb4060cb949Lubos Kosco along with this program. If not, see <http://www.gnu.org/licenses/>.
if (!domain) {
goto done;
if (!server) {
goto done;
goto done;
if (!realm) {
if (!realm) {
goto done;
realm);
goto done;
done:
return ret;
const char *class_name;
char *unparsed_base;
switch (class) {
case IPA_HBAC_SEARCH_BASE:
case IPA_HOST_SEARCH_BASE:
case IPA_SELINUX_SEARCH_BASE:
case IPA_RANGES_SEARCH_BASE:
const char *conf_path,
char *basedn;
char *realm;
char *value;
int ret;
if (!tmpctx) {
return ENOMEM;
goto done;
goto done;
&basedn);
goto done;
if (!value) {
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
if (!value) {
goto done;
value);
goto done;
if (!value) {
goto done;
value);
goto done;
goto done;
if (!value) {
goto done;
goto done;
if (!value) {
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
done:
return ret;
const char *conf_path,
char *value;
int ret;
goto done;
goto done;
goto done;
if (!value) {
goto done;
goto done;
goto done;
done:
return ret;
char *address;
const char *safe_address;
char *new_uri;
const char *srv_name;
int ret;
if (!service) {
if (!srvaddr) {
if (!new_uri) {
address);
const char *servers,
bool primary)
char *ipa_domain;
int ret = 0;
if (!tmp_ctx) {
return ENOMEM;
goto done;
for (i = 0; list[i]; i++) {
if (!primary) {
list[i]));
if (ret) {
goto done;
goto done;
goto done;
done:
return ret;
const char *primary_servers,
const char *backup_servers,
char *realm;
int ret;
if (!tmp_ctx) {
return ENOMEM;
if (!service) {
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
if (!realm) {
goto done;
goto done;
if (!primary_servers) {
goto done;
if (backup_servers) {
goto done;
goto done;
done:
return ret;
const char *conf_path,
char *basedn;
char *autofs_base;
if (!tmp_ctx) {
return ENOMEM;
&basedn);
goto done;
basedn);
if (!autofs_base) {
goto done;
goto done;
goto done;
goto done;
goto done;
done:
return ret;