X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libraries%2Flibldap%2Ffree.c;h=2a9392947e7d59ae84583d8f84f47cd558a45548;hb=c3e28a5488a8011ef0352f48fca85c48679205ba;hp=ba8c70902b88c10682723b88c25f09f5927691a1;hpb=bed646552971a1cd2c44394b8c4bbbe873d1a22c;p=openldap diff --git a/libraries/libldap/free.c b/libraries/libldap/free.c index ba8c70902b..2a9392947e 100644 --- a/libraries/libldap/free.c +++ b/libraries/libldap/free.c @@ -1,11 +1,23 @@ -/* - * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved. - * COPYING RESTRICTIONS APPLY, see COPYRIGHT file - */ -/* Portions - * Copyright (c) 1994 The Regents of the University of Michigan. - * All rights reserved. +/* free.c */ +/* $OpenLDAP$ */ +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2007 The OpenLDAP Foundation. + * All rights reserved. * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in the file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . + */ +/* Portions Copyright (c) 1994 The Regents of the University of Michigan. + * All rights reserved. + */ + +/* * free.c - some free routines are included here to avoid having to * link in lots of extra code when not using certain features */ @@ -13,9 +25,8 @@ #include "portable.h" #include -#include +#include -#include #include #include @@ -37,57 +48,27 @@ ldap_memvfree( void **v ) } void * -ldap_memalloc( size_t s ) +ldap_memalloc( ber_len_t s ) { return LDAP_MALLOC( s ); } void * -ldap_memcalloc( size_t n, size_t s ) +ldap_memcalloc( ber_len_t n, ber_len_t s ) { return LDAP_CALLOC( n, s ); } void * -ldap_memrealloc( void* p, size_t s ) +ldap_memrealloc( void* p, ber_len_t s ) { return LDAP_REALLOC( p, s ); } -void -ldap_getfilter_free( LDAPFiltDesc *lfdp ) +char * +ldap_strdup( LDAP_CONST char *p ) { - LDAPFiltList *flp, *nextflp; - LDAPFiltInfo *fip, *nextfip; - - for ( flp = lfdp->lfd_filtlist; flp != NULL; flp = nextflp ) { - for ( fip = flp->lfl_ilist; fip != NULL; fip = nextfip ) { - nextfip = fip->lfi_next; - LDAP_FREE( fip->lfi_filter ); - LDAP_FREE( fip->lfi_desc ); - LDAP_FREE( fip ); - } - nextflp = flp->lfl_next; - LDAP_FREE( flp->lfl_pattern ); - LDAP_FREE( flp->lfl_delims ); - LDAP_FREE( flp->lfl_tag ); - LDAP_FREE( flp ); - } - - if ( lfdp->lfd_curvalcopy != NULL ) { - LDAP_FREE( lfdp->lfd_curvalcopy ); - } - if ( lfdp->lfd_curvalwords != NULL ) { - LDAP_FREE( lfdp->lfd_curvalwords ); - } - if ( lfdp->lfd_filtprefix != NULL ) { - LDAP_FREE( lfdp->lfd_filtprefix ); - } - if ( lfdp->lfd_filtsuffix != NULL ) { - LDAP_FREE( lfdp->lfd_filtsuffix ); - } - - LDAP_FREE( lfdp ); + return LDAP_STRDUP( p ); } /* @@ -120,6 +101,7 @@ ldap_mods_free( LDAPMod **mods, int freemods ) LDAP_FREE( (char *) mods[i] ); } - if ( freemods ) + if ( freemods ) { LDAP_FREE( (char *) mods ); + } }