ssl_expr_parse.c

Checkout Tools
  • last updated 7 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Replace ap_expr with a parser derived from mod_ssl's parser. Make mod_ssl use

the new parser. Rework ap_expr's public interface and provide hooks for modules

to add variables and functions.

The Netware and Windows build files still need to be adjusted

  1. … 34 more files in changeset.
Make the ssl expression parser thread-safe. It now requires bison instead of

yacc.

Also change the make file magic so that the real source file name is

embedded in the debug info.

The generated files have been created with flex 2.5.35/bison 2.4.1. The two

'no previous prototype' warnings are supposed to be fixed with the next flex

version.

  1. … 12 more files in changeset.
No functional change: remove "internal" tab spacing/formatting.

  1. … 32 more files in changeset.
No functional Change: Removing trailing whitespace. This also

means that "blank" lines consisting of just spaces or

tabs are now really blank lines

  1. … 180 more files in changeset.
As discussed previously: OID() -> PeerExtList()
  1. … 6 more files in changeset.
Commit (forgotten) generated files for changed in ssl_expr_parse.y and ssl_expr_scan.l
  1. … 2 more files in changeset.
Move the POSIX reg* implementations into the ap_* namespace;

internalise the ap_reg*<->PCRE wrapper:

* configure.in: Add srclib/pcre to the include path.

* include/ap_regex.h: Renamed from include/pcreposix.h. Prefix all

constants with AP_; prefix all functions and types with ap_. Define

AP_DECLARE to nothing if necessary. Remove regcomp error codes.

* include/httpd.h: Include ap_regex.h not pcreposix.h.

(ap_pregcomp, ap_regexec, ap_regfree): s/regex_t/ap_regex_t/.

(ap_regexec, ap_regerror): Prototypes moved to ap_regex.h.

* server/util.c (regex_cleanup, ap_pregcomp, ap_pregsub, ap_pregfree):

Adjust for ap_ prefixed types. (ap_regexec, ap_regerror): Removed.

* server/Makefile.in: Build util_pcre.c.

* server/util_pcre.c: Copied from srclib/pcre/pcreposix.c; remove use

of PCRE-internals to do error mapping; rename types to add AP_/ap_

prefixes as above. Use APR includes. (ap_regerror): Use apr_snprintf.

* srclib/pcre/Makefile.in: Don't build pcreposix.c into libpcre.la.

* modules/*: Update to use new type and constant names.

PR: 27750 (part one)

Submitted by: Andres Salomon <dilinger voxel.net>, Joe Orton

  1. … 25 more files in changeset.
general property cleanup

  1. … 712 more files in changeset.
Move mod_ssl-internal interfaces into ssl_private.h; allow mod_ssl.h

to be included even when mod_ssl is not enabled.

* Makefile.in (install-include): Only install mod_ssl.h.

* modules/ssl/ssl_private.h: New file.

* modules/ssl/mod_ssl.h: Move everything apart from than the optional

hook definitions into ssl_private.h.

* modules/ssl/*.c: Include ssl_private.h not mod_ssl.h

* modules/ssl/config.m4: Always add the mod_ssl directory to the

include path so other modules can find mod_ssl.h.

* modules/proxy/mod_proxy.c: Include mod_ssl.h to pick up the optional

hook definitions rather than copy'n'pasting them.

  1. … 28 more files in changeset.

Afraid these are likely generated, just something to watch out for

in the future. Address PR 8963

  1. … 1 more file in changeset.
Touch these files so that their datestamps are newer than the corresponding

.y and .l files. These must be kept newer than those at all times to avoid

introducing a dependency on flex and yacc.

  1. … 2 more files in changeset.

This patch eliminated from the _SHARED_ segment of the scoreboard all

pointer math. This is required for portable scoreboards.

vhost becomes the 'vhost name string' so it now survives ap_generation

clicks. next was apparently never used.

This patch also accounts for the changes to the apr_shm api, and gives

Win32 the magic of a shared scoreboard.

Breakage aplenty on non-win32 platforms, I suspect, but this radical

surgery, and culling of unused functions, was really, really needed.

  1. … 20 more files in changeset.

Revert these from my last commit ... I had no intention of changing

them in the first place :(

  1. … 2 more files in changeset.

Remove a ton o' cruft. Moves the mod_log_config 'var' extensions to

ssl_engine_vars.c.

  1. … 7 more files in changeset.
Finalize the build environment by integrating the last thing (the

lex/yacc stuff) into Makefile.in and getting rid of the old Apache 1.3

Makefile.tmpl file.

  1. … 7 more files in changeset.
Next step in mod_ssl integration:

Add missing files to build environment.

  1. … 31 more files in changeset.
Initial revision

  1. … 41 more files in changeset.