/* $OpenLDAP$ */
/*
- * Copyright 1998-2002 The OpenLDAP Foundation, Redwood City, California, USA
+ * Copyright 1998-2003 The OpenLDAP Foundation, Redwood City, California, USA
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
#define LBER_OPT_SUCCESS (0)
#define LBER_OPT_ERROR (-1)
+#define LBER_ELEMENT_SIZEOF (256) /* must be >= sizeof(BerElement) */
typedef struct berelement BerElement;
typedef struct sockbuf Sockbuf;
typedef struct seqorset Seqorset;
char *bv_val;
} BerValue;
-typedef BerValue *BVarray; /* To distinguish from a single bv */
+typedef BerValue *BerVarray; /* To distinguish from a single bv */
/* this should be moved to lber-int.h */
LBER_F( ber_tag_t )
ber_get_stringbv LDAP_P((
BerElement *ber,
- struct berval *bv ));
+ struct berval *bv,
+ int alloc ));
LBER_F( ber_tag_t )
ber_get_stringa LDAP_P((
LBER_F( int )
ber_put_berval LDAP_P((
BerElement *ber,
- LDAP_CONST struct berval *bv,
+ struct berval *bv,
ber_tag_t tag ));
LBER_F( int )
ber_len_t *len,
BerElement *ber ));
+LBER_F( void )
+ber_init2 LDAP_P((
+ BerElement *ber,
+ struct berval *bv,
+ int options ));
+
LBER_F( void )
ber_init_w_nullc LDAP_P(( /* DEPRECATED */
BerElement *ber,
BerElement *ber,
struct berval **bvPtr ));
+LBER_F( int )
+ber_flatten2 LDAP_P((
+ BerElement *ber,
+ struct berval *bv,
+ int alloc ));
+
/*
* LBER ber accessor functions
*/
LBER_F( struct berval * )
ber_dupbv LDAP_P((
- struct berval *dst, LDAP_CONST struct berval *src ));
+ struct berval *dst, struct berval *src ));
-#define ber_bvdup(bv) ber_dupbv(NULL, bv)
+LBER_F( struct berval * )
+ber_bvdup LDAP_P((
+ struct berval *src ));
LBER_F( struct berval * )
ber_str2bv LDAP_P((
LDAP_CONST char *, ber_len_t len, int dup, struct berval *bv));
+LBER_F( struct berval * )
+ber_mem2bv LDAP_P((
+ LDAP_CONST char *, ber_len_t len, int dup, struct berval *bv));
+
#define ber_bvstr(a) ber_str2bv(a, 0, 0, NULL)
#define ber_bvstrdup(a) ber_str2bv(a, 0, 1, NULL)
ber_strdup LDAP_P((
LDAP_CONST char * ));
+LBER_F( void )
+ber_bvarray_free LDAP_P(( BerVarray p ));
+
+LBER_F( int )
+ber_bvarray_add LDAP_P(( BerVarray *p, BerValue *bv ));
+
+#define ber_bvcmp(v1,v2) \
+ ((v1)->bv_len < (v2)->bv_len \
+ ? -1 : ((v1)->bv_len > (v2)->bv_len \
+ ? 1 : memcmp((v1)->bv_val, (v2)->bv_val, (v1)->bv_len) ))
+
/*
* error.c
*/