return( rc );
}
-void
-ber_bvfree( struct berval *bv )
-{
- assert(bv != NULL); /* bv damn better point to something */
-
- ber_int_options.lbo_valid = LBER_INITIALIZED;
-
- if ( bv->bv_val != NULL )
- LBER_FREE( bv->bv_val );
- LBER_FREE( (char *) bv );
-}
-
-void
-ber_bvecfree( struct berval **bv )
-{
- int i;
-
- assert(bv != NULL); /* bv damn better point to something */
-
- ber_int_options.lbo_valid = LBER_INITIALIZED;
-
- for ( i = 0; bv[i] != NULL; i++ )
- ber_bvfree( bv[i] );
- LBER_FREE( (char *) bv );
-}
-
-struct berval *
-ber_bvdup(
- LDAP_CONST struct berval *bv )
-{
- struct berval *new;
-
- assert( bv != NULL );
-
- ber_int_options.lbo_valid = LBER_INITIALIZED;
-
- if( bv == NULL ) {
- return NULL;
- }
-
- if ( (new = (struct berval *) LBER_MALLOC( sizeof(struct berval) ))
- == NULL ) {
- return( NULL );
- }
-
- if ( bv->bv_val == NULL ) {
- new->bv_val = NULL;
- new->bv_len = 0;
- return ( new );
- }
-
- if ( (new->bv_val = (char *) LBER_MALLOC( bv->bv_len + 1 )) == NULL ) {
- LBER_FREE( new );
- return( NULL );
- }
-
- SAFEMEMCPY( new->bv_val, bv->bv_val, (size_t) bv->bv_len );
- new->bv_val[bv->bv_len] = '\0';
- new->bv_len = bv->bv_len;
-
- return( new );
-}
-
#ifdef STR_TRANSLATION
void
#define LBER_INT_CALLOC(n,s) ber_memcalloc((n),(s))
#define LBER_INT_REALLOC(p,s) ber_memrealloc((p),(s))
#define LBER_INT_FREE(p) ber_memfree((p))
+#define LBER_INT_VFREE(v) ber_memvfree((v))
#define LBER_MALLOC(s) ber_memalloc((s))
#define LBER_CALLOC(n,s) ber_memcalloc((n),(s))
#define LBER_REALLOC(p,s) ber_memrealloc((p),(s))
#define LBER_FREE(p) ber_memfree((p))
+#define LBER_VFREE(v) ber_memvfree((v))
/* sockbuf.c */
BerMemoryFunctions *ber_int_memory_fns = NULL;
+
void
ber_memfree( void *p )
{
(*ber_int_memory_fns->bmf_free)( p );
}
+
+void
+ber_memvfree( void **vec )
+{
+ int i;
+
+ assert(vec != NULL); /* vec damn better point to something */
+
+ for ( i = 0; vec[i] != NULL; i++ ) {
+ LBER_FREE( vec[i] );
+ }
+
+ LBER_FREE( vec );
+}
+
+
void *
ber_memalloc( size_t s )
{
return (*ber_int_memory_fns->bmf_malloc)( s );
}
+
void *
ber_memcalloc( size_t n, size_t s )
{
return (*ber_int_memory_fns->bmf_calloc)( n, s );
}
+
void *
ber_memrealloc( void* p, size_t s )
{
return (*ber_int_memory_fns->bmf_realloc)( p, s );
}
+
+void
+ber_bvfree( struct berval *bv )
+{
+ assert(bv != NULL); /* bv damn better point to something */
+
+ ber_int_options.lbo_valid = LBER_INITIALIZED;
+
+ if ( bv->bv_val != NULL )
+ LBER_FREE( bv->bv_val );
+
+ LBER_FREE( (char *) bv );
+}
+
+
+void
+ber_bvecfree( struct berval **bv )
+{
+ int i;
+
+ assert(bv != NULL); /* bv damn better point to something */
+
+ ber_int_options.lbo_valid = LBER_INITIALIZED;
+
+ for ( i = 0; bv[i] != NULL; i++ )
+ ber_bvfree( bv[i] );
+
+ LBER_FREE( (char *) bv );
+}
+
+
+struct berval *
+ber_bvdup(
+ LDAP_CONST struct berval *bv )
+{
+ struct berval *new;
+
+ assert( bv != NULL );
+
+ ber_int_options.lbo_valid = LBER_INITIALIZED;
+
+ if( bv == NULL ) {
+ return NULL;
+ }
+
+
+ if(( new = LBER_MALLOC( sizeof(struct berval) )) == NULL ) {
+ return NULL;
+ }
+
+ if ( bv->bv_val == NULL ) {
+ new->bv_val = NULL;
+ new->bv_len = 0;
+ return new;
+ }
+
+ if(( new->bv_val = LBER_MALLOC( bv->bv_len + 1 )) == NULL ) {
+ LBER_FREE( new );
+ return NULL;
+ }
+
+ SAFEMEMCPY( new->bv_val, bv->bv_val, (size_t) bv->bv_len );
+ new->bv_val[bv->bv_len] = '\0';
+ new->bv_len = bv->bv_len;
+
+ return( new );
+}