Return-Path: Delivered-To: apmail-httpd-cvs-archive@www.apache.org Received: (qmail 1049 invoked from network); 10 Mar 2009 01:09:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 10 Mar 2009 01:09:22 -0000 Received: (qmail 62023 invoked by uid 500); 10 Mar 2009 01:09:19 -0000 Delivered-To: apmail-httpd-cvs-archive@httpd.apache.org Received: (qmail 61959 invoked by uid 500); 10 Mar 2009 01:09:18 -0000 Mailing-List: contact cvs-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list cvs@httpd.apache.org Received: (qmail 61944 invoked by uid 99); 10 Mar 2009 01:09:18 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 09 Mar 2009 18:09:18 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 10 Mar 2009 01:09:08 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 5AEBD2388D9B; Tue, 10 Mar 2009 01:08:17 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: svn commit: r751931 [14/37] - in /httpd/site/trunk: docs/apreq/docs/libapreq2/ xdocs/apreq/docs/libapreq2/ Date: Tue, 10 Mar 2009 01:08:12 -0000 To: cvs@httpd.apache.org From: joes@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090310010817.5AEBD2388D9B@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h-source.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h-source.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h-source.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h-source.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: include/apreq_version.h Source File + libapreq2-2.12: libapreq2: include/apreq_version.h Source File - + + + + +

include/apreq_version.h

Go to the documentation of this file.
00001 /*
-00002 **  Copyright 2003-2006  The Apache Software Foundation
-00003 **
-00004 **  Licensed under the Apache License, Version 2.0 (the "License");
-00005 **  you may not use this file except in compliance with the License.
-00006 **  You may obtain a copy of the License at
-00007 **
-00008 **      http://www.apache.org/licenses/LICENSE-2.0
-00009 **
-00010 **  Unless required by applicable law or agreed to in writing, software
-00011 **  distributed under the License is distributed on an "AS IS" BASIS,
-00012 **  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-00013 **  See the License for the specific language governing permissions and
-00014 **  limitations under the License.
-00015 */
-00016 
-00017 #ifndef APREQ_VERSION_H
-00018 #define APREQ_VERSION_H
-00019 
-00020 #ifdef __cplusplus
-00021 extern "C" {
-00022 #endif
-00023 
-00024 #include "apr_version.h"
-00025 #include "apreq.h"
-00026 
-00046 /* The numeric compile-time version constants. These constants are the
-00047  * authoritative version numbers for libapreq.
-00048  */
-00049 
-00055 #define APREQ_MAJOR_VERSION       2
-00056 
-00061 #define APREQ_MINOR_VERSION       6
-00062 
-00064 #define APREQ_PATCH_VERSION       0
-00065 
-00070 #undef APREQ_IS_DEV_VERSION
-00071 
-00072 
-00074 #define APREQ_VERSION_STRING \
-00075      APR_STRINGIFY(APREQ_MAJOR_VERSION) "." \
-00076      APR_STRINGIFY(APREQ_MINOR_VERSION) "." \
-00077      APR_STRINGIFY(APREQ_PATCH_VERSION) \
-00078      APREQ_IS_DEV_STRING
-00079 
-00086 APREQ_DECLARE(void) apreq_version(apr_version_t *pvsn);
-00087 
-00089 APREQ_DECLARE(const char *) apreq_version_string(void);
-00090 
+00002 **  Licensed to the Apache Software Foundation (ASF) under one or more
+00003 ** contributor license agreements.  See the NOTICE file distributed with
+00004 ** this work for additional information regarding copyright ownership.
+00005 ** The ASF licenses this file to You under the Apache License, Version 2.0
+00006 ** (the "License"); you may not use this file except in compliance with
+00007 ** the License.  You may obtain a copy of the License at
+00008 **
+00009 **      http://www.apache.org/licenses/LICENSE-2.0
+00010 **
+00011 **  Unless required by applicable law or agreed to in writing, software
+00012 **  distributed under the License is distributed on an "AS IS" BASIS,
+00013 **  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+00014 **  See the License for the specific language governing permissions and
+00015 **  limitations under the License.
+00016 */
+00017 
+00018 #ifndef APREQ_VERSION_H
+00019 #define APREQ_VERSION_H
+00020 
+00021 #ifdef __cplusplus
+00022 extern "C" {
+00023 #endif
+00024 
+00025 #include "apr_version.h"
+00026 #include "apreq.h"
+00027 
+00047 /* The numeric compile-time version constants. These constants are the
+00048  * authoritative version numbers for libapreq.
+00049  */
+00050 
+00056 #define APREQ_MAJOR_VERSION       2
+00057 
+00062 #define APREQ_MINOR_VERSION       7
+00063 
+00065 #define APREQ_PATCH_VERSION       1
+00066 
+00071 #undef APREQ_IS_DEV_VERSION
+00072 
+00073 
+00075 #define APREQ_VERSION_STRING \
+00076      APR_STRINGIFY(APREQ_MAJOR_VERSION) "." \
+00077      APR_STRINGIFY(APREQ_MINOR_VERSION) "." \
+00078      APR_STRINGIFY(APREQ_PATCH_VERSION) \
+00079      APREQ_IS_DEV_STRING
+00080 
+00087 APREQ_DECLARE(void) apreq_version(apr_version_t *pvsn);
+00088 
+00090 APREQ_DECLARE(const char *) apreq_version_string(void);
 00091 
-00093 #ifdef APREQ_IS_DEV_VERSION
-00094 #define APREQ_IS_DEV_STRING "-dev"
-00095 #else
-00096 #define APREQ_IS_DEV_STRING ""
-00097 #endif
-00098 
-00099 
-00100 #ifdef __cplusplus
-00101 }
-00102 #endif
-00103 
-00104 #endif /* APREQ_VERSION_H */
+00092 
+00094 #ifdef APREQ_IS_DEV_VERSION
+00095 #define APREQ_IS_DEV_STRING "-dev"
+00096 #else
+00097 #define APREQ_IS_DEV_STRING ""
+00098 #endif
+00099 
+00100 
+00101 #ifdef __cplusplus
+00102 }
+00103 #endif
+00104 
+00105 #endif /* APREQ_VERSION_H */
 
Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq__version_8h.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: include/apreq_version.h File Reference + libapreq2-2.12: libapreq2: include/apreq_version.h File Reference - + + + -

