Lines Matching refs:async
147 destroy_async_data(&conn->async);
180 return &(((struct thread_data *)conn->async.os_specific)->tsd);
183 #define CONN_THREAD_SYNC_DATA(conn) &(((conn)->async.os_specific)->tsd);
249 /* The tsd->res structure has been copied to async.dns and perhaps the DNS
316 * destroy_async_data() cleans up async resolver data and thread handle.
318 static void destroy_async_data (struct Curl_async *async)
320 if(async->hostname)
321 free(async->hostname);
323 if(async->os_specific) {
324 struct thread_data *td = (struct thread_data*) async->os_specific;
331 free(async->os_specific);
333 async->hostname = NULL;
334 async->os_specific = NULL;
350 conn->async.os_specific = (void*) td;
354 conn->async.port = port;
355 conn->async.done = FALSE;
356 conn->async.status = 0;
357 conn->async.dns = NULL;
363 Curl_safefree(conn->async.hostname);
364 conn->async.hostname = strdup(hostname);
365 if(!conn->async.hostname)
384 destroy_async_data(&conn->async);
410 conn->async.hostname);
427 struct thread_data *td = (struct thread_data*) conn->async.os_specific;
438 conn->async.done = TRUE;
441 *entry = conn->async.dns;
443 if(!conn->async.dns)
447 destroy_async_data(&conn->async);
449 if(!conn->async.dns)
464 struct thread_data *td = (struct thread_data*) conn->async.os_specific;
481 if(!conn->async.dns) {
483 destroy_async_data(&conn->async);
486 destroy_async_data(&conn->async);
487 *entry = conn->async.dns;