diff options
author | Colin Watson <cjwatson@debian.org> | 2012-10-31 10:35:38 +0000 |
---|---|---|
committer | Colin Watson <cjwatson@debian.org> | 2012-10-31 10:35:38 +0000 |
commit | 301aad188299b268452af6b67261336c88f44ab1 (patch) | |
tree | 5ec34d429196f17ea6eb2205ca8f96da32b09dd1 /monitor_wrap.c | |
parent | 5cb249b209c170d817471b575b6d105094f137bc (diff) |
* Merge from Ubuntu:
- Add support for registering ConsoleKit sessions on login. (This is
currently enabled only when building for Ubuntu.)
Diffstat (limited to 'monitor_wrap.c')
-rw-r--r-- | monitor_wrap.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/monitor_wrap.c b/monitor_wrap.c index f46be660d..b758c9f72 100644 --- a/monitor_wrap.c +++ b/monitor_wrap.c | |||
@@ -1310,6 +1310,37 @@ OM_uint32 | |||
1310 | mm_ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_desc *data, gss_buffer_desc *hash) | 1310 | mm_ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_desc *data, gss_buffer_desc *hash) |
1311 | { | 1311 | { |
1312 | Buffer m; | 1312 | Buffer m; |
1313 | |||
1314 | #ifdef USE_CONSOLEKIT | ||
1315 | char * | ||
1316 | mm_consolekit_register(Session *s, const char *display) | ||
1317 | { | ||
1318 | Buffer m; | ||
1319 | char *cookie; | ||
1320 | |||
1321 | debug3("%s entering", __func__); | ||
1322 | |||
1323 | if (s->ttyfd == -1) | ||
1324 | return NULL; | ||
1325 | buffer_init(&m); | ||
1326 | buffer_put_cstring(&m, s->tty); | ||
1327 | buffer_put_cstring(&m, display != NULL ? display : ""); | ||
1328 | mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_CONSOLEKIT_REGISTER, &m); | ||
1329 | buffer_clear(&m); | ||
1330 | |||
1331 | mm_request_receive_expect(pmonitor->m_recvfd, | ||
1332 | MONITOR_ANS_CONSOLEKIT_REGISTER, &m); | ||
1333 | cookie = buffer_get_string(&m, NULL); | ||
1334 | buffer_free(&m); | ||
1335 | |||
1336 | /* treat empty cookie as missing cookie */ | ||
1337 | if (strlen(cookie) == 0) { | ||
1338 | xfree(cookie); | ||
1339 | cookie = NULL; | ||
1340 | } | ||
1341 | return (cookie); | ||
1342 | } | ||
1343 | #endif /* USE_CONSOLEKIT */ | ||
1313 | OM_uint32 major; | 1344 | OM_uint32 major; |
1314 | u_int len; | 1345 | u_int len; |
1315 | 1346 | ||