master
 1/**
 2 * This file is part of the mingw-w64 runtime package.
 3 * No warranty is given; refer to the file DISCLAIMER within this package.
 4 */
 5
 6#ifndef _WINBER_DEFINED_
 7#define _WINBER_DEFINED_
 8
 9#include <winapifamily.h>
10
11#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17#ifndef _WINBER_
18#define WINBERAPI DECLSPEC_IMPORT
19#else
20#define WINBERAPI
21#endif
22
23#ifndef BERAPI
24#define BERAPI __cdecl
25#endif
26
27#define LBER_ERROR __MSABI_LONG(0xffffffff)
28#define LBER_DEFAULT __MSABI_LONG(0xffffffff)
29
30  typedef unsigned int ber_tag_t;
31  typedef int ber_int_t;
32  typedef unsigned int ber_uint_t;
33  typedef unsigned int ber_len_t;
34  typedef int ber_slen_t;
35
36  WINBERAPI BerElement *BERAPI ber_init (BERVAL *pBerVal);
37  WINBERAPI VOID BERAPI ber_free (BerElement *pBerElement, INT fbuf);
38  WINBERAPI VOID BERAPI ber_bvfree (BERVAL *pBerVal);
39  WINBERAPI VOID BERAPI ber_bvecfree (PBERVAL *pBerVal);
40  WINBERAPI BERVAL *BERAPI ber_bvdup (BERVAL *pBerVal);
41  WINBERAPI BerElement *BERAPI ber_alloc_t (INT options);
42  WINBERAPI ULONG BERAPI ber_skip_tag (BerElement *pBerElement, ULONG *pLen);
43  WINBERAPI ULONG BERAPI ber_peek_tag (BerElement *pBerElement, ULONG *pLen);
44  WINBERAPI ULONG BERAPI ber_first_element (BerElement *pBerElement, ULONG *pLen, CHAR **ppOpaque);
45  WINBERAPI ULONG BERAPI ber_next_element (BerElement *pBerElement, ULONG *pLen, CHAR *opaque);
46  WINBERAPI INT BERAPI ber_flatten (BerElement *pBerElement, PBERVAL *pBerVal);
47  WINBERAPI INT BERAPI ber_printf (BerElement *pBerElement, PSTR fmt,...);
48  WINBERAPI ULONG BERAPI ber_scanf (BerElement *pBerElement, PSTR fmt,...);
49
50#ifdef __cplusplus
51}
52#endif
53
54#endif
55
56#endif