diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2013-11-15 15:36:02 +0100 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2013-11-15 15:50:09 +0100 |
commit | 41d99d32e8cadb790bb4c594074b52fa13f40df6 (patch) | |
tree | 330a871bf62013f088008967e3d6f706a1c14924 /src/gssapi.c | |
parent | c481f9dafdc7dc5c2eb105493f05846cf7425cec (diff) | |
download | libssh-41d99d32e8cadb790bb4c594074b52fa13f40df6.tar.gz libssh-41d99d32e8cadb790bb4c594074b52fa13f40df6.tar.xz libssh-41d99d32e8cadb790bb4c594074b52fa13f40df6.zip |
gssapi: Add suppport to set GSSAPI server identity.
Diffstat (limited to 'src/gssapi.c')
-rw-r--r-- | src/gssapi.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gssapi.c b/src/gssapi.c index a0ab364..edcb66d 100644 --- a/src/gssapi.c +++ b/src/gssapi.c @@ -672,12 +672,17 @@ int ssh_gssapi_auth_mic(ssh_session session){ OM_uint32 maj_stat, min_stat; char name_buf[256]; gss_buffer_desc hostname; + const char *gss_host = session->opts.host; if (ssh_gssapi_init(session) == SSH_ERROR) return SSH_AUTH_ERROR; + if (session->opts.gss_server_identity != NULL) { + gss_host = session->opts.gss_server_identity; + } /* import target host name */ - snprintf(name_buf, sizeof(name_buf), "host@%s", session->opts.host); + snprintf(name_buf, sizeof(name_buf), "host@%s", gss_host); + hostname.value = name_buf; hostname.length = strlen(name_buf) + 1; maj_stat = gss_import_name(&min_stat, &hostname, |