From 1d70f0c48850b78a47270839941516d2bf6ca516 Mon Sep 17 00:00:00 2001 From: Jesse Portnoy Date: Tue, 3 Oct 2023 11:34:14 +0100 Subject: [PATCH 1/3] Fix for Nginx >= 1.23 --- ngx_http_auth_ldap_module.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ngx_http_auth_ldap_module.c b/ngx_http_auth_ldap_module.c index 2f4e592..83b481c 100644 --- a/ngx_http_auth_ldap_module.c +++ b/ngx_http_auth_ldap_module.c @@ -1779,6 +1779,7 @@ ngx_http_auth_ldap_set_realm(ngx_http_request_t *r, ngx_str_t *realm) } r->headers_out.www_authenticate->hash = 1; + r->headers_out.www_authenticate->next = NULL; r->headers_out.www_authenticate->key.len = sizeof("WWW-Authenticate") - 1; r->headers_out.www_authenticate->key.data = (u_char *) "WWW-Authenticate"; r->headers_out.www_authenticate->value = *realm; From 83fb510d031ad2089f8dc26dd2b591a017fc6683 Mon Sep 17 00:00:00 2001 From: Jesse Portnoy Date: Tue, 3 Oct 2023 12:49:02 +0100 Subject: [PATCH 2/3] - Patch for Nginx >= 1.23 - Files for building a deb package (tested on Debian 11 and 12) --- .../installed-by-dh_installdocs | 0 .../dbgsym-build-ids | 1 + .../dbgsym-root/DEBIAN/control | 12 +++ .../dbgsym-root/DEBIAN/md5sums | 1 + ...eac462a200f4a2508fd233d012e69e9de547.debug | Bin 0 -> 64312 bytes .../doc/libnginx-mod-http-auth-ldap-dbgsym | 1 + debian/changelog | 6 ++ debian/control | 22 ++++++ debian/copyright | 26 +++++++ debian/debhelper-build-stamp | 1 + debian/files | 3 + ...ginx-mod-http-auth-ldap.postinst.debhelper | 28 +++++++ ...bnginx-mod-http-auth-ldap.postrm.debhelper | 30 +++++++ ...ibnginx-mod-http-auth-ldap.prerm.debhelper | 12 +++ debian/libnginx-mod-http-auth-ldap.substvars | 3 + .../DEBIAN/control | 13 ++++ .../DEBIAN/md5sums | 5 ++ .../DEBIAN/postinst | 30 +++++++ .../libnginx-mod-http-auth-ldap/DEBIAN/postrm | 32 ++++++++ .../libnginx-mod-http-auth-ldap/DEBIAN/prerm | 14 ++++ .../modules/ngx_http_auth_ldap_module.so | Bin 0 -> 43704 bytes .../changelog.Debian.gz | Bin 0 -> 172 bytes .../libnginx-mod-http-auth-ldap/changelog.gz | Bin 0 -> 109 bytes .../doc/libnginx-mod-http-auth-ldap/copyright | 26 +++++++ .../modules-available/mod-http-auth-ldap.conf | 1 + debian/rules | 6 ++ debian/source/format | 1 + debian/tests/control | 6 ++ debian/tests/generic | 73 ++++++++++++++++++ debian/watch | 6 ++ ngx_http_auth_ldap_module.c | 2 + 31 files changed, 361 insertions(+) create mode 100644 debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs create mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids create mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control create mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums create mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug create mode 120000 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/share/doc/libnginx-mod-http-auth-ldap-dbgsym create mode 100644 debian/changelog create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/debhelper-build-stamp create mode 100644 debian/files create mode 100644 debian/libnginx-mod-http-auth-ldap.postinst.debhelper create mode 100644 debian/libnginx-mod-http-auth-ldap.postrm.debhelper create mode 100644 debian/libnginx-mod-http-auth-ldap.prerm.debhelper create mode 100644 debian/libnginx-mod-http-auth-ldap.substvars create mode 100644 debian/libnginx-mod-http-auth-ldap/DEBIAN/control create mode 100644 debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums create mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst create mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm create mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm create mode 100644 debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so create mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz create mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz create mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright create mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/tests/control create mode 100644 debian/tests/generic create mode 100644 debian/watch diff --git a/debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs b/debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs new file mode 100644 index 0000000..e69de29 diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids new file mode 100644 index 0000000..7c57a6e --- /dev/null +++ b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids @@ -0,0 +1 @@ +92c5eac462a200f4a2508fd233d012e69e9de547 \ No newline at end of file diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control new file mode 100644 index 0000000..6e940f1 --- /dev/null +++ b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control @@ -0,0 +1,12 @@ +Package: libnginx-mod-http-auth-ldap-dbgsym +Source: libnginx-mod-http-auth-ldap +Version: 1.0.0-1 +Auto-Built-Package: debug-symbols +Architecture: amd64 +Maintainer: Jesse Portnoy +Installed-Size: 73 +Depends: libnginx-mod-http-auth-ldap (= 1.0.0-1) +Section: debug +Priority: optional +Description: debug symbols for libnginx-mod-http-auth-ldap +Build-Ids: 92c5eac462a200f4a2508fd233d012e69e9de547 diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums new file mode 100644 index 0000000..516d45d --- /dev/null +++ b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums @@ -0,0 +1 @@ +f208707c63bb986ad766284a263bf918 usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug new file mode 100644 index 0000000000000000000000000000000000000000..a03c4433a4007e5870d6108a593dd8e797ba63e8 GIT binary patch literal 64312 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

