Lines Matching refs:async
146 destroy_async_data(&conn->async);
179 return &(((struct thread_data *)conn->async.os_specific)->tsd);
182 #define CONN_THREAD_SYNC_DATA(conn) &(((conn)->async.os_specific)->tsd);
248 /* The tsd->res structure has been copied to async.dns and perhaps the DNS
315 * destroy_async_data() cleans up async resolver data and thread handle.
317 static void destroy_async_data (struct Curl_async *async)
319 if(async->hostname)
320 free(async->hostname);
322 if(async->os_specific) {
323 struct thread_data *td = (struct thread_data*) async->os_specific;
330 free(async->os_specific);
332 async->hostname = NULL;
333 async->os_specific = NULL;
349 conn->async.os_specific = (void*) td;
353 conn->async.port = port;
354 conn->async.done = FALSE;
355 conn->async.status = 0;
356 conn->async.dns = NULL;
362 Curl_safefree(conn->async.hostname);
363 conn->async.hostname = strdup(hostname);
364 if(!conn->async.hostname)
383 destroy_async_data(&conn->async);
409 conn->async.hostname);
426 struct thread_data *td = (struct thread_data*) conn->async.os_specific;
437 conn->async.done = TRUE;
440 *entry = conn->async.dns;
442 if(!conn->async.dns)
446 destroy_async_data(&conn->async);
448 if(!conn->async.dns)
463 struct thread_data *td = (struct thread_data*) conn->async.os_specific;
480 if(!conn->async.dns) {
482 destroy_async_data(&conn->async);
485 destroy_async_data(&conn->async);
486 *entry = conn->async.dns;