Hi, I need to write an interface in C from a payment entry application to a web
service that processes credit cards. I'm not particularly familiar with web
programming concepts but eager to learn. I think I'm missing something very
basic and would welcome any assistance. The company that hosts the web service
can't help me because they aren't familiar with C.
I used gSoap to access their WSDL and convert it to the standard gSoap header
and source files. I then wrote a simple C program to call the service's
Authenticate method, passing a user name and password they gave me. The method
is supposed to return a "passkey", a long encrypted string which could if
desired be used in other method calls such as for processing a payment.
When I run the program, the passkey pointer comes back null and there's a
certificate authentication error. Attempts to access the same URL with a
browser succeed, however. Why would this happen?
If this is more than a simple issue, and requires someone to invest time in
research, my company would be willing to pay for consultation services. I've
cc'd our president, Thomas A. Dempsey of Vision Data Equipment Corporation,
Rensselaer, NY (www.vdata.com)
Program code:
if (soap_call___ns2__Authenticate(soap, NULL, NULL, &auth, &passkey))
{
printf("Authentication call apparently successful\n");
if (result = passkey.AuthenticateResult)
printf("Passkey is %s\n", result);
else
soap_print_fault(soap, stderr);
}
Output:
Authentication call apparently successful
SOAP 1.2 fault: SOAP-ENV:Sender [no subcode]
"SSL_ERROR_SSL
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify
failed"
Detail: SSL_connect error in tcp_connect()
Email from the service provider:
Richard,
Would it be possible for us to have a copy of your authentication code to see
if we can replicate the error?What exactly is he looking for, and where should
I be looking for it?
Thanks for any help.
Richard Magidson