summaryrefslogtreecommitdiffstats
path: root/src/lib/krb5/os
diff options
context:
space:
mode:
authorSam Hartman <hartmans@mit.edu>2009-01-03 23:19:42 +0000
committerSam Hartman <hartmans@mit.edu>2009-01-03 23:19:42 +0000
commit0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d (patch)
tree2049c9c2cb135fe36b14c0a171711259258d18ec /src/lib/krb5/os
parentff0a6514c9f4230938c29922d69cbd4e83691adf (diff)
downloadkrb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.tar.gz
krb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.tar.xz
krb5-0ba5ccd7bb3ea15e44a87f84ca6feed8890f657d.zip
Merge mskrb-integ onto trunk
The mskrb-integ branch includes support for the following projects: Projects/Aliases * Projects/PAC and principal APIs * Projects/AEAD encryption API * Projects/GSSAPI DCE * Projects/RFC 3244 In addition, it includes support for enctype negotiation, and a variety of GSS-API extensions. In the KDC it includes support for protocol transition, constrained delegation and a new authorization data interface. The old authorization data interface is also supported. This commit merges the mskrb-integ branch on to the trunk. Additional review and testing is required. Merge commit 'mskrb-integ' into trunk ticket: new status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@21690 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/os')
-rw-r--r--src/lib/krb5/os/accessor.c2
-rw-r--r--src/lib/krb5/os/init_os_ctx.c1
-rw-r--r--src/lib/krb5/os/sn2princ.c4
-rw-r--r--src/lib/krb5/os/timeofday.c6
4 files changed, 9 insertions, 4 deletions
diff --git a/src/lib/krb5/os/accessor.c b/src/lib/krb5/os/accessor.c
index 9e6376f25..cdbb59841 100644
--- a/src/lib/krb5/os/accessor.c
+++ b/src/lib/krb5/os/accessor.c
@@ -53,7 +53,6 @@ krb5int_accessor(krb5int_access *internals, krb5_int32 version)
#endif
S (free_addrlist, krb5int_free_addrlist),
S (krb5_hmac, krb5_hmac),
- S (krb5_hmac_iov, krb5_hmac_iov),
S (md5_hash_provider, &krb5int_hash_md5),
S (arcfour_enc_provider, &krb5int_enc_arcfour),
S (sendto_udp, &krb5int_sendto),
@@ -68,6 +67,7 @@ krb5int_accessor(krb5int_access *internals, krb5_int32 version)
SC (free_srv_dns_data, krb5int_free_srv_dns_data),
SC (use_dns_kdc, _krb5_use_dns_kdc),
#undef SC
+ S (clean_hostname, krb5int_clean_hostname),
S (krb_life_to_time, 0),
S (krb_time_to_life, 0),
diff --git a/src/lib/krb5/os/init_os_ctx.c b/src/lib/krb5/os/init_os_ctx.c
index 7e21b6ef7..5aded9bee 100644
--- a/src/lib/krb5/os/init_os_ctx.c
+++ b/src/lib/krb5/os/init_os_ctx.c
@@ -419,7 +419,6 @@ krb5_get_profile (krb5_context ctx, profile_t *profile)
return profile_copy (ctx->profile, profile);
}
-
krb5_error_code
krb5_set_config_files(krb5_context ctx, const char **filenames)
{
diff --git a/src/lib/krb5/os/sn2princ.c b/src/lib/krb5/os/sn2princ.c
index 8df591138..cbc6eb1ed 100644
--- a/src/lib/krb5/os/sn2princ.c
+++ b/src/lib/krb5/os/sn2princ.c
@@ -107,6 +107,7 @@ krb5_sname_to_principal(krb5_context context, const char *hostname, const char *
memset(&hints, 0, sizeof(hints));
hints.ai_family = AF_INET;
+ hints.ai_flags = AI_CANONNAME;
try_getaddrinfo_again:
err = getaddrinfo(hostname, 0, &hints, &ai);
if (err) {
@@ -147,7 +148,8 @@ krb5_sname_to_principal(krb5_context context, const char *hostname, const char *
if (!remote_host)
return ENOMEM;
}
- }
+ } else
+ freeaddrinfo(ai);
} else /* type == KRB5_NT_UNKNOWN */ {
remote_host = strdup(hostname);
}
diff --git a/src/lib/krb5/os/timeofday.c b/src/lib/krb5/os/timeofday.c
index c65ce6fc0..31d803eb5 100644
--- a/src/lib/krb5/os/timeofday.c
+++ b/src/lib/krb5/os/timeofday.c
@@ -35,9 +35,13 @@
krb5_error_code KRB5_CALLCONV
krb5_timeofday(krb5_context context, register krb5_timestamp *timeret)
{
- krb5_os_context os_ctx = &context->os_context;
+ krb5_os_context os_ctx;
time_t tval;
+ if (context == NULL)
+ return EINVAL;
+
+ os_ctx = &context->os_context;
if (os_ctx->os_flags & KRB5_OS_TOFFSET_TIME) {
*timeret = os_ctx->time_offset;
return 0;