c{9YDY$(phAf z5-K7dpJIL(M`VhJZ9$@h&OkCaa`eEX1@WTD$k>L$he22%A^b;xBjQji`5=LSc&9Oe zKfx3OlVD6oE(0a`H|KD8FnJUb8Xt)1oUmcj7n-0#kkf&r@v#KL=7RNtQj7CAqA4W= zoSk4qQ!b1yd*KWs3mTlS2n>{4m=~$!f2)h8XyN9MiV|{T`GZVB4sejWyEAO(;VoR7 zWD1o4W*)}onM2?Qj0h%SlwrZk1<8@k9JU$>-rSkzYp;b{z`u-Od!fPkb?p%G{j9?m2j(m(c*1Y9mMkx0~_w0t&Qc*9`RFijBe z3L&O|3;uzvgBM^d1W?0}fZ|YqI}tyRkd5|Y3mK(A7XSfdCSHkD6 zS}md=TPLM8OexNqFGHjy^&iQN=|MVN~I%^^f2XZYB6P5%C+z zu-k<3f{cuX3c8TMvL=NR&?N#C{zEzv?|@;U&{e`zMyJxjW=8=D8LY=Y6SC0P$j&89 z84zU13uA%;%Y=5`cZD3Lpa^ zcnf7kzg(dl_&pebz@(FaPC|AfI9wParydZe0HY8EG(bsU(LnfPO*)Ip#_tJ4B9{_^ zw-|I51-}RWz;6*4*&&A8Y!b5D4h!V6XlVQ2UswO1k(q!4Jjw*m;L)-eyTNNs496?* zI^&OG2wKRqH=N%eyYa*2VAR;_6Cv$L0my5qk^D&_{AJjKJ!ITb7%jrDf?Pnc2A`4q zZs7R`Qt;6$h%z=(#{P_Gq9E=>}??D#Wh@v*)9=S~cAH)`%fB1bG z#;+t2u%hFi72%(N7=#pz{{ynPM-<#|ID|YVL@+$Q@b~=-uyrI#kGJvqng~Ds_XYn~ z{s$ub_E4O5~wY9j4dpp8uN0udZvzq3VfJRI=46XPE?45N?4>|QRykLWtG zd~nOrzl6R zNc@TNBYKFaC}fmxK>1t2^J}E2gAcyfB5i#CK=PZ&5J)%F(= 1.23 + + -- jesse Tue, 03 Oct 2023 11:55:53 +0100 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..63a605a --- /dev/null +++ b/debian/control @@ -0,0 +1,22 @@ +Source: libnginx-mod-http-auth-ldap +Section: httpd +Priority: optional +Maintainer: Jesse Portnoy +Build-Depends: debhelper-compat (= 13), + dh-sequence-nginx, + libldap2-dev, + libssl-dev, +Standards-Version: 4.6.2 +Homepage: https://github.com/jessp01/nginx-auth-ldap +Vcs-Git: https://github.com/jessp01/nginx-auth-ldap +Vcs-Browser: https://github.com/jessp01/nginx-auth-ldap +Rules-Requires-Root: no + +Package: libnginx-mod-http-auth-ldap +Architecture: any +Multi-Arch: foreign +Depends: ${misc:Depends}, + ${shlibs:Depends}, +Recommends: nginx, +Description: LDAP authentication module for Nginx + The nginx_http_auth_ldap module enables authentication via LDAP. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..21c1523 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,26 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ngx_http_auth_pam_module +Upstream-Contact: Sergio Talens Oliag +Source: https://github.com/jessp01/nginx-auth-ldap + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. diff --git a/debian/debhelper-build-stamp b/debian/debhelper-build-stamp new file mode 100644 index 0000000..95511cd --- /dev/null +++ b/debian/debhelper-build-stamp @@ -0,0 +1 @@ +libnginx-mod-http-auth-ldap diff --git a/debian/files b/debian/files new file mode 100644 index 0000000..83f7df9 --- /dev/null +++ b/debian/files @@ -0,0 +1,3 @@ +libnginx-mod-http-auth-ldap-dbgsym_1.0.0-1_amd64.deb debug optional automatic=yes +libnginx-mod-http-auth-ldap_1.0.0-1_amd64.buildinfo httpd optional +libnginx-mod-http-auth-ldap_1.0.0-1_amd64.deb httpd optional diff --git a/debian/libnginx-mod-http-auth-ldap.postinst.debhelper b/debian/libnginx-mod-http-auth-ldap.postinst.debhelper new file mode 100644 index 0000000..0ad39dd --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap.postinst.debhelper @@ -0,0 +1,28 @@ +# Automatically added by dh_nginx/UNDECLARED +for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to.removed ]; then + rm /etc/nginx/modules-enabled/$to.removed + removed_link=true + else + removed_link=false + fi + + # Symlink on + # 1) Fresh installations + # 2) Reinstalls after automatic removes (preserve admin actions) + if [ -z "$2" -o "$removed_link" = "true" ]; then + ln -sf /usr/share/nginx/modules-available/$from \ + /etc/nginx/modules-enabled/$to + fi +done + +if [ "$1" = "configure" ] ; then + if which dpkg-trigger >/dev/null 2>&1 ; then + dpkg-trigger --no-await nginx-reload + fi + +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap.postrm.debhelper b/debian/libnginx-mod-http-auth-ldap.postrm.debhelper new file mode 100644 index 0000000..7f03b6a --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap.postrm.debhelper @@ -0,0 +1,30 @@ +# Automatically added by dh_nginx/UNDECLARED +if [ "$1" = "purge" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + rm /etc/nginx/modules-enabled/$to + fi + if [ -L /etc/nginx/modules-enabled/$to.removed ]; then + rm /etc/nginx/modules-enabled/$to.removed + fi + done +fi + +if [ "$1" = "remove" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed + fi + done + + if which dpkg-trigger >/dev/null 2>&1 ; then + dpkg-trigger --no-await nginx-reload + fi +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap.prerm.debhelper b/debian/libnginx-mod-http-auth-ldap.prerm.debhelper new file mode 100644 index 0000000..7bcf4bf --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap.prerm.debhelper @@ -0,0 +1,12 @@ +# Automatically added by dh_nginx/UNDECLARED +if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed + fi + done +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap.substvars b/debian/libnginx-mod-http-auth-ldap.substvars new file mode 100644 index 0000000..37a3f50 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap.substvars @@ -0,0 +1,3 @@ +misc:Depends=nginx-abi-1.24.0-1 +shlibs:Depends=libc6 (>= 2.14), libldap-2.5-0 (>= 2.5.4) +misc:Pre-Depends= diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/control b/debian/libnginx-mod-http-auth-ldap/DEBIAN/control new file mode 100644 index 0000000..ad3f815 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/DEBIAN/control @@ -0,0 +1,13 @@ +Package: libnginx-mod-http-auth-ldap +Version: 1.0.0-1 +Architecture: amd64 +Maintainer: Jesse Portnoy +Installed-Size: 62 +Depends: nginx-abi-1.24.0-1, libc6 (>= 2.14), libldap-2.5-0 (>= 2.5.4) +Recommends: nginx +Section: httpd +Priority: optional +Multi-Arch: foreign +Homepage: https://github.com/jessp01/nginx-auth-ldap +Description: LDAP authentication module for Nginx + The nginx_http_auth_ldap module enables authentication via LDAP. diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums b/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums new file mode 100644 index 0000000..9d6d241 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums @@ -0,0 +1,5 @@ +a244674249f28b1ff73a7d88dc8957fd usr/lib/nginx/modules/ngx_http_auth_ldap_module.so +f21318ce7a875b689b029a33ab5a91df usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz +f555b769901ca4b11597ea57da94c910 usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz +fe5b5398bf147e84da88023a0d24bde8 usr/share/doc/libnginx-mod-http-auth-ldap/copyright +0619771c04f4665a24db7c7390a2beaa usr/share/nginx/modules-available/mod-http-auth-ldap.conf diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst new file mode 100755 index 0000000..5177952 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst @@ -0,0 +1,30 @@ +#!/bin/sh +set -e +# Automatically added by dh_nginx/UNDECLARED +for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to.removed ]; then + rm /etc/nginx/modules-enabled/$to.removed + removed_link=true + else + removed_link=false + fi + + # Symlink on + # 1) Fresh installations + # 2) Reinstalls after automatic removes (preserve admin actions) + if [ -z "$2" -o "$removed_link" = "true" ]; then + ln -sf /usr/share/nginx/modules-available/$from \ + /etc/nginx/modules-enabled/$to + fi +done + +if [ "$1" = "configure" ] ; then + if which dpkg-trigger >/dev/null 2>&1 ; then + dpkg-trigger --no-await nginx-reload + fi + +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm new file mode 100755 index 0000000..6f42887 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm @@ -0,0 +1,32 @@ +#!/bin/sh +set -e +# Automatically added by dh_nginx/UNDECLARED +if [ "$1" = "purge" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + rm /etc/nginx/modules-enabled/$to + fi + if [ -L /etc/nginx/modules-enabled/$to.removed ]; then + rm /etc/nginx/modules-enabled/$to.removed + fi + done +fi + +if [ "$1" = "remove" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed + fi + done + + if which dpkg-trigger >/dev/null 2>&1 ; then + dpkg-trigger --no-await nginx-reload + fi +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm b/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm new file mode 100755 index 0000000..05c2458 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm @@ -0,0 +1,14 @@ +#!/bin/sh +set -e +# Automatically added by dh_nginx/UNDECLARED +if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] ; then + for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do + from=$(echo $confpair | cut -d: -f1) + to=$(echo $confpair | cut -d: -f2) + + if [ -L /etc/nginx/modules-enabled/$to ]; then + mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed + fi + done +fi +# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so b/debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so new file mode 100644 index 0000000000000000000000000000000000000000..fd00d5f4fc905e6e236644b9dc35b3d3de5564f5 GIT binary patch literal 43704 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 literal 0 HcmV?d00001 diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz new file mode 100644 index 0000000000000000000000000000000000000000..0a05c3f865979ab0a936f651488d41c0e386ae1a GIT binary patch literal 172 zcmV;d08{@TiwFP!0000211*iq4uUWg1^0Z#S^6qzY1pU`S1xtq4-|R>S7{-%jrjLI z;%bsfCNps3JNAokqZNIOlQ1dvVz6eyO64+_Lajl|L^C_`(F_Nqxg+1cDo2)+%Q9et zGtVKyQiGWWGJ*bf0f&$XPmVn<-xKNzDlhb>69RV%fpGlcG@16{jL&(jfm@;-q{g+4 aC}g3b)V?hDrN&k&DYG|g8KH5y0000Et4m1$ literal 0 HcmV?d00001 diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz new file mode 100644 index 0000000000000000000000000000000000000000..69af21322650216c85e905ca5022c45bf41dfdfc GIT binary patch literal 109 zcmV-z0FwV7iwFP!0000210{^H4nQyzMQ8nrJ4;BlGcg&B_Tr@;QQ{FkpGNL>&dD{} z*sRc*1!fYVdUwOJx{&jxRFa~jLwE})a{Vomh99uVMY#E#(0UFJs`4w0{rw>)M(Po- PoF}DTH>_BaWdHyGeI75S literal 0 HcmV?d00001 diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright new file mode 100644 index 0000000..21c1523 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright @@ -0,0 +1,26 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ngx_http_auth_pam_module +Upstream-Contact: Sergio Talens Oliag +Source: https://github.com/jessp01/nginx-auth-ldap + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf b/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf new file mode 100644 index 0000000..e03d595 --- /dev/null +++ b/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf @@ -0,0 +1 @@ +load_module modules/ngx_http_auth_ldap_module.so; diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..d8309f6 --- /dev/null +++ b/debian/rules @@ -0,0 +1,6 @@ +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all + +%: + dh $@ diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/tests/control b/debian/tests/control new file mode 100644 index 0000000..ca20b9f --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,6 @@ +Tests: generic +Restrictions: allow-stderr isolation-container needs-root +Depends: curl, + nginx, + nginx-core, + @, diff --git a/debian/tests/generic b/debian/tests/generic new file mode 100644 index 0000000..a14fc80 --- /dev/null +++ b/debian/tests/generic @@ -0,0 +1,73 @@ +#!/bin/sh +# version 20221215 + +# generic test that only verifies that nginx is running with the given +# libnginx-... module +# - after installation +# - after nginx reload +# - after nginx restart + +EX=0 +CURL_CMD="curl --max-time 60 --silent --fail -o /dev/null" + +#change directory to $AUTOPKGTEST_TMP +cd "${AUTOPKGTEST_TMP}" + +echo -n "curl after installation: http status=" +if $CURL_CMD -w "response_code: %{http_code}, ... " http://127.0.0.1/; then + echo "OK" +else + EX=1 + echo "FAILED" +fi + +echo -n "nginx reload ... " +if invoke-rc.d nginx reload; then + echo "OK" +else + EX=1 + echo "FAILED" +fi +sleep 5 + + +echo -n "curl after reload: http status=" +if $CURL_CMD -w "response_code: %{http_code}, ... " http://127.0.0.1/; then + echo "OK" +else + EX=1 + echo "FAILED" +fi + +echo -n "nginx restart ... " +if invoke-rc.d nginx restart; then + echo "OK" +else + EX=1 + echo "FAILED" +fi +sleep 5 + +echo -n "curl after restart: http status=" +if $CURL_CMD -w "response_code: %{http_code}, ... " http://127.0.0.1/; then + echo "OK" +else + EX=1 + echo "FAILED" +fi + +if [ ${EX} -ne 0 ]; then + echo "=== journalctl ===" + journalctl -n all -xu nginx.service || : + + echo "=== error.log ===" + if [ `wc -l /var/log/nginx/error.log | cut -d ' ' -f1` -gt 100 ]; then + head -n 50 /var/log/nginx/error.log + echo '...' + tail -n 50 /var/log/nginx/error.log + else + cat /var/log/nginx/error.log + fi +fi + +exit ${EX} diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..3c040ec --- /dev/null +++ b/debian/watch @@ -0,0 +1,6 @@ +version=4 + +opts="\ +filenamemangle=s/.+\/v?(\d\S+)\.tar\.gz/@PACKAGE@-$1\.tar\.gz/,\ +uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/$1~$2/,\ +" https://github.com/jessp01/nginx-auth-ldap/tags .*/v?(\d\S+)\.tar\.gz diff --git a/ngx_http_auth_ldap_module.c b/ngx_http_auth_ldap_module.c index 83b481c..e1dbd9b 100644 --- a/ngx_http_auth_ldap_module.c +++ b/ngx_http_auth_ldap_module.c @@ -1779,7 +1779,9 @@ ngx_http_auth_ldap_set_realm(ngx_http_request_t *r, ngx_str_t *realm) } r->headers_out.www_authenticate->hash = 1; +#if (nginx_version >= 1023000) r->headers_out.www_authenticate->next = NULL; +#endif r->headers_out.www_authenticate->key.len = sizeof("WWW-Authenticate") - 1; r->headers_out.www_authenticate->key.data = (u_char *) "WWW-Authenticate"; r->headers_out.www_authenticate->value = *realm; From 22d22a8979bf860e7e66c6c5d0918e8b636521cf Mon Sep 17 00:00:00 2001 From: Jesse Portnoy Date: Tue, 3 Oct 2023 13:11:47 +0100 Subject: [PATCH 3/3] README revisions --- README.md | 44 ++++++++++++++---- .../installed-by-dh_installdocs | 0 .../dbgsym-build-ids | 1 - .../dbgsym-root/DEBIAN/control | 12 ----- .../dbgsym-root/DEBIAN/md5sums | 1 - ...eac462a200f4a2508fd233d012e69e9de547.debug | Bin 64312 -> 0 bytes .../doc/libnginx-mod-http-auth-ldap-dbgsym | 1 - .../DEBIAN/control | 13 ------ .../DEBIAN/md5sums | 5 -- .../DEBIAN/postinst | 30 ------------ .../libnginx-mod-http-auth-ldap/DEBIAN/postrm | 32 ------------- .../libnginx-mod-http-auth-ldap/DEBIAN/prerm | 14 ------ .../modules/ngx_http_auth_ldap_module.so | Bin 43704 -> 0 bytes .../changelog.Debian.gz | Bin 172 -> 0 bytes .../libnginx-mod-http-auth-ldap/changelog.gz | Bin 109 -> 0 bytes .../doc/libnginx-mod-http-auth-ldap/copyright | 26 ----------- .../modules-available/mod-http-auth-ldap.conf | 1 - 17 files changed, 35 insertions(+), 145 deletions(-) delete mode 100644 debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs delete mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids delete mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control delete mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums delete mode 100644 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug delete mode 120000 debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/share/doc/libnginx-mod-http-auth-ldap-dbgsym delete mode 100644 debian/libnginx-mod-http-auth-ldap/DEBIAN/control delete mode 100644 debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums delete mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst delete mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm delete mode 100755 debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm delete mode 100644 debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so delete mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz delete mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz delete mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright delete mode 100644 debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf diff --git a/README.md b/README.md index 06bd0f2..5125aa3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -# LDAP Authentication module for nginx -LDAP module for nginx which supports authentication against multiple LDAP servers. +# LDAP Authentication module for Nginx +LDAP module for Nginx which supports authentication against multiple LDAP servers. # How to install @@ -18,13 +18,39 @@ Check HTTP_AUTH_LDAP options ## Linux -```bash -cd ~ && git clone https://github.com/kvspb/nginx-auth-ldap.git +Clone this repo or download the ZIP archive. + +Install `libssl` and `libldap2` headers (on Debian/Ubuntu: `apt install libssl-dev libldap2-dev`). + +You can build this module as an SO, statically compile it into the main `nginx` binary or, if using Debian/Ubuntu, build +and install the deb package. + +### Build as an SO + +- Obtain the Nginx source (on Debian/Ubuntu this can be done with `apt-get source nginx`) +- cd /path/to/nginx/source +```sh +./configure `nginx -V` --with-compat --add-dynamic-module=/path/to/nginx-auth-ldap/source +cp objs/ngx_http_auth_ldap_module.so /usr/share/nginx/modules/ngx_http_auth_ldap_module.so +``` +- Add the below config to Nginx so that it loads the module: +```nginx +load_module modules/ngx_http_auth_ldap_module.so; ``` -in nginx source folder +### Build & install the deb package -```bash +```sh +sudo apt install build-essential dpkg-dev libssl-dev libldap2-dev +cd /path/to/nginx-auth-ldap/source +dpkg-buildpackage -b -uc +sudo dpkg -i ../libnginx-mod-http-auth-ldap_1.0.0-1_amd64.deb +``` + +### Statically link into Nginx + +```sh +cd /path/to/nginx/source ./configure --add-module=path_to_http_auth_ldap_module make install ``` @@ -32,7 +58,7 @@ make install # Example configuration Define list of your LDAP servers with required user/group requirements: -```bash +```nginx http { ldap_server test1 { url ldap://192.168.0.1:3268/DC=test,DC=local?sAMAccountName?sub?(objectClass=person); @@ -55,7 +81,7 @@ Define list of your LDAP servers with required user/group requirements: ``` And add required servers in correct order into your location/server directive: -```bash +```nginx server { listen 8000; server_name localhost; @@ -140,6 +166,6 @@ you'll basically need to run OpenSSL's c_rehash command in this directory. expected value: on, off LDAP library default is on. This option disables usage of referral messages from -LDAP server. Usefull for authenticating against read only AD server without access +LDAP server. Useful for authenticating against read only AD server without access to read write. diff --git a/debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs b/debian/.debhelper/generated/libnginx-mod-http-auth-ldap/installed-by-dh_installdocs deleted file mode 100644 index e69de29..0000000 diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids deleted file mode 100644 index 7c57a6e..0000000 --- a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-build-ids +++ /dev/null @@ -1 +0,0 @@ -92c5eac462a200f4a2508fd233d012e69e9de547 \ No newline at end of file diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control deleted file mode 100644 index 6e940f1..0000000 --- a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/control +++ /dev/null @@ -1,12 +0,0 @@ -Package: libnginx-mod-http-auth-ldap-dbgsym -Source: libnginx-mod-http-auth-ldap -Version: 1.0.0-1 -Auto-Built-Package: debug-symbols -Architecture: amd64 -Maintainer: Jesse Portnoy -Installed-Size: 73 -Depends: libnginx-mod-http-auth-ldap (= 1.0.0-1) -Section: debug -Priority: optional -Description: debug symbols for libnginx-mod-http-auth-ldap -Build-Ids: 92c5eac462a200f4a2508fd233d012e69e9de547 diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums deleted file mode 100644 index 516d45d..0000000 --- a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/DEBIAN/md5sums +++ /dev/null @@ -1 +0,0 @@ -f208707c63bb986ad766284a263bf918 usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug diff --git a/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug b/debian/.debhelper/libnginx-mod-http-auth-ldap/dbgsym-root/usr/lib/debug/.build-id/92/c5eac462a200f4a2508fd233d012e69e9de547.debug deleted file mode 100644 index a03c4433a4007e5870d6108a593dd8e797ba63e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64312 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

c{9YDY$(phAf z5-K7dpJIL(M`VhJZ9$@h&OkCaa`eEX1@WTD$k>L$he22%A^b;xBjQji`5=LSc&9Oe zKfx3OlVD6oE(0a`H|KD8FnJUb8Xt)1oUmcj7n-0#kkf&r@v#KL=7RNtQj7CAqA4W= zoSk4qQ!b1yd*KWs3mTlS2n>{4m=~$!f2)h8XyN9MiV|{T`GZVB4sejWyEAO(;VoR7 zWD1o4W*)}onM2?Qj0h%SlwrZk1<8@k9JU$>-rSkzYp;b{z`u-Od!fPkb?p%G{j9?m2j(m(c*1Y9mMkx0~_w0t&Qc*9`RFijBe z3L&O|3;uzvgBM^d1W?0}fZ|YqI}tyRkd5|Y3mK(A7XSfdCSHkD6 zS}md=TPLM8OexNqFGHjy^&iQN=|MVN~I%^^f2XZYB6P5%C+z zu-k<3f{cuX3c8TMvL=NR&?N#C{zEzv?|@;U&{e`zMyJxjW=8=D8LY=Y6SC0P$j&89 z84zU13uA%;%Y=5`cZD3Lpa^ zcnf7kzg(dl_&pebz@(FaPC|AfI9wParydZe0HY8EG(bsU(LnfPO*)Ip#_tJ4B9{_^ zw-|I51-}RWz;6*4*&&A8Y!b5D4h!V6XlVQ2UswO1k(q!4Jjw*m;L)-eyTNNs496?* zI^&OG2wKRqH=N%eyYa*2VAR;_6Cv$L0my5qk^D&_{AJjKJ!ITb7%jrDf?Pnc2A`4q zZs7R`Qt;6$h%z=(#{P_Gq9E=>}??D#Wh@v*)9=S~cAH)`%fB1bG z#;+t2u%hFi72%(N7=#pz{{ynPM-<#|ID|YVL@+$Q@b~=-uyrI#kGJvqng~Ds_XYn~ z{s$ub_E4O5~wY9j4dpp8uN0udZvzq3VfJRI=46XPE?45N?4>|QRykLWtG zd~nOrzl6R zNc@TNBYKFaC}fmxK>1t2^J}E2gAcyfB5i#CK=PZ&5J)%F( -Installed-Size: 62 -Depends: nginx-abi-1.24.0-1, libc6 (>= 2.14), libldap-2.5-0 (>= 2.5.4) -Recommends: nginx -Section: httpd -Priority: optional -Multi-Arch: foreign -Homepage: https://github.com/jessp01/nginx-auth-ldap -Description: LDAP authentication module for Nginx - The nginx_http_auth_ldap module enables authentication via LDAP. diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums b/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums deleted file mode 100644 index 9d6d241..0000000 --- a/debian/libnginx-mod-http-auth-ldap/DEBIAN/md5sums +++ /dev/null @@ -1,5 +0,0 @@ -a244674249f28b1ff73a7d88dc8957fd usr/lib/nginx/modules/ngx_http_auth_ldap_module.so -f21318ce7a875b689b029a33ab5a91df usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz -f555b769901ca4b11597ea57da94c910 usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz -fe5b5398bf147e84da88023a0d24bde8 usr/share/doc/libnginx-mod-http-auth-ldap/copyright -0619771c04f4665a24db7c7390a2beaa usr/share/nginx/modules-available/mod-http-auth-ldap.conf diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst deleted file mode 100755 index 5177952..0000000 --- a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postinst +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -set -e -# Automatically added by dh_nginx/UNDECLARED -for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do - from=$(echo $confpair | cut -d: -f1) - to=$(echo $confpair | cut -d: -f2) - - if [ -L /etc/nginx/modules-enabled/$to.removed ]; then - rm /etc/nginx/modules-enabled/$to.removed - removed_link=true - else - removed_link=false - fi - - # Symlink on - # 1) Fresh installations - # 2) Reinstalls after automatic removes (preserve admin actions) - if [ -z "$2" -o "$removed_link" = "true" ]; then - ln -sf /usr/share/nginx/modules-available/$from \ - /etc/nginx/modules-enabled/$to - fi -done - -if [ "$1" = "configure" ] ; then - if which dpkg-trigger >/dev/null 2>&1 ; then - dpkg-trigger --no-await nginx-reload - fi - -fi -# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm b/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm deleted file mode 100755 index 6f42887..0000000 --- a/debian/libnginx-mod-http-auth-ldap/DEBIAN/postrm +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh -set -e -# Automatically added by dh_nginx/UNDECLARED -if [ "$1" = "purge" ] ; then - for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do - from=$(echo $confpair | cut -d: -f1) - to=$(echo $confpair | cut -d: -f2) - - if [ -L /etc/nginx/modules-enabled/$to ]; then - rm /etc/nginx/modules-enabled/$to - fi - if [ -L /etc/nginx/modules-enabled/$to.removed ]; then - rm /etc/nginx/modules-enabled/$to.removed - fi - done -fi - -if [ "$1" = "remove" ] ; then - for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do - from=$(echo $confpair | cut -d: -f1) - to=$(echo $confpair | cut -d: -f2) - - if [ -L /etc/nginx/modules-enabled/$to ]; then - mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed - fi - done - - if which dpkg-trigger >/dev/null 2>&1 ; then - dpkg-trigger --no-await nginx-reload - fi -fi -# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm b/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm deleted file mode 100755 index 05c2458..0000000 --- a/debian/libnginx-mod-http-auth-ldap/DEBIAN/prerm +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh -set -e -# Automatically added by dh_nginx/UNDECLARED -if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] ; then - for confpair in mod-http-auth-ldap.conf:50-mod-http-auth-ldap.conf ; do - from=$(echo $confpair | cut -d: -f1) - to=$(echo $confpair | cut -d: -f2) - - if [ -L /etc/nginx/modules-enabled/$to ]; then - mv /etc/nginx/modules-enabled/$to /etc/nginx/modules-enabled/$to.removed - fi - done -fi -# End automatically added section diff --git a/debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so b/debian/libnginx-mod-http-auth-ldap/usr/lib/nginx/modules/ngx_http_auth_ldap_module.so deleted file mode 100644 index fd00d5f4fc905e6e236644b9dc35b3d3de5564f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43704 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 diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.Debian.gz deleted file mode 100644 index 0a05c3f865979ab0a936f651488d41c0e386ae1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmV;d08{@TiwFP!0000211*iq4uUWg1^0Z#S^6qzY1pU`S1xtq4-|R>S7{-%jrjLI z;%bsfCNps3JNAokqZNIOlQ1dvVz6eyO64+_Lajl|L^C_`(F_Nqxg+1cDo2)+%Q9et zGtVKyQiGWWGJ*bf0f&$XPmVn<-xKNzDlhb>69RV%fpGlcG@16{jL&(jfm@;-q{g+4 aC}g3b)V?hDrN&k&DYG|g8KH5y0000Et4m1$ diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/changelog.gz deleted file mode 100644 index 69af21322650216c85e905ca5022c45bf41dfdfc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109 zcmV-z0FwV7iwFP!0000210{^H4nQyzMQ8nrJ4;BlGcg&B_Tr@;QQ{FkpGNL>&dD{} z*sRc*1!fYVdUwOJx{&jxRFa~jLwE})a{Vomh99uVMY#E#(0UFJs`4w0{rw>)M(Po- PoF}DTH>_BaWdHyGeI75S diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright b/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright deleted file mode 100644 index 21c1523..0000000 --- a/debian/libnginx-mod-http-auth-ldap/usr/share/doc/libnginx-mod-http-auth-ldap/copyright +++ /dev/null @@ -1,26 +0,0 @@ -Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: ngx_http_auth_pam_module -Upstream-Contact: Sergio Talens Oliag -Source: https://github.com/jessp01/nginx-auth-ldap - -License: BSD-2-clause - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - . - THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - SUCH DAMAGE. diff --git a/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf b/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf deleted file mode 100644 index e03d595..0000000 --- a/debian/libnginx-mod-http-auth-ldap/usr/share/nginx/modules-available/mod-http-auth-ldap.conf +++ /dev/null @@ -1 +0,0 @@ -load_module modules/ngx_http_auth_ldap_module.so;