sourcemod/extensions/curl/curl-src/tests/libtest/lib544.c

59 lines
1.6 KiB
C
Raw Normal View History

2013-03-18 01:55:59 +01:00
/*****************************************************************************
2009-01-09 00:31:00 +01:00
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
2013-03-18 01:55:59 +01:00
* $Id: lib544.c,v 1.3 2008-09-20 04:26:57 yangtse Exp $
*/
2009-01-09 00:31:00 +01:00
#include "test.h"
#include "memdebug.h"
static char teststring[] =
"This\0 is test binary data with an embedded NUL byte\n";
int test(char *URL)
{
CURL *curl;
CURLcode res=CURLE_OK;
if (curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
fprintf(stderr, "curl_global_init() failed\n");
return TEST_ERR_MAJOR_BAD;
}
if ((curl = curl_easy_init()) == NULL) {
fprintf(stderr, "curl_easy_init() failed\n");
curl_global_cleanup();
return TEST_ERR_MAJOR_BAD;
}
/* First set the URL that is about to receive our POST. */
2013-03-18 01:55:59 +01:00
curl_easy_setopt(curl, CURLOPT_URL, URL);
2009-01-09 00:31:00 +01:00
#ifdef LIB545
2013-03-18 01:55:59 +01:00
curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) sizeof teststring - 1);
2009-01-09 00:31:00 +01:00
#endif
2013-03-18 01:55:59 +01:00
curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, teststring);
2009-01-09 00:31:00 +01:00
2013-03-18 01:55:59 +01:00
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); /* show verbose for debug */
curl_easy_setopt(curl, CURLOPT_HEADER, 1L); /* include header */
2009-01-09 00:31:00 +01:00
/* Update the original data to detect non-copy. */
strcpy(teststring, "FAIL");
/* Now, this is a POST request with binary 0 embedded in POST data. */
res = curl_easy_perform(curl);
/* always cleanup */
curl_easy_cleanup(curl);
curl_global_cleanup();
return (int)res;
}