From cb2ce66fff232abab891ee6cc887e2bcab074269 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Tue, 15 Mar 2022 22:55:14 +0100 Subject: [PATCH] Release a new version of the Apache module, with the context support. --- .../Makefile | 0 .../debian/authz_itkacl.load | 0 .../debian/changelog | 7 ++++++ .../debian/compat | 0 .../debian/control | 2 +- .../debian/dirs | 0 .../debian/rules | 0 .../mod_authz_itkacl.c | 22 ++++++++++++++----- 8 files changed, 24 insertions(+), 7 deletions(-) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/Makefile (100%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/authz_itkacl.load (100%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/changelog (86%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/compat (100%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/control (82%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/dirs (100%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/debian/rules (100%) rename {libapache2-mod-authz-itkacl-0.6 => libapache2-mod-authz-itkacl-0.7}/mod_authz_itkacl.c (86%) diff --git a/libapache2-mod-authz-itkacl-0.6/Makefile b/libapache2-mod-authz-itkacl-0.7/Makefile similarity index 100% rename from libapache2-mod-authz-itkacl-0.6/Makefile rename to libapache2-mod-authz-itkacl-0.7/Makefile diff --git a/libapache2-mod-authz-itkacl-0.6/debian/authz_itkacl.load b/libapache2-mod-authz-itkacl-0.7/debian/authz_itkacl.load similarity index 100% rename from libapache2-mod-authz-itkacl-0.6/debian/authz_itkacl.load rename to libapache2-mod-authz-itkacl-0.7/debian/authz_itkacl.load diff --git a/libapache2-mod-authz-itkacl-0.6/debian/changelog b/libapache2-mod-authz-itkacl-0.7/debian/changelog similarity index 86% rename from libapache2-mod-authz-itkacl-0.6/debian/changelog rename to libapache2-mod-authz-itkacl-0.7/debian/changelog index 1a7b937..30c4095 100644 --- a/libapache2-mod-authz-itkacl-0.6/debian/changelog +++ b/libapache2-mod-authz-itkacl-0.7/debian/changelog @@ -1,3 +1,10 @@ +libapache2-mod-authz-itkacl (0.7) unstable; urgency=medium + + * Use the new context system, for increased performance. + * No longer depend on obsolete apache2-prefork-dev. + + -- Steinar H. Gunderson Tue, 15 Mar 2022 22:46:53 +0100 + libapache2-mod-authz-itkacl (0.6) unstable; urgency=medium * Update to Apache 2.4. diff --git a/libapache2-mod-authz-itkacl-0.6/debian/compat b/libapache2-mod-authz-itkacl-0.7/debian/compat similarity index 100% rename from libapache2-mod-authz-itkacl-0.6/debian/compat rename to libapache2-mod-authz-itkacl-0.7/debian/compat diff --git a/libapache2-mod-authz-itkacl-0.6/debian/control b/libapache2-mod-authz-itkacl-0.7/debian/control similarity index 82% rename from libapache2-mod-authz-itkacl-0.6/debian/control rename to libapache2-mod-authz-itkacl-0.7/debian/control index 9a73611..832bc66 100644 --- a/libapache2-mod-authz-itkacl-0.6/debian/control +++ b/libapache2-mod-authz-itkacl-0.7/debian/control @@ -2,7 +2,7 @@ Source: libapache2-mod-authz-itkacl Section: web Priority: optional Maintainer: Steinar H. Gunderson -Build-Depends: debhelper (>= 7.0.0), apache2-prefork-dev, libitkacl-dev, dh-apache2 | apache2-dev +Build-Depends: debhelper (>= 7.0.0), libitkacl-dev, dh-apache2 | apache2-dev Standards-Version: 3.9.1 Package: libapache2-mod-authz-itkacl diff --git a/libapache2-mod-authz-itkacl-0.6/debian/dirs b/libapache2-mod-authz-itkacl-0.7/debian/dirs similarity index 100% rename from libapache2-mod-authz-itkacl-0.6/debian/dirs rename to libapache2-mod-authz-itkacl-0.7/debian/dirs diff --git a/libapache2-mod-authz-itkacl-0.6/debian/rules b/libapache2-mod-authz-itkacl-0.7/debian/rules similarity index 100% rename from libapache2-mod-authz-itkacl-0.6/debian/rules rename to libapache2-mod-authz-itkacl-0.7/debian/rules diff --git a/libapache2-mod-authz-itkacl-0.6/mod_authz_itkacl.c b/libapache2-mod-authz-itkacl-0.7/mod_authz_itkacl.c similarity index 86% rename from libapache2-mod-authz-itkacl-0.6/mod_authz_itkacl.c rename to libapache2-mod-authz-itkacl-0.7/mod_authz_itkacl.c index 51ec224..97017ef 100644 --- a/libapache2-mod-authz-itkacl-0.6/mod_authz_itkacl.c +++ b/libapache2-mod-authz-itkacl-0.7/mod_authz_itkacl.c @@ -1,8 +1,8 @@ /* - * ITKACL module, (C) 2004-2015 Steinar H. Gunderson + * ITKACL module, (C) 2004-2022 Steinar H. Gunderson */ -#define MODAUTHITKACL_VERSION "0.6" +#define MODAUTHITKACL_VERSION "0.7" #include "apr_strings.h" @@ -14,18 +14,17 @@ #include "http_protocol.h" #include "http_request.h" #include "mod_auth.h" +#include "itkacl.h" module AP_MODULE_DECLARE_DATA authz_itkacl_module; - -extern int itkacl_check(const char * const realm, const char * const user, - char *errmsg, size_t errmsg_size); +static struct itkacl_ctx *ctx = NULL; static int handle_require(request_rec *r, const char *username, const char *acl_path) { char errmsg[1024]; int ret; - ret = itkacl_check(acl_path, username, errmsg, 1024); + ret = itkacl_check_with_ctx(ctx, acl_path, username, errmsg, 1024); if (ret == 0) { return AUTHZ_GRANTED; } @@ -107,6 +106,17 @@ static authz_status authz_itkacl_authorize_user(request_rec *r, const char *requ static int authz_itkacl_init_handler(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp, server_rec *s) { ap_add_version_component(p, "mod_auth_itkacl/" MODAUTHITKACL_VERSION); + if (ctx != NULL) { + itkacl_free_ctx(ctx); + } + { + char errmsg[1024]; + ctx = itkacl_create_ctx(errmsg, sizeof(errmsg)); + if (ctx == NULL) { + ap_log_error(APLOG_MARK, APLOG_ERR, 0, s, "Error while initializing libitkacl: %s", errmsg); + return HTTP_INTERNAL_SERVER_ERROR; + } + } return OK; } -- 2.39.2