{-# OPTIONS_GHC -optc-DCURL_NO_OLDIES #-}
{-# LINE 1 "dist/build/Network/Curlhs/Base.hsc" #-}
-------------------------------------------------------------------------------
{-# LINE 2 "dist/build/Network/Curlhs/Base.hsc" #-}
-- |
-- Module      :  Network.Curlhs.Base
-- Copyright   :  Copyright © 2012 Krzysztof Kardzis
-- License     :  ISC License (MIT/BSD-style, see LICENSE file for details)
-- 
-- Maintainer  :  Krzysztof Kardzis <kkardzis@gmail.com>
-- Stability   :  experimental
-- Portability :  non-portable
--
--
-- Module "Network.Curlhs.Base" provides a direct low-level bindings to
-- @libcurl@. It is basically a 1:1 mapping of the @libcurl@'s C API,
-- a direct translation of \"curl/curl.h\" header files to Haskell FFI.
-- A higher level interface, without ubiquitous pointers and all of that
-- C stuff, is provided through the module "Network.Curlhs.Core".
--
-- Documentation about the library and/or particular functions may be found
-- in the @libcurl@'s manual pages or on the @libcurl@'s project site
-- (<http://curl.haxx.se/libcurl/>). Because API of this module mirrors API
-- of the external library, particular symbols may exist or not,
-- dependently of that, which version of @libcurl@ is used during compilation
-- of the package. The module as closely as possible tries to follow
-- the original @libcurl@ API. The main differences are in types of functions
-- such as @curl_easy_setopt@ and @curl_easy_getinfo@. Besides that all
-- symbol names are prefixed with \'c\' or \'C\'. 
--
-- As the name of the module may suggest, this module is a basis for the
-- rest of @curlhs@ package. For now exposed API is somewhat incomplete,
-- still lacks some things (like the \"multi interface\"), but the aim is
-- to provide here a complete API of @libcurl@, as defined in its C headers.
--
-------------------------------------------------------------------------------

{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE EmptyDataDecls           #-}

module Network.Curlhs.Base where

import Foreign.C.Types  (CChar, CInt, CUInt, CLong, CLLong, CDouble)
import Foreign.C.Types  (CSize, CFile, CTime)
import Foreign.Ptr      (Ptr, FunPtr, castPtr)
import Foreign.Storable (Storable (..))

import Control.Applicative ((<$>), (<*>))


{-# LINE 50 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------

{-# LINE 54 "dist/build/Network/Curlhs/Base.hsc" #-}


{-# LINE 56 "dist/build/Network/Curlhs/Base.hsc" #-}

{-# LINE 57 "dist/build/Network/Curlhs/Base.hsc" #-}


{-# LINE 61 "dist/build/Network/Curlhs/Base.hsc" #-}


{-# LINE 65 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- * Definitions from \"curl/curlver.h\"
-------------------------------------------------------------------------------
libCURL_COPYRIGHT :: String
libCURL_COPYRIGHT = "1996 - 2012 Daniel Stenberg, <daniel@haxx.se>."
{-# LINE 72 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_TIMESTAMP :: String
libCURL_TIMESTAMP = "Thu Mar 22 18:49:32 UTC 2012"
{-# LINE 75 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_VERSION   :: String
libCURL_VERSION   = "7.25.0"
{-# LINE 78 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_VERSION_NUM   :: Int
libCURL_VERSION_NUM   = 465152
{-# LINE 81 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_VERSION_MAJOR :: Int
libCURL_VERSION_MAJOR = 7
{-# LINE 84 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_VERSION_MINOR :: Int
libCURL_VERSION_MINOR = 25
{-# LINE 87 "dist/build/Network/Curlhs/Base.hsc" #-}

libCURL_VERSION_PATCH :: Int
libCURL_VERSION_PATCH = 0
{-# LINE 90 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- * Definitions from \"curl/curlbuild.h\"
-------------------------------------------------------------------------------
type CCURL_off_t = CLLong  -- ??


-------------------------------------------------------------------------------
-- * Definitions from \"curl/curlrules.h\"
-------------------------------------------------------------------------------
-- todo


-------------------------------------------------------------------------------
-- * Definitions from \"curl/curl.h\"
-------------------------------------------------------------------------------
data CCURL


-------------------------------------------------------------------------------

{-# LINE 114 "dist/build/Network/Curlhs/Base.hsc" #-}
type CCURL_socket_t = CInt

{-# LINE 116 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURL_SOCKET_BAD :: CCURL_socket_t
cCURL_SOCKET_BAD =  -1
{-# LINE 118 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** CURL_httppost
-------------------------------------------------------------------------------
data CCURL_httppost = CCURL_httppost
  { ccurl_httppost_next           :: Ptr CCURL_httppost
  , ccurl_httppost_name           :: Ptr CChar
  , ccurl_httppost_namelength     :: CLong
  , ccurl_httppost_contents       :: Ptr CChar
  , ccurl_httppost_contentslength :: CLong
  , ccurl_httppost_buffer         :: Ptr CChar
  , ccurl_httppost_bufferlength   :: CLong
  , ccurl_httppost_contenttype    :: Ptr CChar
  , ccurl_httppost_contentheader  :: Ptr CCURL_slist
  , ccurl_httppost_more           :: Ptr CCURL_httppost
  , ccurl_httppost_flags          :: CLong
  , ccurl_httppost_showfilename   :: Ptr CChar
  , ccurl_httppost_userp          :: Ptr ()
  } deriving (Show)

-- instance Storable CCURL_httppost where
--   sizeOf _    = #{size    struct curl_httppost}
--   alignment _ = #{alignof struct curl_httppost}
--   poke _ _    = undefined
--   peek _      = undefined

cHTTPPOST_FILENAME :: CLong
cHTTPPOST_FILENAME =  1
{-# LINE 146 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_READFILE :: CLong
cHTTPPOST_READFILE =  2
{-# LINE 147 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_PTRNAME :: CLong
cHTTPPOST_PTRNAME =  4
{-# LINE 148 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_PTRCONTENTS :: CLong
cHTTPPOST_PTRCONTENTS =  8
{-# LINE 149 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_BUFFER :: CLong
cHTTPPOST_BUFFER =  16
{-# LINE 150 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_PTRBUFFER :: CLong
cHTTPPOST_PTRBUFFER =  32
{-# LINE 151 "dist/build/Network/Curlhs/Base.hsc" #-}
cHTTPPOST_CALLBACK :: CLong
cHTTPPOST_CALLBACK =  64
{-# LINE 152 "dist/build/Network/Curlhs/Base.hsc" #-}
 
-------------------------------------------------------------------------------
-- ** Callbacks
-------------------------------------------------------------------------------
-- *** CURL_progress_callback
-------------------------------------------------------------------------------
type CCURL_progress_callback
  = Ptr () -> CDouble -> CDouble -> CDouble -> CDouble -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_progress_callback
    :: CCURL_progress_callback
    -> IO (FunPtr CCURL_progress_callback)


-------------------------------------------------------------------------------
-- *** CURL_write_callback
-------------------------------------------------------------------------------
cCURL_MAX_WRITE_SIZE :: CSize
cCURL_MAX_WRITE_SIZE =  16384
{-# LINE 171 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_MAX_HTTP_HEADER :: CSize
cCURL_MAX_HTTP_HEADER =  102400
{-# LINE 172 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_WRITEFUNC_PAUSE :: CSize
cCURL_WRITEFUNC_PAUSE =  268435457
{-# LINE 173 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_write_callback
  = Ptr CChar -> CSize -> CSize -> Ptr () -> IO CSize

foreign import ccall "wrapper"
  wrap_ccurl_write_callback
    :: CCURL_write_callback
    -> IO (FunPtr CCURL_write_callback)


-------------------------------------------------------------------------------
-- ** CURL_fileinfo
-------------------------------------------------------------------------------
newtype CCURLfiletype = CCURLfiletype CInt deriving (Eq, Show)

cCURLFILETYPE_FILE :: CCURLfiletype
cCURLFILETYPE_FILE =  CCURLfiletype 0
{-# LINE 189 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_DIRECTORY :: CCURLfiletype
cCURLFILETYPE_DIRECTORY =  CCURLfiletype 1
{-# LINE 190 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_SYMLINK :: CCURLfiletype
cCURLFILETYPE_SYMLINK =  CCURLfiletype 2
{-# LINE 191 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_DEVICE_BLOCK :: CCURLfiletype
cCURLFILETYPE_DEVICE_BLOCK =  CCURLfiletype 3
{-# LINE 192 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_DEVICE_CHAR :: CCURLfiletype
cCURLFILETYPE_DEVICE_CHAR =  CCURLfiletype 4
{-# LINE 193 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_NAMEDPIPE :: CCURLfiletype
cCURLFILETYPE_NAMEDPIPE =  CCURLfiletype 5
{-# LINE 194 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_SOCKET :: CCURLfiletype
cCURLFILETYPE_SOCKET =  CCURLfiletype 6
{-# LINE 195 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_DOOR :: CCURLfiletype
cCURLFILETYPE_DOOR =  CCURLfiletype 7
{-# LINE 196 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFILETYPE_UNKNOWN :: CCURLfiletype
cCURLFILETYPE_UNKNOWN =  CCURLfiletype 8
{-# LINE 197 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURLFINFOFLAG_KNOWN_FILENAME :: CUInt
cCURLFINFOFLAG_KNOWN_FILENAME =  1
{-# LINE 199 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_FILETYPE :: CUInt
cCURLFINFOFLAG_KNOWN_FILETYPE =  2
{-# LINE 200 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_TIME :: CUInt
cCURLFINFOFLAG_KNOWN_TIME =  4
{-# LINE 201 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_PERM :: CUInt
cCURLFINFOFLAG_KNOWN_PERM =  8
{-# LINE 202 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_UID :: CUInt
cCURLFINFOFLAG_KNOWN_UID =  16
{-# LINE 203 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_GID :: CUInt
cCURLFINFOFLAG_KNOWN_GID =  32
{-# LINE 204 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_SIZE :: CUInt
cCURLFINFOFLAG_KNOWN_SIZE =  64
{-# LINE 205 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFINFOFLAG_KNOWN_HLINKCOUNT :: CUInt
cCURLFINFOFLAG_KNOWN_HLINKCOUNT =  128
{-# LINE 206 "dist/build/Network/Curlhs/Base.hsc" #-}

data CCURL_fileinfo = CCURL_fileinfo
  { ccurl_fileinfo_filename       :: Ptr CChar
  , ccurl_fileinfo_filetype       :: CCURLfiletype
  , ccurl_fileinfo_time           :: CTime
  , ccurl_fileinfo_perm           :: CUInt
  , ccurl_fileinfo_uid            :: CInt
  , ccurl_fileinfo_gid            :: CInt
  , ccurl_fileinfo_size           :: CCURL_off_t
  , ccurl_fileinfo_hardlinks      :: CLong
  , ccurl_fileinfo_strings_time   :: Ptr CChar
  , ccurl_fileinfo_strings_perm   :: Ptr CChar
  , ccurl_fileinfo_strings_user   :: Ptr CChar
  , ccurl_fileinfo_strings_group  :: Ptr CChar
  , ccurl_fileinfo_strings_target :: Ptr CChar
  , ccurl_fileinfo_flags          :: CUInt
  , ccurl_fileinfo_b_data         :: Ptr CChar
  , ccurl_fileinfo_b_size         :: CSize
  , ccurl_fileinfo_b_used         :: CSize
  } deriving (Show)

-- instance Storable CCURL_fileinfo where
--   sizeOf _    = #{size    struct curl_fileinfo}
--   alignment _ = #{alignof struct curl_fileinfo}
--   poke _ _    = undefined
--   peek _      = undefined

 
-------------------------------------------------------------------------------
-- ** Callbacks
-------------------------------------------------------------------------------
-- *** CURL_chunk_bgn_callback
-------------------------------------------------------------------------------
cCURL_CHUNK_BGN_FUNC_OK :: CLong
cCURL_CHUNK_BGN_FUNC_OK =  0
{-# LINE 240 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_CHUNK_BGN_FUNC_FAIL :: CLong
cCURL_CHUNK_BGN_FUNC_FAIL =  1
{-# LINE 241 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_CHUNK_BGN_FUNC_SKIP :: CLong
cCURL_CHUNK_BGN_FUNC_SKIP =  2
{-# LINE 242 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_chunk_bgn_callback
  = Ptr () -> Ptr () -> CInt -> IO CLong

foreign import ccall "wrapper"
  wrap_ccurl_chunk_bgn_callback
    :: CCURL_chunk_bgn_callback
    -> IO (FunPtr CCURL_chunk_bgn_callback)


-------------------------------------------------------------------------------
-- *** CURL_chunk_end_callback
-------------------------------------------------------------------------------
cCURL_CHUNK_END_FUNC_OK :: CLong
cCURL_CHUNK_END_FUNC_OK =  0
{-# LINE 256 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_CHUNK_END_FUNC_FAIL :: CLong
cCURL_CHUNK_END_FUNC_FAIL =  1
{-# LINE 257 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_chunk_end_callback
  = Ptr () -> IO CLong

foreign import ccall "wrapper"
  wrap_ccurl_chunk_end_callback
    :: CCURL_chunk_end_callback
    -> IO (FunPtr CCURL_chunk_end_callback)

 
-------------------------------------------------------------------------------
-- *** CURL_fnmatch_callback
-------------------------------------------------------------------------------
cCURL_FNMATCHFUNC_MATCH :: CInt
cCURL_FNMATCHFUNC_MATCH =  0
{-# LINE 271 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FNMATCHFUNC_NOMATCH :: CInt
cCURL_FNMATCHFUNC_NOMATCH =  1
{-# LINE 272 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FNMATCHFUNC_FAIL :: CInt
cCURL_FNMATCHFUNC_FAIL =  2
{-# LINE 273 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_fnmatch_callback
  = Ptr () -> Ptr CChar -> Ptr CChar -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_fnmatch_callback
    :: CCURL_fnmatch_callback
    -> IO (FunPtr CCURL_fnmatch_callback)

 
-------------------------------------------------------------------------------
-- *** CURL_seek_callback
-------------------------------------------------------------------------------
cCURL_SEEKFUNC_OK :: CInt
cCURL_SEEKFUNC_OK =  0
{-# LINE 287 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SEEKFUNC_FAIL :: CInt
cCURL_SEEKFUNC_FAIL =  1
{-# LINE 288 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SEEKFUNC_CANTSEEK :: CInt
cCURL_SEEKFUNC_CANTSEEK =  2
{-# LINE 289 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_seek_callback
  = Ptr () -> CCURL_off_t -> CInt -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_seek_callback
    :: CCURL_seek_callback
    -> IO (FunPtr CCURL_seek_callback)


-------------------------------------------------------------------------------
-- *** CURL_read_callback
-------------------------------------------------------------------------------
cCURL_READFUNC_ABORT :: CSize
cCURL_READFUNC_ABORT =  268435456
{-# LINE 303 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_READFUNC_PAUSE :: CSize
cCURL_READFUNC_PAUSE =  268435457
{-# LINE 304 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_read_callback
  = Ptr CChar -> CSize -> CSize -> Ptr () -> IO CSize

foreign import ccall "wrapper"
  wrap_ccurl_read_callback
    :: CCURL_read_callback
    -> IO (FunPtr CCURL_read_callback)


-------------------------------------------------------------------------------
-- *** CURL_sockopt_callback
-------------------------------------------------------------------------------
newtype CCURLsocktype = CCURLsocktype CInt deriving (Eq, Show)

cCURLSOCKTYPE_IPCXN :: CCURLsocktype
cCURLSOCKTYPE_IPCXN =  CCURLsocktype 0
{-# LINE 320 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURL_SOCKOPT_OK :: CInt
cCURL_SOCKOPT_OK =  0
{-# LINE 322 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SOCKOPT_ERROR :: CInt
cCURL_SOCKOPT_ERROR =  1
{-# LINE 323 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SOCKOPT_ALREADY_CONNECTED :: CInt
cCURL_SOCKOPT_ALREADY_CONNECTED =  2
{-# LINE 324 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_sockopt_callback
  = Ptr () -> CCURL_socket_t -> CCURLsocktype -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_sockopt_callback
    :: CCURL_sockopt_callback
    -> IO (FunPtr CCURL_sockopt_callback)


-------------------------------------------------------------------------------
-- *** CURL_opensocket_callback
-------------------------------------------------------------------------------
data CCURL_sockaddr = CCURL_sockaddr
  { ccurl_sockaddr_family   :: CInt
  , ccurl_sockaddr_socktype :: CInt
  , ccurl_sockaddr_protocol :: CInt
  , ccurl_sockaddr_addrlen  :: CUInt
  , ccurl_sockaddr_addr     :: Ptr ()  -- sockaddr?? TODO
  } deriving (Show)

-- instance Storable CCURL_sockaddr where
--   sizeOf _    = #{size    struct curl_sockaddr}
--   alignment _ = #{alignof struct curl_sockaddr}
--   poke _ _    = undefined
--   peek _      = undefined

type CCURL_opensocket_callback
  = Ptr () -> CCURLsocktype -> Ptr CCURL_sockaddr -> IO CCURL_socket_t

foreign import ccall "wrapper"
  wrap_ccurl_opensocket_callback
    :: CCURL_opensocket_callback
    -> IO (FunPtr CCURL_opensocket_callback)


-------------------------------------------------------------------------------
-- *** CURL_closesocket_callback
-------------------------------------------------------------------------------
type CCURL_closesocket_callback
  = Ptr () -> CCURL_socket_t -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_closesocket_callback
    :: CCURL_closesocket_callback
    -> IO (FunPtr CCURL_closesocket_callback)

 
-------------------------------------------------------------------------------
-- *** CURL_ioctl_callback
-------------------------------------------------------------------------------
newtype CCURLioerr = CCURLioerr CInt deriving (Eq, Show)

cCURLIOE_OK :: CCURLioerr
cCURLIOE_OK =  CCURLioerr 0
{-# LINE 378 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLIOE_UNKNOWNCMD :: CCURLioerr
cCURLIOE_UNKNOWNCMD =  CCURLioerr 1
{-# LINE 379 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLIOE_FAILRESTART :: CCURLioerr
cCURLIOE_FAILRESTART =  CCURLioerr 2
{-# LINE 380 "dist/build/Network/Curlhs/Base.hsc" #-}

newtype CCURLiocmd = CCURLiocmd CInt deriving (Eq, Show)

cCURLIOCMD_NOP :: CCURLiocmd
cCURLIOCMD_NOP =  CCURLiocmd 0
{-# LINE 384 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLIOCMD_RESTARTREAD :: CCURLiocmd
cCURLIOCMD_RESTARTREAD =  CCURLiocmd 1
{-# LINE 385 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_ioctl_callback
  = Ptr CCURL -> CCURLiocmd -> Ptr () -> IO CCURLioerr

foreign import ccall "wrapper"
  wrap_ccurl_ioctl_callback
    :: CCURL_ioctl_callback
    -> IO (FunPtr CCURL_ioctl_callback)


-------------------------------------------------------------------------------
-- *** CURL_malloc_callback
-------------------------------------------------------------------------------
type CCURL_malloc_callback
  = CSize -> IO (Ptr ())

foreign import ccall "wrapper"
  wrap_ccurl_malloc_callback
    :: CCURL_malloc_callback
    -> IO (FunPtr CCURL_malloc_callback)


-------------------------------------------------------------------------------
-- *** CURL_free_callback
-------------------------------------------------------------------------------
type CCURL_free_callback
  = Ptr () -> IO ()

foreign import ccall "wrapper"
  wrap_ccurl_free_callback
    :: CCURL_free_callback
    -> IO (FunPtr CCURL_free_callback)


-------------------------------------------------------------------------------
-- *** CURL_realloc_callback
-------------------------------------------------------------------------------
type CCURL_realloc_callback
  = Ptr () -> CSize -> IO (Ptr ())

foreign import ccall "wrapper"
  wrap_ccurl_realloc_callback
    :: CCURL_realloc_callback
    -> IO (FunPtr CCURL_realloc_callback)


-------------------------------------------------------------------------------
-- *** CURL_strdup_callback
-------------------------------------------------------------------------------
type CCURL_strdup_callback
  = Ptr CChar -> IO (Ptr CChar)

foreign import ccall "wrapper"
  wrap_ccurl_strdup_callback
    :: CCURL_strdup_callback
    -> IO (FunPtr CCURL_strdup_callback)


-------------------------------------------------------------------------------
-- *** CURL_calloc_callback
-------------------------------------------------------------------------------
type CCURL_calloc_callback
  = CSize -> CSize -> IO (Ptr ())

foreign import ccall "wrapper"
  wrap_ccurl_calloc_callback
    :: CCURL_calloc_callback
    -> IO (FunPtr CCURL_calloc_callback)

 
-------------------------------------------------------------------------------
-- *** CURL_debug_callback
-------------------------------------------------------------------------------
newtype CCURL_infotype = CCURL_infotype CInt deriving (Eq, Show)

cCURLINFO_TEXT :: CCURL_infotype
cCURLINFO_TEXT =  CCURL_infotype 0
{-# LINE 461 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_HEADER_IN :: CCURL_infotype
cCURLINFO_HEADER_IN =  CCURL_infotype 1
{-# LINE 462 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_HEADER_OUT :: CCURL_infotype
cCURLINFO_HEADER_OUT =  CCURL_infotype 2
{-# LINE 463 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_DATA_IN :: CCURL_infotype
cCURLINFO_DATA_IN =  CCURL_infotype 3
{-# LINE 464 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_DATA_OUT :: CCURL_infotype
cCURLINFO_DATA_OUT =  CCURL_infotype 4
{-# LINE 465 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SSL_DATA_IN :: CCURL_infotype
cCURLINFO_SSL_DATA_IN =  CCURL_infotype 5
{-# LINE 466 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SSL_DATA_OUT :: CCURL_infotype
cCURLINFO_SSL_DATA_OUT =  CCURL_infotype 6
{-# LINE 467 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_END :: CCURL_infotype
cCURLINFO_END =  CCURL_infotype 7
{-# LINE 468 "dist/build/Network/Curlhs/Base.hsc" #-}

type CCURL_debug_callback
  = Ptr CCURL -> CCURL_infotype -> Ptr CChar -> CSize -> Ptr () -> IO CInt

foreign import ccall "wrapper"
  wrap_ccurl_debug_callback
    :: CCURL_debug_callback
    -> IO (FunPtr CCURL_debug_callback)


-------------------------------------------------------------------------------
-- ** Constants
-------------------------------------------------------------------------------
-- *** CURLcode
-------------------------------------------------------------------------------
newtype CCURLcode = CCURLcode CInt deriving (Eq, Show)

cCURLE_OK :: CCURLcode
cCURLE_OK =  CCURLcode 0
{-# LINE 486 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_UNSUPPORTED_PROTOCOL :: CCURLcode
cCURLE_UNSUPPORTED_PROTOCOL =  CCURLcode 1
{-# LINE 487 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FAILED_INIT :: CCURLcode
cCURLE_FAILED_INIT =  CCURLcode 2
{-# LINE 488 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_URL_MALFORMAT :: CCURLcode
cCURLE_URL_MALFORMAT =  CCURLcode 3
{-# LINE 489 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_NOT_BUILT_IN :: CCURLcode
cCURLE_NOT_BUILT_IN =  CCURLcode 4
{-# LINE 490 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_COULDNT_RESOLVE_PROXY :: CCURLcode
cCURLE_COULDNT_RESOLVE_PROXY =  CCURLcode 5
{-# LINE 491 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_COULDNT_RESOLVE_HOST :: CCURLcode
cCURLE_COULDNT_RESOLVE_HOST =  CCURLcode 6
{-# LINE 492 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_COULDNT_CONNECT :: CCURLcode
cCURLE_COULDNT_CONNECT =  CCURLcode 7
{-# LINE 493 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_WEIRD_SERVER_REPLY :: CCURLcode
cCURLE_FTP_WEIRD_SERVER_REPLY =  CCURLcode 8
{-# LINE 494 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_REMOTE_ACCESS_DENIED :: CCURLcode
cCURLE_REMOTE_ACCESS_DENIED =  CCURLcode 9
{-# LINE 495 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_ACCEPT_FAILED :: CCURLcode
cCURLE_FTP_ACCEPT_FAILED =  CCURLcode 10
{-# LINE 496 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_WEIRD_PASS_REPLY :: CCURLcode
cCURLE_FTP_WEIRD_PASS_REPLY =  CCURLcode 11
{-# LINE 497 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_ACCEPT_TIMEOUT :: CCURLcode
cCURLE_FTP_ACCEPT_TIMEOUT =  CCURLcode 12
{-# LINE 498 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_WEIRD_PASV_REPLY :: CCURLcode
cCURLE_FTP_WEIRD_PASV_REPLY =  CCURLcode 13
{-# LINE 499 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_WEIRD_227_FORMAT :: CCURLcode
cCURLE_FTP_WEIRD_227_FORMAT =  CCURLcode 14
{-# LINE 500 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_CANT_GET_HOST :: CCURLcode
cCURLE_FTP_CANT_GET_HOST =  CCURLcode 15
{-# LINE 501 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_COULDNT_SET_TYPE :: CCURLcode
cCURLE_FTP_COULDNT_SET_TYPE =  CCURLcode 17
{-# LINE 502 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_PARTIAL_FILE :: CCURLcode
cCURLE_PARTIAL_FILE =  CCURLcode 18
{-# LINE 503 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_COULDNT_RETR_FILE :: CCURLcode
cCURLE_FTP_COULDNT_RETR_FILE =  CCURLcode 19
{-# LINE 504 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_QUOTE_ERROR :: CCURLcode
cCURLE_QUOTE_ERROR =  CCURLcode 21
{-# LINE 505 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_HTTP_RETURNED_ERROR :: CCURLcode
cCURLE_HTTP_RETURNED_ERROR =  CCURLcode 22
{-# LINE 506 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_WRITE_ERROR :: CCURLcode
cCURLE_WRITE_ERROR =  CCURLcode 23
{-# LINE 507 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_UPLOAD_FAILED :: CCURLcode
cCURLE_UPLOAD_FAILED =  CCURLcode 25
{-# LINE 508 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_READ_ERROR :: CCURLcode
cCURLE_READ_ERROR =  CCURLcode 26
{-# LINE 509 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_OUT_OF_MEMORY :: CCURLcode
cCURLE_OUT_OF_MEMORY =  CCURLcode 27
{-# LINE 510 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_OPERATION_TIMEDOUT :: CCURLcode
cCURLE_OPERATION_TIMEDOUT =  CCURLcode 28
{-# LINE 511 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_PORT_FAILED :: CCURLcode
cCURLE_FTP_PORT_FAILED =  CCURLcode 30
{-# LINE 512 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_COULDNT_USE_REST :: CCURLcode
cCURLE_FTP_COULDNT_USE_REST =  CCURLcode 31
{-# LINE 513 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_RANGE_ERROR :: CCURLcode
cCURLE_RANGE_ERROR =  CCURLcode 33
{-# LINE 514 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_HTTP_POST_ERROR :: CCURLcode
cCURLE_HTTP_POST_ERROR =  CCURLcode 34
{-# LINE 515 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CONNECT_ERROR :: CCURLcode
cCURLE_SSL_CONNECT_ERROR =  CCURLcode 35
{-# LINE 516 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_BAD_DOWNLOAD_RESUME :: CCURLcode
cCURLE_BAD_DOWNLOAD_RESUME =  CCURLcode 36
{-# LINE 517 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FILE_COULDNT_READ_FILE :: CCURLcode
cCURLE_FILE_COULDNT_READ_FILE =  CCURLcode 37
{-# LINE 518 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_LDAP_CANNOT_BIND :: CCURLcode
cCURLE_LDAP_CANNOT_BIND =  CCURLcode 38
{-# LINE 519 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_LDAP_SEARCH_FAILED :: CCURLcode
cCURLE_LDAP_SEARCH_FAILED =  CCURLcode 39
{-# LINE 520 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FUNCTION_NOT_FOUND :: CCURLcode
cCURLE_FUNCTION_NOT_FOUND =  CCURLcode 41
{-# LINE 521 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_ABORTED_BY_CALLBACK :: CCURLcode
cCURLE_ABORTED_BY_CALLBACK =  CCURLcode 42
{-# LINE 522 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_BAD_FUNCTION_ARGUMENT :: CCURLcode
cCURLE_BAD_FUNCTION_ARGUMENT =  CCURLcode 43
{-# LINE 523 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_INTERFACE_FAILED :: CCURLcode
cCURLE_INTERFACE_FAILED =  CCURLcode 45
{-# LINE 524 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TOO_MANY_REDIRECTS :: CCURLcode
cCURLE_TOO_MANY_REDIRECTS =  CCURLcode 47
{-# LINE 525 "dist/build/Network/Curlhs/Base.hsc" #-}
-- #{symbol CURLE_UNKNOWN_TELNET_OPTION   , CURLcode} |----:7214|
cCURLE_UNKNOWN_OPTION :: CCURLcode
cCURLE_UNKNOWN_OPTION =  CCURLcode 48
{-# LINE 527 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TELNET_OPTION_SYNTAX :: CCURLcode
cCURLE_TELNET_OPTION_SYNTAX =  CCURLcode 49
{-# LINE 528 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_PEER_FAILED_VERIFICATION :: CCURLcode
cCURLE_PEER_FAILED_VERIFICATION =  CCURLcode 51
{-# LINE 529 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_GOT_NOTHING :: CCURLcode
cCURLE_GOT_NOTHING =  CCURLcode 52
{-# LINE 530 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_ENGINE_NOTFOUND :: CCURLcode
cCURLE_SSL_ENGINE_NOTFOUND =  CCURLcode 53
{-# LINE 531 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_ENGINE_SETFAILED :: CCURLcode
cCURLE_SSL_ENGINE_SETFAILED =  CCURLcode 54
{-# LINE 532 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SEND_ERROR :: CCURLcode
cCURLE_SEND_ERROR =  CCURLcode 55
{-# LINE 533 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_RECV_ERROR :: CCURLcode
cCURLE_RECV_ERROR =  CCURLcode 56
{-# LINE 534 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CERTPROBLEM :: CCURLcode
cCURLE_SSL_CERTPROBLEM =  CCURLcode 58
{-# LINE 535 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CIPHER :: CCURLcode
cCURLE_SSL_CIPHER =  CCURLcode 59
{-# LINE 536 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CACERT :: CCURLcode
cCURLE_SSL_CACERT =  CCURLcode 60
{-# LINE 537 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_BAD_CONTENT_ENCODING :: CCURLcode
cCURLE_BAD_CONTENT_ENCODING =  CCURLcode 61
{-# LINE 538 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_LDAP_INVALID_URL :: CCURLcode
cCURLE_LDAP_INVALID_URL =  CCURLcode 62
{-# LINE 539 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FILESIZE_EXCEEDED :: CCURLcode
cCURLE_FILESIZE_EXCEEDED =  CCURLcode 63
{-# LINE 540 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_USE_SSL_FAILED :: CCURLcode
cCURLE_USE_SSL_FAILED =  CCURLcode 64
{-# LINE 541 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SEND_FAIL_REWIND :: CCURLcode
cCURLE_SEND_FAIL_REWIND =  CCURLcode 65
{-# LINE 542 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_ENGINE_INITFAILED :: CCURLcode
cCURLE_SSL_ENGINE_INITFAILED =  CCURLcode 66
{-# LINE 543 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_LOGIN_DENIED :: CCURLcode
cCURLE_LOGIN_DENIED =  CCURLcode 67
{-# LINE 544 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TFTP_NOTFOUND :: CCURLcode
cCURLE_TFTP_NOTFOUND =  CCURLcode 68
{-# LINE 545 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TFTP_PERM :: CCURLcode
cCURLE_TFTP_PERM =  CCURLcode 69
{-# LINE 546 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_REMOTE_DISK_FULL :: CCURLcode
cCURLE_REMOTE_DISK_FULL =  CCURLcode 70
{-# LINE 547 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TFTP_ILLEGAL :: CCURLcode
cCURLE_TFTP_ILLEGAL =  CCURLcode 71
{-# LINE 548 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TFTP_UNKNOWNID :: CCURLcode
cCURLE_TFTP_UNKNOWNID =  CCURLcode 72
{-# LINE 549 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_REMOTE_FILE_EXISTS :: CCURLcode
cCURLE_REMOTE_FILE_EXISTS =  CCURLcode 73
{-# LINE 550 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_TFTP_NOSUCHUSER :: CCURLcode
cCURLE_TFTP_NOSUCHUSER =  CCURLcode 74
{-# LINE 551 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_CONV_FAILED :: CCURLcode
cCURLE_CONV_FAILED =  CCURLcode 75
{-# LINE 552 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_CONV_REQD :: CCURLcode
cCURLE_CONV_REQD =  CCURLcode 76
{-# LINE 553 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CACERT_BADFILE :: CCURLcode
cCURLE_SSL_CACERT_BADFILE =  CCURLcode 77
{-# LINE 554 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_REMOTE_FILE_NOT_FOUND :: CCURLcode
cCURLE_REMOTE_FILE_NOT_FOUND =  CCURLcode 78
{-# LINE 555 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSH :: CCURLcode
cCURLE_SSH =  CCURLcode 79
{-# LINE 556 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_SHUTDOWN_FAILED :: CCURLcode
cCURLE_SSL_SHUTDOWN_FAILED =  CCURLcode 80
{-# LINE 557 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_AGAIN :: CCURLcode
cCURLE_AGAIN =  CCURLcode 81
{-# LINE 558 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_CRL_BADFILE :: CCURLcode
cCURLE_SSL_CRL_BADFILE =  CCURLcode 82
{-# LINE 559 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_SSL_ISSUER_ERROR :: CCURLcode
cCURLE_SSL_ISSUER_ERROR =  CCURLcode 83
{-# LINE 560 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_PRET_FAILED :: CCURLcode
cCURLE_FTP_PRET_FAILED =  CCURLcode 84
{-# LINE 561 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_RTSP_CSEQ_ERROR :: CCURLcode
cCURLE_RTSP_CSEQ_ERROR =  CCURLcode 85
{-# LINE 562 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_RTSP_SESSION_ERROR :: CCURLcode
cCURLE_RTSP_SESSION_ERROR =  CCURLcode 86
{-# LINE 563 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_FTP_BAD_FILE_LIST :: CCURLcode
cCURLE_FTP_BAD_FILE_LIST =  CCURLcode 87
{-# LINE 564 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLE_CHUNK_FAILED :: CCURLcode
cCURLE_CHUNK_FAILED =  CCURLcode 88
{-# LINE 565 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** Callbacks
-------------------------------------------------------------------------------
-- *** CURL_conv_callback
-------------------------------------------------------------------------------
type CCURL_conv_callback
  = Ptr CChar -> CSize -> IO CCURLcode

foreign import ccall "wrapper"
  wrap_ccurl_conv_callback
    :: CCURL_conv_callback
    -> IO (FunPtr CCURL_conv_callback)


-------------------------------------------------------------------------------
-- *** CURL_ssl_ctx_callback
-------------------------------------------------------------------------------
type CCURL_ssl_ctx_callback
  = Ptr CCURL -> Ptr () -> Ptr () -> IO CCURLcode

foreign import ccall "wrapper"
  wrap_ccurl_ssl_ctx_callback
    :: CCURL_ssl_ctx_callback
    -> IO (FunPtr CCURL_ssl_ctx_callback)

 
-------------------------------------------------------------------------------
-- ** Constants
-------------------------------------------------------------------------------
-- *** CURLproxy
-------------------------------------------------------------------------------
cCURLPROXY_HTTP :: CLong
cCURLPROXY_HTTP =  0
{-# LINE 599 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROXY_HTTP_1_0 :: CLong
cCURLPROXY_HTTP_1_0 =  1
{-# LINE 600 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROXY_SOCKS4 :: CLong
cCURLPROXY_SOCKS4 =  4
{-# LINE 601 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROXY_SOCKS5 :: CLong
cCURLPROXY_SOCKS5 =  5
{-# LINE 602 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROXY_SOCKS4A :: CLong
cCURLPROXY_SOCKS4A =  6
{-# LINE 603 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROXY_SOCKS5_HOSTNAME :: CLong
cCURLPROXY_SOCKS5_HOSTNAME =  7
{-# LINE 604 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLauth
-------------------------------------------------------------------------------
cCURLAUTH_NONE :: CLong
cCURLAUTH_NONE =  0
{-# LINE 610 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_BASIC :: CLong
cCURLAUTH_BASIC =  1
{-# LINE 611 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_DIGEST :: CLong
cCURLAUTH_DIGEST =  2
{-# LINE 612 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_GSSNEGOTIATE :: CLong
cCURLAUTH_GSSNEGOTIATE =  4
{-# LINE 613 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_NTLM :: CLong
cCURLAUTH_NTLM =  8
{-# LINE 614 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_DIGEST_IE :: CLong
cCURLAUTH_DIGEST_IE =  16
{-# LINE 615 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_NTLM_WB :: CLong
cCURLAUTH_NTLM_WB =  32
{-# LINE 616 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_ONLY :: CLong
cCURLAUTH_ONLY =  -2147483648
{-# LINE 617 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_ANY :: CLong
cCURLAUTH_ANY =  -17
{-# LINE 618 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLAUTH_ANYSAFE :: CLong
cCURLAUTH_ANYSAFE =  -18
{-# LINE 619 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLsshauth
-------------------------------------------------------------------------------
cCURLSSH_AUTH_ANY :: CLong
cCURLSSH_AUTH_ANY =  -1
{-# LINE 625 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_NONE :: CLong
cCURLSSH_AUTH_NONE =  0
{-# LINE 626 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_PUBLICKEY :: CLong
cCURLSSH_AUTH_PUBLICKEY =  1
{-# LINE 627 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_PASSWORD :: CLong
cCURLSSH_AUTH_PASSWORD =  2
{-# LINE 628 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_HOST :: CLong
cCURLSSH_AUTH_HOST =  4
{-# LINE 629 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_KEYBOARD :: CLong
cCURLSSH_AUTH_KEYBOARD =  8
{-# LINE 630 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSSH_AUTH_DEFAULT :: CLong
cCURLSSH_AUTH_DEFAULT =  -1
{-# LINE 631 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLgssapi
-------------------------------------------------------------------------------
cCURLGSSAPI_DELEGATION_NONE :: CLong
cCURLGSSAPI_DELEGATION_NONE =  0
{-# LINE 637 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLGSSAPI_DELEGATION_POLICY_FLAG :: CLong
cCURLGSSAPI_DELEGATION_POLICY_FLAG =  1
{-# LINE 638 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLGSSAPI_DELEGATION_FLAG :: CLong
cCURLGSSAPI_DELEGATION_FLAG =  2
{-# LINE 639 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURL_error_size
-------------------------------------------------------------------------------
cCURL_ERROR_SIZE :: CLong
cCURL_ERROR_SIZE =  256
{-# LINE 645 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** Callbacks
-------------------------------------------------------------------------------
-- *** CURL_sshkey_callback
-------------------------------------------------------------------------------
data CCURL_khkey = CCURL_khkey
  { ccurl_khkey_key     :: Ptr CChar
  , ccurl_khkey_len     :: CSize
  , ccurl_khkey_keytype :: CCURL_khtype
  } deriving (Show)

-- instance Storable CCURL_khkey where
--   sizeOf _    = #{size    struct curl_khkey}
--   alignment _ = #{alignof struct curl_khkey}
--   poke _ _    = undefined
--   peek _      = undefined

newtype CCURL_khtype = CCURL_khtype CInt deriving (Eq, Show)

cCURLKHTYPE_UNKNOWN :: CCURL_khtype
cCURLKHTYPE_UNKNOWN =  CCURL_khtype 0
{-# LINE 667 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHTYPE_RSA1 :: CCURL_khtype
cCURLKHTYPE_RSA1 =  CCURL_khtype 1
{-# LINE 668 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHTYPE_RSA :: CCURL_khtype
cCURLKHTYPE_RSA =  CCURL_khtype 2
{-# LINE 669 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHTYPE_DSS :: CCURL_khtype
cCURLKHTYPE_DSS =  CCURL_khtype 3
{-# LINE 670 "dist/build/Network/Curlhs/Base.hsc" #-}
 
newtype CCURL_khstat = CCURL_khstat CInt deriving (Eq, Show)

cCURLKHSTAT_FINE_ADD_TO_FILE :: CCURL_khstat
cCURLKHSTAT_FINE_ADD_TO_FILE =  CCURL_khstat 0
{-# LINE 674 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHSTAT_FINE :: CCURL_khstat
cCURLKHSTAT_FINE =  CCURL_khstat 1
{-# LINE 675 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHSTAT_REJECT :: CCURL_khstat
cCURLKHSTAT_REJECT =  CCURL_khstat 2
{-# LINE 676 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHSTAT_DEFER :: CCURL_khstat
cCURLKHSTAT_DEFER =  CCURL_khstat 3
{-# LINE 677 "dist/build/Network/Curlhs/Base.hsc" #-}

newtype CCURL_khmatch = CCURL_khmatch CInt deriving (Eq, Show)

cCURLKHMATCH_OK :: CCURL_khmatch
cCURLKHMATCH_OK =  CCURL_khmatch 0
{-# LINE 681 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHMATCH_MISMATCH :: CCURL_khmatch
cCURLKHMATCH_MISMATCH =  CCURL_khmatch 1
{-# LINE 682 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLKHMATCH_MISSING :: CCURL_khmatch
cCURLKHMATCH_MISSING =  CCURL_khmatch 2
{-# LINE 683 "dist/build/Network/Curlhs/Base.hsc" #-}
 
type CCURL_sshkey_callback
  = Ptr CCURL -> Ptr CCURL_khkey -> Ptr CCURL_khkey
    -> CCURL_khmatch -> Ptr () -> IO CCURL_khstat

foreign import ccall "wrapper"
  wrap_ccurl_sshkey_callback
    :: CCURL_sshkey_callback
    -> IO (FunPtr CCURL_sshkey_callback)

 
-------------------------------------------------------------------------------
-- ** Constants
-------------------------------------------------------------------------------
-- *** CURLusessl
-------------------------------------------------------------------------------
cCURLUSESSL_NONE :: CLong
cCURLUSESSL_NONE =  0
{-# LINE 700 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLUSESSL_TRY :: CLong
cCURLUSESSL_TRY =  1
{-# LINE 701 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLUSESSL_CONTROL :: CLong
cCURLUSESSL_CONTROL =  2
{-# LINE 702 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLUSESSL_ALL :: CLong
cCURLUSESSL_ALL =  3
{-# LINE 703 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLsslopt
-------------------------------------------------------------------------------
cCURLSSLOPT_ALLOW_BEAST :: CLong
cCURLSSLOPT_ALLOW_BEAST =  1
{-# LINE 709 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLftpssl
-------------------------------------------------------------------------------
cCURLFTPSSL_CCC_NONE :: CLong
cCURLFTPSSL_CCC_NONE =  0
{-# LINE 715 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPSSL_CCC_PASSIVE :: CLong
cCURLFTPSSL_CCC_PASSIVE =  1
{-# LINE 716 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPSSL_CCC_ACTIVE :: CLong
cCURLFTPSSL_CCC_ACTIVE =  2
{-# LINE 717 "dist/build/Network/Curlhs/Base.hsc" #-}
 

-------------------------------------------------------------------------------
-- *** CURLftpauth
-------------------------------------------------------------------------------
cCURLFTPAUTH_DEFAULT :: CLong
cCURLFTPAUTH_DEFAULT =  0
{-# LINE 723 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPAUTH_SSL :: CLong
cCURLFTPAUTH_SSL =  1
{-# LINE 724 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPAUTH_TLS :: CLong
cCURLFTPAUTH_TLS =  2
{-# LINE 725 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLftpcreate
-------------------------------------------------------------------------------
cCURLFTP_CREATE_DIR_NONE :: CLong
cCURLFTP_CREATE_DIR_NONE =  0
{-# LINE 731 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTP_CREATE_DIR :: CLong
cCURLFTP_CREATE_DIR =  1
{-# LINE 732 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTP_CREATE_DIR_RETRY :: CLong
cCURLFTP_CREATE_DIR_RETRY =  2
{-# LINE 733 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLftpmethod
-------------------------------------------------------------------------------
cCURLFTPMETHOD_DEFAULT :: CLong
cCURLFTPMETHOD_DEFAULT =  0
{-# LINE 739 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPMETHOD_MULTICWD :: CLong
cCURLFTPMETHOD_MULTICWD =  1
{-# LINE 740 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPMETHOD_NOCWD :: CLong
cCURLFTPMETHOD_NOCWD =  2
{-# LINE 741 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLFTPMETHOD_SINGLECWD :: CLong
cCURLFTPMETHOD_SINGLECWD =  3
{-# LINE 742 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLproto
-------------------------------------------------------------------------------
cCURLPROTO_HTTP :: CLong
cCURLPROTO_HTTP =  1
{-# LINE 748 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_HTTPS :: CLong
cCURLPROTO_HTTPS =  2
{-# LINE 749 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_FTP :: CLong
cCURLPROTO_FTP =  4
{-# LINE 750 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_FTPS :: CLong
cCURLPROTO_FTPS =  8
{-# LINE 751 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_SCP :: CLong
cCURLPROTO_SCP =  16
{-# LINE 752 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_SFTP :: CLong
cCURLPROTO_SFTP =  32
{-# LINE 753 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_TELNET :: CLong
cCURLPROTO_TELNET =  64
{-# LINE 754 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_LDAP :: CLong
cCURLPROTO_LDAP =  128
{-# LINE 755 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_LDAPS :: CLong
cCURLPROTO_LDAPS =  256
{-# LINE 756 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_DICT :: CLong
cCURLPROTO_DICT =  512
{-# LINE 757 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_FILE :: CLong
cCURLPROTO_FILE =  1024
{-# LINE 758 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_TFTP :: CLong
cCURLPROTO_TFTP =  2048
{-# LINE 759 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_IMAP :: CLong
cCURLPROTO_IMAP =  4096
{-# LINE 760 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_IMAPS :: CLong
cCURLPROTO_IMAPS =  8192
{-# LINE 761 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_POP3 :: CLong
cCURLPROTO_POP3 =  16384
{-# LINE 762 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_POP3S :: CLong
cCURLPROTO_POP3S =  32768
{-# LINE 763 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_SMTP :: CLong
cCURLPROTO_SMTP =  65536
{-# LINE 764 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_SMTPS :: CLong
cCURLPROTO_SMTPS =  131072
{-# LINE 765 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTSP :: CLong
cCURLPROTO_RTSP =  262144
{-# LINE 766 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMP :: CLong
cCURLPROTO_RTMP =  524288
{-# LINE 767 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMPT :: CLong
cCURLPROTO_RTMPT =  1048576
{-# LINE 768 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMPE :: CLong
cCURLPROTO_RTMPE =  2097152
{-# LINE 769 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMPTE :: CLong
cCURLPROTO_RTMPTE =  4194304
{-# LINE 770 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMPS :: CLong
cCURLPROTO_RTMPS =  8388608
{-# LINE 771 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_RTMPTS :: CLong
cCURLPROTO_RTMPTS =  16777216
{-# LINE 772 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_GOPHER :: CLong
cCURLPROTO_GOPHER =  33554432
{-# LINE 773 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPROTO_ALL :: CLong
cCURLPROTO_ALL =  -1
{-# LINE 774 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLoption
-------------------------------------------------------------------------------
newtype CCURLoption'CLong   = CCURLoption'CLong   CInt deriving (Eq, Show)
newtype CCURLoption'Int64   = CCURLoption'Int64   CInt deriving (Eq, Show)
newtype CCURLoption'CString = CCURLoption'CString CInt deriving (Eq, Show)
newtype CCURLoption'CFile   = CCURLoption'CFile   CInt deriving (Eq, Show)
newtype CCURLoption'SList   = CCURLoption'SList   CInt deriving (Eq, Show)
newtype CCURLoption'HTTPP   = CCURLoption'HTTPP   CInt deriving (Eq, Show)
newtype CCURLoption'CURLSH  = CCURLoption'CURLSH  CInt deriving (Eq, Show)
newtype CCURLoption'UsrPtr  = CCURLoption'UsrPtr  CInt deriving (Eq, Show)
newtype CCURLoption'FunPtr  = CCURLoption'FunPtr  CInt deriving (Eq, Show)


{-# LINE 792 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURLOPT_FILE :: CCURLoption'CFile
cCURLOPT_FILE =  CCURLoption'CFile 10001
{-# LINE 794 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_URL :: CCURLoption'CString
cCURLOPT_URL =  CCURLoption'CString 10002
{-# LINE 795 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PORT :: CCURLoption'CLong
cCURLOPT_PORT =  CCURLoption'CLong 3
{-# LINE 796 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXY :: CCURLoption'CString
cCURLOPT_PROXY =  CCURLoption'CString 10004
{-# LINE 797 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_USERPWD :: CCURLoption'CString
cCURLOPT_USERPWD =  CCURLoption'CString 10005
{-# LINE 798 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYUSERPWD :: CCURLoption'CString
cCURLOPT_PROXYUSERPWD =  CCURLoption'CString 10006
{-# LINE 799 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RANGE :: CCURLoption'CString
cCURLOPT_RANGE =  CCURLoption'CString 10007
{-# LINE 800 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INFILE :: CCURLoption'CFile
cCURLOPT_INFILE =  CCURLoption'CFile 10009
{-# LINE 801 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_ERRORBUFFER :: CCURLoption'CString
cCURLOPT_ERRORBUFFER =  CCURLoption'CString 10010
{-# LINE 802 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_WRITEFUNCTION :: CCURLoption'FunPtr
cCURLOPT_WRITEFUNCTION =  CCURLoption'FunPtr 20011
{-# LINE 803 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_READFUNCTION :: CCURLoption'FunPtr
cCURLOPT_READFUNCTION =  CCURLoption'FunPtr 20012
{-# LINE 804 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TIMEOUT :: CCURLoption'CLong
cCURLOPT_TIMEOUT =  CCURLoption'CLong 13
{-# LINE 805 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INFILESIZE :: CCURLoption'CLong
cCURLOPT_INFILESIZE =  CCURLoption'CLong 14
{-# LINE 806 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POSTFIELDS :: CCURLoption'CString
cCURLOPT_POSTFIELDS =  CCURLoption'CString 10015  -- UsrPtr??
{-# LINE 807 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_REFERER :: CCURLoption'CString
cCURLOPT_REFERER =  CCURLoption'CString 10016
{-# LINE 808 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTPPORT :: CCURLoption'CString
cCURLOPT_FTPPORT =  CCURLoption'CString 10017
{-# LINE 809 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_USERAGENT :: CCURLoption'CString
cCURLOPT_USERAGENT =  CCURLoption'CString 10018
{-# LINE 810 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_LOW_SPEED_LIMIT :: CCURLoption'CLong
cCURLOPT_LOW_SPEED_LIMIT =  CCURLoption'CLong 19
{-# LINE 811 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_LOW_SPEED_TIME :: CCURLoption'CLong
cCURLOPT_LOW_SPEED_TIME =  CCURLoption'CLong 20
{-# LINE 812 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RESUME_FROM :: CCURLoption'CLong
cCURLOPT_RESUME_FROM =  CCURLoption'CLong 21
{-# LINE 813 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COOKIE :: CCURLoption'CString
cCURLOPT_COOKIE =  CCURLoption'CString 10022
{-# LINE 814 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTPHEADER :: CCURLoption'SList
cCURLOPT_HTTPHEADER =  CCURLoption'SList 10023
{-# LINE 815 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTPPOST :: CCURLoption'HTTPP
cCURLOPT_HTTPPOST =  CCURLoption'HTTPP 10024
{-# LINE 816 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLCERT :: CCURLoption'CString
cCURLOPT_SSLCERT =  CCURLoption'CString 10025
{-# LINE 817 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_KEYPASSWD :: CCURLoption'CString
cCURLOPT_KEYPASSWD =  CCURLoption'CString 10026
{-# LINE 818 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CRLF :: CCURLoption'CLong
cCURLOPT_CRLF =  CCURLoption'CLong 27
{-# LINE 819 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_QUOTE :: CCURLoption'SList
cCURLOPT_QUOTE =  CCURLoption'SList 10028
{-# LINE 820 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_WRITEHEADER :: CCURLoption'CFile
cCURLOPT_WRITEHEADER =  CCURLoption'CFile 10029  -- UsrPtr??
{-# LINE 821 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COOKIEFILE :: CCURLoption'CString
cCURLOPT_COOKIEFILE =  CCURLoption'CString 10031
{-# LINE 822 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLVERSION :: CCURLoption'CLong
cCURLOPT_SSLVERSION =  CCURLoption'CLong 32
{-# LINE 823 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TIMECONDITION :: CCURLoption'CLong
cCURLOPT_TIMECONDITION =  CCURLoption'CLong 33
{-# LINE 824 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TIMEVALUE :: CCURLoption'CLong
cCURLOPT_TIMEVALUE =  CCURLoption'CLong 34
{-# LINE 825 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CUSTOMREQUEST :: CCURLoption'CString
cCURLOPT_CUSTOMREQUEST =  CCURLoption'CString 10036
{-# LINE 826 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_STDERR :: CCURLoption'CFile
cCURLOPT_STDERR =  CCURLoption'CFile 10037
{-# LINE 827 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POSTQUOTE :: CCURLoption'SList
cCURLOPT_POSTQUOTE =  CCURLoption'SList 10039
{-# LINE 828 "dist/build/Network/Curlhs/Base.hsc" #-}
{-# DEPRECATED cCURLOPT_WRITEINFO                 "" #-}
cCURLOPT_WRITEINFO :: CCURLoption'CString
cCURLOPT_WRITEINFO =  CCURLoption'CString 10040
{-# LINE 830 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_VERBOSE :: CCURLoption'CLong
cCURLOPT_VERBOSE =  CCURLoption'CLong 41
{-# LINE 831 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HEADER :: CCURLoption'CLong
cCURLOPT_HEADER =  CCURLoption'CLong 42
{-# LINE 832 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NOPROGRESS :: CCURLoption'CLong
cCURLOPT_NOPROGRESS =  CCURLoption'CLong 43
{-# LINE 833 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NOBODY :: CCURLoption'CLong
cCURLOPT_NOBODY =  CCURLoption'CLong 44
{-# LINE 834 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FAILONERROR :: CCURLoption'CLong
cCURLOPT_FAILONERROR =  CCURLoption'CLong 45
{-# LINE 835 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_UPLOAD :: CCURLoption'CLong
cCURLOPT_UPLOAD =  CCURLoption'CLong 46
{-# LINE 836 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POST :: CCURLoption'CLong
cCURLOPT_POST =  CCURLoption'CLong 47
{-# LINE 837 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_DIRLISTONLY :: CCURLoption'CLong
cCURLOPT_DIRLISTONLY =  CCURLoption'CLong 48
{-# LINE 838 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_APPEND :: CCURLoption'CLong
cCURLOPT_APPEND =  CCURLoption'CLong 50
{-# LINE 839 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NETRC :: CCURLoption'CLong
cCURLOPT_NETRC =  CCURLoption'CLong 51
{-# LINE 840 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FOLLOWLOCATION :: CCURLoption'CLong
cCURLOPT_FOLLOWLOCATION =  CCURLoption'CLong 52
{-# LINE 841 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TRANSFERTEXT :: CCURLoption'CLong
cCURLOPT_TRANSFERTEXT =  CCURLoption'CLong 53
{-# LINE 842 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PUT :: CCURLoption'CLong
cCURLOPT_PUT =  CCURLoption'CLong 54
{-# LINE 843 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROGRESSFUNCTION :: CCURLoption'FunPtr
cCURLOPT_PROGRESSFUNCTION =  CCURLoption'FunPtr 20056
{-# LINE 844 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROGRESSDATA :: CCURLoption'UsrPtr
cCURLOPT_PROGRESSDATA =  CCURLoption'UsrPtr 10057
{-# LINE 845 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_AUTOREFERER :: CCURLoption'CLong
cCURLOPT_AUTOREFERER =  CCURLoption'CLong 58
{-# LINE 846 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYPORT :: CCURLoption'CLong
cCURLOPT_PROXYPORT =  CCURLoption'CLong 59
{-# LINE 847 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POSTFIELDSIZE :: CCURLoption'CLong
cCURLOPT_POSTFIELDSIZE =  CCURLoption'CLong 60
{-# LINE 848 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTPPROXYTUNNEL :: CCURLoption'CLong
cCURLOPT_HTTPPROXYTUNNEL =  CCURLoption'CLong 61
{-# LINE 849 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INTERFACE :: CCURLoption'CString
cCURLOPT_INTERFACE =  CCURLoption'CString 10062
{-# LINE 850 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_KRBLEVEL :: CCURLoption'CString
cCURLOPT_KRBLEVEL =  CCURLoption'CString 10063
{-# LINE 851 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_VERIFYPEER :: CCURLoption'CLong
cCURLOPT_SSL_VERIFYPEER =  CCURLoption'CLong 64
{-# LINE 852 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CAINFO :: CCURLoption'CString
cCURLOPT_CAINFO =  CCURLoption'CString 10065
{-# LINE 853 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAXREDIRS :: CCURLoption'CLong
cCURLOPT_MAXREDIRS =  CCURLoption'CLong 68
{-# LINE 854 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FILETIME :: CCURLoption'CLong
cCURLOPT_FILETIME =  CCURLoption'CLong 69
{-# LINE 855 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TELNETOPTIONS :: CCURLoption'SList
cCURLOPT_TELNETOPTIONS =  CCURLoption'SList 10070
{-# LINE 856 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAXCONNECTS :: CCURLoption'CLong
cCURLOPT_MAXCONNECTS =  CCURLoption'CLong 71
{-# LINE 857 "dist/build/Network/Curlhs/Base.hsc" #-}
{-# DEPRECATED cCURLOPT_CLOSEPOLICY               "" #-}
cCURLOPT_CLOSEPOLICY :: CCURLoption'CLong
cCURLOPT_CLOSEPOLICY =  CCURLoption'CLong 72
{-# LINE 859 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FRESH_CONNECT :: CCURLoption'CLong
cCURLOPT_FRESH_CONNECT =  CCURLoption'CLong 74
{-# LINE 860 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FORBID_REUSE :: CCURLoption'CLong
cCURLOPT_FORBID_REUSE =  CCURLoption'CLong 75
{-# LINE 861 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RANDOM_FILE :: CCURLoption'CString
cCURLOPT_RANDOM_FILE =  CCURLoption'CString 10076
{-# LINE 862 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_EGDSOCKET :: CCURLoption'CString
cCURLOPT_EGDSOCKET =  CCURLoption'CString 10077
{-# LINE 863 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONNECTTIMEOUT :: CCURLoption'CLong
cCURLOPT_CONNECTTIMEOUT =  CCURLoption'CLong 78
{-# LINE 864 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HEADERFUNCTION :: CCURLoption'FunPtr
cCURLOPT_HEADERFUNCTION =  CCURLoption'FunPtr 20079
{-# LINE 865 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTPGET :: CCURLoption'CLong
cCURLOPT_HTTPGET =  CCURLoption'CLong 80
{-# LINE 866 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_VERIFYHOST :: CCURLoption'CLong
cCURLOPT_SSL_VERIFYHOST =  CCURLoption'CLong 81
{-# LINE 867 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COOKIEJAR :: CCURLoption'CString
cCURLOPT_COOKIEJAR =  CCURLoption'CString 10082
{-# LINE 868 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_CIPHER_LIST :: CCURLoption'CString
cCURLOPT_SSL_CIPHER_LIST =  CCURLoption'CString 10083
{-# LINE 869 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTP_VERSION :: CCURLoption'CLong
cCURLOPT_HTTP_VERSION =  CCURLoption'CLong 84
{-# LINE 870 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_USE_EPSV :: CCURLoption'CLong
cCURLOPT_FTP_USE_EPSV =  CCURLoption'CLong 85
{-# LINE 871 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLCERTTYPE :: CCURLoption'CString
cCURLOPT_SSLCERTTYPE =  CCURLoption'CString 10086
{-# LINE 872 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLKEY :: CCURLoption'CString
cCURLOPT_SSLKEY =  CCURLoption'CString 10087
{-# LINE 873 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLKEYTYPE :: CCURLoption'CString
cCURLOPT_SSLKEYTYPE =  CCURLoption'CString 10088
{-# LINE 874 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLENGINE :: CCURLoption'CString
cCURLOPT_SSLENGINE =  CCURLoption'CString 10089
{-# LINE 875 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSLENGINE_DEFAULT :: CCURLoption'CLong
cCURLOPT_SSLENGINE_DEFAULT =  CCURLoption'CLong 90
{-# LINE 876 "dist/build/Network/Curlhs/Base.hsc" #-}
{-# DEPRECATED cCURLOPT_DNS_USE_GLOBAL_CACHE      "" #-}
cCURLOPT_DNS_USE_GLOBAL_CACHE :: CCURLoption'CLong
cCURLOPT_DNS_USE_GLOBAL_CACHE =  CCURLoption'CLong 91
{-# LINE 878 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_DNS_CACHE_TIMEOUT :: CCURLoption'CLong
cCURLOPT_DNS_CACHE_TIMEOUT =  CCURLoption'CLong 92
{-# LINE 879 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PREQUOTE :: CCURLoption'SList
cCURLOPT_PREQUOTE =  CCURLoption'SList 10093
{-# LINE 880 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_DEBUGFUNCTION :: CCURLoption'FunPtr
cCURLOPT_DEBUGFUNCTION =  CCURLoption'FunPtr 20094
{-# LINE 881 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_DEBUGDATA :: CCURLoption'UsrPtr
cCURLOPT_DEBUGDATA =  CCURLoption'UsrPtr 10095
{-# LINE 882 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COOKIESESSION :: CCURLoption'CLong
cCURLOPT_COOKIESESSION =  CCURLoption'CLong 96
{-# LINE 883 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CAPATH :: CCURLoption'CString
cCURLOPT_CAPATH =  CCURLoption'CString 10097
{-# LINE 884 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_BUFFERSIZE :: CCURLoption'CLong
cCURLOPT_BUFFERSIZE =  CCURLoption'CLong 98
{-# LINE 885 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NOSIGNAL :: CCURLoption'CLong
cCURLOPT_NOSIGNAL =  CCURLoption'CLong 99
{-# LINE 886 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SHARE :: CCURLoption'CURLSH
cCURLOPT_SHARE =  CCURLoption'CURLSH 10100
{-# LINE 887 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYTYPE :: CCURLoption'CLong
cCURLOPT_PROXYTYPE =  CCURLoption'CLong 101
{-# LINE 888 "dist/build/Network/Curlhs/Base.hsc" #-}
-- #{curlopt CURLOPT_ENCODING                   , CString } |----:7215|
cCURLOPT_ACCEPT_ENCODING :: CCURLoption'CString
cCURLOPT_ACCEPT_ENCODING =  CCURLoption'CString 10102
{-# LINE 890 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PRIVATE :: CCURLoption'UsrPtr
cCURLOPT_PRIVATE =  CCURLoption'UsrPtr 10103
{-# LINE 891 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTP200ALIASES :: CCURLoption'SList
cCURLOPT_HTTP200ALIASES =  CCURLoption'SList 10104
{-# LINE 892 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_UNRESTRICTED_AUTH :: CCURLoption'CLong
cCURLOPT_UNRESTRICTED_AUTH =  CCURLoption'CLong 105
{-# LINE 893 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_USE_EPRT :: CCURLoption'CLong
cCURLOPT_FTP_USE_EPRT =  CCURLoption'CLong 106
{-# LINE 894 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTPAUTH :: CCURLoption'CLong
cCURLOPT_HTTPAUTH =  CCURLoption'CLong 107
{-# LINE 895 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_CTX_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_SSL_CTX_FUNCTION =  CCURLoption'FunPtr 20108
{-# LINE 896 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_CTX_DATA :: CCURLoption'UsrPtr
cCURLOPT_SSL_CTX_DATA =  CCURLoption'UsrPtr 10109
{-# LINE 897 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_CREATE_MISSING_DIRS :: CCURLoption'CLong
cCURLOPT_FTP_CREATE_MISSING_DIRS =  CCURLoption'CLong 110
{-# LINE 898 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYAUTH :: CCURLoption'CLong
cCURLOPT_PROXYAUTH =  CCURLoption'CLong 111
{-# LINE 899 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_RESPONSE_TIMEOUT :: CCURLoption'CLong
cCURLOPT_FTP_RESPONSE_TIMEOUT =  CCURLoption'CLong 112
{-# LINE 900 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_IPRESOLVE :: CCURLoption'CLong
cCURLOPT_IPRESOLVE =  CCURLoption'CLong 113
{-# LINE 901 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAXFILESIZE :: CCURLoption'CLong
cCURLOPT_MAXFILESIZE =  CCURLoption'CLong 114
{-# LINE 902 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INFILESIZE_LARGE :: CCURLoption'Int64
cCURLOPT_INFILESIZE_LARGE =  CCURLoption'Int64 30115
{-# LINE 903 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RESUME_FROM_LARGE :: CCURLoption'Int64
cCURLOPT_RESUME_FROM_LARGE =  CCURLoption'Int64 30116
{-# LINE 904 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAXFILESIZE_LARGE :: CCURLoption'Int64
cCURLOPT_MAXFILESIZE_LARGE =  CCURLoption'Int64 30117
{-# LINE 905 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NETRC_FILE :: CCURLoption'CString
cCURLOPT_NETRC_FILE =  CCURLoption'CString 10118
{-# LINE 906 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_USE_SSL :: CCURLoption'CLong
cCURLOPT_USE_SSL =  CCURLoption'CLong 119
{-# LINE 907 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POSTFIELDSIZE_LARGE :: CCURLoption'Int64
cCURLOPT_POSTFIELDSIZE_LARGE =  CCURLoption'Int64 30120
{-# LINE 908 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TCP_NODELAY :: CCURLoption'CLong
cCURLOPT_TCP_NODELAY =  CCURLoption'CLong 121
{-# LINE 909 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTPSSLAUTH :: CCURLoption'CLong
cCURLOPT_FTPSSLAUTH =  CCURLoption'CLong 129
{-# LINE 910 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_IOCTLFUNCTION :: CCURLoption'FunPtr
cCURLOPT_IOCTLFUNCTION =  CCURLoption'FunPtr 20130
{-# LINE 911 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_IOCTLDATA :: CCURLoption'UsrPtr
cCURLOPT_IOCTLDATA =  CCURLoption'UsrPtr 10131
{-# LINE 912 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_ACCOUNT :: CCURLoption'CString
cCURLOPT_FTP_ACCOUNT =  CCURLoption'CString 10134
{-# LINE 913 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COOKIELIST :: CCURLoption'CString
cCURLOPT_COOKIELIST =  CCURLoption'CString 10135
{-# LINE 914 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_IGNORE_CONTENT_LENGTH :: CCURLoption'CLong
cCURLOPT_IGNORE_CONTENT_LENGTH =  CCURLoption'CLong 136
{-# LINE 915 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_SKIP_PASV_IP :: CCURLoption'CLong
cCURLOPT_FTP_SKIP_PASV_IP =  CCURLoption'CLong 137
{-# LINE 916 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_FILEMETHOD :: CCURLoption'CLong
cCURLOPT_FTP_FILEMETHOD =  CCURLoption'CLong 138
{-# LINE 917 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_LOCALPORT :: CCURLoption'CLong
cCURLOPT_LOCALPORT =  CCURLoption'CLong 139
{-# LINE 918 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_LOCALPORTRANGE :: CCURLoption'CLong
cCURLOPT_LOCALPORTRANGE =  CCURLoption'CLong 140
{-# LINE 919 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONNECT_ONLY :: CCURLoption'CLong
cCURLOPT_CONNECT_ONLY =  CCURLoption'CLong 141
{-# LINE 920 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONV_FROM_NETWORK_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_CONV_FROM_NETWORK_FUNCTION =  CCURLoption'FunPtr 20142
{-# LINE 921 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONV_TO_NETWORK_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_CONV_TO_NETWORK_FUNCTION =  CCURLoption'FunPtr 20143
{-# LINE 922 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONV_FROM_UTF8_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_CONV_FROM_UTF8_FUNCTION =  CCURLoption'FunPtr 20144
{-# LINE 923 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAX_SEND_SPEED_LARGE :: CCURLoption'Int64
cCURLOPT_MAX_SEND_SPEED_LARGE =  CCURLoption'Int64 30145
{-# LINE 924 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAX_RECV_SPEED_LARGE :: CCURLoption'Int64
cCURLOPT_MAX_RECV_SPEED_LARGE =  CCURLoption'Int64 30146
{-# LINE 925 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_ALTERNATIVE_TO_USER :: CCURLoption'CString
cCURLOPT_FTP_ALTERNATIVE_TO_USER =  CCURLoption'CString 10147
{-# LINE 926 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SOCKOPTFUNCTION :: CCURLoption'FunPtr
cCURLOPT_SOCKOPTFUNCTION =  CCURLoption'FunPtr 20148
{-# LINE 927 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SOCKOPTDATA :: CCURLoption'UsrPtr
cCURLOPT_SOCKOPTDATA =  CCURLoption'UsrPtr 10149
{-# LINE 928 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_SESSIONID_CACHE :: CCURLoption'CLong
cCURLOPT_SSL_SESSIONID_CACHE =  CCURLoption'CLong 150
{-# LINE 929 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_AUTH_TYPES :: CCURLoption'CLong
cCURLOPT_SSH_AUTH_TYPES =  CCURLoption'CLong 151
{-# LINE 930 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_PUBLIC_KEYFILE :: CCURLoption'CString
cCURLOPT_SSH_PUBLIC_KEYFILE =  CCURLoption'CString 10152
{-# LINE 931 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_PRIVATE_KEYFILE :: CCURLoption'CString
cCURLOPT_SSH_PRIVATE_KEYFILE =  CCURLoption'CString 10153
{-# LINE 932 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_SSL_CCC :: CCURLoption'CLong
cCURLOPT_FTP_SSL_CCC =  CCURLoption'CLong 154
{-# LINE 933 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TIMEOUT_MS :: CCURLoption'CLong
cCURLOPT_TIMEOUT_MS =  CCURLoption'CLong 155
{-# LINE 934 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CONNECTTIMEOUT_MS :: CCURLoption'CLong
cCURLOPT_CONNECTTIMEOUT_MS =  CCURLoption'CLong 156
{-# LINE 935 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTP_TRANSFER_DECODING :: CCURLoption'CLong
cCURLOPT_HTTP_TRANSFER_DECODING =  CCURLoption'CLong 157
{-# LINE 936 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HTTP_CONTENT_DECODING :: CCURLoption'CLong
cCURLOPT_HTTP_CONTENT_DECODING =  CCURLoption'CLong 158
{-# LINE 937 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NEW_FILE_PERMS :: CCURLoption'CLong
cCURLOPT_NEW_FILE_PERMS =  CCURLoption'CLong 159
{-# LINE 938 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NEW_DIRECTORY_PERMS :: CCURLoption'CLong
cCURLOPT_NEW_DIRECTORY_PERMS =  CCURLoption'CLong 160
{-# LINE 939 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_POSTREDIR :: CCURLoption'CLong
cCURLOPT_POSTREDIR =  CCURLoption'CLong 161
{-# LINE 940 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_HOST_PUBLIC_KEY_MD5 :: CCURLoption'CString
cCURLOPT_SSH_HOST_PUBLIC_KEY_MD5 =  CCURLoption'CString 10162
{-# LINE 941 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_OPENSOCKETFUNCTION :: CCURLoption'FunPtr
cCURLOPT_OPENSOCKETFUNCTION =  CCURLoption'FunPtr 20163
{-# LINE 942 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_OPENSOCKETDATA :: CCURLoption'UsrPtr
cCURLOPT_OPENSOCKETDATA =  CCURLoption'UsrPtr 10164
{-# LINE 943 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_COPYPOSTFIELDS :: CCURLoption'CString
cCURLOPT_COPYPOSTFIELDS =  CCURLoption'CString 10165
{-# LINE 944 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXY_TRANSFER_MODE :: CCURLoption'CLong
cCURLOPT_PROXY_TRANSFER_MODE =  CCURLoption'CLong 166
{-# LINE 945 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SEEKFUNCTION :: CCURLoption'FunPtr
cCURLOPT_SEEKFUNCTION =  CCURLoption'FunPtr 20167
{-# LINE 946 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SEEKDATA :: CCURLoption'UsrPtr
cCURLOPT_SEEKDATA =  CCURLoption'UsrPtr 10168
{-# LINE 947 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CRLFILE :: CCURLoption'CString
cCURLOPT_CRLFILE =  CCURLoption'CString 10169
{-# LINE 948 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_ISSUERCERT :: CCURLoption'CString
cCURLOPT_ISSUERCERT =  CCURLoption'CString 10170
{-# LINE 949 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_ADDRESS_SCOPE :: CCURLoption'CLong
cCURLOPT_ADDRESS_SCOPE =  CCURLoption'CLong 171
{-# LINE 950 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CERTINFO :: CCURLoption'CLong
cCURLOPT_CERTINFO =  CCURLoption'CLong 172
{-# LINE 951 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_USERNAME :: CCURLoption'CString
cCURLOPT_USERNAME =  CCURLoption'CString 10173
{-# LINE 952 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PASSWORD :: CCURLoption'CString
cCURLOPT_PASSWORD =  CCURLoption'CString 10174
{-# LINE 953 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYUSERNAME :: CCURLoption'CString
cCURLOPT_PROXYUSERNAME =  CCURLoption'CString 10175
{-# LINE 954 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROXYPASSWORD :: CCURLoption'CString
cCURLOPT_PROXYPASSWORD =  CCURLoption'CString 10176
{-# LINE 955 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_NOPROXY :: CCURLoption'CString
cCURLOPT_NOPROXY =  CCURLoption'CString 10177
{-# LINE 956 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TFTP_BLKSIZE :: CCURLoption'CLong
cCURLOPT_TFTP_BLKSIZE =  CCURLoption'CLong 178
{-# LINE 957 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SOCKS5_GSSAPI_SERVICE :: CCURLoption'CString
cCURLOPT_SOCKS5_GSSAPI_SERVICE =  CCURLoption'CString 10179
{-# LINE 958 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SOCKS5_GSSAPI_NEC :: CCURLoption'CLong
cCURLOPT_SOCKS5_GSSAPI_NEC =  CCURLoption'CLong 180
{-# LINE 959 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_PROTOCOLS :: CCURLoption'CLong
cCURLOPT_PROTOCOLS =  CCURLoption'CLong 181
{-# LINE 960 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_REDIR_PROTOCOLS :: CCURLoption'CLong
cCURLOPT_REDIR_PROTOCOLS =  CCURLoption'CLong 182
{-# LINE 961 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_KNOWNHOSTS :: CCURLoption'CString
cCURLOPT_SSH_KNOWNHOSTS =  CCURLoption'CString 10183
{-# LINE 962 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_KEYFUNCTION :: CCURLoption'FunPtr
cCURLOPT_SSH_KEYFUNCTION =  CCURLoption'FunPtr 20184
{-# LINE 963 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSH_KEYDATA :: CCURLoption'UsrPtr
cCURLOPT_SSH_KEYDATA =  CCURLoption'UsrPtr 10185
{-# LINE 964 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAIL_FROM :: CCURLoption'CString
cCURLOPT_MAIL_FROM =  CCURLoption'CString 10186
{-# LINE 965 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAIL_RCPT :: CCURLoption'SList
cCURLOPT_MAIL_RCPT =  CCURLoption'SList 10187
{-# LINE 966 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FTP_USE_PRET :: CCURLoption'CLong
cCURLOPT_FTP_USE_PRET =  CCURLoption'CLong 188
{-# LINE 967 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_REQUEST :: CCURLoption'CLong
cCURLOPT_RTSP_REQUEST =  CCURLoption'CLong 189
{-# LINE 968 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_SESSION_ID :: CCURLoption'CString
cCURLOPT_RTSP_SESSION_ID =  CCURLoption'CString 10190
{-# LINE 969 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_STREAM_URI :: CCURLoption'CString
cCURLOPT_RTSP_STREAM_URI =  CCURLoption'CString 10191
{-# LINE 970 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_TRANSPORT :: CCURLoption'CString
cCURLOPT_RTSP_TRANSPORT =  CCURLoption'CString 10192
{-# LINE 971 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_CLIENT_CSEQ :: CCURLoption'CLong
cCURLOPT_RTSP_CLIENT_CSEQ =  CCURLoption'CLong 193
{-# LINE 972 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSP_SERVER_CSEQ :: CCURLoption'CLong
cCURLOPT_RTSP_SERVER_CSEQ =  CCURLoption'CLong 194
{-# LINE 973 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INTERLEAVEDATA :: CCURLoption'UsrPtr
cCURLOPT_INTERLEAVEDATA =  CCURLoption'UsrPtr 10195
{-# LINE 974 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_INTERLEAVEFUNCTION :: CCURLoption'FunPtr
cCURLOPT_INTERLEAVEFUNCTION =  CCURLoption'FunPtr 20196
{-# LINE 975 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_WILDCARDMATCH :: CCURLoption'CLong
cCURLOPT_WILDCARDMATCH =  CCURLoption'CLong 197
{-# LINE 976 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CHUNK_BGN_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_CHUNK_BGN_FUNCTION =  CCURLoption'FunPtr 20198
{-# LINE 977 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CHUNK_END_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_CHUNK_END_FUNCTION =  CCURLoption'FunPtr 20199
{-# LINE 978 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FNMATCH_FUNCTION :: CCURLoption'FunPtr
cCURLOPT_FNMATCH_FUNCTION =  CCURLoption'FunPtr 20200
{-# LINE 979 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CHUNK_DATA :: CCURLoption'UsrPtr
cCURLOPT_CHUNK_DATA =  CCURLoption'UsrPtr 10201
{-# LINE 980 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_FNMATCH_DATA :: CCURLoption'UsrPtr
cCURLOPT_FNMATCH_DATA =  CCURLoption'UsrPtr 10202
{-# LINE 981 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RESOLVE :: CCURLoption'SList
cCURLOPT_RESOLVE =  CCURLoption'SList 10203
{-# LINE 982 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TLSAUTH_USERNAME :: CCURLoption'CString
cCURLOPT_TLSAUTH_USERNAME =  CCURLoption'CString 10204
{-# LINE 983 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TLSAUTH_PASSWORD :: CCURLoption'CString
cCURLOPT_TLSAUTH_PASSWORD =  CCURLoption'CString 10205
{-# LINE 984 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TLSAUTH_TYPE :: CCURLoption'CString
cCURLOPT_TLSAUTH_TYPE =  CCURLoption'CString 10206
{-# LINE 985 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TRANSFER_ENCODING :: CCURLoption'CLong
cCURLOPT_TRANSFER_ENCODING =  CCURLoption'CLong 207
{-# LINE 986 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CLOSESOCKETFUNCTION :: CCURLoption'FunPtr
cCURLOPT_CLOSESOCKETFUNCTION =  CCURLoption'FunPtr 20208
{-# LINE 987 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_CLOSESOCKETDATA :: CCURLoption'UsrPtr
cCURLOPT_CLOSESOCKETDATA =  CCURLoption'UsrPtr 10209
{-# LINE 988 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_GSSAPI_DELEGATION :: CCURLoption'CLong
cCURLOPT_GSSAPI_DELEGATION =  CCURLoption'CLong 210
{-# LINE 989 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_DNS_SERVERS :: CCURLoption'CString
cCURLOPT_DNS_SERVERS =  CCURLoption'CString 10211
{-# LINE 990 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_ACCEPTTIMEOUT_MS :: CCURLoption'CLong
cCURLOPT_ACCEPTTIMEOUT_MS =  CCURLoption'CLong 212
{-# LINE 991 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TCP_KEEPALIVE :: CCURLoption'CLong
cCURLOPT_TCP_KEEPALIVE =  CCURLoption'CLong 213
{-# LINE 992 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TCP_KEEPIDLE :: CCURLoption'CLong
cCURLOPT_TCP_KEEPIDLE =  CCURLoption'CLong 214
{-# LINE 993 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_TCP_KEEPINTVL :: CCURLoption'CLong
cCURLOPT_TCP_KEEPINTVL =  CCURLoption'CLong 215
{-# LINE 994 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_SSL_OPTIONS :: CCURLoption'CLong
cCURLOPT_SSL_OPTIONS =  CCURLoption'CLong 216
{-# LINE 995 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_MAIL_AUTH :: CCURLoption'CString
cCURLOPT_MAIL_AUTH =  CCURLoption'CString 10217
{-# LINE 996 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURLOPT_WRITEDATA :: CCURLoption'UsrPtr
cCURLOPT_WRITEDATA =  CCURLoption'UsrPtr 10001
{-# LINE 998 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_READDATA :: CCURLoption'UsrPtr
cCURLOPT_READDATA =  CCURLoption'UsrPtr 10009
{-# LINE 999 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_HEADERDATA :: CCURLoption'UsrPtr
cCURLOPT_HEADERDATA =  CCURLoption'UsrPtr 10029
{-# LINE 1000 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLOPT_RTSPHEADER :: CCURLoption'SList
cCURLOPT_RTSPHEADER =  CCURLoption'SList 10023
{-# LINE 1001 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLipresolve
-------------------------------------------------------------------------------
cCURL_IPRESOLVE_WHATEVER :: CLong
cCURL_IPRESOLVE_WHATEVER =  0
{-# LINE 1007 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_IPRESOLVE_V4 :: CLong
cCURL_IPRESOLVE_V4 =  1
{-# LINE 1008 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_IPRESOLVE_V6 :: CLong
cCURL_IPRESOLVE_V6 =  2
{-# LINE 1009 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLhttpver
-------------------------------------------------------------------------------
cCURL_HTTP_VERSION_NONE :: CLong
cCURL_HTTP_VERSION_NONE =  0
{-# LINE 1015 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_HTTP_VERSION_1_0 :: CLong
cCURL_HTTP_VERSION_1_0 =  1
{-# LINE 1016 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_HTTP_VERSION_1_1 :: CLong
cCURL_HTTP_VERSION_1_1 =  2
{-# LINE 1017 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLrtspreq
-------------------------------------------------------------------------------
cCURL_RTSPREQ_NONE :: CLong
cCURL_RTSPREQ_NONE =  0
{-# LINE 1023 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_OPTIONS :: CLong
cCURL_RTSPREQ_OPTIONS =  1
{-# LINE 1024 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_DESCRIBE :: CLong
cCURL_RTSPREQ_DESCRIBE =  2
{-# LINE 1025 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_ANNOUNCE :: CLong
cCURL_RTSPREQ_ANNOUNCE =  3
{-# LINE 1026 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_SETUP :: CLong
cCURL_RTSPREQ_SETUP =  4
{-# LINE 1027 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_PLAY :: CLong
cCURL_RTSPREQ_PLAY =  5
{-# LINE 1028 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_PAUSE :: CLong
cCURL_RTSPREQ_PAUSE =  6
{-# LINE 1029 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_TEARDOWN :: CLong
cCURL_RTSPREQ_TEARDOWN =  7
{-# LINE 1030 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_GET_PARAMETER :: CLong
cCURL_RTSPREQ_GET_PARAMETER =  8
{-# LINE 1031 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_SET_PARAMETER :: CLong
cCURL_RTSPREQ_SET_PARAMETER =  9
{-# LINE 1032 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_RECORD :: CLong
cCURL_RTSPREQ_RECORD =  10
{-# LINE 1033 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_RTSPREQ_RECEIVE :: CLong
cCURL_RTSPREQ_RECEIVE =  11
{-# LINE 1034 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLnetrc
-------------------------------------------------------------------------------
cCURL_NETRC_IGNORED :: CLong
cCURL_NETRC_IGNORED =  0
{-# LINE 1040 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_NETRC_OPTIONAL :: CLong
cCURL_NETRC_OPTIONAL =  1
{-# LINE 1041 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_NETRC_REQUIRED :: CLong
cCURL_NETRC_REQUIRED =  2
{-# LINE 1042 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLsslver
-------------------------------------------------------------------------------
cCURL_SSLVERSION_DEFAULT :: CLong
cCURL_SSLVERSION_DEFAULT =  0
{-# LINE 1048 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SSLVERSION_TLSv1 :: CLong
cCURL_SSLVERSION_TLSv1 =  1
{-# LINE 1049 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SSLVERSION_SSLv2 :: CLong
cCURL_SSLVERSION_SSLv2 =  2
{-# LINE 1050 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_SSLVERSION_SSLv3 :: CLong
cCURL_SSLVERSION_SSLv3 =  3
{-# LINE 1051 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLtlsauth
-------------------------------------------------------------------------------
cCURL_TLSAUTH_NONE :: CLong
cCURL_TLSAUTH_NONE =  0
{-# LINE 1057 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_TLSAUTH_SRP :: CLong
cCURL_TLSAUTH_SRP =  1
{-# LINE 1058 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLredir
-------------------------------------------------------------------------------
cCURL_REDIR_GET_ALL :: CLong
cCURL_REDIR_GET_ALL =  0
{-# LINE 1064 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_REDIR_POST_301 :: CLong
cCURL_REDIR_POST_301 =  1
{-# LINE 1065 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_REDIR_POST_302 :: CLong
cCURL_REDIR_POST_302 =  2
{-# LINE 1066 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_REDIR_POST_ALL :: CLong
cCURL_REDIR_POST_ALL =  3
{-# LINE 1067 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLtimecond
-------------------------------------------------------------------------------
cCURL_TIMECOND_NONE :: CLong
cCURL_TIMECOND_NONE =  0
{-# LINE 1073 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_TIMECOND_IFMODSINCE :: CLong
cCURL_TIMECOND_IFMODSINCE =  1
{-# LINE 1074 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_TIMECOND_IFUNMODSINCE :: CLong
cCURL_TIMECOND_IFUNMODSINCE =  2
{-# LINE 1075 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_TIMECOND_LASTMOD :: CLong
cCURL_TIMECOND_LASTMOD =  3
{-# LINE 1076 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** Functions
-------------------------------------------------------------------------------
{-# DEPRECATED ccurl_strequal "" #-}
foreign import ccall "curl_strequal"
  ccurl_strequal
    :: Ptr CChar
    -> Ptr CChar
    -> IO CInt


-------------------------------------------------------------------------------
{-# DEPRECATED ccurl_strnequal "" #-}
foreign import ccall "curl_strnequal"
  ccurl_strnequal
    :: Ptr CChar
    -> Ptr CChar
    -> CSize
    -> IO CInt


-------------------------------------------------------------------------------
-- ** CURL_forms
-------------------------------------------------------------------------------
newtype CCURLformoption = CCURLformoption CInt deriving (Eq, Show)
 
-- #{symbol CURLFORM_COPYNAME      , CURLformoption}
-- #{symbol CURLFORM_PTRNAME       , CURLformoption}
-- #{symbol CURLFORM_NAMELENGTH    , CURLformoption}
-- #{symbol CURLFORM_COPYCONTENTS  , CURLformoption}
-- #{symbol CURLFORM_PTRCONTENTS   , CURLformoption}
-- #{symbol CURLFORM_CONTENTSLENGTH, CURLformoption}
-- #{symbol CURLFORM_FILECONTENT   , CURLformoption}
-- #{symbol CURLFORM_ARRAY         , CURLformoption}
-- #{symbol CURLFORM_FILE          , CURLformoption}
-- #{symbol CURLFORM_BUFFER        , CURLformoption}
-- #{symbol CURLFORM_BUFFERPTR     , CURLformoption}
-- #{symbol CURLFORM_BUFFERLENGTH  , CURLformoption}
-- #{symbol CURLFORM_CONTENTTYPE   , CURLformoption}
-- #{symbol CURLFORM_CONTENTHEADER , CURLformoption}
-- #{symbol CURLFORM_FILENAME      , CURLformoption}
-- #{symbol CURLFORM_END           , CURLformoption}
-- #{symbol CURLFORM_STREAM        , CURLformoption}


-------------------------------------------------------------------------------
data CCURL_forms = CCURL_forms
  { ccurl_forms_option :: CCURLformoption
  , ccurl_forms_value  :: Ptr CChar
  } deriving (Show)

-- instance Storable CCURL_forms where
--   sizeOf _    = #{size    struct curl_forms}
--   alignment _ = #{alignof struct curl_forms}
--   poke _ _    = undefined
--   peek _      = undefined


-------------------------------------------------------------------------------
newtype CCURLformcode = CCURLformcode CInt deriving (Eq, Show)

cCURL_FORMADD_OK :: CCURLformcode
cCURL_FORMADD_OK =  CCURLformcode 0
{-# LINE 1140 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_MEMORY :: CCURLformcode
cCURL_FORMADD_MEMORY =  CCURLformcode 1
{-# LINE 1141 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_OPTION_TWICE :: CCURLformcode
cCURL_FORMADD_OPTION_TWICE =  CCURLformcode 2
{-# LINE 1142 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_NULL :: CCURLformcode
cCURL_FORMADD_NULL =  CCURLformcode 3
{-# LINE 1143 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_UNKNOWN_OPTION :: CCURLformcode
cCURL_FORMADD_UNKNOWN_OPTION =  CCURLformcode 4
{-# LINE 1144 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_INCOMPLETE :: CCURLformcode
cCURL_FORMADD_INCOMPLETE =  CCURLformcode 5
{-# LINE 1145 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_ILLEGAL_ARRAY :: CCURLformcode
cCURL_FORMADD_ILLEGAL_ARRAY =  CCURLformcode 6
{-# LINE 1146 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_FORMADD_DISABLED :: CCURLformcode
cCURL_FORMADD_DISABLED =  CCURLformcode 7
{-# LINE 1147 "dist/build/Network/Curlhs/Base.hsc" #-}


-- ----------------------------------------------------------------------------
-- CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost,
--                                       struct curl_httppost **last_post,
--                                       ...);


-------------------------------------------------------------------------------
type CCURL_formget_callback
  = Ptr () -> Ptr CChar -> CSize -> IO CSize

foreign import ccall "wrapper"
  wrap_ccurl_formget_callback
    :: CCURL_formget_callback
    -> IO (FunPtr CCURL_formget_callback)


-------------------------------------------------------------------------------
foreign import ccall "curl_formget"
  ccurl_formget
    :: Ptr CCURL_httppost
    -> Ptr ()
    -> FunPtr CCURL_formget_callback
    -> IO CInt


-------------------------------------------------------------------------------
foreign import ccall "curl_formfree"
  ccurl_formfree
    :: Ptr CCURL_httppost
    -> IO ()


-------------------------------------------------------------------------------
-- ** Functions
-------------------------------------------------------------------------------
{-# DEPRECATED ccurl_getenv "" #-}
foreign import ccall "curl_getenv"
  ccurl_getenv
    :: Ptr CChar
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_version"
  ccurl_version
    :: IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_escape"
  ccurl_easy_escape
    :: Ptr CCURL
    -> Ptr CChar
    -> CInt
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_escape"
  ccurl_escape
    :: Ptr CChar
    -> CInt
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_unescape"
  ccurl_easy_unescape
    :: Ptr CCURL
    -> Ptr CChar
    -> CInt
    -> Ptr CInt
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_unescape"
  ccurl_unescape
    :: Ptr CChar
    -> CInt
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_free"
  ccurl_free
    :: Ptr a
    -> IO ()


-------------------------------------------------------------------------------
foreign import ccall "curl_global_init"
  ccurl_global_init
    :: CLong
    -> IO CCURLcode


-------------------------------------------------------------------------------
foreign import ccall "curl_global_init_mem"
  ccurl_global_init_mem
    :: CLong
    -> FunPtr CCURL_malloc_callback
    -> FunPtr CCURL_free_callback
    -> FunPtr CCURL_realloc_callback
    -> FunPtr CCURL_strdup_callback
    -> FunPtr CCURL_calloc_callback
    -> IO CCURLcode


-------------------------------------------------------------------------------
foreign import ccall "curl_global_cleanup"
  ccurl_global_cleanup
    :: IO ()


-------------------------------------------------------------------------------
-- ** CURL_slist
-------------------------------------------------------------------------------
data CCURL_slist = CCURL_slist
  { ccurl_slist_data :: Ptr CChar
  , ccurl_slist_next :: Ptr CCURL_slist
  } deriving (Show)

instance Storable CCURL_slist where
  sizeOf _    = (8)
{-# LINE 1274 "dist/build/Network/Curlhs/Base.hsc" #-}
  alignment _ = (4)
{-# LINE 1275 "dist/build/Network/Curlhs/Base.hsc" #-}
  poke _ _    = undefined
  peek ptr    = CCURL_slist
    <$> (\hsc_ptr -> peekByteOff hsc_ptr 0) ptr
{-# LINE 1278 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 4) ptr
{-# LINE 1279 "dist/build/Network/Curlhs/Base.hsc" #-}

 
-------------------------------------------------------------------------------
-- ** Functions
-------------------------------------------------------------------------------
foreign import ccall "curl_slist_append"
  ccurl_slist_append
    :: Ptr CCURL_slist
    -> Ptr CChar
    -> IO (Ptr CCURL_slist)


-------------------------------------------------------------------------------
foreign import ccall "curl_slist_free_all"
  ccurl_slist_free_all
    :: Ptr CCURL_slist
    -> IO ()

 
-------------------------------------------------------------------------------
foreign import ccall "curl_getdate"
  ccurl_getdate
    :: Ptr CChar
    -> Ptr CTime
    -> IO CTime


-------------------------------------------------------------------------------
-- ** CURL_certinfo
-------------------------------------------------------------------------------
data CCURL_certinfo = CCURL_certinfo
  { ccurl_certinfo_num_of_certs :: CInt
  , ccurl_certinfo_certinfo     :: Ptr (Ptr CCURL_slist)
  } deriving (Show)

instance Storable CCURL_certinfo where
  sizeOf _    = (8)
{-# LINE 1316 "dist/build/Network/Curlhs/Base.hsc" #-}
  alignment _ = (4)
{-# LINE 1317 "dist/build/Network/Curlhs/Base.hsc" #-}
  poke _ _    = undefined
  peek ptr    = CCURL_certinfo
    <$> (\hsc_ptr -> peekByteOff hsc_ptr 0) ptr
{-# LINE 1320 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 4) ptr
{-# LINE 1321 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** Constants
-------------------------------------------------------------------------------
-- *** CURLinfo
-------------------------------------------------------------------------------
newtype CCURLinfo'CString = CCURLinfo'CString CInt deriving (Eq, Show)
newtype CCURLinfo'CDouble = CCURLinfo'CDouble CInt deriving (Eq, Show)
newtype CCURLinfo'CLong   = CCURLinfo'CLong   CInt deriving (Eq, Show)
newtype CCURLinfo'SList   = CCURLinfo'SList   CInt deriving (Eq, Show)
newtype CCURLinfo'CertI   = CCURLinfo'CertI   CInt deriving (Eq, Show)


{-# LINE 1337 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURLINFO_EFFECTIVE_URL :: CCURLinfo'CString
cCURLINFO_EFFECTIVE_URL =  CCURLinfo'CString 1048577
{-# LINE 1339 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_RESPONSE_CODE :: CCURLinfo'CLong
cCURLINFO_RESPONSE_CODE =  CCURLinfo'CLong 2097154
{-# LINE 1340 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_TOTAL_TIME :: CCURLinfo'CDouble
cCURLINFO_TOTAL_TIME =  CCURLinfo'CDouble 3145731
{-# LINE 1341 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_NAMELOOKUP_TIME :: CCURLinfo'CDouble
cCURLINFO_NAMELOOKUP_TIME =  CCURLinfo'CDouble 3145732
{-# LINE 1342 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CONNECT_TIME :: CCURLinfo'CDouble
cCURLINFO_CONNECT_TIME =  CCURLinfo'CDouble 3145733
{-# LINE 1343 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_PRETRANSFER_TIME :: CCURLinfo'CDouble
cCURLINFO_PRETRANSFER_TIME =  CCURLinfo'CDouble 3145734
{-# LINE 1344 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SIZE_UPLOAD :: CCURLinfo'CDouble
cCURLINFO_SIZE_UPLOAD =  CCURLinfo'CDouble 3145735
{-# LINE 1345 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SIZE_DOWNLOAD :: CCURLinfo'CDouble
cCURLINFO_SIZE_DOWNLOAD =  CCURLinfo'CDouble 3145736
{-# LINE 1346 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SPEED_DOWNLOAD :: CCURLinfo'CDouble
cCURLINFO_SPEED_DOWNLOAD =  CCURLinfo'CDouble 3145737
{-# LINE 1347 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SPEED_UPLOAD :: CCURLinfo'CDouble
cCURLINFO_SPEED_UPLOAD =  CCURLinfo'CDouble 3145738
{-# LINE 1348 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_HEADER_SIZE :: CCURLinfo'CLong
cCURLINFO_HEADER_SIZE =  CCURLinfo'CLong 2097163
{-# LINE 1349 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_REQUEST_SIZE :: CCURLinfo'CLong
cCURLINFO_REQUEST_SIZE =  CCURLinfo'CLong 2097164
{-# LINE 1350 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SSL_VERIFYRESULT :: CCURLinfo'CLong
cCURLINFO_SSL_VERIFYRESULT =  CCURLinfo'CLong 2097165
{-# LINE 1351 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_FILETIME :: CCURLinfo'CLong
cCURLINFO_FILETIME =  CCURLinfo'CLong 2097166
{-# LINE 1352 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CONTENT_LENGTH_DOWNLOAD :: CCURLinfo'CDouble
cCURLINFO_CONTENT_LENGTH_DOWNLOAD =  CCURLinfo'CDouble 3145743
{-# LINE 1353 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CONTENT_LENGTH_UPLOAD :: CCURLinfo'CDouble
cCURLINFO_CONTENT_LENGTH_UPLOAD =  CCURLinfo'CDouble 3145744
{-# LINE 1354 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_STARTTRANSFER_TIME :: CCURLinfo'CDouble
cCURLINFO_STARTTRANSFER_TIME =  CCURLinfo'CDouble 3145745
{-# LINE 1355 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CONTENT_TYPE :: CCURLinfo'CString
cCURLINFO_CONTENT_TYPE =  CCURLinfo'CString 1048594
{-# LINE 1356 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_REDIRECT_TIME :: CCURLinfo'CDouble
cCURLINFO_REDIRECT_TIME =  CCURLinfo'CDouble 3145747
{-# LINE 1357 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_REDIRECT_COUNT :: CCURLinfo'CLong
cCURLINFO_REDIRECT_COUNT =  CCURLinfo'CLong 2097172
{-# LINE 1358 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_PRIVATE :: CCURLinfo'CString
cCURLINFO_PRIVATE =  CCURLinfo'CString 1048597
{-# LINE 1359 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_HTTP_CONNECTCODE :: CCURLinfo'CLong
cCURLINFO_HTTP_CONNECTCODE =  CCURLinfo'CLong 2097174
{-# LINE 1360 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_HTTPAUTH_AVAIL :: CCURLinfo'CLong
cCURLINFO_HTTPAUTH_AVAIL =  CCURLinfo'CLong 2097175
{-# LINE 1361 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_PROXYAUTH_AVAIL :: CCURLinfo'CLong
cCURLINFO_PROXYAUTH_AVAIL =  CCURLinfo'CLong 2097176
{-# LINE 1362 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_OS_ERRNO :: CCURLinfo'CLong
cCURLINFO_OS_ERRNO =  CCURLinfo'CLong 2097177
{-# LINE 1363 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_NUM_CONNECTS :: CCURLinfo'CLong
cCURLINFO_NUM_CONNECTS =  CCURLinfo'CLong 2097178
{-# LINE 1364 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_SSL_ENGINES :: CCURLinfo'SList
cCURLINFO_SSL_ENGINES =  CCURLinfo'SList 4194331
{-# LINE 1365 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_COOKIELIST :: CCURLinfo'SList
cCURLINFO_COOKIELIST =  CCURLinfo'SList 4194332
{-# LINE 1366 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_LASTSOCKET :: CCURLinfo'CLong
cCURLINFO_LASTSOCKET =  CCURLinfo'CLong 2097181
{-# LINE 1367 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_FTP_ENTRY_PATH :: CCURLinfo'CString
cCURLINFO_FTP_ENTRY_PATH =  CCURLinfo'CString 1048606
{-# LINE 1368 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_REDIRECT_URL :: CCURLinfo'CString
cCURLINFO_REDIRECT_URL =  CCURLinfo'CString 1048607
{-# LINE 1369 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_PRIMARY_IP :: CCURLinfo'CString
cCURLINFO_PRIMARY_IP =  CCURLinfo'CString 1048608
{-# LINE 1370 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_APPCONNECT_TIME :: CCURLinfo'CDouble
cCURLINFO_APPCONNECT_TIME =  CCURLinfo'CDouble 3145761
{-# LINE 1371 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CERTINFO :: CCURLinfo'CertI
cCURLINFO_CERTINFO =  CCURLinfo'CertI 4194338
{-# LINE 1372 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_CONDITION_UNMET :: CCURLinfo'CLong
cCURLINFO_CONDITION_UNMET =  CCURLinfo'CLong 2097187
{-# LINE 1373 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_RTSP_SESSION_ID :: CCURLinfo'CString
cCURLINFO_RTSP_SESSION_ID =  CCURLinfo'CString 1048612
{-# LINE 1374 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_RTSP_CLIENT_CSEQ :: CCURLinfo'CLong
cCURLINFO_RTSP_CLIENT_CSEQ =  CCURLinfo'CLong 2097189
{-# LINE 1375 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_RTSP_SERVER_CSEQ :: CCURLinfo'CLong
cCURLINFO_RTSP_SERVER_CSEQ =  CCURLinfo'CLong 2097190
{-# LINE 1376 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_RTSP_CSEQ_RECV :: CCURLinfo'CLong
cCURLINFO_RTSP_CSEQ_RECV =  CCURLinfo'CLong 2097191
{-# LINE 1377 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_PRIMARY_PORT :: CCURLinfo'CLong
cCURLINFO_PRIMARY_PORT =  CCURLinfo'CLong 2097192
{-# LINE 1378 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_LOCAL_IP :: CCURLinfo'CString
cCURLINFO_LOCAL_IP =  CCURLinfo'CString 1048617
{-# LINE 1379 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLINFO_LOCAL_PORT :: CCURLinfo'CLong
cCURLINFO_LOCAL_PORT =  CCURLinfo'CLong 2097194
{-# LINE 1380 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLclosepol
-------------------------------------------------------------------------------
cCURLCLOSEPOLICY_NONE :: CLong
cCURLCLOSEPOLICY_NONE =  0
{-# LINE 1386 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLCLOSEPOLICY_OLDEST :: CLong
cCURLCLOSEPOLICY_OLDEST =  1
{-# LINE 1387 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLCLOSEPOLICY_LEAST_RECENTLY_USED :: CLong
cCURLCLOSEPOLICY_LEAST_RECENTLY_USED =  2
{-# LINE 1388 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLCLOSEPOLICY_LEAST_TRAFFIC :: CLong
cCURLCLOSEPOLICY_LEAST_TRAFFIC =  3
{-# LINE 1389 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLCLOSEPOLICY_SLOWEST :: CLong
cCURLCLOSEPOLICY_SLOWEST =  4
{-# LINE 1390 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLCLOSEPOLICY_CALLBACK :: CLong
cCURLCLOSEPOLICY_CALLBACK =  5
{-# LINE 1391 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- *** CURLglobal
-------------------------------------------------------------------------------
cCURL_GLOBAL_SSL :: CLong
cCURL_GLOBAL_SSL =  1
{-# LINE 1397 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_GLOBAL_WIN32 :: CLong
cCURL_GLOBAL_WIN32 =  2
{-# LINE 1398 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_GLOBAL_ALL :: CLong
cCURL_GLOBAL_ALL =  3
{-# LINE 1399 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_GLOBAL_NOTHING :: CLong
cCURL_GLOBAL_NOTHING =  0
{-# LINE 1400 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_GLOBAL_DEFAULT :: CLong
cCURL_GLOBAL_DEFAULT =  3
{-# LINE 1401 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- ** Share interface
-------------------------------------------------------------------------------
newtype CCURL_lock_data = CCURL_lock_data CInt deriving (Eq, Show)

cCURL_LOCK_DATA_COOKIE :: CCURL_lock_data
cCURL_LOCK_DATA_COOKIE =  CCURL_lock_data 2
{-# LINE 1409 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_LOCK_DATA_DNS :: CCURL_lock_data
cCURL_LOCK_DATA_DNS =  CCURL_lock_data 3
{-# LINE 1410 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_LOCK_DATA_SSL_SESSION :: CCURL_lock_data
cCURL_LOCK_DATA_SSL_SESSION =  CCURL_lock_data 4
{-# LINE 1411 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_LOCK_DATA_CONNECT :: CCURL_lock_data
cCURL_LOCK_DATA_CONNECT =  CCURL_lock_data 5
{-# LINE 1412 "dist/build/Network/Curlhs/Base.hsc" #-}
 

-------------------------------------------------------------------------------
newtype CCURL_lock_access = CCURL_lock_access CInt deriving (Eq, Show)

cCURL_LOCK_ACCESS_NONE :: CCURL_lock_access
cCURL_LOCK_ACCESS_NONE =  CCURL_lock_access 0
{-# LINE 1418 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_LOCK_ACCESS_SHARED :: CCURL_lock_access
cCURL_LOCK_ACCESS_SHARED =  CCURL_lock_access 1
{-# LINE 1419 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_LOCK_ACCESS_SINGLE :: CCURL_lock_access
cCURL_LOCK_ACCESS_SINGLE =  CCURL_lock_access 2
{-# LINE 1420 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
type CCURL_lock_function
  = Ptr CCURL -> CCURL_lock_data -> CCURL_lock_access -> Ptr () -> IO ()

foreign import ccall "wrapper"
  wrap_ccurl_lock_function
    :: CCURL_lock_function
    -> IO (FunPtr CCURL_lock_function)


-------------------------------------------------------------------------------
type CCURL_unlock_function
  = Ptr CCURL -> CCURL_lock_data -> Ptr () -> IO ()

foreign import ccall "wrapper"
  wrap_ccurl_unlock_function
    :: CCURL_unlock_function
    -> IO (FunPtr CCURL_unlock_function)


-------------------------------------------------------------------------------
data CCURLSH

 
-------------------------------------------------------------------------------
newtype CCURLSHcode = CCURLSHcode CInt deriving (Eq, Show)

cCURLSHE_OK :: CCURLSHcode
cCURLSHE_OK =  CCURLSHcode 0
{-# LINE 1450 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHE_BAD_OPTION :: CCURLSHcode
cCURLSHE_BAD_OPTION =  CCURLSHcode 1
{-# LINE 1451 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHE_IN_USE :: CCURLSHcode
cCURLSHE_IN_USE =  CCURLSHcode 2
{-# LINE 1452 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHE_INVALID :: CCURLSHcode
cCURLSHE_INVALID =  CCURLSHcode 3
{-# LINE 1453 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHE_NOMEM :: CCURLSHcode
cCURLSHE_NOMEM =  CCURLSHcode 4
{-# LINE 1454 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHE_NOT_BUILT_IN :: CCURLSHcode
cCURLSHE_NOT_BUILT_IN =  CCURLSHcode 5
{-# LINE 1455 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
newtype CCURLSHoption'Lock    = CCURLSHoption'Lock    CInt deriving (Eq, Show)
newtype CCURLSHoption'FLOCK   = CCURLSHoption'FLOCK   CInt deriving (Eq, Show)
newtype CCURLSHoption'FUNLOCK = CCURLSHoption'FUNLOCK CInt deriving (Eq, Show)
newtype CCURLSHoption'UsrPtr  = CCURLSHoption'UsrPtr  CInt deriving (Eq, Show)


{-# LINE 1466 "dist/build/Network/Curlhs/Base.hsc" #-}

cCURLSHOPT_SHARE :: CCURLSHoption'Lock
cCURLSHOPT_SHARE =  CCURLSHoption'Lock 1
{-# LINE 1468 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHOPT_UNSHARE :: CCURLSHoption'Lock
cCURLSHOPT_UNSHARE =  CCURLSHoption'Lock 2
{-# LINE 1469 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHOPT_LOCKFUNC :: CCURLSHoption'FLOCK
cCURLSHOPT_LOCKFUNC =  CCURLSHoption'FLOCK 3
{-# LINE 1470 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHOPT_UNLOCKFUNC :: CCURLSHoption'FUNLOCK
cCURLSHOPT_UNLOCKFUNC =  CCURLSHoption'FUNLOCK 4
{-# LINE 1471 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLSHOPT_USERDATA :: CCURLSHoption'UsrPtr
cCURLSHOPT_USERDATA =  CCURLSHoption'UsrPtr 5
{-# LINE 1472 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
foreign import ccall "curl_share_init"
  ccurl_share_init
    :: IO (Ptr CCURLSH)


-------------------------------------------------------------------------------
foreign import ccall "curl_share_setopt"
  ccurl_share_setopt'Lock   
    :: Ptr CCURLSH
    -> CCURLSHoption'Lock   
    -> CCURL_lock_data
    -> IO CCURLSHcode

foreign import ccall "curl_share_setopt"
  ccurl_share_setopt'FLOCK
    :: Ptr CCURLSH
    -> CCURLSHoption'FLOCK
    -> FunPtr CCURL_lock_function
    -> IO CCURLSHcode

foreign import ccall "curl_share_setopt"
  ccurl_share_setopt'FUNLOCK
    :: Ptr CCURLSH
    -> CCURLSHoption'FUNLOCK
    -> FunPtr CCURL_unlock_function
    -> IO CCURLSHcode

foreign import ccall "curl_share_setopt"
  ccurl_share_setopt'UsrPtr 
    :: Ptr CCURLSH
    -> CCURLSHoption'UsrPtr 
    -> Ptr ()
    -> IO CCURLSHcode


-------------------------------------------------------------------------------
foreign import ccall "curl_share_cleanup"
  ccurl_share_cleanup
    :: Ptr CCURLSH
    -> IO CCURLSHcode


-------------------------------------------------------------------------------
-- ** CURL_version_info
-------------------------------------------------------------------------------
newtype CCURLversion = CCURLversion CInt deriving (Eq, Show)

instance Storable CCURLversion where
  sizeOf _    = (4)
{-# LINE 1524 "dist/build/Network/Curlhs/Base.hsc" #-}
  alignment _ = (4)
{-# LINE 1525 "dist/build/Network/Curlhs/Base.hsc" #-}
  poke _ _    = undefined
  peek ptr    = CCURLversion <$> peek (castPtr ptr)

cCURLVERSION_FIRST :: CCURLversion
cCURLVERSION_FIRST =  CCURLversion 0
{-# LINE 1529 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLVERSION_SECOND :: CCURLversion
cCURLVERSION_SECOND =  CCURLversion 1
{-# LINE 1530 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLVERSION_THIRD :: CCURLversion
cCURLVERSION_THIRD =  CCURLversion 2
{-# LINE 1531 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLVERSION_FOURTH :: CCURLversion
cCURLVERSION_FOURTH =  CCURLversion 3
{-# LINE 1532 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLVERSION_NOW :: CCURLversion
cCURLVERSION_NOW =  CCURLversion 3
{-# LINE 1533 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
data CCURL_version_info_data = CCURL_version_info_data
  { ccurl_version_info_data_age             :: CCURLversion
  , ccurl_version_info_data_version         :: Ptr CChar
  , ccurl_version_info_data_version_num     :: CUInt
  , ccurl_version_info_data_host            :: Ptr CChar
  , ccurl_version_info_data_features        :: CInt
  , ccurl_version_info_data_ssl_version     :: Ptr CChar
  , ccurl_version_info_data_ssl_version_num :: CLong
  , ccurl_version_info_data_libz_version    :: Ptr CChar
  , ccurl_version_info_data_protocols       :: Ptr (Ptr CChar)
  , ccurl_version_info_data_ares            :: Ptr CChar
  , ccurl_version_info_data_ares_num        :: CInt
  , ccurl_version_info_data_libidn          :: Ptr CChar
  , ccurl_version_info_data_iconv_ver_num   :: CInt
  , ccurl_version_info_data_libssh_version  :: Ptr CChar
  } deriving (Show)

instance Storable CCURL_version_info_data where
  sizeOf _    = (56)
{-# LINE 1555 "dist/build/Network/Curlhs/Base.hsc" #-}
  alignment _ = (4)
{-# LINE 1556 "dist/build/Network/Curlhs/Base.hsc" #-}
  poke _ _    = undefined
  peek ptr    = CCURL_version_info_data
    <$> (\hsc_ptr -> peekByteOff hsc_ptr 0) ptr
{-# LINE 1559 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 4) ptr
{-# LINE 1560 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 8) ptr
{-# LINE 1561 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 12) ptr
{-# LINE 1562 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 16) ptr
{-# LINE 1563 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 20) ptr
{-# LINE 1564 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 24) ptr
{-# LINE 1565 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 28) ptr
{-# LINE 1566 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 32) ptr
{-# LINE 1567 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 36) ptr
{-# LINE 1568 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 40) ptr
{-# LINE 1569 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 44) ptr
{-# LINE 1570 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 48) ptr
{-# LINE 1571 "dist/build/Network/Curlhs/Base.hsc" #-}
    <*> (\hsc_ptr -> peekByteOff hsc_ptr 52) ptr
{-# LINE 1572 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
cCURL_VERSION_IPV6 :: CInt
cCURL_VERSION_IPV6 =  1
{-# LINE 1576 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_KERBEROS4 :: CInt
cCURL_VERSION_KERBEROS4 =  2
{-# LINE 1577 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_SSL :: CInt
cCURL_VERSION_SSL =  4
{-# LINE 1578 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_LIBZ :: CInt
cCURL_VERSION_LIBZ =  8
{-# LINE 1579 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_NTLM :: CInt
cCURL_VERSION_NTLM =  16
{-# LINE 1580 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_GSSNEGOTIATE :: CInt
cCURL_VERSION_GSSNEGOTIATE =  32
{-# LINE 1581 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_DEBUG :: CInt
cCURL_VERSION_DEBUG =  64
{-# LINE 1582 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_ASYNCHDNS :: CInt
cCURL_VERSION_ASYNCHDNS =  128
{-# LINE 1583 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_SPNEGO :: CInt
cCURL_VERSION_SPNEGO =  256
{-# LINE 1584 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_LARGEFILE :: CInt
cCURL_VERSION_LARGEFILE =  512
{-# LINE 1585 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_IDN :: CInt
cCURL_VERSION_IDN =  1024
{-# LINE 1586 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_SSPI :: CInt
cCURL_VERSION_SSPI =  2048
{-# LINE 1587 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_CONV :: CInt
cCURL_VERSION_CONV =  4096
{-# LINE 1588 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_CURLDEBUG :: CInt
cCURL_VERSION_CURLDEBUG =  8192
{-# LINE 1589 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_TLSAUTH_SRP :: CInt
cCURL_VERSION_TLSAUTH_SRP =  16384
{-# LINE 1590 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURL_VERSION_NTLM_WB :: CInt
cCURL_VERSION_NTLM_WB =  32768
{-# LINE 1591 "dist/build/Network/Curlhs/Base.hsc" #-}

 
-------------------------------------------------------------------------------
-- ** Functions
-------------------------------------------------------------------------------
foreign import ccall "curl_version_info"
  ccurl_version_info
    :: CCURLversion
    -> IO (Ptr CCURL_version_info_data)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_strerror"
  ccurl_easy_strerror
    :: CCURLcode
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_share_strerror"
  ccurl_share_strerror
    :: CCURLSHcode
    -> IO (Ptr CChar)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_pause"
  ccurl_easy_pause
    :: Ptr CCURL
    -> CInt
    -> IO CCURLcode
 
cCURLPAUSE_RECV :: CInt
cCURLPAUSE_RECV =  1
{-# LINE 1624 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPAUSE_RECV_CONT :: CInt
cCURLPAUSE_RECV_CONT =  0
{-# LINE 1625 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPAUSE_SEND :: CInt
cCURLPAUSE_SEND =  4
{-# LINE 1626 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPAUSE_SEND_CONT :: CInt
cCURLPAUSE_SEND_CONT =  0
{-# LINE 1627 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPAUSE_ALL :: CInt
cCURLPAUSE_ALL =  5
{-# LINE 1628 "dist/build/Network/Curlhs/Base.hsc" #-}
cCURLPAUSE_CONT :: CInt
cCURLPAUSE_CONT =  0
{-# LINE 1629 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
-- * Definitions from \"curl/easy.h\"
-------------------------------------------------------------------------------
foreign import ccall "curl_easy_init"
  ccurl_easy_init
    :: IO (Ptr CCURL)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'CLong
    :: Ptr CCURL
    -> CCURLoption'CLong
    -> CLong
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'Int64
    :: Ptr CCURL
    -> CCURLoption'Int64
    -> CCURL_off_t
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'CString
    :: Ptr CCURL
    -> CCURLoption'CString
    -> Ptr CChar
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'CFile
    :: Ptr CCURL
    -> CCURLoption'CFile
    -> Ptr CFile
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'SList
    :: Ptr CCURL
    -> CCURLoption'SList
    -> Ptr CCURL_slist
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'HTTPP
    :: Ptr CCURL
    -> CCURLoption'HTTPP
    -> Ptr CCURL_httppost
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'CURLSH
    :: Ptr CCURL
    -> CCURLoption'CURLSH
    -> Ptr CCURLSH
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'UsrPtr
    :: Ptr CCURL
    -> CCURLoption'UsrPtr
    -> Ptr ()
    -> IO CCURLcode

foreign import ccall "curl_easy_setopt"
  ccurl_easy_setopt'FunPtr
    :: Ptr CCURL
    -> CCURLoption'FunPtr
    -> FunPtr a
    -> IO CCURLcode


{-# LINE 1708 "dist/build/Network/Curlhs/Base.hsc" #-}

ccurl_easy_setopt'FWRITE
  :: Ptr CCURL -> FunPtr CCURL_write_callback -> IO CCURLcode
ccurl_easy_setopt'FWRITE curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_WRITEFUNCTION fptr
{-# LINE 1710 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FREAD
  :: Ptr CCURL -> FunPtr CCURL_read_callback -> IO CCURLcode
ccurl_easy_setopt'FREAD curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_READFUNCTION fptr
{-# LINE 1711 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FPROGRESS
  :: Ptr CCURL -> FunPtr CCURL_progress_callback -> IO CCURLcode
ccurl_easy_setopt'FPROGRESS curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_PROGRESSFUNCTION fptr
{-# LINE 1712 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FHEADER
  :: Ptr CCURL -> FunPtr CCURL_write_callback -> IO CCURLcode
ccurl_easy_setopt'FHEADER curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_HEADERFUNCTION fptr
{-# LINE 1713 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FDEBUG
  :: Ptr CCURL -> FunPtr CCURL_debug_callback -> IO CCURLcode
ccurl_easy_setopt'FDEBUG curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_DEBUGFUNCTION fptr
{-# LINE 1714 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FSSLCTX
  :: Ptr CCURL -> FunPtr CCURL_ssl_ctx_callback -> IO CCURLcode
ccurl_easy_setopt'FSSLCTX curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_SSL_CTX_FUNCTION fptr
{-# LINE 1715 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FIOCTL
  :: Ptr CCURL -> FunPtr CCURL_ioctl_callback -> IO CCURLcode
ccurl_easy_setopt'FIOCTL curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_IOCTLFUNCTION fptr
{-# LINE 1716 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCONVFROM
  :: Ptr CCURL -> FunPtr CCURL_conv_callback -> IO CCURLcode
ccurl_easy_setopt'FCONVFROM curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CONV_FROM_NETWORK_FUNCTION fptr
{-# LINE 1717 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCONVTO
  :: Ptr CCURL -> FunPtr CCURL_conv_callback -> IO CCURLcode
ccurl_easy_setopt'FCONVTO curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CONV_TO_NETWORK_FUNCTION fptr
{-# LINE 1718 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCONVUTF8
  :: Ptr CCURL -> FunPtr CCURL_conv_callback -> IO CCURLcode
ccurl_easy_setopt'FCONVUTF8 curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CONV_FROM_UTF8_FUNCTION fptr
{-# LINE 1719 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FSOCKOPT
  :: Ptr CCURL -> FunPtr CCURL_sockopt_callback -> IO CCURLcode
ccurl_easy_setopt'FSOCKOPT curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_SOCKOPTFUNCTION fptr
{-# LINE 1720 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FOPENSOCKET
  :: Ptr CCURL -> FunPtr CCURL_opensocket_callback -> IO CCURLcode
ccurl_easy_setopt'FOPENSOCKET curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_OPENSOCKETFUNCTION fptr
{-# LINE 1721 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FSEEK
  :: Ptr CCURL -> FunPtr CCURL_seek_callback -> IO CCURLcode
ccurl_easy_setopt'FSEEK curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_SEEKFUNCTION fptr
{-# LINE 1722 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FSSHKEY
  :: Ptr CCURL -> FunPtr CCURL_sshkey_callback -> IO CCURLcode
ccurl_easy_setopt'FSSHKEY curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_SSH_KEYFUNCTION fptr
{-# LINE 1723 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FINTERLEAVE
  :: Ptr CCURL -> FunPtr CCURL_write_callback -> IO CCURLcode
ccurl_easy_setopt'FINTERLEAVE curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_INTERLEAVEFUNCTION fptr
{-# LINE 1724 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCHUNKBGN
  :: Ptr CCURL -> FunPtr CCURL_chunk_bgn_callback -> IO CCURLcode
ccurl_easy_setopt'FCHUNKBGN curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CHUNK_BGN_FUNCTION fptr
{-# LINE 1725 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCHUNKEND
  :: Ptr CCURL -> FunPtr CCURL_chunk_end_callback -> IO CCURLcode
ccurl_easy_setopt'FCHUNKEND curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CHUNK_END_FUNCTION fptr
{-# LINE 1726 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FFNMATCH
  :: Ptr CCURL -> FunPtr CCURL_fnmatch_callback -> IO CCURLcode
ccurl_easy_setopt'FFNMATCH curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_FNMATCH_FUNCTION fptr
{-# LINE 1727 "dist/build/Network/Curlhs/Base.hsc" #-}
ccurl_easy_setopt'FCLOSESOCKET
  :: Ptr CCURL -> FunPtr CCURL_closesocket_callback -> IO CCURLcode
ccurl_easy_setopt'FCLOSESOCKET curl fptr
  = ccurl_easy_setopt'FunPtr curl cCURLOPT_CLOSESOCKETFUNCTION fptr
{-# LINE 1728 "dist/build/Network/Curlhs/Base.hsc" #-}


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_perform"
  ccurl_easy_perform
    :: Ptr CCURL
    -> IO CCURLcode


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_cleanup"
  ccurl_easy_cleanup
    :: Ptr CCURL
    -> IO ()


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_getinfo"
  ccurl_easy_getinfo'CString
    :: Ptr CCURL
    -> CCURLinfo'CString
    -> Ptr (Ptr CChar)
    -> IO CCURLcode

foreign import ccall "curl_easy_getinfo"
  ccurl_easy_getinfo'CDouble
    :: Ptr CCURL
    -> CCURLinfo'CDouble
    -> Ptr CDouble
    -> IO CCURLcode

foreign import ccall "curl_easy_getinfo"
  ccurl_easy_getinfo'CLong
    :: Ptr CCURL
    -> CCURLinfo'CLong
    -> Ptr CLong
    -> IO CCURLcode

foreign import ccall "curl_easy_getinfo"
  ccurl_easy_getinfo'SList
    :: Ptr CCURL
    -> CCURLinfo'SList
    -> Ptr (Ptr CCURL_slist)
    -> IO CCURLcode

foreign import ccall "curl_easy_getinfo"
  ccurl_easy_getinfo'CertI
    :: Ptr CCURL
    -> CCURLinfo'CertI
    -> Ptr (Ptr CCURL_certinfo)
    -> IO CCURLcode


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_duphandle"
  ccurl_easy_duphandle
    :: Ptr CCURL
    -> IO (Ptr CCURL)


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_reset"
  ccurl_easy_reset
    :: Ptr CCURL
    -> IO ()


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_recv"
  ccurl_easy_recv
    :: Ptr CCURL
    -> Ptr a
    -> CSize
    -> Ptr CSize
    -> IO CCURLcode


-------------------------------------------------------------------------------
foreign import ccall "curl_easy_send"
  ccurl_easy_send
    :: Ptr CCURL
    -> Ptr a
    -> CSize
    -> Ptr CSize
    -> IO CCURLcode

 
-------------------------------------------------------------------------------
-- * Definitions from \"curl/multi.h\"
-------------------------------------------------------------------------------
-- todo