62 fprintf(stderr,
"lock: no such data: %d\n", (
int)data);
89 fprintf(stderr,
"unlock: no such data: %d\n", (
int)data);
106 fprintf(stderr,
"curl_easy_init() failed\n");
113 printf(
"CURLOPT_SHARE\n");
119 fprintf(stderr,
"perform url '%s' repeat %d failed, curlcode %d\n",
120 tdata->
url, i, (
int)code);
141 user.
text =
"Pigs in space";
146 fprintf(stderr,
"curl_global_init() failed\n");
154 fprintf(stderr,
"curl_share_init() failed\n");
160 printf(
"CURLSHOPT_LOCKFUNC\n");
164 printf(
"CURLSHOPT_UNLOCKFUNC\n");
168 printf(
"CURLSHOPT_USERDATA\n");
172 printf(
"CURL_LOCK_DATA_SSL_SESSION\n");
178 fprintf(stderr,
"curl_share_setopt() failed\n");
188 for(i = 1; i <=
THREADS; i++) {
201 printf(
"*** run %d\n", i);
204 fprintf(stderr,
"curl_easy_init() failed\n");
212 printf(
"CURLOPT_SHARE\n");
219 printf(
"try SHARE_CLEANUP...\n");
222 fprintf(stderr,
"curl_share_cleanup succeed but error expected\n");
226 printf(
"SHARE_CLEANUP failed, correct\n");
236 printf(
"SHARE_CLEANUP\n");
239 fprintf(stderr,
"curl_share_cleanup failed, code errno %d\n",
242 printf(
"GLOBAL_CLEANUP\n");
#define test_setopt(A, B, C)
UNITTEST_START char * ptr
CURL_EXTERN CURLSH * curl_share_init(void)
CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *)
#define curl_easy_setopt(handle, option, value)
#define TEST_ERR_MAJOR_BAD
static int counter[MAX_EASY_HANDLES]
static void my_lock(CURL *handle, curl_lock_data data, curl_lock_access laccess, void *useptr)
static void * fire(void *ptr)
CURL_EXTERN CURL * curl_easy_init(void)
CURL_EXTERN void curl_easy_cleanup(CURL *curl)
CURL_EXTERN CURLcode curl_global_init(long flags)
curl_global_init() globally initializes curl given a bitwise set of the different features of what to...
CURL_EXTERN void curl_global_cleanup(void)
curl_global_cleanup() globally cleanups curl, uses the value of "init_flags" to determine what needs ...
#define curl_share_setopt(share, opt, param)
CURL_EXTERN CURLcode curl_easy_perform(CURL *curl)
static void my_unlock(CURL *handle, curl_lock_data data, void *useptr)