diff options
Diffstat (limited to 'monitor_wrap.c')
-rw-r--r-- | monitor_wrap.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/monitor_wrap.c b/monitor_wrap.c index 1489e7f08..72b75d50a 100644 --- a/monitor_wrap.c +++ b/monitor_wrap.c | |||
@@ -1216,4 +1216,27 @@ mm_ssh_gssapi_userok(char *user) | |||
1216 | debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); | 1216 | debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); |
1217 | return (authenticated); | 1217 | return (authenticated); |
1218 | } | 1218 | } |
1219 | |||
1220 | OM_uint32 | ||
1221 | mm_ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_desc *data, gss_buffer_desc *hash) | ||
1222 | { | ||
1223 | Buffer m; | ||
1224 | OM_uint32 major; | ||
1225 | u_int len; | ||
1226 | |||
1227 | buffer_init(&m); | ||
1228 | buffer_put_string(&m, data->value, data->length); | ||
1229 | |||
1230 | mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSSIGN, &m); | ||
1231 | mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSIGN, &m); | ||
1232 | |||
1233 | major = buffer_get_int(&m); | ||
1234 | hash->value = buffer_get_string(&m, &len); | ||
1235 | hash->length = len; | ||
1236 | |||
1237 | buffer_free(&m); | ||
1238 | |||
1239 | return(major); | ||
1240 | } | ||
1241 | |||
1219 | #endif /* GSSAPI */ | 1242 | #endif /* GSSAPI */ |