Evergreen can fail to connect to authorize.net
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evergreen |
New
|
Undecided
|
Unassigned |
Bug Description
Evergreen can fail to connect to an API endpoint from authorize.net, meaning that credit card payments through that service fail to be proceed.
The error message received by Evergreen is:
No x_response_code from server, (HTTPS response: 900 NET OR SSL ERROR ) (HTTPS headers: ) (Raw HTTPS content: )
Upon tracing this further, this appears to be an issue with newer versions of
* Net::SSLeay (which is what Business:
and/or
* OpenSSL (specifically, version 3)
What works:
Net::SSLeay <= 1.88
OpenSSL <= 1.1.1w
What doesn't work:
Net::SSLeay 1.92
OpenSSL 3
The following test script can exercise the problem:
```
mc@eg-dev1:/tmp$ cat /tmp/test.pl
#!/usr/bin/perl
use strict;
use warnings;
use Net::SSLeay qw(get_https);
warn $Net::SSLeay:
my ($page, $response, $reply_headers);
($page, $response, $reply_headers) = get_https(
warn $response;
```
A failure gives the following output:
---
1.92 at /tmp/test.pl line 8.
HTTP/1.0 900 NET OR SSL ERROR
SSL_read 158267: 1 - error:0A000126:SSL routines:
---
I also tried a development version of Net::SSLeay, 1.93_02; that didn't fix it.
Original report from Benjamin Murphy of NC Cardinal.
This looks like this starts becoming a problem with Debian 12 Bookworm and Ubuntu 22.04 LTS Jammy.