include/apreq_version.h File Reference

Versioning API for libapreq

-There are several different mechanisms for accessing the version. There is a string form, and a set of numbers; in addition, there are constants which can be compiled into your application, and you can query the library being used for its actual version. More... + + +

include/apreq_version.h File Reference

Versioning API for libapreq. More...

-#include "apr_version.h"
+#include "apr_version.h"
#include "apreq.h"

Go to the source code of this file. - + - + - + - + - + - + - +

Defines

#define APREQ_MAJOR_VERSION   2
#define APREQ_MAJOR_VERSION   2
#define APREQ_MINOR_VERSION   6
#define APREQ_MINOR_VERSION   7
#define APREQ_PATCH_VERSION   0
#define APREQ_PATCH_VERSION   1
#define APREQ_VERSION_STRING
#define APREQ_VERSION_STRING
#define APREQ_IS_DEV_STRING   ""
#define APREQ_IS_DEV_STRING   ""

Functions

void apreq_version (apr_version_t *pvsn)
void apreq_version (apr_version_t *pvsn)
const char * apreq_version_string (void)
const char * apreq_version_string (void)


Detailed Description

-Versioning API for libapreq

-There are several different mechanisms for accessing the version. There is a string form, and a set of numbers; in addition, there are constants which can be compiled into your application, and you can query the library being used for its actual version. +Versioning API for libapreq.

+There are several different mechanisms for accessing the version. There is a string form, and a set of numbers; in addition, there are constants which can be compiled into your application, and you can query the library being used for its actual version.

Note that it is possible for an application to detect that it has been compiled against a different version of libapreq by use of the compile-time constants and the use of the run-time query function.

libapreq version numbering follows the guidelines specified in:

http://apr.apache.org/versioning.html


Define Documentation

-

- - - - -
- + +
+
+
- +
#define APREQ_IS_DEV_STRING   "" #define APREQ_IS_DEV_STRING   ""
-
- - - - - -
-   - + +

-Internal: string form of the "is dev" flag

-

- - - - -
- +Internal: string form of the "is dev" flag + +

+ +

+
+
- +
#define APREQ_MAJOR_VERSION   2 #define APREQ_MAJOR_VERSION   2
-
- - - - - -
-   - + +

-major version Major API changes that could cause compatibility problems for older programs such as structure size changes. No binary compatibility is possible across a change in the major version.

-

- - - - -
- +major version Major API changes that could cause compatibility problems for older programs such as structure size changes. No binary compatibility is possible across a change in the major version. + +

+ +

+
+
- +
#define APREQ_MINOR_VERSION   6 #define APREQ_MINOR_VERSION   7
-
- - - - - -
-   - + +

