Cdiff g_rel_name.c
--- /net/etna.eng/build7/semery/mit2/webrev/usr/src/lib/libgss/g_rel_name.c- Wed Sep 8 17:01:07 2004
+++ g_rel_name.c Wed Sep 8 13:42:04 2004
@@ -1,11 +1,11 @@
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "@(#)g_rel_name.c 1.12 04/09/08 SMI"
+#pragma ident "@(#)g_rel_name.c 1.11 04/02/23 SMI"
/*
* glue routine for gss_release_name
*/
@@ -24,14 +24,17 @@
gss_name_t *input_name;
{
gss_union_name_t union_name;
- /* if input_name is NULL, return error */
+ if (minor_status == NULL)
+ return (GSS_S_CALL_INACCESSIBLE_WRITE);
+ *minor_status = 0;
+ /* if input_name is NULL, return error */
if (input_name == 0)
- return (GSS_S_BAD_NAME);
+ return (GSS_S_CALL_INACCESSIBLE_READ | GSS_S_BAD_NAME);
/*
* free up the space for the external_name and then
* free the union_name descriptor
*/
@@ -38,13 +41,10 @@
union_name = (gss_union_name_t)*input_name;
*input_name = 0;
*minor_status = 0;
- if (union_name == NULL)
- return (GSS_S_BAD_NAME);
-
if (union_name->name_type)
(void) gss_release_oid(minor_status, &union_name->name_type);
free(union_name->external_name->value);
free(union_name->external_name);