Commit 4d5d7113134e9e30f4e20fcdd88e92b6c86ac7a1
1 parent
6981e873
Exists in
master
and in
1 other branch
Adding win32 tweak to disable fips mode on openssl.
Showing
3 changed files
with
37 additions
and
7 deletions
Show diff stats
src/core/linkedlist.c
src/network_modules/openssl/context.c
| ... | ... | @@ -154,26 +154,54 @@ SSL_CTX * lib3270_openssl_get_context(H3270 *hSession) { |
| 154 | 154 | SSL_load_error_strings(); |
| 155 | 155 | SSL_library_init(); |
| 156 | 156 | |
| 157 | -#ifdef OPENSSL_FIPS | |
| 157 | +#if !defined(OPENSSL_FIPS) | |
| 158 | 158 | |
| 159 | 159 | lib3270_write_log( |
| 160 | 160 | hSession, |
| 161 | 161 | "openssl", |
| 162 | - "Initializing %s %s FIPS.\n", | |
| 163 | - SSLeay_version(SSLEAY_VERSION), | |
| 164 | - (FIPS_mode() ? "with" : "without" ) | |
| 162 | + "Initializing %s\n", | |
| 163 | + SSLeay_version(SSLEAY_VERSION) | |
| 165 | 164 | ); |
| 166 | 165 | |
| 166 | +#elif defined(_WIN32) | |
| 167 | + { | |
| 168 | + lib3270_auto_cleanup(HKEY) hKey; | |
| 169 | + DWORD disp = 0; | |
| 170 | + LSTATUS rc = RegCreateKeyEx( | |
| 171 | + HKEY_LOCAL_MACHINE, | |
| 172 | + "Software\\" LIB3270_STRINGIZE_VALUE_OF(PRODUCT_NAME) "\\tweaks", | |
| 173 | + 0, | |
| 174 | + NULL, | |
| 175 | + REG_OPTION_NON_VOLATILE, | |
| 176 | + KEY_QUERY_VALUE|KEY_READ, | |
| 177 | + NULL, | |
| 178 | + &hKey, | |
| 179 | + &disp); | |
| 180 | + | |
| 181 | + if(rc == ERROR_SUCCESS) { | |
| 182 | + FIPS_mode_set(lib3270_win32_get_dword(hKey, "fips_mode", 1)); | |
| 183 | + } | |
| 184 | + | |
| 185 | + lib3270_write_log( | |
| 186 | + hSession, | |
| 187 | + "openssl", | |
| 188 | + "Initializing %s %s FIPS.\n", | |
| 189 | + SSLeay_version(SSLEAY_VERSION), | |
| 190 | + (FIPS_mode() ? "with" : "without" ) | |
| 191 | + ); | |
| 192 | + | |
| 193 | + } | |
| 167 | 194 | #else |
| 168 | 195 | |
| 169 | 196 | lib3270_write_log( |
| 170 | 197 | hSession, |
| 171 | 198 | "openssl", |
| 172 | - "Initializing %s without FIPS.\n", | |
| 173 | - SSLeay_version(SSLEAY_VERSION) | |
| 199 | + "Initializing %s %s FIPS.\n", | |
| 200 | + SSLeay_version(SSLEAY_VERSION), | |
| 201 | + (FIPS_mode() ? "with" : "without" ) | |
| 174 | 202 | ); |
| 175 | 203 | |
| 176 | -#endif // OPENSSL_FIPS | |
| 204 | +#endif | |
| 177 | 205 | |
| 178 | 206 | context = SSL_CTX_new(SSLv23_method()); |
| 179 | 207 | if(context == NULL) { | ... | ... |