xref: /titanic_50/usr/src/lib/libldap5/sources/ldap/common/freevalues.c (revision 7c478bd95313f5f23a4c958a745db2134aa03244)
1 #pragma ident	"%Z%%M%	%I%	%E% SMI"
2 
3 /*
4  * The contents of this file are subject to the Netscape Public
5  * License Version 1.1 (the "License"); you may not use this file
6  * except in compliance with the License. You may obtain a copy of
7  * the License at http://www.mozilla.org/NPL/
8  *
9  * Software distributed under the License is distributed on an "AS
10  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
11  * implied. See the License for the specific language governing
12  * rights and limitations under the License.
13  *
14  * The Original Code is Mozilla Communicator client code, released
15  * March 31, 1998.
16  *
17  * The Initial Developer of the Original Code is Netscape
18  * Communications Corporation. Portions created by Netscape are
19  * Copyright (C) 1998-1999 Netscape Communications Corporation. All
20  * Rights Reserved.
21  *
22  * Contributor(s):
23  */
24 /*
25  *  Copyright (c) 1990 Regents of the University of Michigan.
26  *  All rights reserved.
27  */
28 /*
29  *  freevalues.c
30  */
31 
32 #include "ldap-int.h"
33 
34 void
35 LDAP_CALL
ldap_value_free(char ** vals)36 ldap_value_free( char **vals )
37 {
38 	int	i;
39 
40 	if ( vals == NULL )
41 		return;
42 	for ( i = 0; vals[i] != NULL; i++ )
43 		NSLDAPI_FREE( vals[i] );
44 	NSLDAPI_FREE( (char *) vals );
45 }
46 
47 void
48 LDAP_CALL
ldap_value_free_len(struct berval ** vals)49 ldap_value_free_len( struct berval **vals )
50 {
51 	int	i;
52 
53 	if ( vals == NULL )
54 		return;
55 	for ( i = 0; vals[i] != NULL; i++ ) {
56 		NSLDAPI_FREE( vals[i]->bv_val );
57 		NSLDAPI_FREE( vals[i] );
58 	}
59 	NSLDAPI_FREE( (char *) vals );
60 }
61