heimdal: import heimdal's trunk svn rev 23697 + lorikeet-heimdal patches
[amitay/samba.git] / source4 / heimdal / lib / krb5 / principal.c
index 0d6d72dbcf2e362f74a224258bf8c336fbc3792c..3a1d184c3d41e6aad8ed27fa6076e58232355f26 100644 (file)
@@ -57,7 +57,7 @@ host/admin@H5L.ORG
 #include <fnmatch.h>
 #include "resolve.h"
 
-RCSID("$Id: principal.c 23316 2008-06-23 04:32:32Z lha $");
+RCSID("$Id$");
 
 #define princ_num_comp(P) ((P)->name.name_string.len)
 #define princ_type(P) ((P)->name.name_type)
@@ -1259,7 +1259,14 @@ krb5_sname_to_principal (krb5_context context,
        return KRB5_SNAME_UNSUPP_NAMETYPE;
     }
     if(hostname == NULL) {
-       gethostname(localhost, sizeof(localhost));
+       ret = gethostname(localhost, sizeof(localhost) - 1);
+       if (ret != 0) {
+           ret = errno;
+           krb5_set_error_message(context, ret,
+                                  "Failed to get local hostname");
+           return ret;
+       }           
+       localhost[sizeof(localhost) - 1] = '\0';
        hostname = localhost;
     }
     if(sname == NULL)