-Minor API changes that do not cause binary compatibility problems. Should be reset to 0 when upgrading APREQ_MAJOR_VERSION

-

- - - - -
- +Minor API changes that do not cause binary compatibility problems. Should be reset to 0 when upgrading APREQ_MAJOR_VERSION + +

+ +

+
+
- +
#define APREQ_PATCH_VERSION   0 #define APREQ_PATCH_VERSION   1
-
- - - - - -
-   - + +

-patch level

-

- - - - -
- +patch level + +

+ +

+
+
- +
#define APREQ_VERSION_STRING #define APREQ_VERSION_STRING
-
- - - - - -
-   - + +

-Value:

The formatted string of libapreq's version
+Value:

The formatted string of libapreq's version + +


Function Documentation

-

- - - - -
- - - - - - - - + +
+
+
void apreq_version apr_version_t pvsn  ) 
+ + + + + + +
void apreq_version (apr_version_t pvsn  ) 
-
- - - -
-   - + +

Return libapreq's version information information in a numeric form.

@@ -209,44 +162,36 @@

pvsn Pointer to a version structure for returning the version information.
- - - -

- - - - -
- - - - - - - - + + +

+ +

+
+
const char* apreq_version_string void   ) 
+ + + + + + +
const char* apreq_version_string (void   ) 
-
- - - - - -
-   - + +

-Return libapreq's version information as a string.

+Return libapreq's version information as a string. + +

Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_changes.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_changes.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_changes.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_changes.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: CHANGES + libapreq2-2.12: libapreq2: CHANGES - +
-

CHANGES

! brief List of major changes.

+ + +

CHANGES

! brief List of major changes.

+Changes with libapreq2-2.12 (released March 13, 2009)

+
    +
  • C API [joes] Make the cookie parser a little more flexible.
+

+Changes with libapreq2-2.11 (not released)

+
    +
  • Interactive CGI module [issac] Allow cgi module to interactively prompt for parameters and cookies when running a script from the command line and not from a CGI interface
+

+Changes with libapreq2-2.10 (not released)

+
    +
  • Perl Glue [joes] Fix the linking of the perl modules to libapreq2 and libapr on Solaris.
+

+

    +
  • Perl Glue [joes] Fix install-time linking issue of the .so modules. Previously they would remain linked against the src library path, not the install path.
+

+

+

+

    +
  • C API [joes] Clean up buggy apreq_hook_find_param().
+

+

    +
  • Perl Glue Build [Philip M. Gollucci] config.status format changed format yet again in autoconf 2.62+.
+

+

    +
  • License [Mladen Turk] Add libapreq.rc and generate libapreq.res
+

+

    +
  • Build [Mladen Turk] Add APREQ_DECLARE_EXPORT/APREQ_DECLARE_STATIC in the same way as APR declares so that dllexport/dllimport get correctly handled.
+

+

    +
  • Build [Randy Kobes] Add appropriate manifest command to embed manifest files on Win32 when using VC8
+

+

+

+

    +
  • C API [suggested by Vinay Y S, tested by Steve Hay and Peter Walsham] For Win32, remove the flag |= APR_FILE_NOCLEANUP | APR_SHARELOCK; in apreq_file_cleanup, to avoid problems with file uploads.
+

+Changes with libapreq2-2.09 ( not released)

+ +

+

    +
  • Build [Philip M. Gollucci] SunOS (Solaris) Users must use gmake not make for building.
+

+

    +
  • Build [Philip M. Gollucci] SunOS (Solaris) Code around bug in libtool (at least in 1.5.18, 1.5.20, 1.5.22) causing mod_apreq2 to be built instead of mod_apreq2.so
+

+

    +
  • C API [Philip M. Gollucci] Fix comparison signed vs unsigned comparison in apreq_fwritev() on SunOS/gcc where iovec.iov_len is a long.
+

+

    +
  • Build [Philip M. Gollucci] SunOS (Solaris) fix duplicate link error to libexpat.so -- by using the one from httpd exclusively now.
+

+

    +
  • Build [Philip M. Gollucci] code around |_!!_#| autoconf 2.60 bug.
+

Changes with libapreq2-2.08 (released August 8, 2006)

    -
  • Perl API [Randy Kobes] add APR_FILE_NOCLEANUP | APR_SHARELOCK to flags passed to apreq_file_mktemp() on Win32 in library/util.c, in order to clean up occasional stray temp files left behind in the Perl upload test (reported by Steve Hay)
