~ubuntu-branches/ubuntu/feisty/apache2/feisty

« back to all changes in this revision

Viewing changes to srclib/apr-util/include/apu_version.h

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Barth
  • Date: 2006-12-09 21:05:45 UTC
  • mfrom: (0.6.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20061209210545-h70s0xaqc2v8vqr2
Tags: 2.2.3-3.2
* Non-maintainer upload.
* 043_ajp_connection_reuse: Patch from upstream Bugzilla, fixing a critical
  issue with regard to connection reuse in mod_proxy_ajp.
  Closes: #396265

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Copyright 2000-2005 The Apache Software Foundation or its licensors, as
 
2
 * applicable.
 
3
 *
 
4
 * Licensed under the Apache License, Version 2.0 (the "License");
 
5
 * you may not use this file except in compliance with the License.
 
6
 * You may obtain a copy of the License at
 
7
 *
 
8
 *     http://www.apache.org/licenses/LICENSE-2.0
 
9
 *
 
10
 * Unless required by applicable law or agreed to in writing, software
 
11
 * distributed under the License is distributed on an "AS IS" BASIS,
 
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
13
 * See the License for the specific language governing permissions and
 
14
 * limitations under the License.
 
15
 */
 
16
 
 
17
#ifndef APU_VERSION_H
 
18
#define APU_VERSION_H
 
19
 
 
20
/**
 
21
 * @file apu_version.h
 
22
 * @brief APR-util Versioning Interface
 
23
 * 
 
24
 * APR-util's Version
 
25
 *
 
26
 * There are several different mechanisms for accessing the version. There
 
27
 * is a string form, and a set of numbers; in addition, there are constants
 
28
 * which can be compiled into your application, and you can query the library
 
29
 * being used for its actual version.
 
30
 *
 
31
 * Note that it is possible for an application to detect that it has been
 
32
 * compiled against a different version of APU by use of the compile-time
 
33
 * constants and the use of the run-time query function.
 
34
 *
 
35
 * APU version numbering follows the guidelines specified in:
 
36
 *
 
37
 *     http://apr.apache.org/versioning.html
 
38
 */
 
39
 
 
40
 
 
41
/* The numeric compile-time version constants. These constants are the
 
42
 * authoritative version numbers for APU. 
 
43
 */
 
44
 
 
45
/** major version 
 
46
 * Major API changes that could cause compatibility problems for older
 
47
 * programs such as structure size changes.  No binary compatibility is
 
48
 * possible across a change in the major version.
 
49
 */
 
50
#define APU_MAJOR_VERSION       1
 
51
 
 
52
/** minor version
 
53
 * Minor API changes that do not cause binary compatibility problems.
 
54
 * Reset to 0 when upgrading APU_MAJOR_VERSION
 
55
 */
 
56
#define APU_MINOR_VERSION       2
 
57
 
 
58
/** patch level 
 
59
 * The Patch Level never includes API changes, simply bug fixes.
 
60
 * Reset to 0 when upgrading APR_MINOR_VERSION
 
61
 */
 
62
#define APU_PATCH_VERSION       7
 
63
 
 
64
/** 
 
65
 * The symbol APU_IS_DEV_VERSION is only defined for internal,
 
66
 * "development" copies of APU.  It is undefined for released versions
 
67
 * of APU.
 
68
 */
 
69
#undef APU_IS_DEV_VERSION
 
70
 
 
71
 
 
72
#if defined(APU_IS_DEV_VERSION) || defined(DOXYGEN)
 
73
/** Internal: string form of the "is dev" flag */
 
74
#define APU_IS_DEV_STRING "-dev"
 
75
#else
 
76
#define APU_IS_DEV_STRING ""
 
77
#endif
 
78
 
 
79
 
 
80
#ifndef APU_STRINGIFY
 
81
/** Properly quote a value as a string in the C preprocessor */
 
82
#define APU_STRINGIFY(n) APU_STRINGIFY_HELPER(n)
 
83
/** Helper macro for APU_STRINGIFY */
 
84
#define APU_STRINGIFY_HELPER(n) #n
 
85
#endif
 
86
 
 
87
/** The formatted string of APU's version */
 
88
#define APU_VERSION_STRING \
 
89
     APU_STRINGIFY(APU_MAJOR_VERSION) "." \
 
90
     APU_STRINGIFY(APU_MINOR_VERSION) "." \
 
91
     APU_STRINGIFY(APU_PATCH_VERSION) \
 
92
     APU_IS_DEV_STRING
 
93
 
 
94
/** An alternative formatted string of APR's version */
 
95
/* macro for Win32 .rc files using numeric csv representation */
 
96
#define APU_VERSION_STRING_CSV APU_MAJOR_VERSION ##, \
 
97
                             ##APU_MINOR_VERSION ##, \
 
98
                             ##APU_PATCH_VERSION
 
99
 
 
100
 
 
101
#ifndef APU_VERSION_ONLY
 
102
 
 
103
/* The C language API to access the version at run time, 
 
104
 * as opposed to compile time.  APU_VERSION_ONLY may be defined 
 
105
 * externally when preprocessing apr_version.h to obtain strictly 
 
106
 * the C Preprocessor macro declarations.
 
107
 */
 
108
 
 
109
#include "apr_version.h"
 
110
 
 
111
#include "apu.h"
 
112
 
 
113
#ifdef __cplusplus
 
114
extern "C" {
 
115
#endif
 
116
 
 
117
/**
 
118
 * Return APR-util's version information information in a numeric form.
 
119
 *
 
120
 *  @param pvsn Pointer to a version structure for returning the version
 
121
 *              information.
 
122
 */
 
123
APU_DECLARE(void) apu_version(apr_version_t *pvsn);
 
124
 
 
125
/** Return APU's version information as a string. */
 
126
APU_DECLARE(const char *) apu_version_string(void);
 
127
 
 
128
#ifdef __cplusplus
 
129
}
 
130
#endif
 
131
 
 
132
#endif /* ndef APU_VERSION_ONLY */
 
133
 
 
134
#endif /* ndef APU_VERSION_H */