The Apache Haus Forum

Forum Topics => Third-party Modules => Topic started by: jleveille1337 on May 25, 2020, 09:14:12 PM

Title: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: jleveille1337 on May 25, 2020, 09:14:12 PM
My company is attempting to deploy mod_authnz_sspi.  We have done so successfully under Windows 2012, but now we are trying to do so on Windows 2019 and encountering errors.

I have acquired Apache 2 through a download of Subversion WANDisco 1.11.0.  This shows that Apache 2.4.34 is installed.
C:\Software\Subversion\Apache2\bin>httpd.exe -v
Server version: Apache/2.4.34 (Win32)
Server built:   Jul 23 2018 14:58:15

The server runs just fine until I try to plug in the sspi module.  Once I do I get this error:
C:\Software\Subversion\Apache2\bin>httpd
httpd: Syntax error on line 186 of C:/Software/Subversion/Apache2/conf/httpd.conf: Cannot load modules/mod_authnz_sspi.so into server: %1 is not a valid Win32 application.

I have attempted to deploy with all four of the zip files located on this web page https://www.apachehaus.net/modules/mod_authnz_sspi/
All four of them fail with the same load error.

I do not understand if I have the correct version alignment between the httpd server and the sspi module.

Thank you for any help you can provide.
John
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: Gregg on May 25, 2020, 09:59:28 PM
Well, all i know with the info you've given is that it's 2.4.34 Win32, what also matters is the Visual C++ version it was built on. You can run modules with lower VC number but not higher. For example, if the VC number is 11, you can run modules of VC11, 10, 9, 8 etc. but not VC12, 14, 15 or VS16 (they skipped 13). Since all I have available at this time is VC14 & 15 modules, this may be your problem.

Unfortunately this is somewhat tough to figure out. Was that Apache part of an installer?
Do you maybe have an msvcrXXX.dll in Apache's bin folder and if so what is the numeric (XXX) part of the filename?
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: jleveille1337 on May 25, 2020, 10:11:07 PM
I see this in the bin folder: msvcr120.dll

So I see that the sspi modules are labeled vc14 and vc15.  Do you suggest that I try to replace the msvcr with a newer one?  Or is it the case that I need a whole different build of Apache?  Maybe I need a sspi build for vc12?  Sorry if I am floundering in response.

Thanks,
John
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: Gregg on May 25, 2020, 10:21:14 PM
Ouch,  you could use a VC11 module module but I cannot find the ones I had, and I never throw anything away. I just forget where I put them. I'll dig around for my VC11 version or a VC11 version of mod_authn_ntlm which is a much better choice anyway. We used to have it here so it's in my backup somewhere.
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: jleveille1337 on May 25, 2020, 10:24:19 PM
Thanks Gregg.  However, something doesn't add up here.  On a separate machine at work, one of my team members got this working.  He was running Windows 2012, not 2019 like I am.  He was also running a system with, perhaps, some slightly different software packages on it.  I am really bothered by not understanding how this fresh build could fail on me while he was able to make that other setup work.

Before you go digging for old stuff - how about I check in with him tomorrow at work and try to dig into that other virtual machine and see if I can figure out how it is working for him?

I suppose the best way for me to compare the systems is to look at his setup and see what msvcr version he has in the Apache bin folder, eh?

Thanks,
John
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: jleveille1337 on May 27, 2020, 04:02:48 AM
Gregg,

I did a bit of tinkering.  I verified that the Apache setup that my co-worker built is working on Windows 2012.  Then I lifted the entire Apache2 directory, dragged it over to Windows 2019 and swapped it into place for my Apache server root folder.  When I tried starting it on Windows 2019 I got the very same library load error.  My conclusion is that there is something to do with one of these two things:
1. Somehow, mod_authnz_sspi is not compatible with Windows 2019.
2. Since my Windows 2019 server build is very fresh (not much software is on the virutal machine at this point) there is some third variable in play on the Windows 2012 system.  For instance, some other piece of software got installed that somehow enabled Apache to be able to load the module correctly.

I have no idea how to make progress with either theory.  Any advice that you (or anyone else) can give would be greatly appreciated.

Kind regards,
John
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: mario on May 27, 2020, 08:14:42 AM
the sspi does not work well with 2,4.x apache. As Gregg wrote use https://github.com/TQsoft-GmbH/mod_authn_ntlm
Title: Re: Error loading mod_authnz_sspi - not a valid Win32 application
Post by: jleveille1337 on May 27, 2020, 09:24:43 PM
Thank you Mario and Gregg.  I switched to NTLM and I was able to get subversion working where it captures userid in the subversion log.  Many thanks!

John