avoid const warning, use sin4 instead of sin to avoid shadow warning,
free target_name git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15642 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -131,7 +131,7 @@ gss_encode(void *app_data, void *from, int length, int level, void **to)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
sockaddr_to_gss_address (const struct sockaddr *sa,
|
sockaddr_to_gss_address (struct sockaddr *sa,
|
||||||
OM_uint32 *addr_type,
|
OM_uint32 *addr_type,
|
||||||
gss_buffer_desc *gss_addr)
|
gss_buffer_desc *gss_addr)
|
||||||
{
|
{
|
||||||
@@ -147,10 +147,10 @@ sockaddr_to_gss_address (const struct sockaddr *sa,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
case AF_INET : {
|
case AF_INET : {
|
||||||
struct sockaddr_in *sin = (struct sockaddr_in *)sa;
|
struct sockaddr_in *sin4 = (struct sockaddr_in *)sa;
|
||||||
|
|
||||||
gss_addr->length = 4;
|
gss_addr->length = 4;
|
||||||
gss_addr->value = &sin->sin_addr;
|
gss_addr->value = &sin4->sin_addr;
|
||||||
*addr_type = GSS_C_AF_INET;
|
*addr_type = GSS_C_AF_INET;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -326,6 +326,7 @@ import_name(const char *kname, const char *host, gss_name_t *target_name)
|
|||||||
printf("Error importing name %s: %s\n",
|
printf("Error importing name %s: %s\n",
|
||||||
(char *)name.value,
|
(char *)name.value,
|
||||||
(char *)status_string.value);
|
(char *)status_string.value);
|
||||||
|
free(name.value);
|
||||||
gss_release_buffer(&new_stat, &status_string);
|
gss_release_buffer(&new_stat, &status_string);
|
||||||
return AUTH_ERROR;
|
return AUTH_ERROR;
|
||||||
}
|
}
|
||||||
@@ -395,7 +396,12 @@ gss_auth(void *app_data, char *host)
|
|||||||
OM_uint32 msg_ctx = 0;
|
OM_uint32 msg_ctx = 0;
|
||||||
gss_buffer_desc status_string;
|
gss_buffer_desc status_string;
|
||||||
|
|
||||||
|
d->context_hdl = GSS_C_NO_CONTEXT;
|
||||||
|
|
||||||
|
gss_release_name(&min_stat, &target_name);
|
||||||
|
|
||||||
if(min_stat == KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN && *kname != NULL) {
|
if(min_stat == KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN && *kname != NULL) {
|
||||||
|
|
||||||
if(import_name(*kname++, host, &target_name)) {
|
if(import_name(*kname++, host, &target_name)) {
|
||||||
if (bindings != GSS_C_NO_CHANNEL_BINDINGS)
|
if (bindings != GSS_C_NO_CHANNEL_BINDINGS)
|
||||||
free(bindings);
|
free(bindings);
|
||||||
@@ -461,6 +467,8 @@ gss_auth(void *app_data, char *host)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gss_release_name(&min_stat, &target_name);
|
||||||
|
|
||||||
if (bindings != GSS_C_NO_CHANNEL_BINDINGS)
|
if (bindings != GSS_C_NO_CHANNEL_BINDINGS)
|
||||||
free(bindings);
|
free(bindings);
|
||||||
if (input.value)
|
if (input.value)
|
||||||
|
Reference in New Issue
Block a user