Skip to content

Commit

Permalink
Version 1.2.0 (Nov 22, 2024)
Browse files Browse the repository at this point in the history
 * Fix compatibility issues with modern unix auth services, such as sssd,
   due to optimizations for large directories (e.g. LDAP) removing the
   complete group membership list (grmem). Thanks to Joakim Tjernlund.
 * NOTE: builds across all platforms now *require* libbsd or the equivalent
   bsd-standard group function support.
 * macOS build support, with the latest homebrew-core libbsd update.
 * Added cross-platform makefiles (macOS & linux only; Windows does not
   have UNIX groups, so not supported). Thanks to Micah Andersen/BIMI.
 * GitHub Actions build testing on linux & macOS. Thanks to Micah Andersen/BIMI.
 * Copyright information was consolidated in CONTRIBUTORS for consistency.
  • Loading branch information
bimimicah committed Nov 23, 2024
1 parent 9bd22f0 commit 2d2bb5c
Show file tree
Hide file tree
Showing 30 changed files with 3 additions and 3,196 deletions.
47 changes: 2 additions & 45 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
os: [ubuntu-latest, macOS-latest]

steps:
- uses: actions/checkout@v2
Expand All @@ -30,50 +30,13 @@ jobs:
brew update
brew install httpd libbsd
- name: make mod_authnz_external (POSIX-GCC)
if: runner.os != 'Windows'
run: make
working-directory: ./mod_authnz_external

- name: make mod_authz_unixgroup (POSIX-GCC)
if: runner.os != 'Windows'
run: make
working-directory: ./mod_authz_unixgroup

- name: nmake (MSVC)
if: runner.os == 'Windows'
run: |
# find and set APACHEPATH environment variable
$env:APACHEPATH = Join-Path "C:\tools\" (Get-Item C:\tools\apache*).Name
# set it for real, GH Actions uses a new Powershell for each step
[System.Environment]::SetEnvironmentVariable('APACHEPATH',$env:APACHEPATH,'Machine')
# this 'apr_perms_set.h' header is missing from Chocolatey's Apache install
Invoke-WebRequest https://raw.githubusercontent.com/traviscross/apr/master/include/apr_perms_set.h -OutFile (Join-Path ($env:APACHEPATH) "include\apr_perms_set.h")
# call vcvars.bat to setup the environment, then call nmake to build the module
echo "call ""$((Get-VisualStudioInstance).InstallationPath)\VC\Auxiliary\Build\vcvars64.bat""" > winbuild.bat
echo "nmake -f ""$(pwd)\Makefile.win""" >> winbuild.bat
.\winbuild.bat
working-directory: ./mod_authnz_external

- name: make install mod_authnz_external (POSIX-GCC)
if: runner.os != 'Windows'
run: sudo make install
working-directory: ./mod_authnz_external

- name: make install mod_authz_unixgroup (POSIX-GCC)
if: runner.os != 'Windows'
run: sudo make install
working-directory: ./mod_authz_unixgroup

- name: install to apache (windows)
if: runner.os == 'Windows'
run: |
# get APACHEPATH
$env:APACHEPATH = [System.Environment]::GetEnvironmentVariable('APACHEPATH','Machine')
# manually install the compiled module in Apache
cp mod_authnz_external.so (Join-Path ($env:APACHEPATH) "modules\mod_authnz_external.so")
echo "LoadModule authnz_external_module modules/mod_authnz_external.so" >> (Join-Path ($env:APACHEPATH) "conf\httpd.conf")
working-directory: ./mod_authnz_external

- name: restart apache (ubuntu)
if: runner.os == 'Linux'
Expand All @@ -82,10 +45,4 @@ jobs:
- name: restart apache (macos)
if: runner.os == 'macOS'
run: brew services restart httpd

- name: restart apache (windows)
if: runner.os == 'Windows'
run: |
Stop-Service -Name w3svc
Set-Service Apache -StartupType Manual
Start-Service -Name Apache

12 changes: 1 addition & 11 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,16 +41,6 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v2

- name: Re-root the workspace
run: |
dir
mv mod_authnz_external ..
cd ..
rm -rf mod-auth-external
mv mod_authnz_external mod-auth-external
cd mod-auth-external
dir
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
Expand All @@ -74,7 +64,7 @@ jobs:
# uses a compiled language

- run: |
sudo apt-get install apache2 apache2-dev
sudo apt-get install apache2 apache2-dev libbsd-dev
make
- name: Perform CodeQL Analysis
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
33 changes: 0 additions & 33 deletions README.md

This file was deleted.

1 change: 0 additions & 1 deletion documentation/mod_authnz_external overview.drawio

This file was deleted.

Binary file removed documentation/mod_authnz_external overview.png
Binary file not shown.
Loading

0 comments on commit 2d2bb5c

Please sign in to comment.