/usr/include/xmlsec1/xmlsec/xmlsec.h is in libxmlsec1-dev 1.2.25-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | /*
* XML Security Library (http://www.aleksey.com/xmlsec).
*
* General functions and forward declarations.
*
* This is free software; see Copyright file in the source
* distribution for preciese wording.
*
* Copyright (C) 2002-2016 Aleksey Sanin <aleksey@aleksey.com>. All Rights Reserved.
*/
#ifndef __XMLSEC_H__
#define __XMLSEC_H__
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include <libxml/tree.h>
#include <xmlsec/version.h>
#include <xmlsec/exports.h>
#include <xmlsec/strings.h>
/***********************************************************************
*
* Basic types to make ports to exotic platforms easier
*
***********************************************************************/
/**
* xmlSecPtr:
*
* Void pointer.
*/
typedef void* xmlSecPtr;
/**
* xmlSecSize:
*
* Size of something. Should be typedef instead of define
* but it will break ABI (todo).
*/
#ifdef XMLSEC_NO_SIZE_T
#define xmlSecSize unsigned int
#else /* XMLSEC_NO_SIZE_T */
#define xmlSecSize size_t
#endif /* XMLSEC_NO_SIZE_T */
/**
* XMLSEC_SIZE_BAD_CAST:
* @val: the value to cast
*
* Bad cast to xmlSecSize
*/
#define XMLSEC_SIZE_BAD_CAST(val) ((xmlSecSize)(val))
/**
* xmlSecByte:
*
* One byte. Should be typedef instead of define
* but it will break ABI (todo).
*/
#define xmlSecByte unsigned char
/***********************************************************************
*
* Forward declarations
*
***********************************************************************/
typedef struct _xmlSecKeyData xmlSecKeyData, *xmlSecKeyDataPtr;
typedef struct _xmlSecKeyDataStore xmlSecKeyDataStore, *xmlSecKeyDataStorePtr;
typedef struct _xmlSecKeyInfoCtx xmlSecKeyInfoCtx, *xmlSecKeyInfoCtxPtr;
typedef struct _xmlSecKey xmlSecKey, *xmlSecKeyPtr;
typedef struct _xmlSecKeyStore xmlSecKeyStore, *xmlSecKeyStorePtr;
typedef struct _xmlSecKeysMngr xmlSecKeysMngr, *xmlSecKeysMngrPtr;
typedef struct _xmlSecTransform xmlSecTransform, *xmlSecTransformPtr;
typedef struct _xmlSecTransformCtx xmlSecTransformCtx, *xmlSecTransformCtxPtr;
#ifndef XMLSEC_NO_XMLDSIG
typedef struct _xmlSecDSigCtx xmlSecDSigCtx, *xmlSecDSigCtxPtr;
#endif /* XMLSEC_NO_XMLDSIG */
#ifndef XMLSEC_NO_XMLENC
typedef struct _xmlSecEncCtx xmlSecEncCtx, *xmlSecEncCtxPtr;
#endif /* XMLSEC_NO_XMLENC */
XMLSEC_EXPORT int xmlSecInit (void);
XMLSEC_EXPORT int xmlSecShutdown (void);
XMLSEC_EXPORT const xmlChar * xmlSecGetDefaultCrypto (void);
XMLSEC_EXPORT void xmlSecSetExternalEntityLoader (xmlExternalEntityLoader);
/**
* XMLSEC_CRYPTO:
*
* Macro. Deprecated. Defined for backward compatibility only. Do not use
* in your code and use xmlSecGetDefaultCrypto() function instead.
*
* Returns the default crypto engine.
*/
#define XMLSEC_CRYPTO (xmlSecGetDefaultCrypto())
/*
* XMLSEC_DEPRECATED function definition
*/
#if !defined(IN_XMLSEC)
#ifdef __GNUC__
#define XMLSEC_DEPRECATED __attribute__((deprecated))
#elif defined(_MSC_VER)
#define XMLSEC_DEPRECATED __declspec(deprecated)
#else /* defined(_MSC_VER) */
#pragma message("WARNING: You need to implement XMLSEC_DEPRECATED for this compiler")
#define XMLSEC_DEPRECATED
#endif /* defined(_MSC_VER) */
#else /* !defined(IN_XMLSEC) */
#define XMLSEC_DEPRECATED
#endif /* !defined(IN_XMLSEC) */
/***********************************************************************
*
* Version checking
*
***********************************************************************/
/**
* xmlSecCheckVersionExact:
*
* Macro. Returns 1 if the loaded xmlsec library version exactly matches
* the one used to compile the caller, 0 if it does not or a negative
* value if an error occurs.
*/
#define xmlSecCheckVersionExact() \
xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionExactMatch)
/**
* xmlSecCheckVersion:
*
* Macro. Returns 1 if the loaded xmlsec library version ABI compatible with
* the one used to compile the caller, 0 if it does not or a negative
* value if an error occurs.
*/
#define xmlSecCheckVersion() \
xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionABICompatible)
/**
* xmlSecCheckVersionMode:
* @xmlSecCheckVersionExactMatch: the version should match exactly.
* @xmlSecCheckVersionABICompatible: the version should be ABI compatible.
*
* The xmlsec library version mode.
*/
typedef enum {
xmlSecCheckVersionExactMatch = 0,
xmlSecCheckVersionABICompatible
} xmlSecCheckVersionMode;
XMLSEC_EXPORT int xmlSecCheckVersionExt (int major,
int minor,
int subminor,
xmlSecCheckVersionMode mode);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __XMLSEC_H__ */
|