+
  • Perl API [Randy Kobes] add APR_FILE_NOCLEANUP | APR_SHARELOCK to flags passed to apreq_file_mktemp() on Win32 in library/util.c, in order to clean up occasional stray temp files left behind in the Perl upload test (reported by Steve Hay)
  • +
  • Build [Philip M. Gollucci, Bojan Smojver, joes] make input brigade volatile in order to give hints to GCC https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=193740 This fixes an infinite look split_on_bdry() of library/parser_multipart.c particularly on linux/gcc 4.x platforms.
    • Perl Glue Fix "value computed not used" gcc 4.1.x compile errors
    @@ -41,10 +100,10 @@
  • Perl Glue Build [Philip M. Gollucci] Regenerate glue/perl/xsbuilder/ppport.h to fix perl 5.8.8+ on some plaforms.
  • +
  • C API [joes] Add code for apreq_cookies().
    • -
    • Perl API [joes] Expose the constants in apreq_error.h via the APR::Request::Error package.
    +
  • Perl API [joes] Expose the constants in apreq_error.h via the APR::Request::Error package.
  • Changes with libapreq2-2.07 (released February 12, 2006)

      @@ -57,7 +116,7 @@
    • C API [Philip M. Gollucci] Use the APREQ_DEFAULT_READ_LIMIT constant for the read_limit

      -
    • C API [Ville Skytt�Dirk Nehring] Add explicit cast in apreq_escape()/apreq_util.h to keep C++ compilers happy.
    +
  • C API [Ville Skytt�Dirk Nehring] Add explicit cast in apreq_escape()/apreq_util.h to keep C++ compilers happy.
    • C API [joes] Protect against arbitrary recursion depth in apreq_parse_multipart() by adding a reasonable compile-time MAX_LEVEL limit.
    @@ -87,7 +146,7 @@
  • Perl API [joes] encode()/decode() were busted with zero-length args. This caused Apache2::Cookie::new() to segfault on cookie value of "".
  • +
  • C API [joes] Add apreq_charset_divine() and eliminate charset offset from return value of apreq_decode(v).
    • C API [joes] Improve the cp1252-charset heuristics for apreq_decode(v).
    @@ -112,7 +171,7 @@
  • Perl API [joes] Support for table set/add/delete methods is formally withdrawn. Technically this feature died with the module API refactoring in 2.05-dev.
  • +
  • C API [max] Right-hand limit of apreq_brigade_move() is declared as "excluding", but APR_RING_UNSPLICE() wants an "including" right-hand limit. Fixed this by passing the previous bucket.
    • Perl API [joes] Drop support for Apache2::Request::new's HOOK_DATA. UPLOAD_HOOK now takes only two arguments: ($upload, $data).
    @@ -149,7 +208,7 @@
  • Perl API [joes] Move bake, bake2 to Apache2::Cookie, now requiring an extra $r argument. Also ""-operator is mapped to as_string() for Apache2::Cookie; but APR::Request::Cookie maps it to value().
  • +
  • C API [joes] Remove header_in & header_out from apreq_module_t. Remove apreq_ua_cookie_version() and apreq_cookie_bake*(). Remove cookie2 argument to apreq_handle_custom().
    • C API [joes] s/APREQ/APREQ2/g in webserver configuration directives.
    @@ -158,24 +217,24 @@
  • C API [Igor Shevchenko, Philip Gollucci] Fix segfault in mfd parser caused by parts w/ empty param names.
  • +
  • C API [joes] Add apreq_cp1252_to_utf8().
    • C, Perl API [joes] Add charset support for params and couple the SvUTF8 flag to the param's taint flag.

    +
  • C API [joes] Replace v->size with v->nlen + v->dlen. Added supporting apreq_value_table_add().
    • C API [joes] Remove apreq_cookie_attr().

    • C API [joes]
        -
      • Add apreq_error.h, apreq_module.h.
      • Rename apreq_run* and apreq_make* funcs to conform with apreq_$obj_$meth scheme.
      • Replace c->version & c->secure with flags.
      • Parsers are assumed to be working with external data, so the cookies & params they produce are marked tainted.
      +
    • Add apreq_error.h, apreq_module.h.
    • Rename apreq_run* and apreq_make* funcs to conform with apreq_$obj_$meth scheme.
    • Replace c->version & c->secure with flags.
    • Parsers are assumed to be working with external data, so the cookies & params they produce are marked tainted.

      -
    • C API [joes] apreq_parse_cookie_header() failed to parse RFC Cookie headers which contained no space chars after the '$Version=1' preamble.
    +
  • C API [joes] apreq_parse_cookie_header() failed to parse RFC Cookie headers which contained no space chars after the '$Version=1' preamble.
    • C API [joes] Reorganize around include/, library/, and module/ dirs.
    @@ -193,14 +252,14 @@
  • C API [joes] Widespread API refactorization to remove apreq_jar_t and apreq_request_t:
    • -
    • Header includes reorganized; apreq_parsers.h added (back again).
    • Replaced apreq_jar_t and apreq_request_t with single apreq_env_handle_t.
    • Added const qualifier to "v" attribute of apreq_cookie_t and apreq_param_t.
    • Use union type-puns to drop const qualifiers inside the new apreq_value_to_cookie and apreq_value_to_param implementations (gcc generates same object code as the macro versions did).
    • Moved "flags" attribute from apreq_value_t to apreq_cookie_t and apreq_param_t.
    • Remove env argument from hooks and parsers.
    • Reduce apreq_env_module to minimal set of operations.
    • Replace apreq_log calls with apreq-specific error codes.
    • Hooks are called on each bo dy param now, not just during file uploads.
    • Tie the cgi handle to its creator pool.
    +
  • Header includes reorganized; apreq_parsers.h added (back again).
  • Replaced apreq_jar_t and apreq_request_t with single apreq_env_handle_t.
  • Added const qualifier to "v" attribute of apreq_cookie_t and apreq_param_t.
  • Use union type-puns to drop const qualifiers inside the new apreq_value_to_cookie and apreq_value_to_param implementations (gcc generates same object code as the macro versions did).
  • Moved "flags" attribute from apreq_value_t to apreq_cookie_t and apreq_param_t.
  • Remove env argument from hooks and parsers.
  • Reduce apreq_env_module to minimal set of operations.
  • Replace apreq_log calls with apreq-specific error codes.
  • Hooks are called on each body param now, not just during file uploads.
  • Tie the cgi handle to its creator pool.
  • Detailed changes by header file:

    -[apreq.h]

      -
    • Remove flags from apreq_value_t.
    • Remove const qualifier from apreq_value_t's "name" attribute.
    • Remove apreq_value_merge* and apreq_value_copy*.
    • Remove apreq_char_to_value, apreq_strtoval, and apreq_strlen.
    • Move apreq_enctype to apreq_env.h.
    • Move apreq_env_handle_t struct definition to apreq_env.h
    • Change signature of apreq_decode.
    • Move apreq_brigade_concat here, changed its signature and improved it alot.
    • Remove apreq_brigade_spoolfile.
    • Dropped APREQ_*_ENCTYPE, renamed some APREQ_$foo defaults APREQ_DEFAULT_$foo.
    • Added APREQ_ERROR_*.
    +[apreq.h]
      +
    • Remove flags from apreq_value_t.
    • Remove const qualifier from apreq_value_t's "name" attribute.
    • Remove apreq_value_merge* and apreq_value_copy*.
    • Remove apreq_char_to_value, apreq_strtoval, and apreq_strlen.
    • Move apreq_enctype to apreq_env.h.
    • Move apreq_env_handle_t struct definition to apreq_env.h
    • Change signature of apreq_decode.
    • Move apreq_brigade_concat here, changed its signature and improved it alot.
    • Remove apreq_brigade_spoolfile.
    • Dropped APREQ_*_ENCTYPE, renamed some APREQ_$foo defaults APREQ_DEFAULT_$foo.
    • Added APREQ_ERROR_*.

    -[apreq_cookie.h]

      -
    • Remove apreq_env.h include.
    • Remove apreq_jar_t.
    • Add "flags" to apreq_cookie_t, add const qualifier to its "v" attr.
    • Remove apreq_jar* functions.
    • Add apreq_parse_cookie_header.
    • Move apreq_cookie, apreq_cookie_bake(2), and apreq_ua_cookie_version to apreq_env.h.
    +[apreq_cookie.h]
      +
    • Remove apreq_env.h include.
    • Remove apreq_jar_t.
    • Add "flags" to apreq_cookie_t, add const qualifier to its "v" attr.
    • Remove apreq_jar* functions.
    • Add apreq_parse_cookie_header.
    • Move apreq_cookie, apreq_cookie_bake(2), and apreq_ua_cookie_version to apreq_env.h.

    [apreq_params.h]

    • Remove apreq_env.h include.
    • Remove apreq_request_t.
    • Add "flags" to apreq_param_t, and const qualifier to its "v" attr.
    • Rename "bb" attribute "upload" in apreq_param_t.
    • Remove apreq_request* functions.
    • Remove apreq_parse_request.
    • Changed apreq_decode_param signature.
    • Replace env argument with apr_table_t in apreq_params_as_array, apreq_params_as_string,
    • Move remaining apreq_param* to apreq_env.h.
    • Move parser and hook sections to apreq_parsers.h.
    • Change apreq_upload(s) old apreq_request_t arg to apr_table_t.
    @@ -233,7 +292,7 @@
  • C, Perl API [joes] Several upload-related bugfixes: 1) apreq_upload and apreq_uploads did not search the full body table, 2) $upload->slurp and $io->read did not autovivify the resultant string.
    • -
    • C API [joes] Add "flags" attribute to apreq_value_t, planning for charset support. This is an ABI change, starting with libapreq2.so.2.0.24.
    +
  • C API [joes] Add "flags" attribute to apreq_value_t, planning for charset support. This is an ABI change, starting with libapreq2.so.2.0.24.
    • C API [joes] Add apreq_env_bucket_alloc() to get an allocator directly from the environment instead of creating them from a pool. This is an ABI change, starting with libapreq2.so.2.0.23.
    @@ -242,13 +301,13 @@
  • Build system [joes] Add --with-apache2-httpd option so users can override apxs's notion of where the httpd executable is. XSBuilder's header parser runs from buildconf now instead of configure, so we will include those tables in the release tarball. buildconf gets an additional --with-perl option for running the xsbuilder.pl parsing script. The XS generation code in xsbuilder.pl has moved to glue/perl/Makefile.PL.
  • +
  • Perl API [joes] Allow ctors for Apache::Cookie, Apache::Cookie::Jar and Apache:Request to accept Apache::Request objects (instead of requiring an Apache::RequestRec object). This thread details the bug http://thread.gmane.org/gmane.comp.apache.mod-perl/15727
    • C API [Bojan Smojver] Bake cookies with err_headers_out so they are sent on non-2xx server responses (ie. a 304 redirect). Also ensure that headers are copied with apr_table_add instead of apr_table_addn. Since apreq_cookie_bake() allocates from the stack, the Set-Cookie headers would occasionally get mangled without this patch.

    +
  • C API [joes] Add apreq_register_parser(), which allows users to add their own parsers to apreq_parser()'s recognized MIME types.
    • C API [joes] Support "multipart/mixed" file uploads. Support XForms' "multipart/related" enctype.
    @@ -300,7 +359,7 @@
  • Perl API [joes] Added $jar->status, $req->args_status and $req->body_status to report parsing errors. Also add $upload->tempname per user request.
    • -
    • C API [joes] Dropped status attribute of apreq_value_t. Added status field to apreq_jar_t and added args_status field to apreq_request_t. Parsers also must return their public status code when a NULL brigade is passed. apreq_hook_disable_uploads() is also added.
    +
  • C API [joes] Dropped status attribute of apreq_value_t. Added status field to apreq_jar_t and added args_status field to apreq_request_t. Parsers also must return their public status code when a NULL brigade is passed. apreq_hook_disable_uploads() is also added.
  • This is an ABI change affecting all versions of libapreq2 prior to 2.0.12.

      @@ -316,7 +375,7 @@
    • C API [joes] Add MaxBody, MaxBrigade, and TempDir per-dir directives to mod_apreq filter.

    +
  • C API [joes] Replace free/tempnam dependency in apreq_file_mktemp() with apr_temp_dir_get(). Add additional gcc warning flags when --enable-maintainer-mode is set.
    • C API [joes, Scott Hutton] Replace apreq_brigade_copy with more effective APREQ_BRIGADE_COPY macro. Also introduce APREQ_BRIGADE_SETASIDE to deal with buckets that need to be set aside for use in future function calls. mod_ssl generates transient buckets which tickled this bug.
    @@ -332,7 +391,7 @@
  • Perl API [joes] Added $upload->slurp($data), which reads the contents of the file upload "$upload" into the scalar "$data".
    • -
    • C API [joes, randyk] apreq_run_(hook|parser) are macros, so they are capitalized now. Fixed apreq_params_as_string() and added apreq_params_as_array(). Reworked definitions of APREQ_DECLARE_HOOK, APREQ_DECLARE_PARSER and apreq_(parser|hook)_t, hopefully to be more Win32 friendly. Also updated the documentation.
    +
  • C API [joes, randyk] apreq_run_(hook|parser) are macros, so they are capitalized now. Fixed apreq_params_as_string() and added apreq_params_as_array(). Reworked definitions of APREQ_DECLARE_HOOK, APREQ_DECLARE_PARSER and apreq_(parser|hook)_t, hopefully to be more Win32 friendly. Also updated the documentation.
    • C API [joes] Compensate for a missing CRLF in empty file upload block, which actually complies with RFC 2046 Section 5.1.1. Konqueror (version unknown) and Mozilla 0.9.7 are known to emit such blocks.
    @@ -344,7 +403,7 @@
  • Perl test suite t/TEST.PL must run parent class' pre_configure to get the configuration right
    • -
    • C API [joes] apreq_brigade_concat() wasn't supplying the final EOS bucket to large brigades (>256K), which somtimes caused the prefetch loop in mod_apreq.c's apreq_filter() to hang.
    +
  • C API [joes] apreq_brigade_concat() wasn't supplying the final EOS bucket to large brigades (>256K), which somtimes caused the prefetch loop in mod_apreq.c's apreq_filter() to hang.
    • Documentation [joes] CHANGES file reformatted, removing dates & other clutter as Stas suggests.
    @@ -356,7 +415,7 @@
  • C API [joes] Fixed bug in url_parser code- missing context brigade was needed to track key-value pairs which span multiple buckets.
    • -
    • C API [joes] API modifications: removed struct apreq_cfg_t, adding new apreq_env hooks max_body, max_brigade_len, and temp_dir. Folded apreq_parsers.h into apreq_params.h and modified the arguments to apreq_run_parser() and apreq_run_hook(). Renamed apreq_parser_t's content_type as enctype and apreq_copy_brigade() as apreq_brigade_copy(). These changes make libapreq2.so.2.0.5 incompatible with earlier versions.
    +
  • C API [joes] API modifications: removed struct apreq_cfg_t, adding new apreq_env hooks max_body, max_brigade_len, and temp_dir. Folded apreq_parsers.h into apreq_params.h and modified the arguments to apreq_run_parser() and apreq_run_hook(). Renamed apreq_parser_t's content_type as enctype and apreq_copy_brigade() as apreq_brigade_copy(). These changes make libapreq2.so.2.0.5 incompatible with earlier versions.
    • Perl API [stas] Include ppport.h from blead-perl to support older perls. Add a proper support for ithreads.
    @@ -392,7 +451,7 @@
  • configure: --enable-perl-glue [joes] The --enable-perl-glue option integrates the perl glue into the normal Unix build cycle. It is disabled by default, but is silently reenabled if the user configures the source tree via Makefile.PL.
    • -
    • C API [joes] Added apreq_header_attribute() and fixed mfd parser to allow "charset" attribute to appear in the Content-Type header. Sven Geisler points out that Opera 7.20 does generate such headers.
    +
  • C API [joes] Added apreq_header_attribute() and fixed mfd parser to allow "charset" attribute to appear in the Content-Type header. Sven Geisler points out that Opera 7.20 does generate such headers.
    • C API [joes] Added versioning API following http://apr.apache.org/versioning.html apreq_env renamed apreq_env_name, and apreq_env_magic_number added to provide versioning for environments (modules). The header files are now installed to "include/apreq2", and the library is renamed "libapreq2". Also added an apreq2-config script based on apu-config.
    @@ -422,7 +481,7 @@
  • Documentation [joes] Added doxygen links to Apache::Request and Apache::Cookie perl docs.
    • -
    • C API [joes] Added apreq_copy_brigade(bb) to apreq.h.
    +
  • C API [joes] Added apreq_copy_brigade(bb) to apreq.h.
    • C API [joes] The new filter-based design required a complete departure from libapreq-1.X codebase. libapreq-2 is based solely on APR, and to be fully functional, requires a supporting environment similar to Apache-2. A person wishing to port libapreq-2 to a new environment needs to provide definitions for the declarations in apreq_env.h.
    @@ -443,7 +502,7 @@ See LICENSE.

    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_faq.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_faq.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_faq.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_faq.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: FAQ + libapreq2-2.12: libapreq2: FAQ - +
    + +

    FAQ

    @@ -117,6 +118,10 @@

    Apache2::Upload is now a separate module in apreq2, so you need to use Apache2::Upload to load the Apache2::Request::upload function.

    +

    This also applies to ``Can't locate auto/APR/Request/Param/slurp.al in @INC''. +This is because Apache2::Upload is implement by wrapping the APR::Request::* +packages.

    +

    @@ -163,7 +168,7 @@ See LICENSE.

    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_install.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_install.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_install.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_install.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: INSTALL + libapreq2-2.12: libapreq2: INSTALL - +
    + +

    INSTALL

    PREREQUISITES:
     
     Please see the PREREQUISITES file.  If you are building httpd-apreq-2 
    @@ -30,7 +31,7 @@
     
     INSTRUCTIONS:
     
    -FreeBSD users must substitute "gmake" for "make" below.
    +FreeBSD/Solaris users must substitute "gmake" for "make" below.
     
     Unix build, where libtool/automake/autoconf works:
     
    @@ -38,7 +39,7 @@
                 % make
       (optional)% make test
                 % make install
    -
    +  (optional)% make docs_install
     
     Or using the CPAN/perlish way (which includes the Apache2::Request and
     Apache2::Cookie modules):
    @@ -47,6 +48,7 @@
                 % make
       (optional)% make test
                 % make install
    +  (optional)% make docs_install
     
     Developers and other folks using httpd-apreq-2 directly from svn need to
     execute "./buildconf" prior to running "./configure".
    @@ -93,7 +95,7 @@
     See LICENSE.

    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_license.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_license.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_license.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_license.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: LICENSE + libapreq2-2.12: libapreq2: LICENSE - +
    + +

    LICENSE

                                      Apache License
                                Version 2.0, January 2004
    @@ -228,7 +229,7 @@
     See LICENSE.

    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_notice.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_notice.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_notice.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_notice.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: NOTICE + libapreq2-2.12: libapreq2: NOTICE - +
    + +

    NOTICE

    This product includes software developed by
     The Apache Software Foundation (http://www.apache.org/).
     
    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_status.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_status.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_status.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/apreq_status.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: STATUS + libapreq2-2.12: libapreq2: STATUS - +
    -

    STATUS

    2.08 released on August 8, 2006

    + + +

    STATUS

    2.12 released on March 13, 2009

    Contributors looking for a mission:

    • just do an egrep on "TODO" or "XXX" and see what's there
    @@ -104,7 +105,7 @@ See LICENSE.

    Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/dox.css URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/dox.css?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/dox.css (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/dox.css Tue Mar 10 01:08:08 2009 @@ -1,8 +1,9 @@ -/* Copyright 2002-2006 The Apache Software Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at +/* Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/examples.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/examples.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/examples.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/examples.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: Examples + libapreq2-2.12: libapreq2: Examples - + +
  • Examples
  • + +

    libapreq2 Examples

    Here is a list of all examples: Modified: httpd/site/trunk/docs/apreq/docs/libapreq2/files.html URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/apreq/docs/libapreq2/files.html?rev=751931&r1=751930&r2=751931&view=diff ============================================================================== --- httpd/site/trunk/docs/apreq/docs/libapreq2/files.html [utf-8] (original) +++ httpd/site/trunk/docs/apreq/docs/libapreq2/files.html [utf-8] Tue Mar 10 01:08:08 2009 @@ -1,7 +1,7 @@ - libapreq2-2.08: libapreq2: File Index + libapreq2-2.12: libapreq2: File Index - + + + + +

    libapreq2 File List

    Here is a list of all documented files with brief descriptions: - - - + + + - +
    include/apreq.h [code]Main header file...

    -Define the generic APREQ_ macros and common data structures

    include/apreq_cookie.h [code]Cookies and Jars.

    -apreq_cookie.h describes a common server-side API for request (incoming) and response (outgoing) cookies. It aims towards compliance with the standard cookie specifications listed below

    include/apreq_error.h [code]Error status codes.

    -Define the APREQ_ error codes

    include/apreq.h [code]Main header file..
    include/apreq_cookie.h [code]Cookies and Jars
    include/apreq_error.h [code]Error status codes
    include/apreq_module.h [code]Module API
    include/apreq_param.h [code]Request parsing and parameter API
    include/apreq_parser.h [code]Request body parser API
    include/apreq_util.h [code]Utility functions for apreq
    include/apreq_version.h [code]Versioning API for libapreq

    -There are several different mechanisms for accessing the version. There is a string form, and a set of numbers; in addition, there are constants which can be compiled into your application, and you can query the library being used for its actual version

    include/apreq_version.h [code]Versioning API for libapreq
    module/apache/apreq_module_apache.h [code]
    module/apache2/apreq_module_apache2.h [code]
    @@ -47,7 +45,7 @@ See LICENSE.