responder_common.c revision 4b9ee02b1f5252b2a116adf0c0c6c7a4722bb2cf
2310N/A along with this program. If not, see <http://www.gnu.org/licenses/>.
2310N/A#include "util/strtonum.h"
2310N/A#include "sbus/sssd_dbus.h"
2310N/A#include "responder/common/responder.h"
2310N/A#include "responder/common/responder_packet.h"
2310N/A#include "providers/data_provider.h"
2310N/A#include "monitor/monitor_interfaces.h"
2310N/A#include "sbus/sbus_client.h"
2310N/A#include "util/util_creds.h"
2310N/A#ifdef HAVE_SYSTEMD
2310N/A#ifdef HAVE_UCRED
2310N/A for (c = 0; c < allowed_uids_count; c++) {
2310N/A bool allow_sss_loop,
2310N/A if (allow_sss_loop) {
2310N/Astruct accept_fd_ctx {
3237N/A bool is_private;
if (!cctx) {
cctx);
return EOK;
void *data)
const char *cli_name,
int ret;
return ret;
return ret;
return ret;
return ret;
return EOK;
int fd;
return EIO;
goto done;
goto done;
goto done;
goto done;
done:
return ret;
char *default_pipe;
int ret;
if (!default_pipe) {
return ENOMEM;
return ret;
if (!default_pipe) {
return ENOMEM;
return ret;
return ret;
goto failed;
goto failed;
goto failed;
return EOK;
return EIO;
int ret;
#ifdef HAVE_SYSTEMD
if (ret < 0) {
goto done;
if (ret < 0) {
goto done;
if (ret < 0) {
goto done;
goto done;
done:
return ret;
return ENOMEM;
return EOK;
int tmp_value;
int ret;
goto done;
if (tmp_value < 0) {
goto done;
0, &tmp_value);
goto done;
if (tmp_value < 0) {
goto done;
goto done;
done:
return ret;
const char *sss_pipe_name,
int pipe_fd,
const char *sss_priv_pipe_name,
int priv_pipe_fd,
const char *confdb_service_path,
const char *svc_name,
const char *cli_name,
int ret;
if (!rctx) {
return ENOMEM;
goto fail;
goto fail;
goto fail;
goto fail;
&tmp);
goto fail;
goto fail;
goto fail;
goto fail;
goto fail;
goto fail;
goto fail;
goto fail;
return EOK;
fail:
return ret;
return EOK;
struct sss_domain_info *
if (!ret_dom) {
return ret_dom;
int ret;
return EINVAL;
goto done;
done:
return ret;
int limret;
if (limret == 0) {
if (limret == 0) {
if (limret == 0) {