      **************************************************************************
      *                                  _   _ ____  _
      *  Project                     ___| | | |  _ \| |
      *                             / __| | | | |_) | |
      *                            | (__| |_| |  _ <| |___
      *                             \___|\___/|_| \_\_____|
      *
      * Copyright (C) 1998 - 2020, 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 https://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.
      *
      *
      **************************************************************************
      *
      /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
      *
      /if not defined(CURL_MAX_WRITE_SIZE)
      /define CURL_MAX_WRITE_SIZE
     d CURL_MAX_WRITE_SIZE...
     d                 c                   16384
      /endif
      *
      /if not defined(CURL_MAX_HTTP_HEADER)
      /define CURL_MAX_HTTP_HEADER
     d CURL_MAX_HTTP_HEADER...
     d                 c                   102400
      /endif
      *
     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_PTR    c                   X'00400000'
     d CURLINFO_SOCKET...
     d                 c                   X'00500000'
     d CURLINFO_OFF_T...
     d                 c                   X'00600000'
     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_GLOBAL_ACK_EINTR...
     d                 c                   X'00000004'
      *
     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'                          Deprecated
     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 CURL_VERSION_TLSAUTH_SRP...
     d                 c                   X'00004000'
     d CURL_VERSION_NTLM_WB...
     d                 c                   X'00008000'
     d CURL_VERSION_HTTP2...
     d                 c                   X'00010000'
     d CURL_VERSION_GSSAPI...
     d                 c                   X'00020000'
     d CURL_VERSION_KERBEROS5...
     d                 c                   X'00040000'
     d CURL_VERSION_UNIX_SOCKETS...
     d                 c                   X'00080000'
     d CURL_VERSION_PSL...
     d                 c                   X'00100000'
     d CURL_VERSION_HTTPS_PROXY...
     d                 c                   X'00200000'
     d CURL_VERSION_MULTI_SSL...
     d                 c                   X'00400000'
     d CURL_VERSION_BROTLI...
     d                 c                   X'00800000'
     d CURL_VERSION_ALTSVC...
     d                 c                   X'01000000'
     d CURL_VERSION_HTTP3...
     d                 c                   X'02000000'
      *
     d CURL_HTTPPOST_FILENAME...
     d                 c                   X'00000001'
     d CURL_HTTPPOST_READFILE...
     d                 c                   X'00000002'
     d CURL_HTTPPOST_PTRNAME...
     d                 c                   X'00000004'
     d CURL_HTTPPOST_PTRCONTENTS...
     d                 c                   X'00000008'
     d CURL_HTTPPOST_BUFFER...
     d                 c                   X'00000010'
     d CURL_HTTPPOST_PTRBUFFER...
     d                 c                   X'00000020'
     d CURL_HTTPPOST_CALLBACK...
     d                 c                   X'00000040'
     d CURL_HTTPPOST_LARGE...
     d                 c                   X'00000080'
      *
     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 CURL_TRAILERFUNC_OK...
     d                 c                   0
     d CURL_TRAILERFUNC_ABORT...
     d                 c                   1
      *
     d CURLAUTH_NONE   c                   X'00000000'
     d CURLAUTH_BASIC  c                   X'00000001'
     d CURLAUTH_DIGEST...
     d                 c                   X'00000002'
     d CURLAUTH_NEGOTIATE...
     d                 c                   X'00000004'
     d CURLAUTH_NTLM   c                   X'00000008'
     d CURLAUTH_DIGEST_IE...
     d                 c                   X'00000010'
     d CURLAUTH_NTLM_WB...
     d                 c                   X'00000020'
     d CURLAUTH_BEARER...
     d                 c                   X'00000040'
     d CURLAUTH_ONLY...
     d                 c                   X'80000000'
     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_AGENT...
     d                 c                   X'00000010'
     d CURLSSH_AUTH_DEFAULT...
     d                 c                   X'7FFFFFFF'                          CURLSSH_AUTH_ANY
      *
     d CURLGSSAPI_DELEGATION_NONE...
     d                 c                   0
     d CURLGSSAPI_DELEGATION_POLICY_FLAG...
     d                 c                   X'00000001'
     d CURLGSSAPI_DELEGATION_FLAG...
     d                 c                   X'00000002'
      *
     d CURL_ERROR_SIZE...
     d                 c                   256
      *
     d CURLOPTTYPE_LONG...
     d                 c                   0
     d CURLOPTTYPE_OBJECTPOINT...
     d                 c                   10000
     d CURLOPTTYPE_STRINGPOINT...
     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_HTTP_VERSION_2_0...
     d                 c                   3
     d CURL_HTTP_VERSION_2...
     d                 c                   3
     d CURL_HTTP_VERSION_2TLS...
     d                 c                   4
     d CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE...
     d                 c                   5
      *
     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_SSLVERSION_TLSv1_0...
     d                 c                   4
     d CURL_SSLVERSION_TLSv1_1...
     d                 c                   5
     d CURL_SSLVERSION_TLSv1_2...
     d                 c                   6
     d CURL_SSLVERSION_TLSv1_3...
     d                 c                   7
     d CURL_SSLVERSION_MAX_DEFAULT...
     d                 c                   X'00010000'
     d CURL_SSLVERSION_MAX_TLSv1_0...
     d                 c                   X'00040000'
     d CURL_SSLVERSION_MAX_TLSv1_1...
     d                 c                   X'00050000'
     d CURL_SSLVERSION_MAX_TLSv1_2...
     d                 c                   X'00060000'
     d CURL_SSLVERSION_MAX_TLSv1_3...
     d                 c                   X'00070000'
      *
     d CURL_TLSAUTH_NONE...
     d                 c                   0
     d CURL_TLSAUTH_SRP...
     d                 c                   1
      *
     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_303...
     d                 c                   4
     d CURL_REDIR_POST_ALL...
     d                 c                   7
      *
     d CURL_ZERO_TERMINATED...
     d                 c                   -1
      *
     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 CURL_PUSH_OK    c                   0
     d CURL_PUSH_DENY  c                   1
      *
     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'
      *
     d CURLINFOFLAG_KNOWN_FILENAME...
     d                 c                   X'00000001'
     d CURLINFOFLAG_KNOWN_FILETYPE...
     d                 c                   X'00000002'
     d CURLINFOFLAG_KNOWN_TIME...
     d                 c                   X'00000004'
     d CURLINFOFLAG_KNOWN_PERM...
     d                 c                   X'00000008'
     d CURLINFOFLAG_KNOWN_UID...
     d                 c                   X'00000010'
     d CURLINFOFLAG_KNOWN_GID...
     d                 c                   X'00000020'
     d CURLINFOFLAG_KNOWN_SIZE...
     d                 c                   X'00000040'
     d CURLINFOFLAG_KNOWN_HLINKCOUNT...
     d                 c                   X'00000080'
      *
     d CURL_CHUNK_BGN_FUNC_OK...
     d                 c                   0
     d CURL_CHUNK_BGN_FUNC_FAIL...
     d                 c                   1
     d CURL_CHUNK_BGN_FUNC_SKIP...
     d                 c                   2
      *
     d CURL_CHUNK_END_FUNC_OK...
     d                 c                   0
     d CURL_CHUNK_END_FUNC_FAIL...
     d                 c                   1
      *
     d CURL_FNMATCHFUNC_MATCH...
     d                 c                   0
     d CURL_FNMATCHFUNC_NOMATCH...
     d                 c                   1
     d CURL_FNMATCHFUNC_FAIL...
     d                 c                   2
      *
     d CURL_WAIT_POLLIN...
     d                 c                   X'0001'
     d CURL_WAIT_POLLPRI...
     d                 c                   X'0002'
     d CURL_WAIT_POLLOUT...
     d                 c                   X'0004'
      *
     d CURLU_DEFAULT_PORT...
     d                 c                   X'00000001'
     d CURLU_NO_DEFAULT_PORT...
     d                 c                   X'00000002'
     d CURLU_DEFAULT_SCHEME...
     d                 c                   X'00000004'
     d CURLU_NON_SUPPORT_SCHEME...
     d                 c                   X'00000008'
     d CURLU_PATH_AS_IS...
     d                 c                   X'00000010'
     d CURLU_DISALLOW_USER...
     d                 c                   X'00000020'
     d CURLU_URLDECODE...
     d                 c                   X'00000040'
     d CURLU_URLENCODE...
     d                 c                   X'00000080'
     d CURLU_APPENDQUERY...
     d                 c                   X'00000100'
     d CURLU_GUESS_SCHEME...
     d                 c                   X'00000200'
      *
      **************************************************************************
      *                                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_NOT_BUILT_IN...
     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_WEIRD_SERVER_REPLY...
     d                 c                   8
     d  CURLE_FTP_WEIRD_SERVER_REPLY...
     d                 c                   8
     d  CURLE_REMOTE_ACCESS_DENIED...
     d                 c                   9
     d  CURLE_FTP_ACCEPT_FAILED...
     d                 c                   10
     d  CURLE_FTP_WEIRD_PASS_REPLY...
     d                 c                   11
     d  CURLE_FTP_ACCEPT_TIMEOUT...
     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_HTTP2    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_OPTION...
     d                 c                   48
     d  CURLE_TELNET_OPTION_SYNTAX...
     d                 c                   49
     d  CURLE_OBSOLETE50...
     d                 c                   50
     d  CURLE_OBSOLETE51...
     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_PEER_FAILED_VERIFICATION...
     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  CURLE_FTP_PRET_FAILED...
     d                 c                   84
     d  CURLE_RTSP_CSEQ_ERROR...
     d                 c                   85
     d  CURLE_RTSP_SESSION_ERROR...
     d                 c                   86
     d  CURLE_FTP_BAD_FILE_LIST...
     d                 c                   87
     d  CURLE_CHUNK_FAILED...
     d                 c                   88
     d  CURLE_NO_CONNECTION_AVAILABLE...
     d                 c                   89
     d  CURLE_SSL_PINNEDPUBKEYNOTMATCH...
     d                 c                   90
     d  CURLE_SSL_INVALIDCERTSTATUS...
     d                 c                   91
     d  CURLE_HTTP2_STREAM...
     d                 c                   92
     d  CURLE_RECURSIVE_API_CALL...
     d                 c                   93
     d  CURLE_AUTH_ERROR...
     d                 c                   94
     d  CURLE_HTTP3...
     d                 c                   95
     d  CURLE_QUIC_CONNECT_ERROR...
     d                 c                   96
      *
      /if not defined(CURL_NO_OLDIES)
     d  CURLE_URL_MALFORMAT_USER...
     d                 c                   4
     d  CURLE_FTP_ACCESS_DENIED...
     d                 c                   9
     d  CURLE_FTP_USER_PASSWORD_INCORRECT...
     d                 c                   10
     d  CURLE_FTP_WEIRD_USER_REPLY...
     d                 c                   12
     d  CURLE_FTP_CANT_RECONNECT...
     d                 c                   16
     d  CURLE_FTP_COULDNT_SET_BINARY...
     d                 c                   17
     d  CURLE_FTP_PARTIAL_FILE...
     d                 c                   18
     d  CURLE_FTP_WRITE_ERROR...
     d                 c                   20
     d  CURLE_FTP_QUOTE_ERROR...
     d                 c                   21
     d  CURLE_HTTP_NOT_FOUND...
     d                 c                   22
     d  CURLE_MALFORMAT_USER...
     d                 c                   24
     d  CURLE_FTP_COULDNT_STOR_FILE...
     d                 c                   25
     d  CURLE_OPERATION_TIMEOUTED...
     d                 c                   28
     d  CURLE_FTP_COULDNT_SET_ASCII...
     d                 c                   29
     d  CURLE_FTP_COULDNT_GET_SIZE...
     d                 c                   32
     d  CURLE_HTTP_RANGE_ERROR...
     d                 c                   33
     d  CURLE_FTP_BAD_DOWNLOAD_RESUME...
     d                 c                   36
     d  CURLE_LIBRARY_NOT_FOUND...
     d                 c                   40
     d  CURLE_BAD_CALLING_ORDER...
     d                 c                   44
     d  CURLE_HTTP_PORT_FAILED...
     d                 c                   45
     d  CURLE_BAD_PASSWORD_ENTERED...
     d                 c                   46
     d  CURLE_UNKNOWN_TELNET_OPTION...
     d                 c                   48
     d  CURLE_OBSOLETE...
     d                 c                   50
     d  CURLE_SSL_PEER_CERTIFICATE...
     d                 c                   51
     d  CURLE_SHARE_IN_USE...
     d                 c                   57
     d  CURLE_SSL_CACERT...
     d                 c                   60
     d  CURLE_FTP_SSL_FAILED...
     d                 c                   64
     d  CURLE_TFTP_DISKFULL...
     d                 c                   70
     d  CURLE_TFTP_EXISTS...
     d                 c                   73
     d  CURLE_ALREADY_COMPLETE...
     d                 c                   99999
      /endif
      *
     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 curlfiletype    s             10i 0 based(######ptr######)               Enum
     d  CURLFILETYPE_FILE...
     d                 c                   0
     d  CURLFILETYPE_DIRECTORY...
     d                 c                   1
     d  CURLFILETYPE_SYMLINK...
     d                 c                   2
     d  CURLFILETYPE_DEVICE_BLOCK...
     d                 c                   3
     d  CURLFILETYPE_DEVICE_CHAR...
     d                 c                   4
     d  CURLFILETYPE_NAMEDPIPE...
     d                 c                   5
     d  CURLFILETYPE_SOCKET...
     d                 c                   6
     d  CURLFILETYPE_DOOR...
     d                 c                   7
      *
     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_HTTPS...
     d                 c                   2
     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 CURLSSLOPT_ALLOW_BEAST...
     d                 c                   X'0001'
     d CURLSSLOPT_NO_REVOKE...
     d                 c                   X'0002'
     d CURLSSLOPT_NO_PARTIALCHAIN...
     d                 c                   X'0004'
     d CURLSSLOPT_REVOKE_BEST_EFFORT...
     d                 c                   X'0008'
      *
     d CURL_HET_DEFAULT...
     d                 c                   200
      *
     d CURL_UPKEEP_INTERVAL_DEFAULT...
     d                 c                   60000
      *
      /if not defined(CURL_NO_OLDIES)
     d curl_ftpssl     s                   like(curl_usessl)
     d                                     based(######ptr######)
     d  CURLFTPSSL_NONE...
     d                 c                   0
     d  CURLFTPSSL_TRY...
     d                 c                   1
     d  CURLFTPSSL_CONTROL...
     d                 c                   2
     d  CURLFTPSSL_ALL...
     d                 c                   3
      /endif
      *
     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  CURLHEADER_UNIFIED...
     d                 c                   X'00000000'
     d  CURLHEADER_SEPARATE...
     d                 c                   X'00000001'
      *
     d  CURLALTSVC_IMMEDIATELY...
     d                 c                   X'00000001'
     d  CURLALTSVC_ALTUSED...
     d                 c                   X'00000002'
     d  CURLALTSVC_READONLYFILE...
     d                 c                   X'00000004'
     d  CURLALTSVC_H1...
     d                 c                   X'00000008'
     d  CURLALTSVC_H2...
     d                 c                   X'00000010'
     d  CURLALTSVC_H3...
     d                 c                   X'00000020'
      *
     d  CURLPROTO_HTTP...
     d                 c                   X'00000001'
     d  CURLPROTO_HTTPS...
     d                 c                   X'00000002'
     d  CURLPROTO_FTP...
     d                 c                   X'00000004'
     d  CURLPROTO_FTPS...
     d                 c                   X'00000008'
     d  CURLPROTO_SCP...
     d                 c                   X'00000010'
     d  CURLPROTO_SFTP...
     d                 c                   X'00000020'
     d  CURLPROTO_TELNET...
     d                 c                   X'00000040'
     d  CURLPROTO_LDAP...
     d                 c                   X'00000080'
     d  CURLPROTO_LDAPS...
     d                 c                   X'00000100'
     d  CURLPROTO_DICT...
     d                 c                   X'00000200'
     d  CURLPROTO_FILE...
     d                 c                   X'00000400'
     d  CURLPROTO_TFTP...
     d                 c                   X'00000800'
     d  CURLPROTO_IMAP...
     d                 c                   X'00001000'
     d  CURLPROTO_IMAPS...
     d                 c                   X'00002000'
     d  CURLPROTO_POP3...
     d                 c                   X'00004000'
     d  CURLPROTO_POP3S...
     d                 c                   X'00008000'
     d  CURLPROTO_SMTP...
     d                 c                   X'00010000'
     d  CURLPROTO_SMTPS...
     d                 c                   X'00020000'
     d  CURLPROTO_RTSP...
     d                 c                   X'00040000'
     d  CURLPROTO_RTMP...
     d                 c                   X'00080000'
     d  CURLPROTO_RTMPT...
     d                 c                   X'00100000'
     d  CURLPROTO_RTMPTE...
     d                 c                   X'00200000'
     d  CURLPROTO_RTMPE...
     d                 c                   X'00400000'
     d  CURLPROTO_RTMPS...
     d                 c                   X'00800000'
     d  CURLPROTO_RTMPTS...
     d                 c                   X'01000000'
     d  CURLPROTO_GOPHER...
     d                 c                   X'02000000'
     d  CURLPROTO_SMB...
     d                 c                   X'04000000'
     d  CURLPROTO_SMBS...
     d                 c                   X'08000000'
      *
     d CURLoption      s             10i 0 based(######ptr######)               Enum
     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_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_RTSPHEADER...
     d                 c                   10023
     d  CURLOPT_HTTPPOST...
     d                 c                   10024
     d  CURLOPT_SSLCERT...
     d                 c                   10025
     d  CURLOPT_KEYPASSWD...
     d                 c                   10026
     d  CURLOPT_CRLF   c                   00027
     d  CURLOPT_QUOTE  c                   10028
     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_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_XFERINFODATA...
     d                 c                   10057                                PROGRESSDATA alias
     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_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_ACCEPT_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_MAIL_FROM...
     d                 c                   10186
     d  CURLOPT_MAIL_RCPT...
     d                 c                   10187
     d  CURLOPT_FTP_USE_PRET...
     d                 c                   00188
     d  CURLOPT_RTSP_REQUEST...
     d                 c                   00189
     d  CURLOPT_RTSP_SESSION_ID...
     d                 c                   10190
     d  CURLOPT_RTSP_STREAM_URI...
     d                 c                   10191
     d  CURLOPT_RTSP_TRANSPORT...
     d                 c                   10192
     d  CURLOPT_RTSP_CLIENT_CSEQ...
     d                 c                   00193
     d  CURLOPT_RTSP_SERVER_CSEQ...
     d                 c                   00194
     d  CURLOPT_INTERLEAVEDATA...
     d                 c                   10195
     d  CURLOPT_INTERLEAVEFUNCTION...
     d                 c                   20196
     d  CURLOPT_WILDCARDMATCH...
     d                 c                   00197
     d  CURLOPT_CHUNK_BGN_FUNCTION...
     d                 c                   20198
     d  CURLOPT_CHUNK_END_FUNCTION...
     d                 c                   20199
     d  CURLOPT_FNMATCH_FUNCTION...
     d                 c                   20200
     d  CURLOPT_CHUNK_DATA...
     d                 c                   10201
     d  CURLOPT_FNMATCH_DATA...
     d                 c                   10202
     d  CURLOPT_RESOLVE...
     d                 c                   10203
     d  CURLOPT_TLSAUTH_USERNAME...
     d                 c                   10204
     d  CURLOPT_TLSAUTH_PASSWORD...
     d                 c                   10205
     d  CURLOPT_TLSAUTH_TYPE...
     d                 c                   10206
     d  CURLOPT_TRANSFER_ENCODING...
     d                 c                   00207
     d  CURLOPT_CLOSESOCKETFUNCTION...
     d                 c                   20208
     d  CURLOPT_CLOSESOCKETDATA...
     d                 c                   10209
     d  CURLOPT_GSSAPI_DELEGATION...
     d                 c                   00210
     d  CURLOPT_DNS_SERVERS...
     d                 c                   10211
     d  CURLOPT_ACCEPTTIMEOUT_MS...
     d                 c                   00212
     d  CURLOPT_TCP_KEEPALIVE...
     d                 c                   00213
     d  CURLOPT_TCP_KEEPIDLE...
     d                 c                   00214
     d  CURLOPT_TCP_KEEPINTVL...
     d                 c                   00215
     d  CURLOPT_SSL_OPTIONS...
     d                 c                   00216
     d  CURLOPT_MAIL_AUTH...
     d                 c                   10217
     d  CURLOPT_SASL_IR...
     d                 c                   00218
     d  CURLOPT_XFERINFOFUNCTION...
     d                 c                   20219
     d  CURLOPT_XOAUTH2_BEARER...
     d                 c                   10220
     d  CURLOPT_DNS_INTERFACE...
     d                 c                   10221
     d  CURLOPT_DNS_LOCAL_IP4...
     d                 c                   10222
     d  CURLOPT_DNS_LOCAL_IP6...
     d                 c                   10223
     d  CURLOPT_LOGIN_OPTIONS...
     d                 c                   10224
     d  CURLOPT_SSL_ENABLE_NPN...
     d                 c                   00225
     d  CURLOPT_SSL_ENABLE_ALPN...
     d                 c                   00226
     d  CURLOPT_EXPECT_100_TIMEOUT_MS...
     d                 c                   00227
     d  CURLOPT_PROXYHEADER...
     d                 c                   10228
     d  CURLOPT_HEADEROPT...
     d                 c                   00229
     d  CURLOPT_PINNEDPUBLICKEY...
     d                 c                   10230
     d  CURLOPT_UNIX_SOCKET_PATH...
     d                 c                   10231
     d  CURLOPT_SSL_VERIFYSTATUS...
     d                 c                   00232
     d  CURLOPT_SSL_FALSESTART...
     d                 c                   00233
     d  CURLOPT_PATH_AS_IS...
     d                 c                   00234
     d  CURLOPT_PROXY_SERVICE_NAME...
     d                 c                   10235
     d  CURLOPT_SERVICE_NAME...
     d                 c                   10236
     d  CURLOPT_PIPEWAIT...
     d                 c                   00237
     d  CURLOPT_DEFAULT_PROTOCOL...
     d                 c                   10238
     d  CURLOPT_STREAM_WEIGHT...
     d                 c                   00239
     d  CURLOPT_STREAM_DEPENDS...
     d                 c                   10240
     d  CURLOPT_STREAM_DEPENDS_E...
     d                 c                   10241
     d  CURLOPT_TFTP_NO_OPTIONS...
     d                 c                   00242
     d  CURLOPT_CONNECT_TO...
     d                 c                   10243
     d  CURLOPT_TCP_FASTOPEN...
     d                 c                   00244
     d  CURLOPT_KEEP_SENDING_ON_ERROR...
     d                 c                   00245
     d  CURLOPT_PROXY_CAINFO...
     d                 c                   10246
     d  CURLOPT_PROXY_CAPATH...
     d                 c                   10247
     d  CURLOPT_PROXY_SSL_VERIFYPEER...
     d                 c                   00248
     d  CURLOPT_PROXY_SSL_VERIFYHOST...
     d                 c                   00249
     d  CURLOPT_PROXY_SSLVERSION...
     d                 c                   00250
     d  CURLOPT_PROXY_TLSAUTH_USERNAME...
     d                 c                   10251
     d  CURLOPT_PROXY_TLSAUTH_PASSWORD...
     d                 c                   10252
     d  CURLOPT_PROXY_TLSAUTH_TYPE...
     d                 c                   10253
     d  CURLOPT_PROXY_SSLCERT...
     d                 c                   10254
     d  CURLOPT_PROXY_SSLCERTTYPE...
     d                 c                   10255
     d  CURLOPT_PROXY_SSLKEY...
     d                 c                   10256
     d  CURLOPT_PROXY_SSLKEYTYPE...
     d                 c                   10257
     d  CURLOPT_PROXY_KEYPASSWD...
     d                 c                   10258
     d  CURLOPT_PROXY_SSL_CIPHER_LIST...
     d                 c                   10259
     d  CURLOPT_PROXY_CRLFILE...
     d                 c                   10260
     d  CURLOPT_PROXY_SSL_OPTIONS...
     d                 c                   00261
     d  CURLOPT_PRE_PROXY...
     d                 c                   10262
     d  CURLOPT_PROXY_PINNEDPUBLICKEY...
     d                 c                   10263
     d  CURLOPT_ABSTRACT_UNIX_SOCKET...
     d                 c                   10264
     d  CURLOPT_SUPPRESS_CONNECT_HEADERS...
     d                 c                   00265
     d  CURLOPT_REQUEST_TARGET...
     d                 c                   10266
     d  CURLOPT_SOCKS5_AUTH...
     d                 c                   00267
     d  CURLOPT_SSH_COMPRESSION...
     d                 c                   00268
     d  CURLOPT_MIMEPOST...
     d                 c                   10269
     d  CURLOPT_TIMEVALUE_LARGE...
     d                 c                   30270
     d  CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS...
     d                 c                   00271
     d  CURLOPT_RESOLVER_START_FUNCTION...
     d                 c                   20272
     d  CURLOPT_RESOLVER_START_DATA...
     d                 c                   10273
     d  CURLOPT_HAPROXYPROTOCOL...
     d                 c                   00274
     d  CURLOPT_DNS_SHUFFLE_ADDRESSES...
     d                 c                   00275
     d  CURLOPT_TLS13_CIPHERS...
     d                 c                   10276
     d  CURLOPT_PROXY_TLS13_CIPHERS...
     d                 c                   10277
     d  CURLOPT_DISALLOW_USERNAME_IN_URL...
     d                 c                   00278
     d  CURLOPT_DOH_URL...
     d                 c                   10279
     d  CURLOPT_UPLOAD_BUFFERSIZE...
     d                 c                   00280
     d  CURLOPT_UPKEEP_INTERVAL_MS...
     d                 c                   00281
     d  CURLOPT_CURLU  c                   10282
     d  CURLOPT_TRAILERFUNCTION...
     d                 c                   20283
     d  CURLOPT_TRAILERDATA...
     d                 c                   10284
     d  CURLOPT_HTTP09_ALLOWED...
     d                 c                   00285
     d  CURLOPT_ALTSVC_CTRL...
     d                 c                   00286
     d  CURLOPT_ALTSVC...
     d                 c                   10287
     d  CURLOPT_MAXAGE_CONN...
     d                 c                   00288
     d  CURLOPT_SASL_AUTHZID...
     d                 c                   10289
      *
      /if not defined(CURL_NO_OLDIES)
     d  CURLOPT_FILE   c                   10001
     d  CURLOPT_INFILE...
     d                 c                   10009
     d  CURLOPT_SSLKEYPASSWD...
     d                 c                   10026
     d  CURLOPT_SSLCERTPASSWD...
     d                 c                   10026
     d  CURLOPT_WRITEHEADER...
     d                 c                   10029
     d  CURLOPT_WRITEINFO...
     d                 c                   10040
     d  CURLOPT_FTPLISTONLY...
     d                 c                   00048
     d  CURLOPT_FTPAPPEND...
     d                 c                   00050
     d  CURLOPT_CLOSEPOLICY...
     d                 c                   00072
     d  CURLOPT_KRB4LEVEL...
     d                 c                   10063
     d  CURLOPT_ENCODING...
     d                 c                   10102
     d  CURLOPT_SERVER_RESPONSE_TIMEOUT...
     d                 c                   00112
     d  CURLOPT_FTP_SSL...
     d                 c                   00119
     d  CURLOPT_POST301...
     d                 c                   00161
      /endif
      *
     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  CURLFORM_CONTENTLEN...
     d                 c                   20
      *
     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_UPLOAD_T...                                               CURLINFO_OFF_T  + 7
     d                 c                   X'00600007'
     d  CURLINFO_SIZE_DOWNLOAD...                                               CURLINFO_DOUBLE + 8
     d                 c                   X'00300008'
     d  CURLINFO_SIZE_DOWNLOAD_T...                                             CURLINFO_OFF_T  + 8
     d                 c                   X'00600008'
     d  CURLINFO_SPEED_DOWNLOAD...                                              CURLINFO_DOUBLE + 9
     d                 c                   X'00300009'
     d  CURLINFO_SPEED_DOWNLOAD_T...                                            CURLINFO_OFF_T  + 9
     d                 c                   X'00600009'
     d  CURLINFO_SPEED_UPLOAD...                                                CURLINFO_DOUBLE + 10
     d                 c                   X'0030000A'
     d  CURLINFO_SPEED_UPLOAD_T...                                              CURLINFO_OFF_T  + 10
     d                 c                   X'0060000A'
     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_FILETIME_T...                                                  CURLINFO_OFF_T  + 14
     d                 c                   X'0060000E'
     d  CURLINFO_CONTENT_LENGTH_DOWNLOAD...                                     CURLINFO_DOUBLE + 15
     d                 c                   X'0030000F'
     d  CURLINFO_CONTENT_LENGTH_DOWNLOAD_T...                                   CURLINFO_OFF_T  + 15
     d                 c                   X'0060000F'
     d  CURLINFO_CONTENT_LENGTH_UPLOAD...                                       CURLINFO_DOUBLE + 16
     d                 c                   X'00300010'
     d  CURLINFO_CONTENT_LENGTH_UPLOAD_T...                                     CURLINFO_OFF_T  + 16
     d                 c                   X'00600010'
     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_RTSP_SESSION_ID...                                             CURLINFO_STRING + 36
     d                 c                   X'00100024'
     d  CURLINFO_RTSP_CLIENT_CSEQ...                                            CURLINFO_LONG + 37
     d                 c                   X'00200025'
     d  CURLINFO_RTSP_SERVER_CSEQ...                                            CURLINFO_LONG + 38
     d                 c                   X'00200026'
     d  CURLINFO_RTSP_CSEQ_RECV...                                              CURLINFO_LONG + 39
     d                 c                   X'00200027'
     d  CURLINFO_PRIMARY_PORT...                                                CURLINFO_LONG + 40
     d                 c                   X'00200028'
     d  CURLINFO_LOCAL_IP...                                                    CURLINFO_STRING + 41
     d                 c                   X'00100029'
     d  CURLINFO_LOCAL_PORT...                                                  CURLINFO_LONG + 42
     d                 c                   X'0020002A'
     d  CURLINFO_TLS_SESSION...                                                 CURLINFO_SLIST + 43
     d                 c                   X'0040002B'
     d  CURLINFO_ACTIVESOCKET...                                                CURLINFO_SOCKET + 44
     d                 c                   X'0050002C'
     d  CURLINFO_TLS_SSL_PTR...                                                 CURLINFO_SLIST + 45
     d                 c                   X'0040002D'
     d  CURLINFO_HTTP_VERSION...                                                CURLINFO_LONG + 46
     d                 c                   X'0020002E'
     d  CURLINFO_PROXY_SSL_VERIFYRESULT...                                      CURLINFO_LONG + 47
     d                 c                   X'0020002F'
     d  CURLINFO_PROTOCOL...                                                    CURLINFO_LONG + 48
     d                 c                   X'00200030'
     d  CURLINFO_SCHEME...                                                      CURLINFO_STRING + 49
     d                 c                   X'00100031'
     d  CURLINFO_TOTAL_TIME_T...                                                CURLINFO_OFF_T  + 50
     d                 c                   X'00600032'
     d  CURLINFO_NAMELOOKUP_TIME_T...                                           CURLINFO_OFF_T  + 51
     d                 c                   X'00600033'
     d  CURLINFO_CONNECT_TIME_T...                                              CURLINFO_OFF_T  + 52
     d                 c                   X'00600034'
     d  CURLINFO_PRETRANSFER_TIME_T...                                          CURLINFO_OFF_T  + 53
     d                 c                   X'00600035'
     d  CURLINFO_STARTTRANSFER_TIME_T...                                        CURLINFO_OFF_T  + 54
     d                 c                   X'00600036'
     d  CURLINFO_REDIRECT_TIME_T...                                             CURLINFO_OFF_T  + 55
     d                 c                   X'00600037'
     d  CURLINFO_APPCONNECT_TIME_T...                                           CURLINFO_OFF_T  + 56
     d                 c                   X'00600036'
      *
     d  CURLINFO_HTTP_CODE...                                                   Old ...RESPONSE_CODE
     d                 c                   X'00200002'
      *
     d curl_sslbackend...
     d                 s             10i 0 based(######ptr######)               Enum
     d  CURLSSLBACKEND_NONE...
     d                 c                   0
     d  CURLSSLBACKEND_OPENSSL...
     d                 c                   1
     d  CURLSSLBACKEND_GNUTLS...
     d                 c                   2
     d  CURLSSLBACKEND_NSS...
     d                 c                   3
     d  CURLSSLBACKEND_OBSOLETE4...
     d                 c                   4
     d  CURLSSLBACKEND_GSKIT...
     d                 c                   5
     d  CURLSSLBACKEND_POLARSSL...
     d                 c                   6
     d  CURLSSLBACKEND_CYASSL...
     d                 c                   7
     d  CURLSSLBACKEND_SCHANNEL...
     d                 c                   8
     d  CURLSSLBACKEND_DARWINSSL...
     d                 c                   9
     d  CURLSSLBACKEND_AXTLS...
     d                 c                   10
     d  CURLSSLBACKEND_MBEDTLS...
     d                 c                   11
     d  CURLSSLBACKEND_MESALINK...
     d                 c                   12
      * Aliases for clones.
     d  CURLSSLBACKEND_LIBRESSL...
     d                 c                   1
     d  CURLSSLBACKEND_BORINGSSL...
     d                 c                   1
     d  CURLSSLBACKEND_WOLFSSL...
     d                 c                   6
      *
     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_PSL...
     d                 c                   6
     d  CURL_LOCK_DATA_LAST...
     d                 c                   7
      *
     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  CURLSHE_NOT_BUILT_IN...
     d                 c                   5
      *
     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  CURLSOCKTYPE_ACCEPT...
     d                 c                   1
      *
     d  CURL_SOCKOPT_OK...
     d                 c                   0
     d  CURL_SOCKOPT_ERROR...
     d                 c                   1
     d  CURL_SOCKOPT_ALREADY_CONNECTED...
     d                 c                   2
      *
     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_ADDED_ALREADY...
     d                 c                   7
     d  CURLM_RECURSIVE_API_CALL...
     d                 c                   8
     d  CURLM_WAKEUP_FAILURE...
     d                 c                   9
     d  CURLM_BAD_FUNCTION_ARGUMENT...
     d                 c                   10
     d  CURLM_LAST     c                   11
      *
     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
     d  CURLMOPT_MAX_HOST_CONNECTIONS...
     d                 c                   00007
     d  CURLMOPT_MAX_PIPELINE_LENGTH...
     d                 c                   00008
     d  CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE...
     d                 c                   30009
     d  CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE...
     d                 c                   30010
     d  CURLMOPT_PIPELINING_SITE_BL...
     d                 c                   10011
     d  CURLMOPT_PIPELINING_SERVER_BL...
     d                 c                   10012
     d  CURLMOPT_MAX_TOTAL_CONNECTIONS...
     d                 c                   00013
     d  CURLMOPT_PUSHFUNCTION...
     d                 c                   20014
     d  CURLMOPT_PUSHDATA...
     d                 c                   10015
     d  CURLMOPT_MAX_CONCURRENT_STREAMS...
     d                 c                   10016
      *
      * Bitmask bits for CURLMOPT_PIPELING.
      *
     d CURLPIPE_NOTHING...
     d                 c                   x'00000000'
     d CURLPIPE_HTTP1  c                   x'00000001'
     d CURLPIPE_MULTIPLEX...
     d                 c                   x'00000002'
      *
      *  Public API enums for RTSP requests.
      *
     d CURLRTSPREQ_NONE...
     d                 c                   0
     d CURL_RTSPREQ_OPTIONS...
     d                 c                   1
     d CURL_RTSPREQ_DESCRIBE...
     d                 c                   2
     d CURL_RTSPREQ_ANNOUNCE...
     d                 c                   3
     d CURL_RTSPREQ_SETUP...
     d                 c                   4
     d CURL_RTSPREQ_PLAY...
     d                 c                   5
     d CURL_RTSPREQ_PAUSE...
     d                 c                   6
     d CURL_RTSPREQ_TEARDOWN...
     d                 c                   7
     d CURL_RTSPREQ_GET_PARAMETER...
     d                 c                   8
     d CURL_RTSPREQ_SET_PARAMETER...
     d                 c                   9
     d CURL_RTSPREQ_RECORD...
     d                 c                   10
     d CURL_RTSPREQ_RECEIVE...
     d                 c                   12
     d CURL_RTSPREQ_LAST...
     d                 c                   13
      *
     d CURLUcode       s             10i 0 based(######ptr######)               Enum
     d  CURLUE_OK      c                   0
     d  CURLUE_BAD_HANDLE...
     d                 c                   1
     d  CURLUE_BAD_PARTPOINTER...
     d                 c                   2
     d  CURLUE_MALFORMED_INPUT...
     d                 c                   3
     d  CURLUE_BAD_PORT_NUMBER...
     d                 c                   4
     d  CURLUE_UNSUPPORTED_SCHEME...
     d                 c                   5
     d  CURLUE_URLDECODE...
     d                 c                   6
     d  CURLUE_OUT_OF_MEMORY...
     d                 c                   7
     d  CURLUE_USER_NOT_ALLOWED...
     d                 c                   8
     d  CURLUE_UNKNOWN_PART...
     d                 c                   9
     d  CURLUE_NO_SCHEME...
     d                 c                   10
     d  CURLUE_NO_USER...
     d                 c                   11
     d  CURLUE_NO_PASSWORD...
     d                 c                   12
     d  CURLUE_NO_OPTIONS...
     d                 c                   13
     d  CURLUE_NO_HOST...
     d                 c                   14
     d  CURLUE_NO_PORT...
     d                 c                   15
     d  CURLUE_NO_QUERY...
     d                 c                   16
     d  CURLUE_NO_FRAGMENT...
     d                 c                   17
      *
     d CURLUPart       s             10i 0 based(######ptr######)               Enum
     d  CURLUPART_URL  c                   0
     d  CURLUPART_SCHEME...
     d                 c                   1
     d  CURLUPART_USER...
     d                 c                   2
     d  CURLUPART_PASSWORD...
     d                 c                   3
     d  CURLUPART_OPTIONS...
     d                 c                   4
     d  CURLUPART_HOST...
     d                 c                   5
     d  CURLUPART_PORT...
     d                 c                   6
     d  CURLUPART_PATH...
     d                 c                   7
     d  CURLUPART_QUERY...
     d                 c                   8
     d  CURLUPART_FRAGMENT...
     d                 c                   9
      *
      *  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_waitfd...
     d                 ds                  based(######ptr######)
     d                                     qualified
     d  fd                                 like(curl_socket_t)
     d  events                        5i 0
     d  revents                       5i 0
      *
     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_khtype     s             10i 0 based(######ptr######)               enum
     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_khkey      ds                  based(######ptr######)
     d                                     qualified
     d  key                            *                                        const char *
     d  len                          10u 0
     d  keytype                            like(curl_khtype)
      *
     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   value_num                         overlay(value: 8) like(curl_off_t)
      *
     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_fistrgs    ds                  based(######ptr######)
     d                                     qualified
     d  time                           *                                        char *
     d  perm                           *                                        char *
     d  user                           *                                        char *
     d  group                          *                                        char *
     d  target                         *                                        char *
      *
     d curl_tlssessioninfo...
     d                 ds                  based(######ptr######)
     d                                     qualified
     d  backend                            like(curl_sslbackend)
     d  internals                      *                                        void *
      *
     d curl_fileinfo   ds                  based(######ptr######)
     d                                     qualified
     d  filename                       *                                        char *
     d  filetype                           like(curlfiletype)
     d  time                         10i 0                                      time_t
     d  perm                         10u 0
     d  uid                          10i 0
     d  gid                          10i 0
     d  size                               like(curl_off_t)
     d  hardlinks                    10i 0
     d  strings                            likeds(curl_fistrgs)
     d  flags                        10u 0
     d  b_data                         *                                        char *
     d  b_size                       10u 0                                      size_t
     d  b_used                       10u 0                                      size_t
      *
     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_xferinfo_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_read_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_trailer_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_multi_timer_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_push_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_opensocket_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_sshkeycallback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_chunk_bgn_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_chunk_end_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_fnmatch_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_closesocket_callback...
     d                 s               *   based(######ptr######) procptr
      *
     d curl_resolver_start_callback...
     d                 s               *   based(######ptr######) procptr
      *
      **************************************************************************
      *                              Prototypes
      **************************************************************************
      *
     d curl_mime_init  pr              *   extproc('curl_mime_init')            curl_mime *
     d  easy                           *   value                                CURL *
      *
     d curl_mime_free  pr                  extproc('curl_mime_free')
     d  mime                           *   value                                curl_mime *
      *
     d curl_mime_addpart...
     d                 pr              *   extproc('curl_mime_addpart')         curl_mimepart *
     d  mime                           *   value                                curl_mime *
      *
     d curl_mime_name  pr                  extproc('curl_mime_name')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  name                           *   value options(*string)
      *
     d curl_mime_filename...
     d                 pr                  extproc('curl_mime_filename')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  filename                       *   value options(*string)
      *
     d curl_mime_type  pr                  extproc('curl_mime_type')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  mimetype                       *   value options(*string)
      *
     d curl_mime_encoder...
     d                 pr                  extproc('curl_mime_encoder')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  encoding                       *   value options(*string)
      *
     d curl_mime_data  pr                  extproc('curl_mime_data')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  data                           *   value options(*string)
     d  datasize                     10u 0                                      size_t
      *
     d curl_mime_filedata...
     d                 pr                  extproc('curl_mime_filedata')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  filename                       *   value options(*string)
      *
     d curl_mime_data_cb...
     d                 pr                  extproc('curl_mime_data_cb')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  datasize                           value like(curl_off_t)
     d  readfunc                           value like(curl_read_callback)
     d  seekfunc                           value like(curl_seek_callback)
     d  freefunc                           value like(curl_free_callback)
     d  arg                            *   value                                void *
      *
     d curl_mime_subparts...
     d                 pr                  extproc('curl_mime_subparts')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  subparts                       *   value                                curl_mime *
      *
     d curl_mime_headers...
     d                 pr                  extproc('curl_mime_headers')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  headers                        *   value                                curl_slist *
     d  take_ownership...
     d                               10i 0 value
      *
      *  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_getinfo_ptr...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  ptrarg                         *   options(*nopass)                     void *
      *
     d curl_easy_getinfo_socket...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  socketarg                          like(curl_socket_t) options(*nopass)
      *
     d curl_easy_getinfo_off_t...
     d                 pr                  extproc('curl_easy_getinfo')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  info                               value like(CURLINFO)
     d  offsetarg                          like(curl_off_t) options(*nopass)
      *
      *
     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                                     like(CURLcode)
     d  curl                           *   value                                CURL *
     d  bitmask                      10i 0 value
      *
     d curl_easy_upkeep...
     d                 pr                  extproc('curl_easy_upkeep')
     d                                     like(CURLcode)
     d  curl                           *   value                                CURL *
      *
     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_wait...
     d                 pr                  extproc('curl_multi_wait')
     d                                     like(CURLMcode)
     d  multi_handle                   *   value                                CURLM *
     d  extra_fds                      *   value                                curl_waitfd *
     d  extra_nfds                   10u 0 value
     d  timeout_ms                   10i 0 value
     d  ret                          10i 0 options(*omit)
      *
     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_pushheader_bynum...
     d                 pr              *   extproc('curl_pushheader_bynum')     char *
     d  h                              *   value                                curl_pushheaders *
     d  num                          10u 0 value
      *
     d curl_pushheader_byname...
     d                 pr              *   extproc('curl_pushheader_byname')    char *
     d  h                              *   value                                curl_pushheaders *
     d  header                         *   value options(*string)               const char *
      *
     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 *
      *
     d curl_url        pr              *   extproc('curl_url')                  CURLU *
      *
     d curl_url_cleanup...
     d                 pr                  extproc('curl_url_cleanup')
     d  handle                         *   value                                CURLU *
      *
     d curl_url_dup    pr              *   extproc('curl_url_dup')              CURLU *
     d  in                             *   value                                CURLU *
      *
     d curl_url_get    pr                  extproc('curl_url_get')
     d                                     like(CURLUcode)
     d  handle                         *   value                                CURLU *
     d  what                               value like(CURLUPart)
     d  part                           *                                        char **
     d  flags                        10u 0 value
      *
     d curl_url_set    pr                  extproc('curl_url_set')
     d                                     like(CURLUcode)
     d  handle                         *   value                                CURLU *
     d  what                               value like(CURLUPart)
     d  part                           *   value options(*string)
     d  flags                        10u 0 value
      *
      **************************************************************************
      *                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
      *
      * May be used for strings and structures.
     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  ptrarg                         *   options(*nopass)                     char *
     d  ccsid                        10u 0 value options(*nopass)
      *
     d curl_certinfo_free_all...
     d                 pr                  extproc('curl_certinfo_free_all')
     d  info                           *   value
      *
     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)
      *
     d curl_pushheader_bynum_ccsid...
     d                 pr              *   extproc(                             char *
     d                                       'curl_pushheader_bynum_ccsid')
     d  h                              *   value                                curl_pushheaders *
     d  num                          10u 0 value
     d  ccsid                        10u 0 value
      *
     d curl_pushheader_byname_ccsid...
     d                 pr              *   extproc(                             char *
     d                                       'curl_pushheader_byname_ccsid')
     d  h                              *   value                                curl_pushheaders *
     d  header                         *   value options(*string)               const char *
     d  ccsidin                      10u 0 value
     d  ccsidout                     10u 0 value
      *
     d curl_mime_name_ccsid...
     d                 pr                  extproc('curl_mime_name_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  name                           *   value options(*string)
     d  ccsid                        10u 0 value
      *
     d curl_mime_filename_ccsid...
     d                 pr                  extproc('curl_mime_filename_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  filename                       *   value options(*string)
     d  ccsid                        10u 0 value
      *
     d curl_mime_type_ccsid...
     d                 pr                  extproc('curl_mime_type_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  mimetype                       *   value options(*string)
     d  ccsid                        10u 0 value
      *
     d curl_mime_encoder_ccsid...
     d                 pr                  extproc('curl_mime_encoder_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  encoding                       *   value options(*string)
     d  ccsid                        10u 0 value
      *
     d curl_mime_data_ccsid...
     d                 pr                  extproc('curl_mime_data_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  data                           *   value options(*string)
     d  datasize                     10u 0                                      size_t
     d  ccsid                        10u 0 value
      *
     d curl_mime_filedata_ccsid...
     d                 pr                  extproc('curl_mime_filedata_ccsid')
     d                                     like(CURLcode)
     d  part                           *   value                                curl_mimepart *
     d  filename                       *   value options(*string)
     d  ccsid                        10u 0 value
      *
     d curl_url_get_ccsid...
     d                 pr                  extproc('curl_url_get_ccsid')
     d                                     like(CURLUcode)
     d  handle                         *   value                                CURLU *
     d  what                               value like(CURLUPart)
     d  part                           *                                        char **
     d  flags                        10u 0 value
     d  ccsid                        10u 0 value
      *
     d curl_url_set_ccsid...
     d                 pr                  extproc('curl_url_set_ccsid')
     d                                     like(CURLUcode)
     d  handle                         *   value                                CURLU *
     d  what                               value like(CURLUPart)
     d  part                           *   value options(*string)
     d  flags                        10u 0 value
     d  ccsid                        10u 0 value
      *
      /endif
