summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2009-01-13 17:12:08 -0500
committerSimo Sorce <idra@samba.org>2009-01-13 17:12:08 -0500
commit928231f18f376df346b95e9b402fea4b20e95d98 (patch)
tree693c41aae5c8338b54f9b9a7bd26d252afa26dc3
parente95623eb425c16baf3fcebc7076cc39414107a88 (diff)
downloadsssd-928231f18f376df346b95e9b402fea4b20e95d98.tar.gz
sssd-928231f18f376df346b95e9b402fea4b20e95d98.tar.xz
sssd-928231f18f376df346b95e9b402fea4b20e95d98.zip
Fix return, dbus would abort because we were passing values and
not pointers to values. Check domain is never null (or dbus will abort).
-rw-r--r--server/nss/nsssrv_dp.c4
-rw-r--r--server/providers/data_provider.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/server/nss/nsssrv_dp.c b/server/nss/nsssrv_dp.c
index a0f31d573..5b1092acd 100644
--- a/server/nss/nsssrv_dp.c
+++ b/server/nss/nsssrv_dp.c
@@ -99,6 +99,10 @@ int nss_dp_send_acct_req(struct nss_ctx *nctx, TALLOC_CTX *memctx,
return EINVAL;
}
+ if (!domain) {
+ return EINVAL;
+ }
+
switch (type) {
case NSS_DP_USER:
be_type = BE_REQ_USER;
diff --git a/server/providers/data_provider.c b/server/providers/data_provider.c
index 393e03e7a..fd64525ee 100644
--- a/server/providers/data_provider.c
+++ b/server/providers/data_provider.c
@@ -686,9 +686,9 @@ static int dp_get_account_info(DBusMessage *message, void *data, DBusMessage **r
respond:
dbret = dbus_message_append_args(reply,
- DBUS_TYPE_UINT16, dpret,
- DBUS_TYPE_UINT32, ret,
- DBUS_TYPE_STRING, errmsg,
+ DBUS_TYPE_UINT16, &dpret,
+ DBUS_TYPE_UINT32, &ret,
+ DBUS_TYPE_STRING, &errmsg,
DBUS_TYPE_INVALID);
if (!dbret) return EIO;