| 
 
 
 | 
| Keep Server Online 
 If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.
 
 or
 
 
   
 A donation makes a contribution towards the costs, the time and effort that's going in this site and building.
 
 Thank You! Steffen
 
 Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
 |  | 
 | 
| | 
| | 
|  Topic: OPENSSL_Applink runtime error (vc15 - 2.4.x -openssl 1.1.0g) |  |  
| Author |  |  
| nono303 
 
  
 Joined: 20 Dec 2016
 Posts: 214
 Location: Lille, FR, EU
 
 | 
|  Posted: Thu 28 Dec '17 15:34    Post subject: OPENSSL_Applink runtime error (vc15 - 2.4.x -openssl 1.1.0g) |   |  
| 
 |  
| Hi, 
 I actually try to make a vc15 x64 build from 2.4.x-mod_md branch and openssl 1.1.0g.
 All sounds good during compilation time and httpd –V execution.
 
 But when I launch it with my config (with mod_md directives), I have a OPENSSL_Uplink(000007FEED2453A8,08): no OPENSSL_Applink exception on stdout.
 I searched on this point and had found few information (same issue for abs,  openssl FAQ...) around including openssl/applink.c, adding CRYPTO_malloc_init...
 
 Maybe I miss something!
 However, what's the ''tips'' to make it working, according to  Apache httpd 2.4.29 GA available :: update
 
  	  | Quote: |  	  | httpd.exe with OPENSSL_Applink and VC14/15 SupportedOS Manifest | 
 
 Note that I encounter the same issue with tag 2.4.29 version
 
 Thanks in advance!
 
 Last edited by nono303 on Sat 30 Dec '17 8:23; edited 1 time in total
 |  |  
| Back to top |  |  
| admin Site Admin
 
  
 Joined: 15 Oct 2005
 Posts: 706
 
 
 | 
|  Posted: Thu 28 Dec '17 15:51    Post subject: |   |  
| 
 |  
| Do you have the issue, when you run it with the Apachelounge binary ? |  |  
| Back to top |  |  
| nono303 
 
  
 Joined: 20 Dec 2016
 Posts: 214
 Location: Lille, FR, EU
 
 | 
|  Posted: Thu 28 Dec '17 16:06    Post subject: |   |  
| 
 |  
|  	  | admin wrote: |  	  | Do you have the issue, when you run it with the Apachelounge binary ? | 
 NO
   I actually use Apachelounge binary and add my own module builds
 |  |  
| Back to top |  |  
| nono303 
 
  
 Joined: 20 Dec 2016
 Posts: 214
 Location: Lille, FR, EU
 
 | 
|  Posted: Wed 03 Jan '18 15:42    Post subject: |   |  
| 
 |  
| Finaly, after some good reading, problem solved adding not one but TWO good lines in server/main.c : 
  	  | Code: |  	  | @@ -45,6 +45,10 @@
 #include <unistd.h>
 #endif
 
 +#include "openssl\applink.c"
 +CRYPTO_malloc_init();
 
 | 
 
  |  |  
| Back to top |  |  
| Steffen Moderator
 
 
 Joined: 15 Oct 2005
 Posts: 3131
 Location: Hilversum, NL, EU
 
 | 
|  Posted: Wed 03 Jan '18 16:01    Post subject: |   |  
| 
 |  
| I do not have the line CRYPTO_malloc_init(); 
 I have:
 
 ...
 #include <unistd.h>
 #endif
 #include "openssl\applink.c"
 ...
 |  |  
| Back to top |  |  
| nono303 
 
  
 Joined: 20 Dec 2016
 Posts: 214
 Location: Lille, FR, EU
 
 | 
|  Posted: Thu 04 Jan '18 15:09    Post subject: |   |  
| 
 |  
| Hi Steffen, 
 You're right!
 I play too much with the C flags on perl & httpd compile^^
 
 Incidentally, what's the point (advantage) of flagging httpd.exe with the manifest listing ids of the 5 OS?
 
 Regards
 |  |  
| Back to top |  |  
| Steffen Moderator
 
 
 Joined: 15 Oct 2005
 Posts: 3131
 Location: Hilversum, NL, EU
 
 | 
|  Posted: Thu 04 Jan '18 16:07    Post subject: |   |  
| 
 |  
| It is needed for example for correct funtioning of PHP. 
 An issue GetVersionEx was reported by the PHP team, PHP  failed to recognize the correct OS it's actually running under.
 
 This is a mail from the PHP team:
 
 We've got a simple issue which was made bigger with win10. With win8.1 it was already, but there was a trick how to workaround it. No more tricks in the pocket when win10 is out.
 
 To the point - at least GetVersionEx won't work properly already on win 8.1. It'll deliver 6.2 as windows major.minor when there's no manifest. As I've said, there's a trick in PHP to avoid manifest, but that won't work in win10, there it'll be always 6.2. With manifest, the correct result is 6.3 on win8.1 and 10.0 on win10. For more info, see
 
 https://msdn.microsoft.com/en-us/library/windows/desktop/dn481241%28v=vs.85%29.aspx
 
 http://blogs.msdn.com/b/chuckw/archive/2013/09/10/manifest-madness.aspx
 
 https://bugs.php.net/bug.php?id=69642 (here especially my last posts)
 
 Why this affects Apache - I've already implemented manifests in master. However, if an exe has no manifest, but loads a dll with manifest - that has no effect. So PHP under httpd.exe without manifest will show 6.2 as windows number, and that will cause many WTFs that will hit us back.  As PHP will fail to recognize the correct OS it's actually running under.
 |  |  
| Back to top |  |  
 
 | 
 |  | 
 |  |