summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <smcv@collabora.com>2019-07-03 13:41:11 +0000
committerSimon McVittie <smcv@collabora.com>2019-07-03 13:41:11 +0000
commit47148c6b55ad5db32a054027b94c62facf92159f (patch)
tree9f7bbc651a6447af0354451c6ce9a986cb48f5bb
parent379eb3a253af1e1d15fe19e8f5125c4d6e09a82a (diff)
parent0cc191f8e861ba5b253b3c404f94fb5e8b75684f (diff)
downloaddbus-47148c6b55ad5db32a054027b94c62facf92159f.tar.gz
Merge branch 'auth-idempotent' into 'master'
auth: Clear GUID from server if out of memory See merge request dbus/dbus!119
-rw-r--r--dbus/dbus-auth.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/dbus/dbus-auth.c b/dbus/dbus-auth.c
index 9e8b2bc0..62b5b13c 100644
--- a/dbus/dbus-auth.c
+++ b/dbus/dbus-auth.c
@@ -1664,10 +1664,25 @@ process_ok(DBusAuth *auth,
_dbus_string_get_const_data (& DBUS_AUTH_CLIENT (auth)->guid_from_server));
if (auth->unix_fd_possible)
- return send_negotiate_unix_fd(auth);
+ {
+ if (!send_negotiate_unix_fd (auth))
+ {
+ _dbus_string_set_length (& DBUS_AUTH_CLIENT (auth)->guid_from_server, 0);
+ return FALSE;
+ }
+
+ return TRUE;
+ }
_dbus_verbose("Not negotiating unix fd passing, since not possible\n");
- return send_begin (auth);
+
+ if (!send_begin (auth))
+ {
+ _dbus_string_set_length (& DBUS_AUTH_CLIENT (auth)->guid_from_server, 0);
+ return FALSE;
+ }
+
+ return TRUE;
}
static dbus_bool_t