diff options
author | Simo Sorce <simo@redhat.com> | 2014-03-10 16:24:34 -0400 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2014-03-10 16:24:34 -0400 |
commit | 5be4b2d7786d3eaee9e11c3bc4cdbfa451006947 (patch) | |
tree | cfb38da422dfd90a0b6f2313d5a8b7458ab1b41e | |
parent | 327e24b8678c350b70f83f8b58790309a7c94c7b (diff) | |
download | nfs-utils-5be4b2d7786d3eaee9e11c3bc4cdbfa451006947.tar.gz nfs-utils-5be4b2d7786d3eaee9e11c3bc4cdbfa451006947.tar.xz nfs-utils-5be4b2d7786d3eaee9e11c3bc4cdbfa451006947.zip |
gssd: Drop full domain when constructing the Ad hostname.
When trying to use the special MS Windows hostanme we need to stop
at the first '.' if we got a FQDN from gethostname()
Tee HOST$@REALM form in fact uses the AD samAccountName attribute to
represent 'HOST', and that attribute is always the host's shortname.
Characters like '.' are actually illegal for a shortname in AD.
Signed-off-by: Simo Sorce <simo@redhat.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r-- | utils/gssd/krb5_util.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/utils/gssd/krb5_util.c b/utils/gssd/krb5_util.c index 208c72b..4b57141 100644 --- a/utils/gssd/krb5_util.c +++ b/utils/gssd/krb5_util.c @@ -819,8 +819,10 @@ find_keytab_entry(krb5_context context, krb5_keytab kt, const char *tgtname, /* Compute the active directory machine name HOST$ */ strcpy(myhostad, myhostname); - for (i = 0; myhostad[i] != 0; ++i) + for (i = 0; myhostad[i] != 0; ++i) { + if (myhostad[i] == '.') break; myhostad[i] = toupper(myhostad[i]); + } myhostad[i] = '$'; myhostad[i+1] = 0; |