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:
Love Hörnquist Åstrand
2005-07-13 08:02:39 +00:00
parent 7712e99eb3
commit a4a3844b88

View File

@@ -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)