curl.inc.in   [plain text]


      **************************************************************************
      *                                  _   _ ____  _
      *  Project                     ___| | | |  _ \| |
      *                             / __| | | | |_) | |
      *                            | (__| |_| |  _ <| |___
      *                             \___|\___/|_| \_\_____|
      *
      * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al.
      *
      * This software is licensed as described in the file COPYING, which
      * you should have received as part of this distribution. The terms
      * are also available at http://curl.haxx.se/docs/copyright.html.
      *
      * You may opt to use, copy, modify, merge, publish, distribute and/or sell
      * copies of the Software, and permit persons to whom the Software is
      * furnished to do so, under the terms of the COPYING file.
      *
      * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
      * ANY KIND, either express or implied.
      *
      * $Id: curl.inc.in,v 1.23 2009-08-11 14:07:08 patrickm Exp $
      *
      **************************************************************************
      *
      /if not defined(CURL_CURL_INC_)
      /define CURL_CURL_INC_
      *
      *     WARNING: this file should be kept in sync with C include files.
      *
      **************************************************************************
      *                               Constants
      **************************************************************************
      *
     d LIBCURL_VERSION...
     d                 c                   '@LIBCURL_VERSION@'
     d LIBCURL_VERSION_MAJOR...
     d                 c                   @LIBCURL_VERSION_MAJOR@
     d LIBCURL_VERSION_MINOR...
     d                 c                   @LIBCURL_VERSION_MINOR@
     d LIBCURL_VERSION_PATCH...
     d                 c                   @LIBCURL_VERSION_PATCH@
     d LIBCURL_VERSION_NUM...
     d                 c                   X'00@LIBCURL_VERSION_NUM@'
     d LIBCURL_TIMESTAMP...
     d                 c                   '@LIBCURL_TIMESTAMP@'
      *
     d CURL_SOCKET_BAD...
     d                 c                   -1
     d CURL_SOCKET_TIMEOUT...
     d                 c                   -1
      *
     d CURLINFO_STRING...
     d                 c                   X'00100000'
     d CURLINFO_LONG   c                   X'00200000'
     d CURLINFO_DOUBLE...
     d                 c                   X'00300000'
     d CURLINFO_SLIST  c                   X'00400000'
     d CURLINFO_MASK   c                   X'000FFFFF'
     d CURLINFO_TYPEMASK...
     d                 c                   X'00F00000'
      *
     d CURL_GLOBAL_SSL...
     d                 c                   X'00000001'
     d CURL_GLOBAL_WIN32...
     d                 c                   X'00000002'
     d CURL_GLOBAL_ALL...
     d                 c                   X'00000003'
     d CURL_GLOBAL_NOTHING...
     d                 c                   X'00000000'
     d CURL_GLOBAL_DEFAULT...
     d                 c                   X'00000003'
      *
     d CURL_VERSION_IPV6...
     d                 c                   X'00000001'
     d CURL_VERSION_KERBEROS4...
     d                 c                   X'00000002'
     d CURL_VERSION_SSL...
     d                 c                   X'00000004'
     d CURL_VERSION_LIBZ...
     d                 c                   X'00000008'
     d CURL_VERSION_NTLM...
     d                 c                   X'00000010'
     d CURL_VERSION_GSSNEGOTIATE...
     d                 c                   X'00000020'
     d CURL_VERSION_DEBUG...
     d                 c                   X'00000040'
     d CURL_VERSION_ASYNCHDNS...
     d                 c                   X'00000080'
     d CURL_VERSION_SPNEGO...
     d                 c                   X'00000100'
     d CURL_VERSION_LARGEFILE...
     d                 c                   X'00000200'
     d CURL_VERSION_IDN...
     d                 c                   X'00000400'
     d CURL_VERSION_SSPI...
     d                 c                   X'00000800'
     d CURL_VERSION_CONV...
     d                 c                   X'00001000'
     d CURL_VERSION_CURLDEBUG...
     d                 c                   X'00002000'
      *
     d HTTPPOST_FILENAME...
     d                 c                   X'00000001'
     d HTTPPOST_READFILE...
     d                 c                   X'00000002'
     d HTTPPOST_PTRNAME...
     d                 c                   X'00000004'
     d HTTPPOST_PTRCONTENTS...
     d                 c                   X'00000008'
     d HTTPPOST_BUFFER...
     d                 c                   X'00000010'
     d HTTPPOST_PTRBUFFER...
     d                 c                   X'00000020'
     d HTTPPOST_CALLBACK...
     d                 c                   X'00000040'
      *
     d CURL_SEEKFUNC_OK...
     d                 c                   0
     d CURL_SEEKFUNC_FAIL...
     d                 c                   1
     d CURL_SEEKFUNC_CANTSEEK...
     d                 c                   2
      *
     d CURL_READFUNC_ABORT...
     d                 c                   X'10000000'
     d CURL_READFUNC_PAUSE...
     d                 c                   X'10000001'
      *
     d CURL_WRITEFUNC_PAUSE...
     d                 c                   X'10000001'
      *
     d CURLAUTH_NONE   c                   X'00000000'
     d CURLAUTH_BASIC  c                   X'00000001'
     d CURLAUTH_DIGEST...
     d                 c                   X'00000002'
     d CURLAUTH_GSSNEGOTIATE...
     d                 c                   X'00000004'
     d CURLAUTH_NTLM   c                   X'00000008'
     d CURLAUTH_DIGEST_IE...
     d                 c                   X'00000010'
     d CURLAUTH_ANY    c                   X'7FFFFFEF'
     d CURLAUTH_ANYSAFE...
     d                 c                   X'7FFFFFEE'
      *
     d CURLSSH_AUTH_ANY...
     d                 c                   X'7FFFFFFF'
     d CURLSSH_AUTH_NONE...
     d                 c                   X'00000000'
     d CURLSSH_AUTH_PUBLICKEY...
     d                 c                   X'00000001'
     d CURLSSH_AUTH_PASSWORD...
     d                 c                   X'00000002'
     d CURLSSH_AUTH_HOST...
     d                 c                   X'00000004'
     d CURLSSH_AUTH_KEYBOARD...
     d                 c                   X'00000008'
     d CURLSSH_AUTH_DEFAULT...
     d                 c                   X'7FFFFFFF'                          CURLSSH_AUTH_ANY
      *
     d CURL_ERROR_SIZE...
     d                 c                   256
      *
     d CURLOPTTYPE_LONG...
     d                 c                   0
     d CURLOPTTYPE_OBJECTPOINT...
     d                 c                   10000
     d CURLOPTTYPE_FUNCTIONPOINT...
     d                 c                   20000
     d CURLOPTTYPE_OFF_T...
     d                 c                   30000
      *
     d CURL_IPRESOLVE_WHATEVER...
     d                 c                   0
     d CURL_IPRESOLVE_V4...
     d                 c                   1
     d CURL_IPRESOLVE_V6...
     d                 c                   2
      *
     d CURL_HTTP_VERSION_NONE...
     d                 c                   0
     d CURL_HTTP_VERSION_1_0...
     d                 c                   1
     d CURL_HTTP_VERSION_1_1...
     d                 c                   2
      *
     d CURL_NETRC_IGNORED...
     d                 c                   0
     d CURL_NETRC_OPTIONAL...
     d                 c                   1
     d CURL_NETRC_REQUIRED...
     d                 c                   2
      *
     d CURL_SSLVERSION_DEFAULT...
     d                 c                   0
     d CURL_SSLVERSION_TLSv1...
     d                 c                   1
     d CURL_SSLVERSION_SSLv2...
     d                 c                   2
     d CURL_SSLVERSION_SSLv3...
     d                 c                   3
      *
     d CURL_REDIR_GET_ALL...
     d                 c                   0
     d CURL_REDIR_POST_301...
     d                 c                   1
     d CURL_REDIR_POST_302...
     d                 c                   2
     d CURL_REDIR_POST_ALL...
     d                 c                   3
      *
     d CURL_POLL_NONE  c                   0
     d CURL_POLL_IN    c                   1
     d CURL_POLL_OUT   c                   2
     d CURL_POLL_INOUT...
     d                 c                   3
     d CURL_POLL_REMOVE...
     d                 c                   4
      *
     d CURL_CSELECT_IN...
     d                 c                   X'00000001'
     d CURL_CSELECT_OUT...
     d                 c                   X'00000002'
     d CURL_CSELECT_ERR...
     d                 c                   X'00000004'
      *
     d CURLPAUSE_RECV  c                   X'00000001'
     d CURLPAUSE_RECV_CONT...
     d                 c                   X'00000000'
     d CURLPAUSE_SEND  c                   X'00000004'
     d CURLPAUSE_SEND_CONT...
     d                 c                   X'00000000'
     d CURLPAUSE_ALL   c                   X'00000005'
     d CURLPAUSE_CONT  c                   X'00000000'
      *
      **************************************************************************
      *                                Types
      **************************************************************************
      *
     d curl_socket_t   s             10i 0 based(######ptr######)
      *
     d curl_off_t      s             20i 0 based(######ptr######)
      *
     d CURLcode        s             10i 0 based(######ptr######)               Enum
     d  CURLE_OK       c                   0
     d  CURLE_UNSUPPORTED_PROTOCOL...
     d                 c                   1
     d  CURLE_FAILED_INIT...
     d                 c                   2
     d  CURLE_URL_MALFORMAT...
     d                 c                   3
     d  CURLE_OBSOLETE4...
     d                 c                   4
     d  CURLE_COULDNT_RESOLVE_PROXY...
     d                 c                   5
     d  CURLE_COULDNT_RESOLVE_HOST...
     d                 c                   6
     d  CURLE_COULDNT_CONNECT...
     d                 c                   7
     d  CURLE_FTP_WEIRD_SERVER_REPLY...
     d                 c                   8
     d  CURLE_REMOTE_ACCESS_DENIED...
     d                 c                   9
     d  CURLE_OBSOLETE10...
     d                 c                   10
     d  CURLE_FTP_WEIRD_PASS_REPLY...
     d                 c                   11
     d  CURLE_OBSOLETE12...
     d                 c                   12
     d  CURLE_FTP_WEIRD_PASV_REPLY...
     d                 c                   13
     d  CURLE_FTP_WEIRD_227_FORMAT...
     d                 c                   14
     d  CURLE_FTP_CANT_GET_HOST...
     d                 c                   15
     d  CURLE_OBSOLETE16...
     d                 c                   16
     d  CURLE_FTP_COULDNT_SET_TYPE...
     d                 c                   17
     d  CURLE_PARTIAL_FILE...
     d                 c                   18
     d  CURLE_FTP_COULDNT_RETR_FILE...
     d                 c                   19
     d  CURLE_OBSOLETE20...
     d                 c                   20
     d  CURLE_QUOTE_ERROR...
     d                 c                   21
     d  CURLE_HTTP_RETURNED_ERROR...
     d                 c                   22
     d  CURLE_WRITE_ERROR...
     d                 c                   23
     d  CURLE_OBSOLETE24...
     d                 c                   24
     d  CURLE_UPLOAD_FAILED...
     d                 c                   25
     d  CURLE_READ_ERROR...
     d                 c                   26
     d  CURLE_OUT_OF_MEMORY...
     d                 c                   27
     d  CURLE_OPERATION_TIMEDOUT...
     d                 c                   28
     d  CURLE_OBSOLETE29...
     d                 c                   29
     d  CURLE_FTP_PORT_FAILED...
     d                 c                   30
     d  CURLE_FTP_COULDNT_USE_REST...
     d                 c                   31
     d  CURLE_OBSOLETE32...
     d                 c                   32
     d  CURLE_RANGE_ERROR...
     d                 c                   33
     d  CURLE_HTTP_POST_ERROR...
     d                 c                   34
     d  CURLE_SSL_CONNECT_ERROR...
     d                 c                   35
     d  CURLE_BAD_DOWNLOAD_RESUME...
     d                 c                   36
     d  CURLE_FILE_COULDNT_READ_FILE...
     d                 c                   37
     d  CURLE_LDAP_CANNOT_BIND...
     d                 c                   38
     d  CURLE_LDAP_SEARCH_FAILED...
     d                 c                   39
     d  CURLE_OBSOLETE40...
     d                 c                   40
     d  CURLE_FUNCTION_NOT_FOUND...
     d                 c                   41
     d  CURLE_ABORTED_BY_CALLBACK...
     d                 c                   42
     d  CURLE_BAD_FUNCTION_ARGUMENT...
     d                 c                   43
     d  CURLE_OBSOLETE44...
     d                 c                   44
     d  CURLE_INTERFACE_FAILED...
     d                 c                   45
     d  CURLE_OBSOLETE46...
     d                 c                   46
     d  CURLE_TOO_MANY_REDIRECTS...
     d                 c                   47
     d  CURLE_UNKNOWN_TELNET_OPTION...
     d                 c                   48
     d  CURLE_TELNET_OPTION_SYNTAX...
     d                 c                   49
     d  CURLE_OBSOLETE50...
     d                 c                   50
     d  CURLE_PEER_FAILED_VERIFICATION...
     d                 c                   51
     d  CURLE_GOT_NOTHING...
     d                 c                   52
     d  CURLE_SSL_ENGINE_NOTFOUND...
     d                 c                   53
     d  CURLE_SSL_ENGINE_SETFAILED...
     d                 c                   54
     d  CURLE_SEND_ERROR...
     d                 c                   55
     d  CURLE_RECV_ERROR...
     d                 c                   56
     d  CURLE_OBSOLETE57...
     d                 c                   57
     d  CURLE_SSL_CERTPROBLEM...
     d                 c                   58
     d  CURLE_SSL_CIPHER...
     d                 c                   59
     d  CURLE_SSL_CACERT...
     d                 c                   60
     d  CURLE_BAD_CONTENT_ENCODING...
     d                 c                   61
     d  CURLE_LDAP_INVALID_URL...
     d                 c                   62
     d  CURLE_FILESIZE_EXCEEDED...
     d                 c                   63
     d  CURLE_USE_SSL_FAILED...
     d                 c                   64
     d  CURLE_SEND_FAIL_REWIND...
     d                 c                   65
     d  CURLE_SSL_ENGINE_INITFAILED...
     d                 c                   66
     d  CURLE_LOGIN_DENIED...
     d                 c                   67
     d  CURLE_TFTP_NOTFOUND...
     d                 c                   68
     d  CURLE_TFTP_PERM...
     d                 c                   69
     d  CURLE_REMOTE_DISK_FULL...
     d                 c                   70
     d  CURLE_TFTP_ILLEGAL...
     d                 c                   71
     d  CURLE_TFTP_UNKNOWNID...
     d                 c                   72
     d  CURLE_REMOTE_FILE_EXISTS...
     d                 c                   73
     d  CURLE_TFTP_NOSUCHUSER...
     d                 c                   74
     d  CURLE_CONV_FAILED...
     d                 c                   75
     d  CURLE_CONV_REQD...
     d                 c                   76
     d  CURLE_SSL_CACERT_BADFILE...
     d                 c                   77
     d  CURLE_REMOTE_FILE_NOT_FOUND...
     d                 c                   78
     d  CURLE_SSH...
     d                 c                   79
     d  CURLE_SSL_SHUTDOWN_FAILED...
     d                 c                   80
     d  CURLE_AGAIN...
     d                 c                   81
     d  CURLE_SSL_CRL_BADFILE...
     d                 c                   82
     d  CURLE_SSL_ISSUER_ERROR...
     d                 c                   83
      *
     d curlioerr       s             10i 0 based(######ptr######)               Enum
     d  CURLIOE_OK     c                   0
     d  CURLIOE_UNKNOWNCMD...
     d                 c                   1
     d  CURLIOE_FAILRESTART...
     d                 c                   2
      *
     d curliocmd       s             10i 0 based(######ptr######)               Enum
     d  CURLIOCMD_NOP  c                   0
     d  CURLIOCMD_RESTARTREAD...
     d                 c                   1
      *
     d curl_infotype   s             10i 0 based(######ptr######)               Enum
     d  CURLINFO_TEXT...
     d                 c                   0
     d  CURLINFO_HEADER_IN...
     d                 c                   1
     d  CURLINFO_HEADER_OUT...
     d                 c                   2
     d  CURLINFO_DATA_IN...
     d                 c                   3
     d  CURLINFO_DATA_OUT...
     d                 c                   4
     d  CURLINFO_SSL_DATA_IN...
     d                 c                   5
     d  CURLINFO_SSL_DATA_OUT...
     d                 c                   6
     d  CURLINFO_END...
     d                 c                   7
      *
     d curl_proxytype  s             10i 0 based(######ptr######)               Enum
     d  CURLPROXY_HTTP...
     d                 c                   0
     d  CURLPROXY_HTTP_1_0...
     d                 c                   1
     d  CURLPROXY_SOCKS4...
     d                 c                   4
     d  CURLPROXY_SOCKS5...
     d                 c                   5
     d  CURLPROXY_SOCKS4A...
     d                 c                   6
     d  CURLPROXY_SOCKS5_HOSTNAME...
     d                 c                   7
      *
     d curl_khstat     s             10i 0 based(######ptr######)               Enum
     d  CURLKHSTAT_FINE_ADD_TO_FILE...
     d                 c                   0
     d  CURLKHSTAT_FINE...
     d                 c                   1
     d  CURLKHSTAT_REJECT...
     d                 c                   2
     d  CURLKHSTAT_DEFER...
     d                 c                   3
     d  CURLKHSTAT_LAST...
     d                 c                   4
      *
     d curl_khmatch    s             10i 0 based(######ptr######)               Enum
     d  CURLKHMATCH_OK...
     d                 c                   0
     d  CURLKHMATCH_MISMATCH...
     d                 c                   1
     d  CURLKHMATCH_MISSING...
     d                 c                   2
     d  CURLKHMATCH_LAST...
     d                 c                   3
      *
     d curl_usessl     s             10i 0 based(######ptr######)               Enum
     d  CURLUSESSL_NONE...
     d                 c                   0
     d  CURLUSESSL_TRY...
     d                 c                   1
     d  CURLUSESSL_CONTROL...
     d                 c                   2
     d  CURLUSESSL_ALL...
     d                 c                   3
      *
     d curl_ftpccc     s             10i 0 based(######ptr######)               Enum
     d  CURLFTPSSL_CCC_NONE...
     d                 c                   0
     d  CURLFTPSSL_CCC_PASSIVE...
     d                 c                   1
     d  CURLFTPSSL_CCC_ACTIVE...
     d                 c                   2
      *
     d curl_ftpauth    s             10i 0 based(######ptr######)               Enum
     d  CURLFTPAUTH_DEFAULT...
     d                 c                   0
     d  CURLFTPAUTH_SSL...
     d                 c                   1
     d  CURLFTPAUTH_TLS...
     d                 c                   2
      *
     d curl_ftpcreatedir...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURLFTP_CREATE_DIR_NONE...
     d                 c                   0
     d  CURLFTP_CREATE_DIR...
     d                 c                   1
     d  CURLFTP_CREATE_DIR_RETRY...
     d                 c                   2
      *
     d curl_ftpmethod  s             10i 0 based(######ptr######)               Enum
     d  CURLFTPMETHOD_DEFAULT...
     d                 c                   0
     d  CURLFTPMETHOD_MULTICWD...
     d                 c                   1
     d  CURLFTPMETHOD_NOCWD...
     d                 c                   2
     d  CURLFTPMETHOD_SINGLECWD...
     d                 c                   3
      *
     d  CURLPROTO_HTTP...
     d                 c                   X'0001'
     d  CURLPROTO_HTTPS...
     d                 c                   X'0002'
     d  CURLPROTO_FTP...
     d                 c                   X'0004'
     d  CURLPROTO_FTPS...
     d                 c                   X'0008'
     d  CURLPROTO_SCP...
     d                 c                   X'0010'
     d  CURLPROTO_SFTP...
     d                 c                   X'0020'
     d  CURLPROTO_TELNET...
     d                 c                   X'0040'
     d  CURLPROTO_LDAP...
     d                 c                   X'0080'
     d  CURLPROTO_LDAPS...
     d                 c                   X'0100'
     d  CURLPROTO_DICT...
     d                 c                   X'0200'
     d  CURLPROTO_FILE...
     d                 c                   X'0400'
     d  CURLPROTO_TFTP...
     d                 c                   X'0800'
      *
     d CURLoption      s             10i 0 based(######ptr######)               Enum
     d  CURLOPT_FILE   c                   10001
     d  CURLOPT_WRITEDATA...
     d                 c                   10001
     d  CURLOPT_URL    c                   10002
     d  CURLOPT_PORT   c                   00003
     d  CURLOPT_PROXY  c                   10004
     d  CURLOPT_USERPWD...
     d                 c                   10005
     d  CURLOPT_PROXYUSERPWD...
     d                 c                   10006
     d  CURLOPT_RANGE  c                   10007
     d  CURLOPT_INFILE...
     d                 c                   10009
     d  CURLOPT_READDATA...
     d                 c                   10009
     d  CURLOPT_ERRORBUFFER...
     d                 c                   10010
     d  CURLOPT_WRITEFUNCTION...
     d                 c                   20011
     d  CURLOPT_READFUNCTION...
     d                 c                   20012
     d  CURLOPT_TIMEOUT...
     d                 c                   00013
     d  CURLOPT_INFILESIZE...
     d                 c                   00014
     d  CURLOPT_POSTFIELDS...
     d                 c                   10015
     d  CURLOPT_REFERER...
     d                 c                   10016
     d  CURLOPT_FTPPORT...
     d                 c                   10017
     d  CURLOPT_USERAGENT...
     d                 c                   10018
     d  CURLOPT_LOW_SPEED_LIMIT...
     d                 c                   00019
     d  CURLOPT_LOW_SPEED_TIME...
     d                 c                   00020
     d  CURLOPT_RESUME_FROM...
     d                 c                   00021
     d  CURLOPT_COOKIE...
     d                 c                   10022
     d  CURLOPT_HTTPHEADER...
     d                 c                   10023
     d  CURLOPT_HTTPPOST...
     d                 c                   10024
     d  CURLOPT_SSLCERT...
     d                 c                   10025
     d  CURLOPT_SSLCERTPASSWD...
     d                 c                   10026
     d  CURLOPT_KEYPASSWD...
     d                 c                   10026
     d  CURLOPT_CRLF   c                   00027
     d  CURLOPT_QUOTE  c                   10028
     d  CURLOPT_WRITEHEADER...
     d                 c                   10029
     d  CURLOPT_HEADERDATA...
     d                 c                   10029
     d  CURLOPT_COOKIEFILE...
     d                 c                   10031
     d  CURLOPT_SSLVERSION...
     d                 c                   00032
     d  CURLOPT_TIMECONDITION...
     d                 c                   00033
     d  CURLOPT_TIMEVALUE...
     d                 c                   00034
     d  CURLOPT_CUSTOMREQUEST...
     d                 c                   10036
     d  CURLOPT_STDERR...
     d                 c                   10037
     d  CURLOPT_POSTQUOTE...
     d                 c                   10039
     d  CURLOPT_WRITEINFO...
     d                 c                   10040
     d  CURLOPT_VERBOSE...
     d                 c                   00041
     d  CURLOPT_HEADER...
     d                 c                   00042
     d  CURLOPT_NOPROGRESS...
     d                 c                   00043
     d  CURLOPT_NOBODY...
     d                 c                   00044
     d  CURLOPT_FAILONERROR...
     d                 c                   00045
     d  CURLOPT_UPLOAD...
     d                 c                   00046
     d  CURLOPT_POST   c                   00047
     d  CURLOPT_DIRLISTONLY...
     d                 c                   00048
     d  CURLOPT_APPEND...
     d                 c                   00050
     d  CURLOPT_NETRC  c                   00051
     d  CURLOPT_FOLLOWLOCATION...
     d                 c                   00052
     d  CURLOPT_TRANSFERTEXT...
     d                 c                   00053
     d  CURLOPT_PUT    c                   00054
     d  CURLOPT_PROGRESSFUNCTION...
     d                 c                   20056
     d  CURLOPT_PROGRESSDATA...
     d                 c                   10057
     d  CURLOPT_AUTOREFERER...
     d                 c                   00058
     d  CURLOPT_PROXYPORT...
     d                 c                   00059
     d  CURLOPT_POSTFIELDSIZE...
     d                 c                   00060
     d  CURLOPT_HTTPPROXYTUNNEL...
     d                 c                   00061
     d  CURLOPT_INTERFACE...
     d                 c                   10062
     d  CURLOPT_KRBLEVEL...
     d                 c                   10063
     d  CURLOPT_SSL_VERIFYPEER...
     d                 c                   00064
     d  CURLOPT_CAINFO...
     d                 c                   10065
     d  CURLOPT_MAXREDIRS...
     d                 c                   00068
     d  CURLOPT_FILETIME...
     d                 c                   00069
     d  CURLOPT_TELNETOPTIONS...
     d                 c                   10070
     d  CURLOPT_MAXCONNECTS...
     d                 c                   00071
     d  CURLOPT_CLOSEPOLICY...
     d                 c                   00072
     d  CURLOPT_FRESH_CONNECT...
     d                 c                   00074
     d  CURLOPT_FORBID_REUSE...
     d                 c                   00075
     d  CURLOPT_RANDOM_FILE...
     d                 c                   10076
     d  CURLOPT_EGDSOCKET...
     d                 c                   10077
     d  CURLOPT_CONNECTTIMEOUT...
     d                 c                   00078
     d  CURLOPT_HEADERFUNCTION...
     d                 c                   20079
     d  CURLOPT_HTTPGET...
     d                 c                   00080
     d  CURLOPT_SSL_VERIFYHOST...
     d                 c                   00081
     d  CURLOPT_COOKIEJAR...
     d                 c                   10082
     d  CURLOPT_SSL_CIPHER_LIST...
     d                 c                   10083
     d  CURLOPT_HTTP_VERSION...
     d                 c                   00084
     d  CURLOPT_FTP_USE_EPSV...
     d                 c                   00085
     d  CURLOPT_SSLCERTTYPE...
     d                 c                   10086
     d  CURLOPT_SSLKEY...
     d                 c                   10087
     d  CURLOPT_SSLKEYTYPE...
     d                 c                   10088
     d  CURLOPT_SSLENGINE...
     d                 c                   10089
     d  CURLOPT_SSLENGINE_DEFAULT...
     d                 c                   00090
     d  CURLOPT_DNS_USE_GLOBAL_CACHE...
     d                 c                   00091
     d  CURLOPT_DNS_CACHE_TIMEOUT...
     d                 c                   00092
     d  CURLOPT_PREQUOTE...
     d                 c                   10093
     d  CURLOPT_DEBUGFUNCTION...
     d                 c                   20094
     d  CURLOPT_DEBUGDATA...
     d                 c                   10095
     d  CURLOPT_COOKIESESSION...
     d                 c                   00096
     d  CURLOPT_CAPATH...
     d                 c                   10097
     d  CURLOPT_BUFFERSIZE...
     d                 c                   00098
     d  CURLOPT_NOSIGNAL...
     d                 c                   00099
     d  CURLOPT_SHARE  c                   10100
     d  CURLOPT_PROXYTYPE...
     d                 c                   00101
     d  CURLOPT_ENCODING...
     d                 c                   10102
     d  CURLOPT_PRIVATE...
     d                 c                   10103
     d  CURLOPT_HTTP200ALIASES...
     d                 c                   10104
     d  CURLOPT_UNRESTRICTED_AUTH...
     d                 c                   00105
     d  CURLOPT_FTP_USE_EPRT...
     d                 c                   00106
     d  CURLOPT_HTTPAUTH...
     d                 c                   00107
     d  CURLOPT_SSL_CTX_FUNCTION...
     d                 c                   20108
     d  CURLOPT_SSL_CTX_DATA...
     d                 c                   10109
     d  CURLOPT_FTP_CREATE_MISSING_DIRS...
     d                 c                   00110
     d  CURLOPT_PROXYAUTH...
     d                 c                   00111
     d  CURLOPT_FTP_RESPONSE_TIMEOUT...
     d                 c                   00112
     d  CURLOPT_IPRESOLVE...
     d                 c                   00113
     d  CURLOPT_MAXFILESIZE...
     d                 c                   00114
     d  CURLOPT_INFILESIZE_LARGE...
     d                 c                   30115
     d  CURLOPT_RESUME_FROM_LARGE...
     d                 c                   30116
     d  CURLOPT_MAXFILESIZE_LARGE...
     d                 c                   30117
     d  CURLOPT_NETRC_FILE...
     d                 c                   10118
     d  CURLOPT_USE_SSL...
     d                 c                   00119
     d  CURLOPT_POSTFIELDSIZE_LARGE...
     d                 c                   30120
     d  CURLOPT_TCP_NODELAY...
     d                 c                   00121
     d  CURLOPT_FTPSSLAUTH...
     d                 c                   00129
     d  CURLOPT_IOCTLFUNCTION...
     d                 c                   20130
     d  CURLOPT_IOCTLDATA...
     d                 c                   10131
     d  CURLOPT_FTP_ACCOUNT...
     d                 c                   10134
     d  CURLOPT_COOKIELIST...
     d                 c                   10135
     d  CURLOPT_IGNORE_CONTENT_LENGTH...
     d                 c                   00136
     d  CURLOPT_FTP_SKIP_PASV_IP...
     d                 c                   00137
     d  CURLOPT_FTP_FILEMETHOD...
     d                 c                   00138
     d  CURLOPT_LOCALPORT...
     d                 c                   00139
     d  CURLOPT_LOCALPORTRANGE...
     d                 c                   00140
     d  CURLOPT_CONNECT_ONLY...
     d                 c                   00141
     d  CURLOPT_CONV_FROM_NETWORK_FUNCTION...
     d                 c                   20142
     d  CURLOPT_CONV_TO_NETWORK_FUNCTION...
     d                 c                   20143
     d  CURLOPT_CONV_FROM_UTF8_FUNCTION...
     d                 c                   20144
     d  CURLOPT_MAX_SEND_SPEED_LARGE...
     d                 c                   30145
     d  CURLOPT_MAX_RECV_SPEED_LARGE...
     d                 c                   30146
     d  CURLOPT_FTP_ALTERNATIVE_TO_USER...
     d                 c                   10147
     d  CURLOPT_SOCKOPTFUNCTION...
     d                 c                   20148
     d  CURLOPT_SOCKOPTDATA...
     d                 c                   10149
     d  CURLOPT_SSL_SESSIONID_CACHE...
     d                 c                   00150
     d  CURLOPT_SSH_AUTH_TYPES...
     d                 c                   00151
     d  CURLOPT_SSH_PUBLIC_KEYFILE...
     d                 c                   10152
     d  CURLOPT_SSH_PRIVATE_KEYFILE...
     d                 c                   10153
     d  CURLOPT_FTP_SSL_CCC...
     d                 c                   00154
     d  CURLOPT_TIMEOUT_MS...
     d                 c                   00155
     d  CURLOPT_CONNECTTIMEOUT_MS...
     d                 c                   00156
     d  CURLOPT_HTTP_TRANSFER_DECODING...
     d                 c                   00157
     d  CURLOPT_HTTP_CONTENT_DECODING...
     d                 c                   00158
     d  CURLOPT_NEW_FILE_PERMS...
     d                 c                   00159
     d  CURLOPT_NEW_DIRECTORY_PERMS...
     d                 c                   00160
     d  CURLOPT_POSTREDIR...
     d                 c                   00161
     d  CURLOPT_SSH_HOST_PUBLIC_KEY_MD5...
     d                 c                   10162
     d  CURLOPT_OPENSOCKETFUNCTION...
     d                 c                   20163
     d  CURLOPT_OPENSOCKETDATA...
     d                 c                   10164
     d  CURLOPT_COPYPOSTFIELDS...
     d                 c                   10165
     d  CURLOPT_PROXY_TRANSFER_MODE...
     d                 c                   00166
     d  CURLOPT_SEEKFUNCTION...
     d                 c                   20167
     d  CURLOPT_SEEKDATA...
     d                 c                   10168
     d  CURLOPT_CRLFILE...
     d                 c                   10169
     d  CURLOPT_ISSUERCERT...
     d                 c                   10170
     d  CURLOPT_ADDRESS_SCOPE...
     d                 c                   00171
     d  CURLOPT_CERTINFO...
     d                 c                   00172
     d  CURLOPT_USERNAME...
     d                 c                   10173
     d  CURLOPT_PASSWORD...
     d                 c                   10174
     d  CURLOPT_PROXYUSERNAME...
     d                 c                   10175
     d  CURLOPT_PROXYPASSWORD...
     d                 c                   10176
     d  CURLOPT_NOPROXY...
     d                 c                   10177
     d  CURLOPT_TFTP_BLKSIZE...
     d                 c                   00178
     d  CURLOPT_SOCKS5_GSSAPI_SERVICE...
     d                 c                   10179
     d  CURLOPT_SOCKS5_GSSAPI_NEC...
     d                 c                   00180
     d  CURLOPT_PROTOCOLS...
     d                 c                   00181
     d  CURLOPT_REDIR_PROTOCOLS...
     d                 c                   00182
     d  CURLOPT_SSH_KNOWNHOSTS...
     d                 c                   10183
     d  CURLOPT_SSH_KEYFUNCTION...
     d                 c                   20184
     d  CURLOPT_SSH_KEYDATA...
     d                 c                   10185
      *
     d  CURLOPT_POST301...
     d                 c                   00161                                Obsolescent
      *
     d CURLFORMcode    s             10i 0 based(######ptr######)               Enum
     d  CURL_FORMADD_OK...
     d                 c                   0
     d  CURL_FORMADD_MEMORY...
     d                 c                   1
     d  CURL_FORMADD_OPTION_TWICE...
     d                 c                   2
     d  CURL_FORMADD_NULL...
     d                 c                   3
     d  CURL_FORMADD_UNKNOWN_OPTION...
     d                 c                   4
     d  CURL_FORMADD_INCOMPLETE...
     d                 c                   5
     d  CURL_FORMADD_ILLEGAL_ARRAY...
     d                 c                   6
     d  CURL_FORMADD_DISABLED...
     d                 c                   7
      *
     d CURLformoption  s             10i 0 based(######ptr######)               Enum
     d  CURLFORM_NOTHING...
     d                 c                   0
     d  CURLFORM_COPYNAME...
     d                 c                   1
     d  CURLFORM_PTRNAME...
     d                 c                   2
     d  CURLFORM_NAMELENGTH...
     d                 c                   3
     d  CURLFORM_COPYCONTENTS...
     d                 c                   4
     d  CURLFORM_PTRCONTENTS...
     d                 c                   5
     d  CURLFORM_CONTENTSLENGTH...
     d                 c                   6
     d  CURLFORM_FILECONTENT...
     d                 c                   7
     d  CURLFORM_ARRAY...
     d                 c                   8
     d  CURLFORM_OBSOLETE...
     d                 c                   9
     d  CURLFORM_FILE...
     d                 c                   10
     d  CURLFORM_BUFFER...
     d                 c                   11
     d  CURLFORM_BUFFERPTR...
     d                 c                   12
     d  CURLFORM_BUFFERLENGTH...
     d                 c                   13
     d  CURLFORM_CONTENTTYPE...
     d                 c                   14
     d  CURLFORM_CONTENTHEADER...
     d                 c                   15
     d  CURLFORM_FILENAME...
     d                 c                   16
     d  CURLFORM_END...
     d                 c                   17
     d  CURLFORM_OBSOLETE2...
     d                 c                   18
     d  CURLFORM_STREAM...
     d                 c                   19
      *
     d CURLINFO        s             10i 0 based(######ptr######)               Enum
     d  CURLINFO_EFFECTIVE_URL...                                               CURLINFO_STRING + 1
     d                 c                   X'00100001'
     d  CURLINFO_RESPONSE_CODE...                                               CURLINFO_LONG   + 2
     d                 c                   X'00200002'
     d  CURLINFO_TOTAL_TIME...                                                  CURLINFO_DOUBLE + 3
     d                 c                   X'00300003'
     d  CURLINFO_NAMELOOKUP_TIME...                                             CURLINFO_DOUBLE + 4
     d                 c                   X'00300004'
     d  CURLINFO_CONNECT_TIME...                                                CURLINFO_DOUBLE + 5
     d                 c                   X'00300005'
     d  CURLINFO_PRETRANSFER_TIME...                                            CURLINFO_DOUBLE + 6
     d                 c                   X'00300006'
     d  CURLINFO_SIZE_UPLOAD...                                                 CURLINFO_DOUBLE + 7
     d                 c                   X'00300007'
     d  CURLINFO_SIZE_DOWNLOAD...                                               CURLINFO_DOUBLE + 8
     d                 c                   X'00300008'
     d  CURLINFO_SPEED_DOWNLOAD...                                              CURLINFO_DOUBLE + 9
     d                 c                   X'00300009'
     d  CURLINFO_SPEED_UPLOAD...                                                CURLINFO_DOUBLE + 10
     d                 c                   X'0030000A'
     d  CURLINFO_HEADER_SIZE...                                                 CURLINFO_LONG   + 11
     d                 c                   X'0020000B'
     d  CURLINFO_REQUEST_SIZE...                                                CURLINFO_LONG   + 12
     d                 c                   X'0020000C'
     d  CURLINFO_SSL_VERIFYRESULT...                                            CURLINFO_LONG   + 13
     d                 c                   X'0020000D'
     d  CURLINFO_FILETIME...                                                    CURLINFO_LONG   + 14
     d                 c                   X'0020000E'
     d  CURLINFO_CONTENT_LENGTH_DOWNLOAD...                                     CURLINFO_DOUBLE + 15
     d                 c                   X'0030000F'
     d  CURLINFO_CONTENT_LENGTH_UPLOAD...                                       CURLINFO_DOUBLE + 16
     d                 c                   X'00300010'
     d  CURLINFO_STARTTRANSFER_TIME...                                          CURLINFO_DOUBLE + 17
     d                 c                   X'00300011'
     d  CURLINFO_CONTENT_TYPE...                                                CURLINFO_STRING + 18
     d                 c                   X'00100012'
     d  CURLINFO_REDIRECT_TIME...                                               CURLINFO_DOUBLE + 19
     d                 c                   X'00300013'
     d  CURLINFO_REDIRECT_COUNT...                                              CURLINFO_LONG   + 20
     d                 c                   X'00200014'
     d  CURLINFO_PRIVATE...                                                     CURLINFO_STRING + 21
     d                 c                   X'00100015'
     d  CURLINFO_HTTP_CONNECTCODE...                                            CURLINFO_LONG   + 22
     d                 c                   X'00200016'
     d  CURLINFO_HTTPAUTH_AVAIL...                                              CURLINFO_LONG   + 23
     d                 c                   X'00200017'
     d  CURLINFO_PROXYAUTH_AVAIL...                                             CURLINFO_LONG   + 24
     d                 c                   X'00200018'
     d  CURLINFO_OS_ERRNO...                                                    CURLINFO_LONG   + 25
     d                 c                   X'00200019'
     d  CURLINFO_NUM_CONNECTS...                                                CURLINFO_LONG   + 26
     d                 c                   X'0020001A'
     d  CURLINFO_SSL_ENGINES...                                                 CURLINFO_SLIST  + 27
     d                 c                   X'0040001B'
     d  CURLINFO_COOKIELIST...                                                  CURLINFO_SLIST  + 28
     d                 c                   X'0040001C'
     d  CURLINFO_LASTSOCKET...                                                  CURLINFO_LONG   + 29
     d                 c                   X'0020001D'
     d  CURLINFO_FTP_ENTRY_PATH...                                              CURLINFO_STRING + 30
     d                 c                   X'0010001E'
     d  CURLINFO_REDIRECT_URL...                                                CURLINFO_STRING + 31
     d                 c                   X'0010001F'
     d  CURLINFO_PRIMARY_IP...                                                  CURLINFO_STRING + 32
     d                 c                   X'00100020'
     d  CURLINFO_APPCONNECT_TIME...                                             CURLINFO_DOUBLE + 33
     d                 c                   X'00300021'
     d  CURLINFO_CERTINFO...                                                    CURLINFO_SLIST + 34
     d                 c                   X'00400022'
     d  CURLINFO_CONDITION_UNMET...                                             CURLINFO_LONG + 35
     d                 c                   X'00200023'
      *
     d  CURLINFO_HTTP_CODE...                                                   Old ...RESPONSE_CODE
     d                 c                   X'00200002'
      *
     d curl_closepolicy...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURLCLOSEPOLICY_OLDEST...
     d                 c                   1
     d  CURLCLOSEPOLICY_LEAST_RECENTLY_USED...
     d                 c                   2
     d  CURLCLOSEPOLICY_LEAST_TRAFFIC...
     d                 c                   3
     d  CURLCLOSEPOLICY_SLOWEST...
     d                 c                   4
     d  CURLCLOSEPOLICY_CALLBACK...
     d                 c                   5
      *
     d curl_lock_data...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURL_LOCK_DATA_NONE...
     d                 c                   0
     d  CURL_LOCK_DATA_SHARE...
     d                 c                   1
     d  CURL_LOCK_DATA_COOKIE...
     d                 c                   2
     d  CURL_LOCK_DATA_DNS...
     d                 c                   3
     d  CURL_LOCK_DATA_SSL_SESSION...
     d                 c                   4
     d  CURL_LOCK_DATA_CONNECT...
     d                 c                   5
     d  CURL_LOCK_DATA_LAST...
     d                 c                   6
      *
     d curl_lock_access...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURL_LOCK_ACCESS_NONE...
     d                 c                   0
     d  CURL_LOCK_ACCESS_SHARED...
     d                 c                   1
     d  CURL_LOCK_ACCESS_SINGLE...
     d                 c                   2
      *
     d curl_TimeCond   s             10i 0 based(######ptr######)               Enum
     d  CURL_TIMECOND_NONE...
     d                 c                   0
     d  CURL_TIMECOND_IFMODSINCE...
     d                 c                   1
     d  CURL_TIMECOND_LASTMOD...
     d                 c                   2
     d  CURL_TIMECOND_LAST...
     d                 c                   3
      *
     d CURLSHcode      s             10i 0 based(######ptr######)               Enum
     d  CURLSHE_OK     c                   0
     d  CURLSHE_BAD_OPTION...
     d                 c                   1
     d  CURLSHE_IN_USE...
     d                 c                   2
     d  CURLSHE_INVALID...
     d                 c                   3
     d  CURLSHE_NOMEM...
     d                 c                   4
      *
     d CURLSHoption...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURLSHOPT_SHARE...
     d                 c                   1
     d  CURLSHOPT_UNSHARE...
     d                 c                   2
     d  CURLSHOPT_LOCKFUNC...
     d                 c                   3
     d  CURLSHOPT_UNLOCKFUNC...
     d                 c                   4
     d  CURLSHOPT_USERDATA...
     d                 c                   5
      *
     d CURLversion     s             10i 0 based(######ptr######)               Enum
     d  CURLVERSION_FIRST...
     d                 c                   0
     d  CURLVERSION_SECOND...
     d                 c                   1
     d  CURLVERSION_THIRD...
     d                 c                   2
     d  CURLVERSION_FOURTH...
     d                 c                   3
     d  CURLVERSION_NOW...
     d                 c                   3                                    CURLVERSION_FOURTH
      *
     d curlsocktype    s             10i 0 based(######ptr######)               Enum
     d  CURLSOCKTYPE_IPCXN...
     d                 c                   0
      *
     d CURLMcode       s             10i 0 based(######ptr######)               Enum
     d  CURLM_CALL_MULTI_PERFORM...
     d                 c                   -1
     d  CURLM_CALL_MULTI_SOCKET...
     d                 c                   -1
     d  CURLM_OK       c                   0
     d  CURLM_BAD_HANDLE...
     d                 c                   1
     d  CURLM_BAD_EASY_HANDLE...
     d                 c                   2
     d  CURLM_OUT_OF_MEMORY...
     d                 c                   3
     d  CURLM_INTERNAL_ERROR...
     d                 c                   4
     d  CURLM_BAD_SOCKET...
     d                 c                   5
     d  CURLM_UNKNOWN_OPTION...
     d                 c                   6
     d  CURLM_LAST     c                   7
      *
     d CURLMSG         s             10i 0 based(######ptr######)               Enum
     d  CURLMSG_NONE   c                   0
     d  CURLMSG_DONE   c                   1
      *
     d CURLMoption     s             10i 0 based(######ptr######)               Enum
     d  CURLMOPT_SOCKETFUNCTION...
     d                 c                   20001
     d  CURLMOPT_SOCKETDATA...
     d                 c                   10002
     d  CURLMOPT_PIPELINING...
     d                 c                   00003
     d  CURLMOPT_TIMERFUNCTION...
     d                 c                   20004
     d  CURLMOPT_TIMERDATA...
     d                 c                   10005
     d  CURLMOPT_MAXCONNECTS...
     d                 c                   00006
      *
      *  Renaming CURLMsg to CURL_Msg to avoid case-insensivity name clash.
      *
     d CURL_Msg        ds                  based(######ptr######)
     d                                     qualified
     d  msg                                like(CURLMSG)
     d  easy_handle                    *                                        CURL *
     d  data                           *
     d   whatever                      *   overlay(data)                        void *
     d   result                            overlay(data) like(CURLcode)
      *
     d curl_http_post...
     d                 ds                  based(######ptr######)
     d                                     qualified
     d  next                           *                                        curl_httppost *
     d  name                           *                                        char *
     d  namelength                   10i 0                                      long
     d  contents                       *                                        char *
     d  contentslength...
     d                               10i 0                                      long
     d  buffer                         *                                        char *
     d  bufferlength...
     d                               10i 0                                      long
     d  contenttype                    *                                        char *
     d  contentheader...
     d                                 *                                        curl_slist *
     d  more                           *                                        curl_httppost *
     d  flags                        10i 0                                      long
     d  showfilename                   *                                        char *
     d  userp                          *                                        void *
      *
     d curl_sockaddr   ds                  based(######ptr######)
     d                                     qualified
     d  family                       10i 0
     d  socktype                     10i 0
     d  protocol                     10i 0
     d  addrlen                      10u 0
     d  addr                         16                                         struct sockaddr
      *
     d curl_khkey      ds                  based(######ptr######)
     d                                     qualified
     d  key                            *                                        const char *
     d  len                          10u 0
     d  keytype                      10i 0
      *
     d CURLKHTYPE_UNKNOWN...
     d                 c                   0
     d CURLKHTYPE_RSA1...
     d                 c                   1
     d CURLKHTYPE_RSA...
     d                 c                   2
     d CURLKHTYPE_DSS...
     d                 c                   3
      *
     d curl_forms      ds                  based(######ptr######)
     d                                     qualified
     d  option                             like(CURLformoption)
     d  value                          *                                        const char *
     d   value_ptr                     *   overlay(value)
     d   value_procptr...
     d                                 *   overlay(value) procptr
      *
     d curl_slist      ds                  based(######ptr######)
     d                                     qualified
     d  data                           *                                        char *
     d  next                           *                                        struct curl_slist *
      *
     d curl_version_info_data...
     d                 ds                  based(######ptr######)
     d                                     qualified
     d  age                                like(CURLversion)
     d  version                        *                                        const char *
     d  version_num                  10u 0
     d  host                           *                                        const char *
     d  features                     10i 0
     d  ssl_version                    *                                        const char *
     d  ssl_version_num...
     d                               10i 0                                      long
     d  libz_version                   *                                        const char *
     d  protocols                      *                                        const char * const *
     d  ares                           *                                        const char *
     d  ares_num                     10i 0
     d  libidn                         *                                        const char *
     d  iconv_ver_num...
     d                               10i 0
     d  libssh_version...
     d                                 *                                        const char *
      *
     d curl_certinfo   ds                  based(######ptr######)
     d                                     qualified
     d  num_of_certs                 10i 0
     d  certinfo                       *                                        struct curl_slist **
      *
     d curl_formget_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_malloc_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_free_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_realloc_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_strdup_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_calloc_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_lock_function...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_unlock_function...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_progress_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_read_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_write_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_seek_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_sockopt_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_ioctl_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_debug_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_conv_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_ssl_ctx_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_socket_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_opensocket_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_sshkeycallback...
     d                 s               *   based(######ptr######) procptr
      *
      **************************************************************************
      *                              Prototypes
      **************************************************************************
      *
      *  This procedure as a variable parameter list.
      *  This prototype allows use of an option array, or a single "object"
      *    option. Other argument lists may be implemented by alias procedure
      *    prototype definitions.
      *
     d curl_formadd    pr                  extproc('curl_formadd')
     d                                     like(CURLFORMcode)
     d  httppost                       *                                        curl_httppost *
     d  lastpost                       *                                        curl_httppost *
     d  option1                            value like(CURLFORMoption)           CURLFORM_ARRAY
     d                                     options(*nopass)
     d  object1                        *   value options(*string: *nopass)
     d  option2                            value like(CURLFORMoption)           CURLFORM_END
     d                                     options(*nopass)
      *
      *
     d curl_strequal   pr            10i 0 extproc('curl_strequal')
     d  s1                             *   value options(*string)
     d  s2                             *   value options(*string)
      *
     d curl_strnequal  pr            10i 0 extproc('curl_strnequal')
     d  s1                             *   value options(*string)
     d  s2                             *   value options(*string)
     d  n                            10u 0 value
      *
     d curl_formget    pr            10i 0 extproc('curl_formget')
     d  form                           *   value                                curl_httppost *
     d  arg                            *   value
     d  append                             value like(curl_formget_callback)
      *
     d curl_formfree   pr                  extproc('curl_formfree')
     d  form                           *   value                                curl_httppost *
      *
     d curl_getenv     pr              *   extproc('curl_getenv')
     d  variable                       *   value options(*string)
      *
     d curl_version    pr              *   extproc('curl_version')
      *
     d curl_easy_escape...
     d                 pr              *   extproc('curl_easy_escape')          char *
     d  handle                         *   value                                CURL *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
      *
     d curl_escape     pr              *   extproc('curl_escape')               char *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
      *
     d curl_easy_unescape...
     d                 pr              *   extproc('curl_easy_unescape')        char *
     d  handle                         *   value                                CURL *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
     d  outlength                    10i 0 options(*omit)
      *
     d curl_unescape   pr              *   extproc('curl_unescape')             char *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
      *
     d curl_free       pr                  extproc('curl_free')
     d  p                              *   value
      *
     d curl_global_init...
     d                 pr                  extproc('curl_global_init')
     d                                     like(CURLcode)
     d  flags                        10i 0 value
      *
     d curl_global_init_mem...
     d                 pr                  extproc('curl_global_init_mem')
     d                                     like(CURLcode)
     d  m                                  value like(curl_malloc_callback)
     d  f                                  value like(curl_free_callback)
     d  r                                  value like(curl_realloc_callback)
     d  s                                  value like(curl_strdup_callback)
     d  c                                  value like(curl_calloc_callback)
      *
     d curl_global_cleanup...
     d                 pr                  extproc('curl_global_cleanup')
      *
     d curl_slist_append...
     d                 pr              *   extproc('curl_slist_append')         struct curl_slist *
     d  list                           *   value                                struct curl_slist *
     d  data                           *   value options(*string)               const char *
      *
     d curl_slist_free_all...
     d                 pr                  extproc('curl_slist_free_all')
     d  list                           *   value                                struct curl_slist *
      *
     d curl_getdate    pr            10i 0 extproc('curl_getdate')              time_t
     d  p                              *   value options(*string)               const char *
     d  unused                       10i 0 const options(*omit)                 time_t
      *
     d curl_share_init...
     d                 pr              *   extproc('curl_share_init')           CURLSH * (= void *)
      *
      *  Variable argument type procedure.
      *  Multiply prototyped to support all possible types.
      *
     d curl_share_setopt_int...
     d                 pr                  extproc('curl_share_setopt')
     d                                     like(CURLSHcode)
     d  share                          *   value                                CURLSH * (= void *)
     d  option                             value like(CURLSHoption)
     d  intarg                       10i 0 value options(*nopass)
      *
     d curl_share_setopt_ptr...
     d                 pr                  extproc('curl_share_setopt')
     d                                     like(CURLSHcode)
     d  share                          *   value                                CURLSH * (= void *)
     d  option                             value like(CURLSHoption)
     d  ptrarg                         *   value options(*nopass)
      *
     d curl_share_setopt_proc...
     d                 pr                  extproc('curl_share_setopt')
     d                                     like(CURLSHcode)
     d  share                          *   value                                CURLSH * (= void *)
     d  option                             value like(CURLSHoption)
     d  procarg                        *   value procptr options(*nopass)
      *
     d curl_share_cleanup...
     d                 pr                  extproc('curl_share_cleanup')
     d                                     like(CURLSHcode)
     d  share                          *   value                                CURLSH * (= void *)
      *
     d curl_version_info...
     d                 pr              *   extproc('curl_version_info')         c_i_version_data *
     d  version                            value like(CURLversion)
      *
     d curl_easy_strerror...
     d                 pr              *   extproc('curl_easy_strerror')        const char *
     d  code                               value like(CURLcode)
      *
     d curl_share_strerror...
     d                 pr              *   extproc('curl_share_strerror')       const char *
     d  code                               value like(CURLSHcode)
      *
     d curl_easy_init  pr              *   extproc('curl_easy_init')            CURL *
      *
      *  Multiple prototypes for vararg procedure curl_easy_setopt.
      *
     d curl_easy_setopt_long...
     d                 pr                  extproc('curl_easy_setopt')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  option                             value like(CURLoption)
     d  longarg                      10i 0 value options(*nopass)
      *
     d curl_easy_setopt_object...
     d                 pr                  extproc('curl_easy_setopt')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  option                             value like(CURLoption)
     d  objectarg                      *   value options(*string: *nopass)
      *
     d curl_easy_setopt_function...
     d                 pr                  extproc('curl_easy_setopt')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  option                             value like(CURLoption)
     d  functionarg                    *   value procptr options(*nopass)
      *
     d curl_easy_setopt_offset...
     d                 pr                  extproc('curl_easy_setopt')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  option                             value like(CURLoption)
     d  offsetarg                          value like(curl_off_t)
     d                                     options(*nopass)
      *
      *
     d curl_easy_perform...
     d                 pr                  extproc('curl_easy_perform')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
      *
     d curl_easy_cleanup...
     d                 pr                  extproc('curl_easy_cleanup')
     d  curl                           *   value                                CURL *
      *
      *  Multiple prototypes for vararg procedure curl_easy_getinfo.
      *
     d curl_easy_getinfo_string...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  stringarg                      *   options(*nopass)                     char *
      *
     d curl_easy_getinfo_long...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  longarg                      10i 0 options(*nopass)
      *
     d curl_easy_getinfo_double...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  doublearg                     8f   options(*nopass)
      *
     d curl_easy_getinfo_slist...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  slistarg                       *   options(*nopass)                     struct curl_slist *
      *
      *
     d curl_easy_duphandle...
     d                 pr              *   extproc('curl_easy_duphandle')       CURL *
     d  curl                           *   value                                CURL *
      *
     d curl_easy_reset...
     d                 pr                  extproc('curl_easy_reset')
     d  curl                           *   value                                CURL *
      *
     d curl_easy_recv...
     d                 pr                  extproc('curl_easy_recv')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  buffer                         *   value                                void *
     d  buflen                       10u 0 value                                size_t
     d  n                            10u 0                                      size_t *
      *
     d curl_easy_send...
     d                 pr                  extproc('curl_easy_send')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  buffer                         *   value                                const void *
     d  buflen                       10u 0 value                                size_t
     d  n                            10u 0                                      size_t *
      *
     d curl_easy_pause...
     d                 pr                  extproc('curl_easy_pause')
     d  curl                           *   value                                CURL *
     d  bitmask                      10i 0 value
      *
     d curl_multi_init...
     d                 pr              *   extproc('curl_multi_init')           CURLM *
      *
     d curl_multi_add_handle...
     d                 pr                  extproc('curl_multi_add_handle')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  curl_handle                    *   value                                CURL *
      *
     d curl_multi_remove_handle...
     d                 pr                  extproc('curl_multi_remove_handle')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  curl_handle                    *   value                                CURL *
      *
     d curl_multi_fdset...
     d                 pr                  extproc('curl_multi_fdset')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  read_fd_set               65535    options(*varsize)                    fd_set
     d  write_fd_set              65535    options(*varsize)                    fd_set
     d  exc_fd_set                65535    options(*varsize)                    fd_set
     d  max_fd                       10i 0
      *
     d curl_multi_perform...
     d                 pr                  extproc('curl_multi_perform')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  running_handles...
     d                               10i 0
      *
     d curl_multi_cleanup...
     d                 pr                  extproc('curl_multi_cleanup')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
      *
     d curl_multi_info_read...
     d                 pr              *   extproc('curl_multi_info_read')      CURL_Msg *
     d  multi_handle                   *   value                                CURLM *
     d  msgs_in_queue                10i 0
      *
     d curl_multi_strerror...
     d                 pr              *   extproc('curl_multi_strerror')       char *
     d  code                               value like(CURLMcode)
      *
     d curl_multi_socket...
     d                 pr                  extproc('curl_multi_socket')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  s                                  value like(curl_socket_t)
     d  running_handles...
     d                               10i 0
      *
     d curl_multi_socket_action...
     d                 pr                  extproc('curl_multi_socket_action')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  s                                  value like(curl_socket_t)
     d  ev_bitmask                   10i 0 value
     d  running_handles...
     d                               10i 0
      *
     d curl_multi_socket_all...
     d                 pr                  extproc('curl_multi_socket_all')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  running_handles...
     d                               10i 0
      *
     d curl_multi_timeout...
     d                 pr                  extproc('curl_multi_timeout')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  milliseconds                 10i 0
      *
      *  Multiple prototypes for vararg procedure curl_multi_setopt.
      *
     d curl_multi_setopt_long...
     d                 pr                  extproc('curl_multi_setopt')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  option                             value like(CURLMoption)
     d  longarg                      10i 0 value options(*nopass)
      *
     d curl_multi_setopt_object...
     d                 pr                  extproc('curl_multi_setopt')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  option                             value like(CURLMoption)
     d  objectarg                      *   value options(*string: *nopass)
      *
     d curl_multi_setopt_function...
     d                 pr                  extproc('curl_multi_setopt')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  option                             value like(CURLMoption)
     d  functionarg                    *   value procptr options(*nopass)
      *
     d curl_multi_setopt_offset...
     d                 pr                  extproc('curl_multi_setopt')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  option                             value like(CURLMoption)
     d  offsetarg                          value like(curl_off_t)
     d                                     options(*nopass)
      *
      *
     d curl_multi_assign...
     d                 pr                  extproc('curl_multi_assign')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  sockfd                             value like(curl_socket_t)
     d  sockp                          *   value                                void *
      *
      **************************************************************************
      *                CCSID wrapper procedure prototypes
      **************************************************************************
      *
     d curl_version_ccsid...
     d                 pr              *   extproc('curl_version_ccsid')
     d  ccsid                        10u 0 value
      *
     d curl_easy_escape_ccsid...
     d                 pr              *   extproc('curl_easy_escape_ccsid')    char *
     d  handle                         *   value                                CURL *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
     d  ccsid                        10u 0 value
      *
     d curl_easy_unescape_ccsid...
     d                 pr              *   extproc('curl_easy_unescape_ccsid')  char *
     d  handle                         *   value                                CURL *
     d  string                         *   value options(*string)
     d  length                       10i 0 value
     d  outlength                    10i 0 options(*omit)
     d  ccsid                        10u 0 value
      *
     d curl_slist_append_ccsid...
     d                 pr              *   extproc('curl_slist_append_ccsid')   struct curl_slist *
     d  list                           *   value                                struct curl_slist *
     d  data                           *   value options(*string)               const char *
     d  ccsid                        10u 0 value
      *
     d curl_getdate_ccsid...
     d                 pr            10i 0 extproc('curl_getdate_ccsid')        time_t
     d  p                              *   value options(*string)               const char *
     d  unused                       10i 0 const options(*omit)                 time_t
     d  ccsid                        10u 0 value
      *
     d curl_version_info_ccsid...
     d                 pr              *   extproc('curl_version_info_ccsid')   c_i_version_data *
     d  version                            value like(CURLversion)
     d  ccsid                        10u 0 value
      *
     d curl_easy_strerror_ccsid...
     d                 pr              *   extproc('curl_easy_strerror_ccsid')  const char *
     d  code                               value like(CURLcode)
     d  ccsid                        10u 0 value
      *
     d curl_share_strerror_ccsid...
     d                 pr              *   extproc('curl_share_strerror_ccsid') const char *
     d  code                               value like(CURLSHcode)
     d  ccsid                        10u 0 value
      *
     d curl_multi_strerror_ccsid...
     d                 pr              *   extproc('curl_multi_strerror_ccsid') char *
     d  code                               value like(CURLMcode)
     d  ccsid                        10u 0 value
      *
     d curl_easy_getinfo_ccsid...
     d                 pr                  extproc('curl_easy_getinfo_ccsid')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  stringarg                      *   options(*nopass)                     char *
     d  ccsid                        10u 0 value options(*nopass)
      *
     d curl_formadd_ccsid...
     d                 pr                  extproc('curl_formadd_ccsid')
     d                                     like(CURLFORMcode)
     d  httppost                       *                                        curl_httppost *
     d  lastpost                       *                                        curl_httppost *
     d  option1                            value like(CURLFORMoption)           CURLFORM_ARRAY
     d                                     options(*nopass)
     d  object1                        *   value options(*string: *nopass)
     d  option2                            value like(CURLFORMoption)           CURLFORM_END
     d                                     options(*nopass)
      *
     d curl_formget_ccsid...
     d                 pr            10i 0 extproc('curl_formget_ccsid')
     d  form                           *   value                                curl_httppost *
     d  arg                            *   value
     d  append                             value like(curl_formget_callback)
     d  ccsid                        10u 0 value
      *
     d curl_form_long_value...
     d                 pr              *   extproc('curl_form_long_value')
     d  value                        10i 0 value                                curl_httppost *
      *
     d curl_easy_setopt_ccsid...
     d                 pr                  extproc('curl_easy_setopt_ccsid')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  option                             value like(CURLoption)
     d  objectarg                      *   value options(*string: *nopass)
     d  ccsid                        10u 0 value options(*nopass)
      *
      /endif