Extract HTTPLUA and HTTPREXX into separate projects#62
Merged
mgrossmann merged 2 commits intomainfrom Apr 12, 2026
Merged
Conversation
Remove Lua CGI handler (httplua.c, httpluax.c, lauxlib.c, loadlib.c, liolib.c, httpluax.h) and REXX CGI handler (httprexx.c, httpsay.c) from the HTTPD codebase. These are now standalone projects: - mvslovers/httplua — Lua CGI handler + HTTPLUAX function vector - mvslovers/httprexx — REXX CGI handler + HTTPSAY helper HTTPD changes: - Remove lua370 dependency from project.toml - Remove -DLUA_USE_C89 and -DLUA_USE_JUMPTABLE=0 from build flags - Remove HTTPLUAX, HTTPLUA, HTTPSAY, HTTPREXX link modules - Clean httpd.h: remove HTTPLUAX define, httpluax.h include, replace LUAX *luax and cgilua_* fields with void *unused_* - Clean httpd.c: remove httpd->luax initialization - Clean httpprm.c: remove CGILUA_* keyword handlers - Clean httpdsrv.c: replace luax/cgilua_* display with reserved - Clean samplib: remove HTTPLUA/HTTPREXX, mark HTTPDSL/HTTPJES2 as deprecated - Add types.h to exported header artifacts Fixes #61
Add support for extension-based CGI patterns in the Parmlib CGI configuration: CGI=MVSMF /zosmf/* (URL prefix match, as before) CGI=HTTPLUA *.lua (extension match, new) CGI=HTTPREXX *.rexx (extension match, new) When the CGI pattern starts with "*.", HTTPD constructs the full UFS script path (DOCROOT + REQUEST_PATH) and passes it to the CGI module via the SCRIPT_FILENAME environment variable. The existing __patmat() wildcard matching already handles extension patterns, so only httppc.c needed changes for SCRIPT_FILENAME injection. No parser changes required. Refs #61
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
lua370dependency — HTTPD load module ~80KB smallervoid *unused_*)types.hto exported header artifacts (needed by CGI consumers)Verification
make build linksucceeds for HTTPDmake build linksucceeds for httplua (done, RC=0)make build linksucceeds for httprexx (done, RC=0)Fixes #61