#include <stdio.h>

#include <curl/curl.h>

#define url1 "http://XXXXXXXX:YYYYYYYY@nlbavwtech7:8312/webui/servlet/deploy?command=ping"
#define url2 "https://XXXXXXXX:YYYYYY@nlbavwtech11.infor.com:8447/lnui_ux/servlet/deploy?command=ping"

static CURL *curl;
static int Verbose = 0;

void is_url_valid(char *url)
{
	long httpStatus;
	CURLcode res;

	printf("Start with %s\n",url);

	curl_easy_setopt(curl,CURLOPT_VERBOSE,Verbose);

        res = curl_easy_setopt(curl,CURLOPT_HTTPAUTH,CURLAUTH_DIGEST);
	if (res != CURLE_OK) printf("CURLOPT_HTTPAUTH = %d\n",res);

        res = curl_easy_setopt(curl,CURLOPT_COOKIEFILE,"old.txt");
	if (res != CURLE_OK) printf("CURLOPT_COOKIEFILE = %d\n",res);

        res = curl_easy_setopt(curl,CURLOPT_COOKIEJAR,"new.txt");
	if (res != CURLE_OK) printf("CURLOPT_COOKIEJAR = %d\n",res);

        res = curl_easy_setopt(curl,CURLOPT_SSL_VERIFYPEER,0);
	if (res != CURLE_OK) printf("CURLOPT_SSL_VERIFYPEER = %d\n",res);

	res = curl_easy_setopt(curl,CURLOPT_URL,url);
	if (res != CURLE_OK) printf("CURLOPT_URL = %d\n",res);

	res = curl_easy_perform(curl);
	if (res != CURLE_OK) printf("Perform = %d\n",res);

        res = curl_easy_getinfo(curl,CURLINFO_RESPONSE_CODE,&httpStatus);
	if (res != CURLE_OK) printf("CURLINFO_RESPONSE_CODE = %d\n",res);

        printf("HTTP %ld\n",httpStatus);

        curl_easy_reset(curl);

	//curl_easy_cleanup(curl);
	//curl = curl_easy_init();
}

int main (int argc, char **argv)
{
	int arg = 1;

	if (argc > 1 && strcmp(argv[arg],"-v") == 0)
	{
		Verbose = 1;
		arg++;
	}

	curl = curl_easy_init();
	if (curl) {
		if (strcmp(argv[arg],"one") == 0 || strcmp(argv[arg],"both") == 0)
			is_url_valid(url1);

		if (strcmp(argv[arg],"two") == 0 || strcmp(argv[arg],"both") == 0)
			is_url_valid(url2);
	}
}
