curl-users
Re: CURL return Values
Date: Mon, 11 Dec 2006 05:02:40 -0500
I have gotten a curl command line statement to work, but am unable to convert the command to libcurl to work in a C++ code.
Here's the command line statement that works.
curl --data-binary "VTI-GROUP=0&partId=_userid_&password=_passid_&acrover=7&fileDigit=A&Enter=Login" \
--user-agent "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0" \
--referer https://tspweb2.tspsec.tsp.gov/login_at.htm<https://tspweb2.tspsec.tsp.gov/login_at.htm> \
--output step4b.out \
--trace-ascii step4b.trace \
--dump-header step4b.hdr \
"https://tspweb2.tspsec.tsp.gov/NASApp/tsp/authenticate.do?_name=nfclogin&SessionKey$=3ABC123<https://tspweb2.tspsec.tsp.gov/NASApp/tsp/authenticate.do?_name=nfclogin&SessionKey$=3ABC123>"
Here's my C++ code to implement the command line options
CURL *curl;
char *url("https://tspweb2.tspsec.tsp.gov/NASApp/tsp/authenticate.do?_name=nfclogin&SessionKey$=3ABC123<https://tspweb2.tspsec.tsp.gov/NASApp/tsp/authenticate.do?_name=nfclogin&SessionKey$=3ABC123>");
char *body_file_name("tsp_login.txt");
curl_global_init(CURL_GLOBAL_ALL);
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_USERAGENT,
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0");
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1);
curl_easy_setopt(curl, CURLOPT_POST, 1);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS,
"VTI-GROUP=0&partId=SSN&password=_password_&acrover=7&fileDigit=A&Enter=Login");
curl_easy_setopt(curl, CURLOPT_REFERER, "https://tspweb2.tspsec.tsp.gov/login_at.htm<https://tspweb2.tspsec.tsp.gov/login_at.htm>");
FILE *outfile = fopen(body_file_name, "wb");
curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile);
curl_easy_setopt(curl, CURLOPT_URL, url);
res = curl_easy_perform(curl);
fclose(outfile);
/* Cleanup before exit */
curl_easy_cleanup(curl);
}
Here's the output when running the C++ code
* About to connect() to tspweb2.tspsec.tsp.gov port 443
* Trying 38.118.64.250... * connected
* Connected to tspweb2.tspsec.tsp.gov (38.118.64.250) port 443
* SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Suggestions on how to correct the C++ code. Seems to be a problem with the SSL certificate. Can I display the certificate file being used by libcurl. I used the default in the command line entry.
John
Received on 2006-12-11