version 1.16, 2002/01/16 18:18:41
|
version 1.35, 2006/01/03 22:12:05
|
Line 1
|
Line 1
|
/* $OpenLDAP: pkg/ldap/include/lber_pvt.h,v 1.15 2002/01/16 18:03:31 kurt Exp $ */ |
/* $OpenLDAP: pkg/ldap/include/lber_pvt.h,v 1.34 2005/11/14 14:41:08 hallvard Exp $ */ |
/* |
/* This work is part of OpenLDAP Software <http://www.openldap.org/>. |
* Copyright 1998-2002 The OpenLDAP Foundation, Redwood City, California, USA |
* |
|
* Copyright 1998-2006 The OpenLDAP Foundation. |
* All rights reserved. |
* All rights reserved. |
* |
* |
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted only as authorized by the OpenLDAP |
* modification, are permitted only as authorized by the OpenLDAP |
* Public License. A copy of this license is available at |
* Public License. |
* http://www.OpenLDAP.org/license.html or in file LICENSE in the |
* |
* top-level directory of the distribution. |
* A copy of this license is available in file LICENSE in the |
|
* top-level directory of the distribution or, alternatively, at |
|
* <http://www.OpenLDAP.org/license.html>. |
*/ |
*/ |
|
|
/* |
/* |
* lber_pvt.h - Header for ber_pvt_ functions. These are meant to be used |
* lber_pvt.h - Header for ber_pvt_ functions. |
* by the OpenLDAP distribution only. |
* These are meant to be internal to OpenLDAP Software. |
*/ |
*/ |
|
|
#ifndef _LBER_PVT_H |
#ifndef _LBER_PVT_H |
Line 21
|
Line 25
|
|
|
LDAP_BEGIN_DECL |
LDAP_BEGIN_DECL |
|
|
|
/* for allocating aligned buffers (on the stack) */ |
|
#define LBER_ALIGNED_BUFFER(uname,size) \ |
|
union uname { \ |
|
char buffer[size]; \ |
|
/* force alignment */ \ |
|
int ialign; \ |
|
long lalign; \ |
|
float falign; \ |
|
double dalign; \ |
|
char* palign; \ |
|
} |
|
|
|
#define LBER_ELEMENT_SIZEOF (256) /* must be >= sizeof(BerElement) */ |
|
typedef LBER_ALIGNED_BUFFER(lber_berelement_u,LBER_ELEMENT_SIZEOF) |
|
BerElementBuffer; |
|
|
typedef struct sockbuf_buf { |
typedef struct sockbuf_buf { |
ber_len_t buf_size; |
ber_len_t buf_size; |
ber_len_t buf_ptr; |
ber_len_t buf_ptr; |
Line 61 ber_pvt_sb_copy_out LDAP_P(( Sockbuf_Buf
|
Line 81 ber_pvt_sb_copy_out LDAP_P(( Sockbuf_Buf
|
LBER_F( int ) |
LBER_F( int ) |
ber_pvt_socket_set_nonblock LDAP_P(( ber_socket_t sd, int nb )); |
ber_pvt_socket_set_nonblock LDAP_P(( ber_socket_t sd, int nb )); |
|
|
|
/* |
|
* memory.c |
|
*/ |
|
LBER_F( void * ) |
|
ber_memalloc_x LDAP_P(( |
|
ber_len_t s, void *ctx)); |
|
|
|
LBER_F( void * ) |
|
ber_memrealloc_x LDAP_P(( |
|
void* p, |
|
ber_len_t s, void *ctx )); |
|
|
|
LBER_F( void * ) |
|
ber_memcalloc_x LDAP_P(( |
|
ber_len_t n, |
|
ber_len_t s, void *ctx )); |
|
|
|
LBER_F( void ) |
|
ber_memfree_x LDAP_P(( |
|
void* p, void *ctx )); |
|
|
|
LBER_F( void ) |
|
ber_memvfree_x LDAP_P(( |
|
void** vector, void *ctx )); |
|
|
|
LBER_F( void ) |
|
ber_bvfree_x LDAP_P(( |
|
struct berval *bv, void *ctx )); |
|
|
|
LBER_F( void ) |
|
ber_bvecfree_x LDAP_P(( |
|
struct berval **bv, void *ctx )); |
|
|
|
LBER_F( int ) |
|
ber_bvecadd_x LDAP_P(( |
|
struct berval ***bvec, |
|
struct berval *bv, void *ctx )); |
|
|
|
LBER_F( struct berval * ) |
|
ber_dupbv_x LDAP_P(( |
|
struct berval *dst, struct berval *src, void *ctx )); |
|
|
|
LBER_F( struct berval * ) |
|
ber_str2bv_x LDAP_P(( |
|
LDAP_CONST char *, ber_len_t len, int dup, struct berval *bv, void *ctx)); |
|
|
|
LBER_F( struct berval * ) |
|
ber_mem2bv_x LDAP_P(( |
|
LDAP_CONST char *, ber_len_t len, int dup, struct berval *bv, void *ctx)); |
|
|
|
LBER_F( char * ) |
|
ber_strdup_x LDAP_P(( |
|
LDAP_CONST char *, void *ctx )); |
|
|
|
LBER_F( struct berval * ) |
|
ber_bvreplace_x LDAP_P(( |
|
struct berval *dst, LDAP_CONST struct berval *src, void *ctx )); |
|
|
|
LBER_F( void ) |
|
ber_bvarray_free_x LDAP_P(( BerVarray p, void *ctx )); |
|
|
|
LBER_F( int ) |
|
ber_bvarray_add_x LDAP_P(( BerVarray *p, BerValue *bv, void *ctx )); |
|
|
#if 0 |
#if 0 |
#define ber_bvstrcmp(v1,v2) \ |
#define ber_bvstrcmp(v1,v2) \ |
Line 81 ber_pvt_socket_set_nonblock LDAP_P(( ber
|
Line 164 ber_pvt_socket_set_nonblock LDAP_P(( ber
|
( (v1)->bv_len == 1 && (v1)->bv_val[0] == (c) ) |
( (v1)->bv_len == 1 && (v1)->bv_val[0] == (c) ) |
|
|
#define ber_strccmp(s,c) \ |
#define ber_strccmp(s,c) \ |
((s)[1] == '\0' && (s)[0] == (c) ) |
( (s)[0] == (c) && (s)[1] == '\0' ) |
|
|
|
#define ber_bvchr(bv,c) \ |
|
((char *) memchr( (bv)->bv_val, (c), (bv)->bv_len )) |
|
|
|
#define ber_bvrchr(bv,c) \ |
|
((char *) memrchr( (bv)->bv_val, (c), (bv)->bv_len )) |
|
|
|
#define ber_bvchr_right(dst,bv,c) \ |
|
do { \ |
|
(dst)->bv_val = memchr( (bv)->bv_val, (c), (bv)->bv_len ); \ |
|
(dst)->bv_len = (dst)->bv_val ? (bv)->bv_len - ((dst)->bv_val - (bv)->bv_val) : 0; \ |
|
} while (0) |
|
|
|
#define ber_bvchr_left(dst,bv,c) \ |
|
do { \ |
|
(dst)->bv_val = memchr( (bv)->bv_val, (c), (bv)->bv_len ); \ |
|
(dst)->bv_len = (dst)->bv_val ? ((dst)->bv_val - (bv)->bv_val) : (bv)->bv_len; \ |
|
(dst)->bv_val = (bv)->bv_val; \ |
|
} while (0) |
|
|
|
#define ber_bvrchr_right(dst,bv,c) \ |
|
do { \ |
|
(dst)->bv_val = memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \ |
|
(dst)->bv_len = (dst)->bv_val ? (bv)->bv_len - ((dst)->bv_val - (bv)->bv_val) : 0; \ |
|
} while (0) |
|
|
|
#define ber_bvrchr_left(dst,bv,c) \ |
|
do { \ |
|
(dst)->bv_val = memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \ |
|
(dst)->bv_len = (dst)->bv_val ? ((dst)->bv_val - (bv)->bv_val) : (bv)->bv_len; \ |
|
(dst)->bv_val = (bv)->bv_val; \ |
|
} while (0) |
|
|
|
#define BER_BVC(s) { STRLENOF(s), (s) } |
|
#define BER_BVNULL { 0L, NULL } |
|
#define BER_BVZERO(bv) \ |
|
do { \ |
|
(bv)->bv_len = 0; \ |
|
(bv)->bv_val = NULL; \ |
|
} while (0) |
|
#define BER_BVSTR(bv,s) \ |
|
do { \ |
|
(bv)->bv_len = STRLENOF(s); \ |
|
(bv)->bv_val = (s); \ |
|
} while (0) |
|
#define BER_BVISNULL(bv) ((bv)->bv_val == NULL) |
|
#define BER_BVISEMPTY(bv) ((bv)->bv_len == 0) |
|
|
LDAP_END_DECL |
LDAP_END_DECL |
|
|