connect.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifndef __CONNECT_H
  2. #define __CONNECT_H
  3. /***************************************************************************
  4. * _ _ ____ _
  5. * Project ___| | | | _ \| |
  6. * / __| | | | |_) | |
  7. * | (__| |_| | _ <| |___
  8. * \___|\___/|_| \_\_____|
  9. *
  10. * Copyright (C) 1998 - 2008, Daniel Stenberg, <[email protected]>, et al.
  11. *
  12. * This software is licensed as described in the file COPYING, which
  13. * you should have received as part of this distribution. The terms
  14. * are also available at http://curl.haxx.se/docs/copyright.html.
  15. *
  16. * You may opt to use, copy, modify, merge, publish, distribute and/or sell
  17. * copies of the Software, and permit persons to whom the Software is
  18. * furnished to do so, under the terms of the COPYING file.
  19. *
  20. * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
  21. * KIND, either express or implied.
  22. *
  23. * $Id$
  24. ***************************************************************************/
  25. int Curl_nonblock(curl_socket_t sockfd, /* operate on this */
  26. int nonblock /* TRUE or FALSE */);
  27. CURLcode Curl_is_connected(struct connectdata *conn,
  28. int sockindex,
  29. bool *connected);
  30. CURLcode Curl_connecthost(struct connectdata *conn,
  31. const struct Curl_dns_entry *host, /* connect to
  32. this */
  33. curl_socket_t *sockconn, /* not set if error */
  34. Curl_addrinfo **addr, /* the one we used */
  35. bool *connected); /* truly connected? */
  36. CURLcode Curl_store_ip_addr(struct connectdata *conn);
  37. /* generic function that returns how much time there's left to run, according
  38. to the timeouts set */
  39. long Curl_timeleft(struct connectdata *conn,
  40. struct timeval *nowp,
  41. bool duringconnect);
  42. #define DEFAULT_CONNECT_TIMEOUT 300000 /* milliseconds == five minutes */
  43. /*
  44. * Used to extract socket and connectdata struct for the most recent
  45. * transfer on the given SessionHandle.
  46. *
  47. * The socket 'long' will be -1 in case of failure!
  48. */
  49. CURLcode Curl_getconnectinfo(struct SessionHandle *data,
  50. long *param_longp,
  51. struct connectdata **connp);
  52. #endif