|
|
b2d430 |
From c2fe5c54faa92c670161d65fe5a1ff62acd4ac91 Mon Sep 17 00:00:00 2001
|
|
|
b2d430 |
From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <pbrezina@redhat.com>
|
|
|
b2d430 |
Date: Tue, 19 Jul 2016 14:24:16 +0200
|
|
|
b2d430 |
Subject: [PATCH 100/102] DP: Remove old data provider interface
|
|
|
b2d430 |
MIME-Version: 1.0
|
|
|
b2d430 |
Content-Type: text/plain; charset=UTF-8
|
|
|
b2d430 |
Content-Transfer-Encoding: 8bit
|
|
|
b2d430 |
|
|
|
b2d430 |
Reverse data provider interface is moved to a better location in
|
|
|
b2d430 |
NSS responder. All responders now can have an sbus interface
|
|
|
b2d430 |
defined per data provider connection. The unused old data provider
|
|
|
b2d430 |
interface is removed.
|
|
|
b2d430 |
|
|
|
b2d430 |
Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
|
|
|
b2d430 |
(cherry picked from commit 04e870d99e72aa3160bdb6ab05d986fb4005c3ed)
|
|
|
b2d430 |
---
|
|
|
b2d430 |
Makefile.am | 11 +--
|
|
|
b2d430 |
src/providers/data_provider.h | 1 -
|
|
|
b2d430 |
src/providers/data_provider/dp_target_id.c | 7 +-
|
|
|
b2d430 |
src/providers/data_provider_iface.xml | 53 ---------------
|
|
|
b2d430 |
src/providers/data_provider_iface_generated.c | 98 ---------------------------
|
|
|
b2d430 |
src/providers/data_provider_iface_generated.h | 82 ----------------------
|
|
|
b2d430 |
src/responder/autofs/autofssrv.c | 13 +---
|
|
|
b2d430 |
src/responder/common/responder.h | 8 +--
|
|
|
b2d430 |
src/responder/common/responder_common.c | 16 +++--
|
|
|
b2d430 |
src/responder/common/responder_get_domains.c | 4 +-
|
|
|
b2d430 |
src/responder/ifp/ifpsrv.c | 13 +---
|
|
|
b2d430 |
src/responder/nss/nss_iface.c | 38 +++++++++++
|
|
|
b2d430 |
src/responder/nss/nss_iface.h | 30 ++++++++
|
|
|
b2d430 |
src/responder/nss/nss_iface.xml | 12 ++++
|
|
|
b2d430 |
src/responder/nss/nss_iface_generated.c | 69 +++++++++++++++++++
|
|
|
b2d430 |
src/responder/nss/nss_iface_generated.h | 58 ++++++++++++++++
|
|
|
b2d430 |
src/responder/nss/nsssrv.c | 39 ++++-------
|
|
|
b2d430 |
src/responder/nss/nsssrv.h | 7 ++
|
|
|
b2d430 |
src/responder/pac/pacsrv.c | 13 +---
|
|
|
b2d430 |
src/responder/pam/pamsrv.c | 13 +---
|
|
|
b2d430 |
src/responder/pam/pamsrv_dp.c | 4 +-
|
|
|
b2d430 |
src/responder/ssh/sshsrv.c | 13 +---
|
|
|
b2d430 |
src/responder/sudo/sudosrv.c | 13 +---
|
|
|
b2d430 |
src/tests/cwrap/Makefile.am | 1 -
|
|
|
b2d430 |
24 files changed, 259 insertions(+), 357 deletions(-)
|
|
|
b2d430 |
delete mode 100644 src/providers/data_provider_iface.xml
|
|
|
b2d430 |
delete mode 100644 src/providers/data_provider_iface_generated.c
|
|
|
b2d430 |
delete mode 100644 src/providers/data_provider_iface_generated.h
|
|
|
b2d430 |
create mode 100644 src/responder/nss/nss_iface.c
|
|
|
b2d430 |
create mode 100644 src/responder/nss/nss_iface.h
|
|
|
b2d430 |
create mode 100644 src/responder/nss/nss_iface.xml
|
|
|
b2d430 |
create mode 100644 src/responder/nss/nss_iface_generated.c
|
|
|
b2d430 |
create mode 100644 src/responder/nss/nss_iface_generated.h
|
|
|
b2d430 |
|
|
|
b2d430 |
diff --git a/Makefile.am b/Makefile.am
|
|
|
b2d430 |
index 5d54838659e44fa446fc921d014e48ac91469b25..e2e4c4c08f66ef15684e1b3b1fe17bfae4e4131b 100644
|
|
|
b2d430 |
--- a/Makefile.am
|
|
|
b2d430 |
+++ b/Makefile.am
|
|
|
b2d430 |
@@ -492,7 +492,6 @@ SSSD_RESPONDER_OBJ = \
|
|
|
b2d430 |
src/responder/common/data_provider/rdp_message.c \
|
|
|
b2d430 |
src/responder/common/data_provider/rdp_client.c \
|
|
|
b2d430 |
src/monitor/monitor_iface_generated.c \
|
|
|
b2d430 |
- src/providers/data_provider_iface_generated.c \
|
|
|
b2d430 |
src/providers/data_provider_req.c
|
|
|
b2d430 |
|
|
|
b2d430 |
SSSD_TOOLS_OBJ = \
|
|
|
b2d430 |
@@ -610,6 +609,8 @@ dist_noinst_HEADERS = \
|
|
|
b2d430 |
src/responder/nss/nsssrv_netgroup.h \
|
|
|
b2d430 |
src/responder/nss/nsssrv_services.h \
|
|
|
b2d430 |
src/responder/nss/nsssrv_mmap_cache.h \
|
|
|
b2d430 |
+ src/responder/nss/nss_iface_generated.h \
|
|
|
b2d430 |
+ src/responder/nss/nss_iface.h \
|
|
|
b2d430 |
src/responder/pac/pacsrv.h \
|
|
|
b2d430 |
src/responder/common/negcache_files.h \
|
|
|
b2d430 |
src/responder/common/negcache.h \
|
|
|
b2d430 |
@@ -647,7 +648,6 @@ dist_noinst_HEADERS = \
|
|
|
b2d430 |
src/confdb/confdb_setup.h \
|
|
|
b2d430 |
src/providers/data_provider.h \
|
|
|
b2d430 |
src/providers/data_provider_req.h \
|
|
|
b2d430 |
- src/providers/data_provider_iface_generated.h \
|
|
|
b2d430 |
src/providers/data_provider/dp.h \
|
|
|
b2d430 |
src/providers/data_provider/dp_flags.h \
|
|
|
b2d430 |
src/providers/data_provider/dp_responder_iface.h \
|
|
|
b2d430 |
@@ -1196,10 +1196,10 @@ endif
|
|
|
b2d430 |
CODEGEN_XML = \
|
|
|
b2d430 |
$(srcdir)/src/tests/sbus_codegen_tests.xml \
|
|
|
b2d430 |
$(srcdir)/src/monitor/monitor_iface.xml \
|
|
|
b2d430 |
- $(srcdir)/src/providers/data_provider_iface.xml \
|
|
|
b2d430 |
$(srcdir)/src/providers/data_provider/dp_iface.xml \
|
|
|
b2d430 |
$(srcdir)/src/providers/proxy/proxy_iface.xml \
|
|
|
b2d430 |
- $(srcdir)/src/responder/ifp/ifp_iface.xml
|
|
|
b2d430 |
+ $(srcdir)/src/responder/ifp/ifp_iface.xml \
|
|
|
b2d430 |
+ $(srcdir)/src/responder/nss/nss_iface.xml
|
|
|
b2d430 |
|
|
|
b2d430 |
SBUS_CODEGEN = src/sbus/sbus_codegen
|
|
|
b2d430 |
|
|
|
b2d430 |
@@ -1248,6 +1248,8 @@ sssd_nss_SOURCES = \
|
|
|
b2d430 |
src/responder/nss/nsssrv_netgroup.c \
|
|
|
b2d430 |
src/responder/nss/nsssrv_services.c \
|
|
|
b2d430 |
src/responder/nss/nsssrv_mmap_cache.c \
|
|
|
b2d430 |
+ src/responder/nss/nss_iface_generated.c \
|
|
|
b2d430 |
+ src/responder/nss/nss_iface.c \
|
|
|
b2d430 |
$(SSSD_RESPONDER_OBJ)
|
|
|
b2d430 |
sssd_nss_LDADD = \
|
|
|
b2d430 |
$(TDB_LIBS) \
|
|
|
b2d430 |
@@ -1411,7 +1413,6 @@ sssd_be_SOURCES = \
|
|
|
b2d430 |
src/providers/be_ptask.c \
|
|
|
b2d430 |
src/providers/be_refresh.c \
|
|
|
b2d430 |
src/monitor/monitor_iface_generated.c \
|
|
|
b2d430 |
- src/providers/data_provider_iface_generated.c \
|
|
|
b2d430 |
src/providers/data_provider/dp.c \
|
|
|
b2d430 |
src/providers/data_provider/dp_modules.c \
|
|
|
b2d430 |
src/providers/data_provider/dp_targets.c \
|
|
|
b2d430 |
diff --git a/src/providers/data_provider.h b/src/providers/data_provider.h
|
|
|
b2d430 |
index b0b6876d984d7c6574baaa8d130e374ba2e6f0c4..14a0902c265850d91fa7d29cc2708e70b060ec18 100644
|
|
|
b2d430 |
--- a/src/providers/data_provider.h
|
|
|
b2d430 |
+++ b/src/providers/data_provider.h
|
|
|
b2d430 |
@@ -44,7 +44,6 @@
|
|
|
b2d430 |
#include "sss_client/sss_cli.h"
|
|
|
b2d430 |
#include "util/authtok.h"
|
|
|
b2d430 |
#include "providers/data_provider_req.h"
|
|
|
b2d430 |
-#include "providers/data_provider_iface_generated.h"
|
|
|
b2d430 |
|
|
|
b2d430 |
#define DATA_PROVIDER_VERSION 0x0001
|
|
|
b2d430 |
#define DATA_PROVIDER_PIPE "private/sbus-dp"
|
|
|
b2d430 |
diff --git a/src/providers/data_provider/dp_target_id.c b/src/providers/data_provider/dp_target_id.c
|
|
|
b2d430 |
index 1b06cbe5b96f56c33dd048cf6211b7c97819db8c..938651545ea995091d0aaf29da12bbb8110c9add 100644
|
|
|
b2d430 |
--- a/src/providers/data_provider/dp_target_id.c
|
|
|
b2d430 |
+++ b/src/providers/data_provider/dp_target_id.c
|
|
|
b2d430 |
@@ -25,6 +25,7 @@
|
|
|
b2d430 |
#include "providers/data_provider/dp_private.h"
|
|
|
b2d430 |
#include "providers/data_provider/dp_iface.h"
|
|
|
b2d430 |
#include "providers/backend.h"
|
|
|
b2d430 |
+#include "responder/nss/nss_iface.h"
|
|
|
b2d430 |
#include "util/util.h"
|
|
|
b2d430 |
|
|
|
b2d430 |
#define FILTER_TYPE(str, type) {str "=", sizeof(str "=") - 1, type}
|
|
|
b2d430 |
@@ -168,9 +169,9 @@ static void dp_req_initgr_pp(const char *req_name,
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
msg = dbus_message_new_method_call(NULL,
|
|
|
b2d430 |
- DP_PATH,
|
|
|
b2d430 |
- DATA_PROVIDER_REV_IFACE,
|
|
|
b2d430 |
- DATA_PROVIDER_REV_IFACE_INITGRCHECK);
|
|
|
b2d430 |
+ NSS_MEMORYCACHE_PATH,
|
|
|
b2d430 |
+ IFACE_NSS_MEMORYCACHE,
|
|
|
b2d430 |
+ IFACE_NSS_MEMORYCACHE_UPDATEINITGROUPS);
|
|
|
b2d430 |
if (msg == NULL) {
|
|
|
b2d430 |
DEBUG(SSSDBG_CRIT_FAILURE, "Out of memory?!\n");
|
|
|
b2d430 |
return;
|
|
|
b2d430 |
diff --git a/src/providers/data_provider_iface.xml b/src/providers/data_provider_iface.xml
|
|
|
b2d430 |
deleted file mode 100644
|
|
|
b2d430 |
index 143975633081ce2ae5690c4036e7169e41d776fc..0000000000000000000000000000000000000000
|
|
|
b2d430 |
--- a/src/providers/data_provider_iface.xml
|
|
|
b2d430 |
+++ /dev/null
|
|
|
b2d430 |
@@ -1,53 +0,0 @@
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
|
b2d430 |
-<node>
|
|
|
b2d430 |
- <interface name="org.freedesktop.sssd.dataprovider">
|
|
|
b2d430 |
- <annotation value="data_provider_iface" name="org.freedesktop.DBus.GLib.CSymbol"/>
|
|
|
b2d430 |
- <method name="RegisterService">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="pamHandler">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="sudoHandler">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="autofsHandler">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="hostHandler">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="getDomains">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="getAccountInfo">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- </interface>
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- this is a reverse method sent from providers to
|
|
|
b2d430 |
- the nss responder to tell it to update the mmap
|
|
|
b2d430 |
- cache
|
|
|
b2d430 |
- -->
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <interface name="org.freedesktop.sssd.dataprovider_rev">
|
|
|
b2d430 |
- <annotation value="data_provider_rev_iface" name="org.freedesktop.DBus.GLib.CSymbol"/>
|
|
|
b2d430 |
- <method name="updateCache">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- <method name="initgrCheck">
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
|
|
|
b2d430 |
- </method>
|
|
|
b2d430 |
- </interface>
|
|
|
b2d430 |
-</node>
|
|
|
b2d430 |
diff --git a/src/providers/data_provider_iface_generated.c b/src/providers/data_provider_iface_generated.c
|
|
|
b2d430 |
deleted file mode 100644
|
|
|
b2d430 |
index bdd6a4d76d18bbb44530d816fce14009736b6f6d..0000000000000000000000000000000000000000
|
|
|
b2d430 |
--- a/src/providers/data_provider_iface_generated.c
|
|
|
b2d430 |
+++ /dev/null
|
|
|
b2d430 |
@@ -1,98 +0,0 @@
|
|
|
b2d430 |
-/* The following definitions are auto-generated from data_provider_iface.xml */
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-#include "util/util.h"
|
|
|
b2d430 |
-#include "sbus/sssd_dbus.h"
|
|
|
b2d430 |
-#include "sbus/sssd_dbus_meta.h"
|
|
|
b2d430 |
-#include "sbus/sssd_dbus_invokers.h"
|
|
|
b2d430 |
-#include "data_provider_iface_generated.h"
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* methods for org.freedesktop.sssd.dataprovider */
|
|
|
b2d430 |
-const struct sbus_method_meta data_provider_iface__methods[] = {
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "RegisterService", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, RegisterService),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "pamHandler", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, pamHandler),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "sudoHandler", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, sudoHandler),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "autofsHandler", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, autofsHandler),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "hostHandler", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, hostHandler),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "getDomains", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, getDomains),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "getAccountInfo", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_iface, getAccountInfo),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- { NULL, }
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* interface info for org.freedesktop.sssd.dataprovider */
|
|
|
b2d430 |
-const struct sbus_interface_meta data_provider_iface_meta = {
|
|
|
b2d430 |
- "org.freedesktop.sssd.dataprovider", /* name */
|
|
|
b2d430 |
- data_provider_iface__methods,
|
|
|
b2d430 |
- NULL, /* no signals */
|
|
|
b2d430 |
- NULL, /* no properties */
|
|
|
b2d430 |
- sbus_invoke_get_all, /* GetAll invoker */
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* methods for org.freedesktop.sssd.dataprovider_rev */
|
|
|
b2d430 |
-const struct sbus_method_meta data_provider_rev_iface__methods[] = {
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "updateCache", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_rev_iface, updateCache),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- {
|
|
|
b2d430 |
- "initgrCheck", /* name */
|
|
|
b2d430 |
- NULL, /* no in_args */
|
|
|
b2d430 |
- NULL, /* no out_args */
|
|
|
b2d430 |
- offsetof(struct data_provider_rev_iface, initgrCheck),
|
|
|
b2d430 |
- NULL, /* no invoker */
|
|
|
b2d430 |
- },
|
|
|
b2d430 |
- { NULL, }
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* interface info for org.freedesktop.sssd.dataprovider_rev */
|
|
|
b2d430 |
-const struct sbus_interface_meta data_provider_rev_iface_meta = {
|
|
|
b2d430 |
- "org.freedesktop.sssd.dataprovider_rev", /* name */
|
|
|
b2d430 |
- data_provider_rev_iface__methods,
|
|
|
b2d430 |
- NULL, /* no signals */
|
|
|
b2d430 |
- NULL, /* no properties */
|
|
|
b2d430 |
- sbus_invoke_get_all, /* GetAll invoker */
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
diff --git a/src/providers/data_provider_iface_generated.h b/src/providers/data_provider_iface_generated.h
|
|
|
b2d430 |
deleted file mode 100644
|
|
|
b2d430 |
index 976e42b89c6aaf9523b16999b8f5103a1e6f8e66..0000000000000000000000000000000000000000
|
|
|
b2d430 |
--- a/src/providers/data_provider_iface_generated.h
|
|
|
b2d430 |
+++ /dev/null
|
|
|
b2d430 |
@@ -1,82 +0,0 @@
|
|
|
b2d430 |
-/* The following declarations are auto-generated from data_provider_iface.xml */
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-#ifndef __DATA_PROVIDER_IFACE_XML__
|
|
|
b2d430 |
-#define __DATA_PROVIDER_IFACE_XML__
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-#include "sbus/sssd_dbus.h"
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* ------------------------------------------------------------------------
|
|
|
b2d430 |
- * DBus Constants
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * Various constants of interface and method names mostly for use by clients
|
|
|
b2d430 |
- */
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* constants for org.freedesktop.sssd.dataprovider */
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE "org.freedesktop.sssd.dataprovider"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_REGISTERSERVICE "RegisterService"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_PAMHANDLER "pamHandler"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_SUDOHANDLER "sudoHandler"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_AUTOFSHANDLER "autofsHandler"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_HOSTHANDLER "hostHandler"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_GETDOMAINS "getDomains"
|
|
|
b2d430 |
-#define DATA_PROVIDER_IFACE_GETACCOUNTINFO "getAccountInfo"
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* constants for org.freedesktop.sssd.dataprovider_rev */
|
|
|
b2d430 |
-#define DATA_PROVIDER_REV_IFACE "org.freedesktop.sssd.dataprovider_rev"
|
|
|
b2d430 |
-#define DATA_PROVIDER_REV_IFACE_UPDATECACHE "updateCache"
|
|
|
b2d430 |
-#define DATA_PROVIDER_REV_IFACE_INITGRCHECK "initgrCheck"
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* ------------------------------------------------------------------------
|
|
|
b2d430 |
- * DBus handlers
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * These structures are filled in by implementors of the different
|
|
|
b2d430 |
- * dbus interfaces to handle method calls.
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * Handler functions of type sbus_msg_handler_fn accept raw messages,
|
|
|
b2d430 |
- * other handlers are typed appropriately. If a handler that is
|
|
|
b2d430 |
- * set to NULL is invoked it will result in a
|
|
|
b2d430 |
- * org.freedesktop.DBus.Error.NotSupported error for the caller.
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * Handlers have a matching xxx_finish() function (unless the method has
|
|
|
b2d430 |
- * accepts raw messages). These finish functions the
|
|
|
b2d430 |
- * sbus_request_return_and_finish() with the appropriate arguments to
|
|
|
b2d430 |
- * construct a valid reply. Once a finish function has been called, the
|
|
|
b2d430 |
- * @dbus_req it was called with is freed and no longer valid.
|
|
|
b2d430 |
- */
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* vtable for org.freedesktop.sssd.dataprovider */
|
|
|
b2d430 |
-struct data_provider_iface {
|
|
|
b2d430 |
- struct sbus_vtable vtable; /* derive from sbus_vtable */
|
|
|
b2d430 |
- sbus_msg_handler_fn RegisterService;
|
|
|
b2d430 |
- sbus_msg_handler_fn pamHandler;
|
|
|
b2d430 |
- sbus_msg_handler_fn sudoHandler;
|
|
|
b2d430 |
- sbus_msg_handler_fn autofsHandler;
|
|
|
b2d430 |
- sbus_msg_handler_fn hostHandler;
|
|
|
b2d430 |
- sbus_msg_handler_fn getDomains;
|
|
|
b2d430 |
- sbus_msg_handler_fn getAccountInfo;
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* vtable for org.freedesktop.sssd.dataprovider_rev */
|
|
|
b2d430 |
-struct data_provider_rev_iface {
|
|
|
b2d430 |
- struct sbus_vtable vtable; /* derive from sbus_vtable */
|
|
|
b2d430 |
- sbus_msg_handler_fn updateCache;
|
|
|
b2d430 |
- sbus_msg_handler_fn initgrCheck;
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* ------------------------------------------------------------------------
|
|
|
b2d430 |
- * DBus Interface Metadata
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * These structure definitions are filled in with the information about
|
|
|
b2d430 |
- * the interfaces, methods, properties and so on.
|
|
|
b2d430 |
- *
|
|
|
b2d430 |
- * The actual definitions are found in the accompanying C file next
|
|
|
b2d430 |
- * to this header.
|
|
|
b2d430 |
- */
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* interface info for org.freedesktop.sssd.dataprovider */
|
|
|
b2d430 |
-extern const struct sbus_interface_meta data_provider_iface_meta;
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-/* interface info for org.freedesktop.sssd.dataprovider_rev */
|
|
|
b2d430 |
-extern const struct sbus_interface_meta data_provider_rev_iface_meta;
|
|
|
b2d430 |
-
|
|
|
b2d430 |
-#endif /* __DATA_PROVIDER_IFACE_XML__ */
|
|
|
b2d430 |
diff --git a/src/responder/autofs/autofssrv.c b/src/responder/autofs/autofssrv.c
|
|
|
b2d430 |
index c72f3c1f7aee81a9986076975086cdd88e968edb..826a36e9bc0e2afedfda17104d15b86c5fc1b7e1 100644
|
|
|
b2d430 |
--- a/src/responder/autofs/autofssrv.c
|
|
|
b2d430 |
+++ b/src/responder/autofs/autofssrv.c
|
|
|
b2d430 |
@@ -44,17 +44,6 @@ struct mon_cli_iface monitor_autofs_methods = {
|
|
|
b2d430 |
.sysbusReconnect = NULL,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface autofs_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
static errno_t
|
|
|
b2d430 |
autofs_get_config(struct autofs_ctx *actx,
|
|
|
b2d430 |
struct confdb_ctx *cdb)
|
|
|
b2d430 |
@@ -130,7 +119,7 @@ autofs_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
SSS_AUTOFS_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_autofs_methods,
|
|
|
b2d430 |
"autofs",
|
|
|
b2d430 |
- &autofs_dp_methods.vtable,
|
|
|
b2d430 |
+ NULL,
|
|
|
b2d430 |
autofs_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/common/responder.h b/src/responder/common/responder.h
|
|
|
b2d430 |
index 335b313ce1a6bc7c0e0ba332786e2e9f39a04ff1..9e3b2fdbda4e30b859df597374fc7d490b1720e5 100644
|
|
|
b2d430 |
--- a/src/responder/common/responder.h
|
|
|
b2d430 |
+++ b/src/responder/common/responder.h
|
|
|
b2d430 |
@@ -163,11 +163,7 @@ struct mon_cli_iface;
|
|
|
b2d430 |
typedef int (*connection_setup_t)(struct cli_ctx *cctx);
|
|
|
b2d430 |
|
|
|
b2d430 |
int sss_connection_setup(struct cli_ctx *cctx);
|
|
|
b2d430 |
-/*
|
|
|
b2d430 |
- * NOTE: We would like to use more strong typing for the @dp_vtable argument
|
|
|
b2d430 |
- * but can't since it accepts either a struct data_provider_iface
|
|
|
b2d430 |
- * or struct data_provider_rev_iface. So pass the base struct: sbus_vtable
|
|
|
b2d430 |
- */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
int sss_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
struct tevent_context *ev,
|
|
|
b2d430 |
struct confdb_ctx *cdb,
|
|
|
b2d430 |
@@ -181,7 +177,7 @@ int sss_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
uint16_t svc_version,
|
|
|
b2d430 |
struct mon_cli_iface *monitor_intf,
|
|
|
b2d430 |
const char *cli_name,
|
|
|
b2d430 |
- struct sbus_vtable *dp_intf,
|
|
|
b2d430 |
+ struct sbus_iface_map *sbus_iface,
|
|
|
b2d430 |
connection_setup_t conn_setup,
|
|
|
b2d430 |
struct resp_ctx **responder_ctx);
|
|
|
b2d430 |
|
|
|
b2d430 |
diff --git a/src/responder/common/responder_common.c b/src/responder/common/responder_common.c
|
|
|
b2d430 |
index 7f6264ae70e5073063b5cfcd73098eefad2ce653..c604c64a652221521ec7114b8588186f087eb11a 100644
|
|
|
b2d430 |
--- a/src/responder/common/responder_common.c
|
|
|
b2d430 |
+++ b/src/responder/common/responder_common.c
|
|
|
b2d430 |
@@ -549,7 +549,7 @@ void idle_handler(struct tevent_context *ev,
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
static int sss_dp_init(struct resp_ctx *rctx,
|
|
|
b2d430 |
- struct sbus_vtable *dp_intf,
|
|
|
b2d430 |
+ struct sbus_iface_map *sbus_iface,
|
|
|
b2d430 |
const char *cli_name,
|
|
|
b2d430 |
struct sss_domain_info *domain)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
@@ -577,10 +577,12 @@ static int sss_dp_init(struct resp_ctx *rctx,
|
|
|
b2d430 |
return ret;
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
- ret = sbus_conn_register_iface(be_conn->conn, dp_intf, DP_PATH, rctx);
|
|
|
b2d430 |
- if (ret != EOK) {
|
|
|
b2d430 |
- DEBUG(SSSDBG_FATAL_FAILURE, "Failed to export data provider.\n");
|
|
|
b2d430 |
- return ret;
|
|
|
b2d430 |
+ if (sbus_iface != NULL) {
|
|
|
b2d430 |
+ ret = sbus_conn_register_iface_map(be_conn->conn, sbus_iface, rctx);
|
|
|
b2d430 |
+ if (ret != EOK) {
|
|
|
b2d430 |
+ DEBUG(SSSDBG_FATAL_FAILURE, "Failed to register D-Bus interface.\n");
|
|
|
b2d430 |
+ return ret;
|
|
|
b2d430 |
+ }
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
DLIST_ADD_END(rctx->be_conns, be_conn, struct be_conn *);
|
|
|
b2d430 |
@@ -925,7 +927,7 @@ int sss_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
uint16_t svc_version,
|
|
|
b2d430 |
struct mon_cli_iface *monitor_intf,
|
|
|
b2d430 |
const char *cli_name,
|
|
|
b2d430 |
- struct sbus_vtable *dp_intf,
|
|
|
b2d430 |
+ struct sbus_iface_map *sbus_iface,
|
|
|
b2d430 |
connection_setup_t conn_setup,
|
|
|
b2d430 |
struct resp_ctx **responder_ctx)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
@@ -1040,7 +1042,7 @@ int sss_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
continue;
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
- ret = sss_dp_init(rctx, dp_intf, cli_name, dom);
|
|
|
b2d430 |
+ ret = sss_dp_init(rctx, sbus_iface, cli_name, dom);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
DEBUG(SSSDBG_FATAL_FAILURE,
|
|
|
b2d430 |
"fatal error setting up backend connector\n");
|
|
|
b2d430 |
diff --git a/src/responder/common/responder_get_domains.c b/src/responder/common/responder_get_domains.c
|
|
|
b2d430 |
index 6b354d8b2251f3a5cf576a58ae191fd99f307dd7..cc7b99f30046569547a08f83e46cbbe9d6c19897 100644
|
|
|
b2d430 |
--- a/src/responder/common/responder_get_domains.c
|
|
|
b2d430 |
+++ b/src/responder/common/responder_get_domains.c
|
|
|
b2d430 |
@@ -88,8 +88,8 @@ sss_dp_get_domains_msg(void *pvt)
|
|
|
b2d430 |
|
|
|
b2d430 |
msg = dbus_message_new_method_call(NULL,
|
|
|
b2d430 |
DP_PATH,
|
|
|
b2d430 |
- DATA_PROVIDER_IFACE,
|
|
|
b2d430 |
- DATA_PROVIDER_IFACE_GETDOMAINS);
|
|
|
b2d430 |
+ IFACE_DP,
|
|
|
b2d430 |
+ IFACE_DP_GETDOMAINS);
|
|
|
b2d430 |
if (msg == NULL) {
|
|
|
b2d430 |
DEBUG(SSSDBG_CRIT_FAILURE, "Out of memory?!\n");
|
|
|
b2d430 |
return NULL;
|
|
|
b2d430 |
diff --git a/src/responder/ifp/ifpsrv.c b/src/responder/ifp/ifpsrv.c
|
|
|
b2d430 |
index a2137ecb218824909325df6c7052dbbbcb144679..0555c00167045707b7d455d28df368749b9b84f6 100644
|
|
|
b2d430 |
--- a/src/responder/ifp/ifpsrv.c
|
|
|
b2d430 |
+++ b/src/responder/ifp/ifpsrv.c
|
|
|
b2d430 |
@@ -58,17 +58,6 @@ struct mon_cli_iface monitor_ifp_methods = {
|
|
|
b2d430 |
.sysbusReconnect = ifp_sysbus_reconnect,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface ifp_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
struct sss_cmd_table *get_ifp_cmds(void)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
static struct sss_cmd_table ifp_cmds[] = {
|
|
|
b2d430 |
@@ -238,7 +227,7 @@ int ifp_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
SSS_IFP_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_ifp_methods,
|
|
|
b2d430 |
"InfoPipe",
|
|
|
b2d430 |
- &ifp_dp_methods.vtable,
|
|
|
b2d430 |
+ NULL,
|
|
|
b2d430 |
sss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/nss/nss_iface.c b/src/responder/nss/nss_iface.c
|
|
|
b2d430 |
new file mode 100644
|
|
|
b2d430 |
index 0000000000000000000000000000000000000000..b01732e086c5fc5c7018ec84c3438e19ed812fef
|
|
|
b2d430 |
--- /dev/null
|
|
|
b2d430 |
+++ b/src/responder/nss/nss_iface.c
|
|
|
b2d430 |
@@ -0,0 +1,38 @@
|
|
|
b2d430 |
+/*
|
|
|
b2d430 |
+ Authors:
|
|
|
b2d430 |
+ Pavel Březina <pbrezina@redhat.com>
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ Copyright (C) 2016 Red Hat
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ This program is free software; you can redistribute it and/or modify
|
|
|
b2d430 |
+ it under the terms of the GNU General Public License as published by
|
|
|
b2d430 |
+ the Free Software Foundation; either version 3 of the License, or
|
|
|
b2d430 |
+ (at your option) any later version.
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ This program is distributed in the hope that it will be useful,
|
|
|
b2d430 |
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
b2d430 |
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
b2d430 |
+ GNU General Public License for more details.
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ You should have received a copy of the GNU General Public License
|
|
|
b2d430 |
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
b2d430 |
+*/
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#include "sbus/sssd_dbus.h"
|
|
|
b2d430 |
+#include "responder/nss/nss_iface.h"
|
|
|
b2d430 |
+#include "responder/nss/nsssrv.h"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+struct iface_nss_memorycache iface_nss_memorycache = {
|
|
|
b2d430 |
+ { &iface_nss_memorycache_meta, 0 },
|
|
|
b2d430 |
+ .UpdateInitgroups = nss_memorycache_update_initgroups
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+static struct sbus_iface_map iface_map[] = {
|
|
|
b2d430 |
+ { NSS_MEMORYCACHE_PATH, &iface_nss_memorycache.vtable },
|
|
|
b2d430 |
+ { NULL, NULL }
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+struct sbus_iface_map *nss_get_sbus_interface()
|
|
|
b2d430 |
+{
|
|
|
b2d430 |
+ return iface_map;
|
|
|
b2d430 |
+}
|
|
|
b2d430 |
diff --git a/src/responder/nss/nss_iface.h b/src/responder/nss/nss_iface.h
|
|
|
b2d430 |
new file mode 100644
|
|
|
b2d430 |
index 0000000000000000000000000000000000000000..ab59928c3e2dac62cea6f793ff774d9e0f8da6db
|
|
|
b2d430 |
--- /dev/null
|
|
|
b2d430 |
+++ b/src/responder/nss/nss_iface.h
|
|
|
b2d430 |
@@ -0,0 +1,30 @@
|
|
|
b2d430 |
+/*
|
|
|
b2d430 |
+ Authors:
|
|
|
b2d430 |
+ Pavel Březina <pbrezina@redhat.com>
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ Copyright (C) 2016 Red Hat
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ This program is free software; you can redistribute it and/or modify
|
|
|
b2d430 |
+ it under the terms of the GNU General Public License as published by
|
|
|
b2d430 |
+ the Free Software Foundation; either version 3 of the License, or
|
|
|
b2d430 |
+ (at your option) any later version.
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ This program is distributed in the hope that it will be useful,
|
|
|
b2d430 |
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
b2d430 |
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
b2d430 |
+ GNU General Public License for more details.
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ You should have received a copy of the GNU General Public License
|
|
|
b2d430 |
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
b2d430 |
+*/
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#ifndef _NSS_IFACE_H_
|
|
|
b2d430 |
+#define _NSS_IFACE_H_
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#include "responder/nss/nss_iface_generated.h"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#define NSS_MEMORYCACHE_PATH "/org/freedesktop/sssd/nss/memcache"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+struct sbus_iface_map *nss_get_sbus_interface(void);
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#endif /* _NSS_IFACE_H_ */
|
|
|
b2d430 |
diff --git a/src/responder/nss/nss_iface.xml b/src/responder/nss/nss_iface.xml
|
|
|
b2d430 |
new file mode 100644
|
|
|
b2d430 |
index 0000000000000000000000000000000000000000..b7cc4deb77135a592bad2ca62570f206231129b7
|
|
|
b2d430 |
--- /dev/null
|
|
|
b2d430 |
+++ b/src/responder/nss/nss_iface.xml
|
|
|
b2d430 |
@@ -0,0 +1,12 @@
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
|
b2d430 |
+<node>
|
|
|
b2d430 |
+ <interface name="org.freedesktop.sssd.nss.MemoryCache">
|
|
|
b2d430 |
+ <annotation value="iface_nss_memorycache" name="org.freedesktop.DBus.GLib.CSymbol"/>
|
|
|
b2d430 |
+ <method name="UpdateInitgroups">
|
|
|
b2d430 |
+ <arg name="user" type="s" direction="in" />
|
|
|
b2d430 |
+ <arg name="domain" type="s" direction="in" />
|
|
|
b2d430 |
+ <arg name="groups" type="au" direction="in" />
|
|
|
b2d430 |
+ </method>
|
|
|
b2d430 |
+ </interface>
|
|
|
b2d430 |
+</node>
|
|
|
b2d430 |
diff --git a/src/responder/nss/nss_iface_generated.c b/src/responder/nss/nss_iface_generated.c
|
|
|
b2d430 |
new file mode 100644
|
|
|
b2d430 |
index 0000000000000000000000000000000000000000..2d0031090e33df9c9e9d9fbf1a18825026509803
|
|
|
b2d430 |
--- /dev/null
|
|
|
b2d430 |
+++ b/src/responder/nss/nss_iface_generated.c
|
|
|
b2d430 |
@@ -0,0 +1,69 @@
|
|
|
b2d430 |
+/* The following definitions are auto-generated from nss_iface.xml */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#include "util/util.h"
|
|
|
b2d430 |
+#include "sbus/sssd_dbus.h"
|
|
|
b2d430 |
+#include "sbus/sssd_dbus_meta.h"
|
|
|
b2d430 |
+#include "sbus/sssd_dbus_invokers.h"
|
|
|
b2d430 |
+#include "nss_iface_generated.h"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* invokes a handler with a 'ssau' DBus signature */
|
|
|
b2d430 |
+static int invoke_ssau_method(struct sbus_request *dbus_req, void *function_ptr);
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* arguments for org.freedesktop.sssd.nss.MemoryCache.UpdateInitgroups */
|
|
|
b2d430 |
+const struct sbus_arg_meta iface_nss_memorycache_UpdateInitgroups__in[] = {
|
|
|
b2d430 |
+ { "user", "s" },
|
|
|
b2d430 |
+ { "domain", "s" },
|
|
|
b2d430 |
+ { "groups", "au" },
|
|
|
b2d430 |
+ { NULL, }
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+int iface_nss_memorycache_UpdateInitgroups_finish(struct sbus_request *req)
|
|
|
b2d430 |
+{
|
|
|
b2d430 |
+ return sbus_request_return_and_finish(req,
|
|
|
b2d430 |
+ DBUS_TYPE_INVALID);
|
|
|
b2d430 |
+}
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* methods for org.freedesktop.sssd.nss.MemoryCache */
|
|
|
b2d430 |
+const struct sbus_method_meta iface_nss_memorycache__methods[] = {
|
|
|
b2d430 |
+ {
|
|
|
b2d430 |
+ "UpdateInitgroups", /* name */
|
|
|
b2d430 |
+ iface_nss_memorycache_UpdateInitgroups__in,
|
|
|
b2d430 |
+ NULL, /* no out_args */
|
|
|
b2d430 |
+ offsetof(struct iface_nss_memorycache, UpdateInitgroups),
|
|
|
b2d430 |
+ invoke_ssau_method,
|
|
|
b2d430 |
+ },
|
|
|
b2d430 |
+ { NULL, }
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* interface info for org.freedesktop.sssd.nss.MemoryCache */
|
|
|
b2d430 |
+const struct sbus_interface_meta iface_nss_memorycache_meta = {
|
|
|
b2d430 |
+ "org.freedesktop.sssd.nss.MemoryCache", /* name */
|
|
|
b2d430 |
+ iface_nss_memorycache__methods,
|
|
|
b2d430 |
+ NULL, /* no signals */
|
|
|
b2d430 |
+ NULL, /* no properties */
|
|
|
b2d430 |
+ sbus_invoke_get_all, /* GetAll invoker */
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* invokes a handler with a 'ssau' DBus signature */
|
|
|
b2d430 |
+static int invoke_ssau_method(struct sbus_request *dbus_req, void *function_ptr)
|
|
|
b2d430 |
+{
|
|
|
b2d430 |
+ const char * arg_0;
|
|
|
b2d430 |
+ const char * arg_1;
|
|
|
b2d430 |
+ uint32_t *arg_2;
|
|
|
b2d430 |
+ int len_2;
|
|
|
b2d430 |
+ int (*handler)(struct sbus_request *, void *, const char *, const char *, uint32_t[], int) = function_ptr;
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ if (!sbus_request_parse_or_finish(dbus_req,
|
|
|
b2d430 |
+ DBUS_TYPE_STRING, &arg_0,
|
|
|
b2d430 |
+ DBUS_TYPE_STRING, &arg_1,
|
|
|
b2d430 |
+ DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, &arg_2, &len_2,
|
|
|
b2d430 |
+ DBUS_TYPE_INVALID)) {
|
|
|
b2d430 |
+ return EOK; /* request handled */
|
|
|
b2d430 |
+ }
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+ return (handler)(dbus_req, dbus_req->intf->handler_data,
|
|
|
b2d430 |
+ arg_0,
|
|
|
b2d430 |
+ arg_1,
|
|
|
b2d430 |
+ arg_2,
|
|
|
b2d430 |
+ len_2);
|
|
|
b2d430 |
+}
|
|
|
b2d430 |
diff --git a/src/responder/nss/nss_iface_generated.h b/src/responder/nss/nss_iface_generated.h
|
|
|
b2d430 |
new file mode 100644
|
|
|
b2d430 |
index 0000000000000000000000000000000000000000..ad902482a9be03a60cbf3663b6f771d0a2020b88
|
|
|
b2d430 |
--- /dev/null
|
|
|
b2d430 |
+++ b/src/responder/nss/nss_iface_generated.h
|
|
|
b2d430 |
@@ -0,0 +1,58 @@
|
|
|
b2d430 |
+/* The following declarations are auto-generated from nss_iface.xml */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#ifndef __NSS_IFACE_XML__
|
|
|
b2d430 |
+#define __NSS_IFACE_XML__
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#include "sbus/sssd_dbus.h"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* ------------------------------------------------------------------------
|
|
|
b2d430 |
+ * DBus Constants
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * Various constants of interface and method names mostly for use by clients
|
|
|
b2d430 |
+ */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* constants for org.freedesktop.sssd.nss.MemoryCache */
|
|
|
b2d430 |
+#define IFACE_NSS_MEMORYCACHE "org.freedesktop.sssd.nss.MemoryCache"
|
|
|
b2d430 |
+#define IFACE_NSS_MEMORYCACHE_UPDATEINITGROUPS "UpdateInitgroups"
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* ------------------------------------------------------------------------
|
|
|
b2d430 |
+ * DBus handlers
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * These structures are filled in by implementors of the different
|
|
|
b2d430 |
+ * dbus interfaces to handle method calls.
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * Handler functions of type sbus_msg_handler_fn accept raw messages,
|
|
|
b2d430 |
+ * other handlers are typed appropriately. If a handler that is
|
|
|
b2d430 |
+ * set to NULL is invoked it will result in a
|
|
|
b2d430 |
+ * org.freedesktop.DBus.Error.NotSupported error for the caller.
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * Handlers have a matching xxx_finish() function (unless the method has
|
|
|
b2d430 |
+ * accepts raw messages). These finish functions the
|
|
|
b2d430 |
+ * sbus_request_return_and_finish() with the appropriate arguments to
|
|
|
b2d430 |
+ * construct a valid reply. Once a finish function has been called, the
|
|
|
b2d430 |
+ * @dbus_req it was called with is freed and no longer valid.
|
|
|
b2d430 |
+ */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* vtable for org.freedesktop.sssd.nss.MemoryCache */
|
|
|
b2d430 |
+struct iface_nss_memorycache {
|
|
|
b2d430 |
+ struct sbus_vtable vtable; /* derive from sbus_vtable */
|
|
|
b2d430 |
+ int (*UpdateInitgroups)(struct sbus_request *req, void *data, const char *arg_user, const char *arg_domain, uint32_t arg_groups[], int len_groups);
|
|
|
b2d430 |
+};
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* finish function for UpdateInitgroups */
|
|
|
b2d430 |
+int iface_nss_memorycache_UpdateInitgroups_finish(struct sbus_request *req);
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* ------------------------------------------------------------------------
|
|
|
b2d430 |
+ * DBus Interface Metadata
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * These structure definitions are filled in with the information about
|
|
|
b2d430 |
+ * the interfaces, methods, properties and so on.
|
|
|
b2d430 |
+ *
|
|
|
b2d430 |
+ * The actual definitions are found in the accompanying C file next
|
|
|
b2d430 |
+ * to this header.
|
|
|
b2d430 |
+ */
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+/* interface info for org.freedesktop.sssd.nss.MemoryCache */
|
|
|
b2d430 |
+extern const struct sbus_interface_meta iface_nss_memorycache_meta;
|
|
|
b2d430 |
+
|
|
|
b2d430 |
+#endif /* __NSS_IFACE_XML__ */
|
|
|
b2d430 |
diff --git a/src/responder/nss/nsssrv.c b/src/responder/nss/nsssrv.c
|
|
|
b2d430 |
index 8be3455e57e07481e7cf7d4d0f525dad5b8601fc..05b51ecdf2e17e20af2ee3ee48377cbe1bf19a24 100644
|
|
|
b2d430 |
--- a/src/responder/nss/nsssrv.c
|
|
|
b2d430 |
+++ b/src/responder/nss/nsssrv.c
|
|
|
b2d430 |
@@ -37,6 +37,7 @@
|
|
|
b2d430 |
#include "responder/nss/nsssrv_private.h"
|
|
|
b2d430 |
#include "responder/nss/nsssrv_mmap_cache.h"
|
|
|
b2d430 |
#include "responder/nss/nsssrv_netgroup.h"
|
|
|
b2d430 |
+#include "responder/nss/nss_iface.h"
|
|
|
b2d430 |
#include "responder/common/negcache.h"
|
|
|
b2d430 |
#include "db/sysdb.h"
|
|
|
b2d430 |
#include "confdb/confdb.h"
|
|
|
b2d430 |
@@ -327,7 +328,7 @@ done:
|
|
|
b2d430 |
return ret;
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
-static int nss_update_memcache(struct sbus_request *dbus_req, void *data)
|
|
|
b2d430 |
+int nss_update_memcache(struct sbus_request *dbus_req, void *data)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
struct resp_ctx *rctx = talloc_get_type(data, struct resp_ctx);
|
|
|
b2d430 |
struct nss_ctx *nctx = talloc_get_type(rctx->pvt_ctx, struct nss_ctx);
|
|
|
b2d430 |
@@ -338,37 +339,24 @@ static int nss_update_memcache(struct sbus_request *dbus_req, void *data)
|
|
|
b2d430 |
return EOK;
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
-static int nss_memcache_initgr_check(struct sbus_request *dbus_req, void *data)
|
|
|
b2d430 |
+int nss_memorycache_update_initgroups(struct sbus_request *sbus_req,
|
|
|
b2d430 |
+ void *data,
|
|
|
b2d430 |
+ const char *user,
|
|
|
b2d430 |
+ const char *domain,
|
|
|
b2d430 |
+ uint32_t *groups,
|
|
|
b2d430 |
+ int num_groups)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
struct resp_ctx *rctx = talloc_get_type(data, struct resp_ctx);
|
|
|
b2d430 |
struct nss_ctx *nctx = talloc_get_type(rctx->pvt_ctx, struct nss_ctx);
|
|
|
b2d430 |
- char *user;
|
|
|
b2d430 |
- char *domain;
|
|
|
b2d430 |
- uint32_t *groups;
|
|
|
b2d430 |
- int gnum;
|
|
|
b2d430 |
|
|
|
b2d430 |
- if (!sbus_request_parse_or_finish(dbus_req,
|
|
|
b2d430 |
- DBUS_TYPE_STRING, &user,
|
|
|
b2d430 |
- DBUS_TYPE_STRING, &domain,
|
|
|
b2d430 |
- DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, &groups, &gnum,
|
|
|
b2d430 |
- DBUS_TYPE_INVALID)) {
|
|
|
b2d430 |
- return EOK; /* handled */
|
|
|
b2d430 |
- }
|
|
|
b2d430 |
+ DEBUG(SSSDBG_TRACE_LIBS, "Updating inigroups memory cache of [%s@%s]\n",
|
|
|
b2d430 |
+ user, domain);
|
|
|
b2d430 |
|
|
|
b2d430 |
- DEBUG(SSSDBG_TRACE_LIBS,
|
|
|
b2d430 |
- "Got request for [%s@%s]\n", user, domain);
|
|
|
b2d430 |
+ nss_update_initgr_memcache(nctx, user, domain, num_groups, groups);
|
|
|
b2d430 |
|
|
|
b2d430 |
- nss_update_initgr_memcache(nctx, user, domain, gnum, groups);
|
|
|
b2d430 |
-
|
|
|
b2d430 |
- return sbus_request_return_and_finish(dbus_req, DBUS_TYPE_INVALID);
|
|
|
b2d430 |
+ return iface_nss_memorycache_UpdateInitgroups_finish(sbus_req);
|
|
|
b2d430 |
}
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_rev_iface nss_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_rev_iface_meta, 0 },
|
|
|
b2d430 |
- .updateCache = nss_update_memcache,
|
|
|
b2d430 |
- .initgrCheck = nss_memcache_initgr_check
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
static void nss_dp_reconnect_init(struct sbus_connection *conn,
|
|
|
b2d430 |
int status, void *pvt)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
@@ -419,7 +407,8 @@ int nss_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
NSS_SBUS_SERVICE_NAME,
|
|
|
b2d430 |
NSS_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_nss_methods,
|
|
|
b2d430 |
- "NSS", &nss_dp_methods.vtable,
|
|
|
b2d430 |
+ "NSS",
|
|
|
b2d430 |
+ nss_get_sbus_interface(),
|
|
|
b2d430 |
nss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/nss/nsssrv.h b/src/responder/nss/nsssrv.h
|
|
|
b2d430 |
index 2977479aa52082480f92eab94f7833e2e696a9ac..d4a80f76df236f40d872c701687bf453255d9890 100644
|
|
|
b2d430 |
--- a/src/responder/nss/nsssrv.h
|
|
|
b2d430 |
+++ b/src/responder/nss/nsssrv.h
|
|
|
b2d430 |
@@ -81,4 +81,11 @@ struct nss_packet;
|
|
|
b2d430 |
|
|
|
b2d430 |
struct sss_cmd_table *get_nss_cmds(void);
|
|
|
b2d430 |
|
|
|
b2d430 |
+int nss_memorycache_update_initgroups(struct sbus_request *sbus_req,
|
|
|
b2d430 |
+ void *data,
|
|
|
b2d430 |
+ const char *user,
|
|
|
b2d430 |
+ const char *domain,
|
|
|
b2d430 |
+ uint32_t *groups,
|
|
|
b2d430 |
+ int num_groups);
|
|
|
b2d430 |
+
|
|
|
b2d430 |
#endif /* __NSSSRV_H__ */
|
|
|
b2d430 |
diff --git a/src/responder/pac/pacsrv.c b/src/responder/pac/pacsrv.c
|
|
|
b2d430 |
index 15d1986f842ac8397cf509ca8ef44728d6ddc5f1..852deb10eff014189d35a2769d895a901d8296e1 100644
|
|
|
b2d430 |
--- a/src/responder/pac/pacsrv.c
|
|
|
b2d430 |
+++ b/src/responder/pac/pacsrv.c
|
|
|
b2d430 |
@@ -61,17 +61,6 @@ struct mon_cli_iface monitor_pac_methods = {
|
|
|
b2d430 |
.sysbusReconnect = NULL,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface pac_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
/* TODO: check if this can be made generic for all responders */
|
|
|
b2d430 |
static void pac_dp_reconnect_init(struct sbus_connection *conn,
|
|
|
b2d430 |
int status, void *pvt)
|
|
|
b2d430 |
@@ -122,7 +111,7 @@ int pac_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
PAC_SBUS_SERVICE_NAME,
|
|
|
b2d430 |
PAC_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_pac_methods,
|
|
|
b2d430 |
- "PAC", &pac_dp_methods.vtable,
|
|
|
b2d430 |
+ "PAC", NULL,
|
|
|
b2d430 |
sss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/pam/pamsrv.c b/src/responder/pam/pamsrv.c
|
|
|
b2d430 |
index efd1e5c7527decda5de7304b54919846fa2ee0db..9374de4d63b2886262ca1541daff581603d7c838 100644
|
|
|
b2d430 |
--- a/src/responder/pam/pamsrv.c
|
|
|
b2d430 |
+++ b/src/responder/pam/pamsrv.c
|
|
|
b2d430 |
@@ -66,17 +66,6 @@ struct mon_cli_iface monitor_pam_methods = {
|
|
|
b2d430 |
.sysbusReconnect = NULL,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface pam_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
static void pam_dp_reconnect_init(struct sbus_connection *conn, int status, void *pvt)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
struct be_conn *be_conn = talloc_get_type(pvt, struct be_conn);
|
|
|
b2d430 |
@@ -201,7 +190,7 @@ static int pam_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
SSS_PAM_SBUS_SERVICE_NAME,
|
|
|
b2d430 |
SSS_PAM_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_pam_methods,
|
|
|
b2d430 |
- "PAM", &pam_dp_methods.vtable,
|
|
|
b2d430 |
+ "PAM", NULL,
|
|
|
b2d430 |
sss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/pam/pamsrv_dp.c b/src/responder/pam/pamsrv_dp.c
|
|
|
b2d430 |
index 826146350670d67f897ee7eec2cf6ca607b96435..aa3fdc3c32d234ed54a9f5202886157601ee3846 100644
|
|
|
b2d430 |
--- a/src/responder/pam/pamsrv_dp.c
|
|
|
b2d430 |
+++ b/src/responder/pam/pamsrv_dp.c
|
|
|
b2d430 |
@@ -130,8 +130,8 @@ int pam_dp_send_req(struct pam_auth_req *preq, int timeout)
|
|
|
b2d430 |
|
|
|
b2d430 |
msg = dbus_message_new_method_call(NULL,
|
|
|
b2d430 |
DP_PATH,
|
|
|
b2d430 |
- DATA_PROVIDER_IFACE,
|
|
|
b2d430 |
- DATA_PROVIDER_IFACE_PAMHANDLER);
|
|
|
b2d430 |
+ IFACE_DP,
|
|
|
b2d430 |
+ IFACE_DP_PAMHANDLER);
|
|
|
b2d430 |
if (msg == NULL) {
|
|
|
b2d430 |
DEBUG(SSSDBG_FATAL_FAILURE,"Out of memory?!\n");
|
|
|
b2d430 |
return ENOMEM;
|
|
|
b2d430 |
diff --git a/src/responder/ssh/sshsrv.c b/src/responder/ssh/sshsrv.c
|
|
|
b2d430 |
index f763e3b00d20527225046a85609e7ff56861f682..88938215b542b5748721cfecc59ca4141010fb88 100644
|
|
|
b2d430 |
--- a/src/responder/ssh/sshsrv.c
|
|
|
b2d430 |
+++ b/src/responder/ssh/sshsrv.c
|
|
|
b2d430 |
@@ -41,17 +41,6 @@ struct mon_cli_iface monitor_ssh_methods = {
|
|
|
b2d430 |
.sysbusReconnect = NULL,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface ssh_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
static void ssh_dp_reconnect_init(struct sbus_connection *conn,
|
|
|
b2d430 |
int status, void *pvt)
|
|
|
b2d430 |
{
|
|
|
b2d430 |
@@ -96,7 +85,7 @@ int ssh_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
SSS_SSH_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_ssh_methods,
|
|
|
b2d430 |
"SSH",
|
|
|
b2d430 |
- &ssh_dp_methods.vtable,
|
|
|
b2d430 |
+ NULL,
|
|
|
b2d430 |
sss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/responder/sudo/sudosrv.c b/src/responder/sudo/sudosrv.c
|
|
|
b2d430 |
index e0346033e38f1e39e621e131c3265a583b91a5c3..d832686a8572f3729a0477cdca2f77ebcb19fbc0 100644
|
|
|
b2d430 |
--- a/src/responder/sudo/sudosrv.c
|
|
|
b2d430 |
+++ b/src/responder/sudo/sudosrv.c
|
|
|
b2d430 |
@@ -42,17 +42,6 @@ struct mon_cli_iface monitor_sudo_methods = {
|
|
|
b2d430 |
.sysbusReconnect = NULL,
|
|
|
b2d430 |
};
|
|
|
b2d430 |
|
|
|
b2d430 |
-static struct data_provider_iface sudo_dp_methods = {
|
|
|
b2d430 |
- { &data_provider_iface_meta, 0 },
|
|
|
b2d430 |
- .RegisterService = NULL,
|
|
|
b2d430 |
- .pamHandler = NULL,
|
|
|
b2d430 |
- .sudoHandler = NULL,
|
|
|
b2d430 |
- .autofsHandler = NULL,
|
|
|
b2d430 |
- .hostHandler = NULL,
|
|
|
b2d430 |
- .getDomains = NULL,
|
|
|
b2d430 |
- .getAccountInfo = NULL,
|
|
|
b2d430 |
-};
|
|
|
b2d430 |
-
|
|
|
b2d430 |
static void sudo_dp_reconnect_init(struct sbus_connection *conn,
|
|
|
b2d430 |
int status,
|
|
|
b2d430 |
void *pvt)
|
|
|
b2d430 |
@@ -98,7 +87,7 @@ int sudo_process_init(TALLOC_CTX *mem_ctx,
|
|
|
b2d430 |
SSS_SUDO_SBUS_SERVICE_VERSION,
|
|
|
b2d430 |
&monitor_sudo_methods,
|
|
|
b2d430 |
"SUDO",
|
|
|
b2d430 |
- &sudo_dp_methods.vtable,
|
|
|
b2d430 |
+ NULL,
|
|
|
b2d430 |
sss_connection_setup,
|
|
|
b2d430 |
&rctx);
|
|
|
b2d430 |
if (ret != EOK) {
|
|
|
b2d430 |
diff --git a/src/tests/cwrap/Makefile.am b/src/tests/cwrap/Makefile.am
|
|
|
b2d430 |
index d8a49f1434cefc02bc7fce505d1b4e07fc74ec5f..3e40cba52e927730483b14cc7e56687b250de646 100644
|
|
|
b2d430 |
--- a/src/tests/cwrap/Makefile.am
|
|
|
b2d430 |
+++ b/src/tests/cwrap/Makefile.am
|
|
|
b2d430 |
@@ -49,7 +49,6 @@ SSSD_RESPONDER_OBJ = \
|
|
|
b2d430 |
../../../src/responder/common/data_provider/rdp_message.c \
|
|
|
b2d430 |
../../../src/responder/common/data_provider/rdp_client.c \
|
|
|
b2d430 |
../../../src/monitor/monitor_iface_generated.c \
|
|
|
b2d430 |
- ../../../src/providers/data_provider_iface_generated.c \
|
|
|
b2d430 |
../../../src/providers/data_provider_req.c
|
|
|
b2d430 |
|
|
|
b2d430 |
dist_noinst_DATA = \
|
|
|
b2d430 |
--
|
|
|
b2d430 |
2.4.11
|
|
|
b2d430 |
|