summaryrefslogtreecommitdiffstats
path: root/Utilities/cmcurl-7.19.0/packages/OS400
diff options
context:
space:
mode:
Diffstat (limited to 'Utilities/cmcurl-7.19.0/packages/OS400')
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/README.OS400253
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.c1175
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.h65
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/curl.inc.in1611
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/initscript.sh177
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/make-include.sh55
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/make-lib.sh193
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/make-src.sh5
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/make-tests.sh102
-rwxr-xr-xUtilities/cmcurl-7.19.0/packages/OS400/makefile.sh53
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/os400sys.c1111
-rw-r--r--Utilities/cmcurl-7.19.0/packages/OS400/os400sys.h53
12 files changed, 0 insertions, 4853 deletions
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/README.OS400 b/Utilities/cmcurl-7.19.0/packages/OS400/README.OS400
deleted file mode 100644
index 8117343..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/README.OS400
+++ /dev/null
@@ -1,253 +0,0 @@
-$Id$
-
-Implementation notes:
-
- This is a true OS/400 implementation, not a PASE implementation (for PASE,
-use AIX implementation).
-
- The biggest problem with OS/400 is EBCDIC. Libcurl implements an internal
-conversion mechanism, but it has been designed for computers that have a
-single native character set. OS/400 default native character set varies
-depending on the country for which it has been localized. And more, a job
-may dynamically alter its "native" character set.
- Several characters that do not have fixed code in EBCDIC variants are
-used in libcurl strings. As a consequence, using the existing conversion
-mechanism would have lead in a localized binary library - not portable across
-countries.
- For this reason, and because libcurl was originally designed for ASCII based
-operating systems, the current OS/400 implementation uses ASCII as internal
-character set. This has been accomplished using the QADRT library and
-include files, a C and system procedures ASCII wrapper library. See IBM QADRT
-description for more information.
- This then results in libcurl being an ASCII library: any function string
-argument is taken/returned in ASCII and a C/C++ calling program built around
-QADRT may use libcurl functions as on any other platform.
- QADRT does not define ASCII wrappers for all C/system procedures: the
-OS/400 configuration header file and an additional module (os400sys.c) define
-some more of them, that are used by libcurl and that QADRT left out.
- To support all the different variants of EBCDIC, non-standard wrapper
-procedures have been added to libcurl on OS/400: they provide an additional
-CCSID (numeric Coded Character Set ID specific to OS/400) parameter for each
-string argument. String values passed to callback procedures are NOT converted,
-so text gathered this way is (probably !) ASCII.
-
- Another OS/400 problem comes from the fact that the last fixed argument of a
-vararg procedure may not be of type char, unsigned char, short or unsigned
-short. Enums that are internally implemented by the C compiler as one of these
-types are also forbidden. Libcurl uses enums as vararg procedure tagfields...
-Happily, there is a pragma forcing enums to type "int". The original libcurl
-header files are thus altered during build process to use this pragma, in
-order to force libcurl enums of being type int (the pragma disposition in use
-before inclusion is restored before resuming the including unit compilation).
-
- Three SSL implementations were present in libcurl. Nevertheless, none of them
-is available on OS/400. To support SSL on OS/400, a fourth implementation has
-been added (qssl.[ch]). There is no way to have different certificate stores
-for CAs and for personal/application certificates/key. More, the SSL context
-may be defined as an application identifier in the main certificate store,
-or as a keyring file. As a consequence, the meaning of some fields have been
-slightly altered:
-_ The "certificate identifier" is taken from CURLOPT_SSLCERT if defined, else
-from CURLOPT_CAINFO.
-_ The certificate identifier is then used as an application identifier in the
-main certificate store. If successful, this context is used.
-_ If the previous step failed, the certificate identifier is used as the file
-name of a keyring. CURLOPT_KEYPASSWD is used here as the keyring password.
-_ The default ca-bundle (CURLOPT_CAINFO) is set to the main certificate store's
-keyring file name: this allows to use the system global CAs by default. (In that
-case, the keyring password is safely recovered from the system... IBM dixit!)
-
- Non-standard EBCDIC wrapper prototypes are defined in an additional header
-file: ccsidcurl.h. These should be self-explanatory to an OS/400-aware
-designer. CCSID 0 can be used to select the current job's CCSID.
- Wrapper procedures with variable arguments are described below:
-
-_ curl_easy_setopt_ccsid()
- Variable arguments are a string pointer and a CCSID (unsigned int) for
-options:
- CURLOPT_CAINFO
- CURLOPT_CAPATH
- CURLOPT_COOKIE
- CURLOPT_COOKIEFILE
- CURLOPT_COOKIEJAR
- CURLOPT_COOKIELIST
- CURLOPT_CUSTOMREQUEST
- CURLOPT_EGDSOCKET
- CURLOPT_ENCODING
- CURLOPT_FTPPORT
- CURLOPT_FTP_ACCOUNT
- CURLOPT_FTP_ALTERNATIVE_TO_USER
- CURLOPT_INTERFACE
- CURLOPT_KEYPASSWD
- CURLOPT_KRBLEVEL
- CURLOPT_NETRC_FILE
- CURLOPT_COPYPOSTFIELDS
- CURLOPT_PROXY
- CURLOPT_PROXYUSERPWD
- CURLOPT_RANDOM_FILE
- CURLOPT_RANGE
- CURLOPT_REFERER
- CURLOPT_SSH_PRIVATE_KEYFILE
- CURLOPT_SSH_PUBLIC_KEYFILE
- CURLOPT_SSLCERT
- CURLOPT_SSLCERTTYPE
- CURLOPT_SSLENGINE
- CURLOPT_SSLKEY
- CURLOPT_SSLKEYTYPE
- CURLOPT_SSL_CIPHER_LIST
- CURLOPT_URL
- CURLOPT_USERAGENT
- CURLOPT_USERPWD
- CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
- CURLOPT_CRLFILE
- CURLOPT_ISSUERCERT
- Else it is the same as for curl_easy_setopt().
- Note that CURLOPT_ERRORBUFFER is not in the list above, since it gives the
-address of an (empty) character buffer, not the address of a string.
-CURLOPT_POSTFIELDS stores the address of static binary data (of type void *) and
-thus is not converted. If CURLOPT_COPYPOSTFIELDS is issued after
-CURLOPT_POSTFIELDSIZE != -1, the data size is adjusted according to the
-CCSID conversion result length.
-
-_ curl_formadd_ccsid()
- In the variable argument list, string pointers should be followed by a (long)
-CCSID for the following options:
- CURLFORM_FILENAME
- CURLFORM_CONTENTTYPE
- CURLFORM_BUFFER
- CURLFORM_FILE
- CURLFORM_FILECONTENT
- CURLFORM_COPYCONTENTS
- CURLFORM_COPYNAME
- CURLFORM_PTRNAME
- If taken from an argument array, an additional array entry must follow each
-entry containing one of the above option. This additional entry holds the CCSID
-in its value field, and the option field is meaningless.
- It is not possible to have a string pointer and its CCSID across a function
-parameter/array boundary.
- Please note that CURLFORM_PTRCONTENTS and CURLFORM_BUFFERPTR are considered
-unconvertible strings and thus are NOT followed by a CCSID.
-
-_ curl_easy_getinfo_ccsid
- The following options are followed by a 'char * *' and a CCSID. Unlike
-curl_easy_getinfo(), the value returned in the pointer should be freed after
-use:
- CURLINFO_EFFECTIVE_URL
- CURLINFO_CONTENT_TYPE
- CURLINFO_FTP_ENTRY_PATH
- Other options are processed like in curl_easy_getinfo().
-
- Standard compilation environment does support neither autotools nor make;
-in fact, very few common utilities are available. As a consequence, the
-config-os400.h has been coded manually and the compilation scripts are
-a set of shell scripts stored in subdirectory packages/OS400.
-
- The "curl" command and the test environment are currently not supported on
-OS/400.
-
-
-Protocols currently implemented on OS/400:
-_ HTTP
-_ HTTPS
-_ FTP
-_ FTPS
-_ FTP with secure transmission.
-_ LDAP
-_ DICT
-_ TELNET
-
-
-
-Compiling on OS/400:
-
- These instructions targets people who knows about OS/400, compiling, IFS and
-archive extraction. Do not ask questions about these subjects if you're not
-familiar with.
-
-_ As a prerequisite, QADRT development environment must be installed.
-_ Install the curl source directory in IFS.
-_ Enter shell (QSH)
-_ Change current directory to the curl installation directory
-_ Change current directory to ./packages/OS400
-_ Edit file iniscript.sh. You may want to change tunable configuration
- parameters, like debug info generation, optimisation level, listing option,
- target library, etc.
-_ Copy any file in the current directory to makelog (i.e.:
- cp initscript.sh makelog): this is intended to create the makelog file with
- an ASCII CCSID!
-_ Enter the command "sh makefile.sh > makelog 2>&1'
-_ Examine the makelog file to check for compilation errors.
-
- Leaving file initscript.sh unchanged, this will produce the following OS/400
-objects:
-_ Library CURL. All other objects will be stored in this library.
-_ Modules for all libcurl units.
-_ Binding directory CURL_A, to be used at calling program link time for
- statically binding the modules (specify BNDSRVPGM(QADRTTS QGLDCLNT QGLDBRDR)
- when creating a program using CURL_A).
-_ Service program CURL.<soname>, where <soname> is extracted from the
- lib/Makefile.am VERSION variable. To be used at calling program run-time
- when this program has dynamically bound curl at link time.
-_ Binding directory CURL. To be used to dynamically bind libcurl when linking a
- calling program.
-_ Source file H. It contains all the include members needed to compile a C/C++
- module using libcurl, and an ILE/RPG /copy member for support in this
- language.
-_ Standard C/C++ libcurl include members in file H.
-_ CCSIDCURL member in file H. This defines the non-standard EBCDIC wrappers for
- C and C++.
-_ CURL.INC member in file H. This defines everything needed by an ILE/RPG
- program using libcurl.
-_ LIBxxx modules and programs. Although the test environment is not supported
- on OS/400, the libcurl test programs are compiled for manual tests.
-
-
-
-Special programming consideration:
-
-QADRT being used, the following points must be considered:
-_ If static binding is used, service program QADRTTS must be linked too.
-_ The EBCDIC CCSID used by QADRT is 37 by default, NOT THE JOB'S CCSID. If
- another EBCDIC CCSID is required, it must be set via a locale through a call
- to setlocale_a (QADRT's setlocale() ASCII wrapper) with category LC_ALL or
- LC_CTYPE, or by setting environment variable QADRT_ENV_LOCALE to the locale
- object path before executing the program.
-_ Do not use original source include files unless you know what you are doing.
- Use the installed members instead (in /QSYS.LIB/CURL.LIB/H.FILE).
-
-
-
-ILE/RPG support:
-
- Since 95% of the OS/400 programmers use ILE/RPG exclusively, a definition
- /COPY member is provided for this language. To include all libcurl
- definitions in an ILE/RPG module, line
-
- h bnddir('CURL/CURL')
-
-must figure in the program header, and line
-
- d/copy curl/h,curl.inc
-
-in the global data section of the module's source code.
-
- No vararg procedure support exists in ILE/RPG: for this reason, the following
-considerations apply:
-_ Procedures curl_easy_setopt_long(), curl_easy_setopt_object(),
- curl_easy_setopt_function() and curl_easy_setopt_offset() are all alias
- prototypes to curl_easy_setopt(), but with different parameter lists.
-_ Procedures curl_easy_getinfo_string(), curl_easy_getinfo_long(),
- curl_easy_getinfo_double() and curl_easy_getinfo_slist() are all alias
- prototypes to curl_easy_getinfo(), but with different parameter lists.
-_ Procedures curl_multi_setopt_long(), curl_multi_setopt_object(),
- curl_multi_setopt_function() and curl_multi_setopt_offset() are all alias
- prototypes to curl_multi_setopt(), but with different parameter lists.
-_ The prototype of procedure curl_formadd() allows specifying a pointer option
- and the CURLFORM_END option. This makes possible to use an option array
- without any additional definition. If some specific incompatible argument
- list is used in the ILE/RPG program, the latter must define a specialised
- alias. The same applies to curl_formadd_ccsid() too.
-
- Since RPG cannot cast a long to a pointer, procedure curl_form_long_value()
-is provided for that purpose: this allows storing a long value in the curl_forms
-array.
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.c b/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.c
deleted file mode 100644
index c44db0e..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.c
+++ /dev/null
@@ -1,1175 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * $Id$
- *
- ***************************************************************************/
-
-/* CCSID API wrappers for OS/400. */
-
-#include <iconv.h>
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <stdarg.h>
-
-#pragma enum(int)
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "url.h"
-#include "getinfo.h"
-#include "ccsidcurl.h"
-
-#include "os400sys.h"
-
-#ifndef SIZE_MAX
-#define SIZE_MAX ((size_t) ~0) /* Is unsigned on OS/400. */
-#endif
-
-
-#define ASCII_CCSID 819 /* Use ISO-8859-1 as ASCII. */
-#define NOCONV_CCSID 65535 /* No conversion. */
-#define ICONV_ID_SIZE 32 /* Size of iconv_open() code identifier. */
-#define ICONV_OPEN_ERROR(t) ((t).return_value == -1)
-
-#define ALLOC_GRANULE 8 /* Alloc. granule for curl_formadd_ccsid(). */
-
-
-static void
-makeOS400IconvCode(char buf[ICONV_ID_SIZE], unsigned int ccsid)
-
-{
- /**
- *** Convert a CCSID to the corresponding IBM iconv_open() character
- *** code identifier.
- *** This code is specific to the OS400 implementation of the iconv library.
- *** CCSID 65535 (no conversion) is replaced by the ASCII CCSID.
- *** CCSID 0 is interpreted by the OS400 as the job's CCSID.
- **/
-
- ccsid &= 0xFFFF;
-
- if (ccsid == NOCONV_CCSID)
- ccsid = ASCII_CCSID;
-
- memset(buf, 0, ICONV_ID_SIZE);
- curl_msprintf(buf, "IBMCCSID%05u0000000", ccsid);
-}
-
-
-static iconv_t
-iconv_open_CCSID(unsigned int ccsidout, unsigned int ccsidin, unsigned int cstr)
-
-{
- char fromcode[ICONV_ID_SIZE];
- char tocode[ICONV_ID_SIZE];
-
- /**
- *** Like iconv_open(), but character codes are given as CCSIDs.
- *** If `cstr' is non-zero, conversion is set up to stop whenever a
- *** null character is encountered.
- *** See iconv_open() IBM description in "National Language Support API".
- **/
-
- makeOS400IconvCode(fromcode, ccsidin);
- makeOS400IconvCode(tocode, ccsidout);
- memset(tocode + 13, 0, sizeof tocode - 13); /* Dest. code id format. */
-
- if (cstr)
- fromcode[18] = '1'; /* Set null-terminator flag. */
-
- return iconv_open(tocode, fromcode);
-}
-
-
-static int
-convert(char * d, size_t dlen, int dccsid,
- const char * s, int slen, int sccsid)
-
-{
- int i;
- iconv_t cd;
- size_t lslen;
-
- /**
- *** Convert `sccsid'-coded `slen'-data bytes at `s' into `dccsid'-coded
- *** data stored in the `dlen'-byte buffer at `d'.
- *** If `slen' < 0, source string is null-terminated.
- *** CCSID 65535 (no conversion) is replaced by the ASCII CCSID.
- *** Return the converted destination byte count, or -1 if error.
- **/
-
- if (sccsid == 65535)
- sccsid = ASCII_CCSID;
-
- if (dccsid == 65535)
- dccsid = ASCII_CCSID;
-
- if (sccsid == dccsid) {
- lslen = slen >= 0? slen: strlen(s) + 1;
- i = lslen < dlen? lslen: dlen;
-
- if (s != d && i > 0)
- memcpy(d, s, i);
-
- return i;
- }
-
- if (slen < 0) {
- lslen = 0;
- cd = iconv_open_CCSID(dccsid, sccsid, 1);
- }
- else {
- lslen = (size_t) slen;
- cd = iconv_open_CCSID(dccsid, sccsid, 0);
- }
-
- if (ICONV_OPEN_ERROR(cd))
- return -1;
-
- i = dlen;
-
- if ((int) iconv(cd, (char * *) &s, &lslen, &d, &dlen) < 0)
- i = -1;
- else
- i -= dlen;
-
- iconv_close(cd);
- return i;
-}
-
-
-static char *
-dynconvert(int dccsid, const char * s, int slen, int sccsid)
-
-{
- char * d;
- char * cp;
- size_t dlen;
- int l;
- int l2;
- static const char nullbyte = 0;
-
- /* Like convert, but the destination is allocated and returned. */
-
- dlen = (size_t) (slen < 0? strlen(s): slen) + 1;
- dlen *= MAX_CONV_EXPANSION; /* Allow some expansion. */
- d = malloc(dlen);
-
- if (!d)
- return (char *) NULL;
-
- l = convert(d, dlen, dccsid, s, slen, sccsid);
-
- if (l < 0) {
- free(d);
- return (char *) NULL;
- }
-
- if (slen < 0) {
- /* Need to null-terminate even when source length is given.
- Since destination code size is unknown, use a conversion to generate
- terminator. */
-
- l2 = convert(d + l, dlen - l, dccsid, &nullbyte, -1, ASCII_CCSID);
-
- if (l2 < 0) {
- free(d);
- return (char *) NULL;
- }
-
- l += l2;
- }
-
- if ((size_t) l < dlen) {
- cp = realloc(d, l); /* Shorten to minimum needed. */
-
- if (cp)
- d = cp;
- }
-
- return d;
-}
-
-
-char *
-curl_version_ccsid(unsigned int ccsid)
-
-{
- int i;
- char * aversion;
- char * eversion;
-
- aversion = curl_version();
-
- if (!aversion)
- return aversion;
-
- i = strlen(aversion) + 1;
- i *= MAX_CONV_EXPANSION;
-
- if (!(eversion = Curl_thread_buffer(LK_CURL_VERSION, i)))
- return (char *) NULL;
-
- if (convert(eversion, i, ccsid, aversion, -1, ASCII_CCSID) < 0)
- return (char *) NULL;
-
- return eversion;
-}
-
-
-char *
-curl_easy_escape_ccsid(CURL * handle, const char * string, int length,
- unsigned int sccsid, unsigned int dccsid)
-
-{
- char * s;
- char * d;
-
- if (!string) {
- errno = EINVAL;
- return (char *) NULL;
- }
-
- s = dynconvert(ASCII_CCSID, s, length? length: -1, sccsid);
-
- if (!s)
- return (char *) NULL;
-
- d = curl_easy_escape(handle, s, 0);
- free(s);
-
- if (!d)
- return (char *) NULL;
-
- s = dynconvert(dccsid, d, -1, ASCII_CCSID);
- free(d);
- return s;
-}
-
-
-char *
-curl_easy_unescape_ccsid(CURL * handle, const char * string, int length,
- int * outlength,
- unsigned int sccsid, unsigned int dccsid)
-
-{
- char * s;
- char * d;
-
- if (!string) {
- errno = EINVAL;
- return (char *) NULL;
- }
-
- s = dynconvert(ASCII_CCSID, s, length? length: -1, sccsid);
-
- if (!s)
- return (char *) NULL;
-
- d = curl_easy_unescape(handle, s, 0, outlength);
- free(s);
-
- if (!d)
- return (char *) NULL;
-
- s = dynconvert(dccsid, d, -1, ASCII_CCSID);
- free(d);
-
- if (s && outlength)
- *outlength = strlen(s);
-
- return s;
-}
-
-
-struct curl_slist *
-curl_slist_append_ccsid(struct curl_slist * list,
- const char * data, unsigned int ccsid)
-
-{
- char * s;
-
- s = (char *) NULL;
-
- if (!data)
- return curl_slist_append(list, data);
-
- s = dynconvert(ASCII_CCSID, data, -1, ccsid);
-
- if (!s)
- return (struct curl_slist *) NULL;
-
- list = curl_slist_append(list, s);
- free(s);
- return list;
-}
-
-
-time_t
-curl_getdate_ccsid(const char * p, const time_t * unused, unsigned int ccsid)
-
-{
- char * s;
- time_t t;
-
- if (!p)
- return curl_getdate(p, unused);
-
- s = dynconvert(ASCII_CCSID, p, -1, ccsid);
-
- if (!s)
- return (time_t) -1;
-
- t = curl_getdate(s, unused);
- free(s);
- return t;
-}
-
-
-static int
-convert_version_info_string(const char * * stringp,
- char * * bufp, int * left, unsigned int ccsid)
-
-{
- int l;
-
- /* Helper for curl_version_info_ccsid(): convert a string if defined.
- Result is stored in the `*left'-byte buffer at `*bufp'.
- `*bufp' and `*left' are updated accordingly.
- Return 0 if ok, else -1. */
-
- if (*stringp) {
- l = convert(*bufp, *left, ccsid, *stringp, -1, ASCII_CCSID);
-
- if (l <= 0)
- return -1;
-
- *stringp = *bufp;
- *bufp += l;
- *left -= l;
- }
-
- return 0;
-}
-
-
-curl_version_info_data *
-curl_version_info_ccsid(CURLversion stamp, unsigned int ccsid)
-
-{
- curl_version_info_data * p;
- char * cp;
- int n;
- int nproto;
- int i;
- curl_version_info_data * id;
-
- /* The assertion below is possible, because although the second operand
- is an enum member, the first is a #define. In that case, the OS/400 C
- compiler seems to compare string values after substitution. */
-
-#if CURLVERSION_NOW != CURLVERSION_FOURTH
-#error curl_version_info_data structure has changed: upgrade this procedure too.
-#endif
-
- /* If caller has been compiled with a new version, error. */
-
- if (stamp > CURLVERSION_NOW)
- return (curl_version_info_data *) NULL;
-
- p = curl_version_info(stamp);
-
- if (!p)
- return p;
-
- /* Measure thread space needed. */
-
- n = 0;
- nproto = 0;
-
- if (p->protocols) {
- while (p->protocols[nproto])
- n += strlen(p->protocols[nproto++]);
-
- n += nproto++;
- }
-
- if (p->version)
- n += strlen(p->version) + 1;
-
- if (p->host)
- n += strlen(p->host) + 1;
-
- if (p->ssl_version)
- n += strlen(p->ssl_version) + 1;
-
- if (p->libz_version)
- n += strlen(p->libz_version) + 1;
-
- if (p->ares)
- n += strlen(p->ares) + 1;
-
- if (p->libidn)
- n += strlen(p->libidn) + 1;
-
- if (p->libssh_version)
- n += strlen(p->libssh_version) + 1;
-
- /* Allocate thread space. */
-
- n *= MAX_CONV_EXPANSION;
-
- if (nproto)
- n += nproto * sizeof(const char *);
-
- cp = Curl_thread_buffer(LK_VERSION_INFO_DATA, n);
- id = (curl_version_info_data *) Curl_thread_buffer(LK_VERSION_INFO,
- sizeof *id);
-
- if (!id || !cp)
- return (curl_version_info_data *) NULL;
-
- /* Copy data and convert strings. */
-
- memcpy((char *) id, (char *) p, sizeof *p);
-
- if (id->protocols) {
- id->protocols = (const char * const *) cp;
- i = nproto * sizeof id->protocols[0];
- memcpy(cp, (char *) p->protocols, i);
- cp += i;
- n -= i;
-
- for (i = 0; id->protocols[i]; i++)
- if (convert_version_info_string(((const char * *) id->protocols) + i,
- &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
- }
-
- if (convert_version_info_string(&id->version, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->host, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->ssl_version, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->libz_version, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->ares, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->libidn, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- if (convert_version_info_string(&id->libssh_version, &cp, &n, ccsid))
- return (curl_version_info_data *) NULL;
-
- return id;
-}
-
-
-const char *
-curl_easy_strerror_ccsid(CURLcode error, unsigned int ccsid)
-
-{
- int i;
- const char * s;
- char * buf;
-
- s = curl_easy_strerror(error);
-
- if (!s)
- return s;
-
- i = MAX_CONV_EXPANSION * (strlen(s) + 1);
-
- if (!(buf = Curl_thread_buffer(LK_EASY_STRERROR, i)))
- return (const char *) NULL;
-
- if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
- return (const char *) NULL;
-
- return (const char *) buf;
-}
-
-
-const char *
-curl_share_strerror_ccsid(CURLSHcode error, unsigned int ccsid)
-
-{
- int i;
- const char * s;
- char * buf;
-
- s = curl_share_strerror(error);
-
- if (!s)
- return s;
-
- i = MAX_CONV_EXPANSION * (strlen(s) + 1);
-
- if (!(buf = Curl_thread_buffer(LK_SHARE_STRERROR, i)))
- return (const char *) NULL;
-
- if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
- return (const char *) NULL;
-
- return (const char *) buf;
-}
-
-
-const char *
-curl_multi_strerror_ccsid(CURLMcode error, unsigned int ccsid)
-
-{
- int i;
- const char * s;
- char * buf;
-
- s = curl_multi_strerror(error);
-
- if (!s)
- return s;
-
- i = MAX_CONV_EXPANSION * (strlen(s) + 1);
-
- if (!(buf = Curl_thread_buffer(LK_MULTI_STRERROR, i)))
- return (const char *) NULL;
-
- if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
- return (const char *) NULL;
-
- return (const char *) buf;
-}
-
-
-CURLcode
-curl_easy_getinfo_ccsid(CURL * curl, CURLINFO info, ...)
-
-{
- va_list arg;
- void * paramp;
- CURLcode ret;
- unsigned int ccsid;
- char * * cpp;
- char * s;
- char * d;
- struct SessionHandle * data;
-
- /* WARNING: unlike curl_easy_get_info(), the strings returned by this
- procedure have to be free'ed. */
-
- data = (struct SessionHandle *) curl;
- va_start(arg, info);
- paramp = va_arg(arg, void *);
- ret = Curl_getinfo(data, info, paramp);
-
- if (ret != CURLE_OK || ((int) info & CURLINFO_TYPEMASK) != CURLINFO_STRING) {
- va_end(arg);
- return ret;
- }
-
- ccsid = va_arg(arg, unsigned int);
- va_end(arg);
- cpp = (char * *) paramp;
- s = *cpp;
-
- if (!s)
- return ret;
-
- d = dynconvert(ccsid, s, -1, ASCII_CCSID);
- *cpp = d;
-
- if (!d)
- return CURLE_OUT_OF_MEMORY;
-
- return ret;
-}
-
-
-static int
-Curl_is_formadd_string(CURLformoption option)
-
-{
- switch (option) {
-
- case CURLFORM_FILENAME:
- case CURLFORM_CONTENTTYPE:
- case CURLFORM_BUFFER:
- case CURLFORM_FILE:
- case CURLFORM_FILECONTENT:
- case CURLFORM_COPYCONTENTS:
- case CURLFORM_COPYNAME:
- return 1;
- }
-
- return 0;
-}
-
-
-static void
-Curl_formadd_release_local(struct curl_forms * forms, int nargs, int skip)
-
-{
- while (nargs--)
- if (nargs != skip)
- if (Curl_is_formadd_string(forms[nargs].option))
- if (forms[nargs].value)
- free((char *) forms[nargs].value);
-
- free((char *) forms);
-}
-
-
-static int
-Curl_formadd_convert(struct curl_forms * forms,
- int formx, int lengthx, unsigned int ccsid)
-
-{
- int l;
- char * cp;
- char * cp2;
-
- if (formx < 0 || !forms[formx].value)
- return 0;
-
- if (lengthx >= 0)
- l = (int) forms[lengthx].value;
- else
- l = strlen(forms[formx].value) + 1;
-
- cp = malloc(MAX_CONV_EXPANSION * l);
-
- if (!cp)
- return -1;
-
- l = convert(cp, MAX_CONV_EXPANSION * l, ASCII_CCSID,
- forms[formx].value, l, ccsid);
-
- if (l < 0) {
- free(cp);
- return -1;
- }
-
- cp2 = realloc(cp, l); /* Shorten buffer to the string size. */
-
- if (cp2)
- cp = cp2;
-
- forms[formx].value = cp;
-
- if (lengthx >= 0)
- forms[lengthx].value = (char *) l; /* Update to length after conversion. */
-
- return l;
-}
-
-
-CURLFORMcode
-curl_formadd_ccsid(struct curl_httppost * * httppost,
- struct curl_httppost * * last_post, ...)
-
-{
- va_list arg;
- CURLformoption option;
- CURLFORMcode result;
- struct curl_forms * forms;
- struct curl_forms * lforms;
- struct curl_forms * tforms;
- unsigned int lformlen;
- const char * value;
- unsigned int ccsid;
- int nargs;
- int namex;
- int namelengthx;
- int contentx;
- int lengthx;
- unsigned int contentccsid;
- unsigned int nameccsid;
-
- /* A single curl_formadd() call cannot be splitted in several calls to deal
- with all parameters: the original parameters are thus copied to a local
- curl_forms array and converted to ASCII when needed.
- CURLFORM_PTRNAME is processed as if it were CURLFORM_COPYNAME.
- CURLFORM_COPYNAME and CURLFORM_NAMELENGTH occurrence order in
- parameters is not defined; for this reason, the actual conversion is
- delayed to the end of parameter processing. The same applies to
- CURLFORM_COPYCONTENTS/CURLFORM_CONTENTSLENGTH, but these may appear
- several times in the parameter list; the problem resides here in knowing
- which CURLFORM_CONTENTSLENGTH applies to which CURLFORM_COPYCONTENTS and
- when we can be sure to have both info for conversion: end of parameter
- list is such a point, but CURLFORM_CONTENTTYPE is also used here as a
- natural separator between content data definitions; this seems to be
- in accordance with FormAdd() behavior. */
-
- /* Allocate the local curl_forms array. */
-
- lformlen = ALLOC_GRANULE;
- lforms = (struct curl_forms *) malloc(lformlen * sizeof * lforms);
-
- if (!lforms)
- return CURL_FORMADD_MEMORY;
-
- /* Process the arguments, copying them into local array, latching conversion
- indexes and converting when needed. */
-
- result = CURL_FORMADD_OK;
- nargs = 0;
- contentx = -1;
- lengthx = -1;
- namex = -1;
- namelengthx = -1;
- forms = (struct curl_forms *) NULL;
- va_start(arg, last_post);
-
- for (;;) {
- /* Make sure there is still room for an item in local array. */
-
- if (nargs >= lformlen) {
- lformlen += ALLOC_GRANULE;
- tforms = (struct curl_forms *) realloc((char *) lforms,
- lformlen * sizeof *lforms);
-
- if (!tforms) {
- result = CURL_FORMADD_MEMORY;
- break;
- }
-
- lforms = tforms;
- }
-
- /* Get next option. */
-
- if (forms) {
- /* Get option from array. */
-
- option = forms->option;
- value = forms->value;
- forms++;
- }
- else {
- /* Get option from arguments. */
-
- option = va_arg(arg, CURLformoption);
-
- if (option == CURLFORM_END)
- break;
- }
-
- /* Dispatch by option. */
-
- switch (option) {
-
- case CURLFORM_END:
- forms = (struct curl_forms *) NULL; /* Leave array mode. */
- continue;
-
- case CURLFORM_ARRAY:
- if (!forms) {
- forms = va_arg(arg, struct curl_forms *);
- continue;
- }
-
- result = CURL_FORMADD_ILLEGAL_ARRAY;
- break;
-
- case CURLFORM_COPYNAME:
- option = CURLFORM_PTRNAME; /* Static for now. */
-
- case CURLFORM_PTRNAME:
- if (namex >= 0)
- result = CURL_FORMADD_OPTION_TWICE;
-
- namex = nargs;
-
- if (!forms) {
- value = va_arg(arg, char *);
- nameccsid = (unsigned int) va_arg(arg, long);
- }
- else {
- nameccsid = (unsigned int) forms->value;
- forms++;
- }
-
- break;
-
- case CURLFORM_COPYCONTENTS:
- if (contentx >= 0)
- result = CURL_FORMADD_OPTION_TWICE;
-
- contentx = nargs;
-
- if (!forms) {
- value = va_arg(arg, char *);
- contentccsid = (unsigned int) va_arg(arg, long);
- }
- else {
- contentccsid = (unsigned int) forms->value;
- forms++;
- }
-
- break;
-
- case CURLFORM_PTRCONTENTS:
- case CURLFORM_BUFFERPTR:
- if (!forms)
- value = va_arg(arg, char *); /* No conversion. */
-
- break;
-
- case CURLFORM_CONTENTSLENGTH:
- lengthx = nargs;
-
- if (!forms)
- value = (char *) va_arg(arg, long);
-
- break;
-
- case CURLFORM_NAMELENGTH:
- namelengthx = nargs;
-
- if (!forms)
- value = (char *) va_arg(arg, long);
-
- break;
-
- case CURLFORM_BUFFERLENGTH:
- if (!forms)
- value = (char *) va_arg(arg, long);
-
- break;
-
- case CURLFORM_CONTENTHEADER:
- if (!forms)
- value = (char *) va_arg(arg, struct curl_slist *);
-
- break;
-
- case CURLFORM_STREAM:
- if (!forms)
- value = (char *) va_arg(arg, void *);
-
- break;
-
- case CURLFORM_CONTENTTYPE:
- /* If a previous content has been encountered, convert it now. */
-
- if (Curl_formadd_convert(lforms, contentx, lengthx, contentccsid) < 0) {
- result = CURL_FORMADD_MEMORY;
- break;
- }
-
- contentx = -1;
- lengthx = -1;
- /* Fall into default. */
-
- default:
- /* Must be a convertible string. */
-
- if (!Curl_is_formadd_string(option)) {
- result = CURL_FORMADD_UNKNOWN_OPTION;
- break;
- }
-
- if (!forms) {
- value = va_arg(arg, char *);
- ccsid = (unsigned int) va_arg(arg, long);
- }
- else {
- ccsid = (unsigned int) forms->value;
- forms++;
- }
-
- /* Do the conversion. */
-
- lforms[nargs].value = value;
-
- if (Curl_formadd_convert(lforms, nargs, -1, ccsid) < 0) {
- result = CURL_FORMADD_MEMORY;
- break;
- }
-
- value = lforms[nargs].value;
- }
-
- if (result != CURL_FORMADD_OK)
- break;
-
- lforms[nargs].value = value;
- lforms[nargs++].option = option;
- }
-
- va_end(arg);
-
- /* Convert the name and the last content, now that we know their lengths. */
-
- if (result == CURL_FORMADD_OK && namex >= 0) {
- if (Curl_formadd_convert(lforms, namex, namelengthx, nameccsid) < 0)
- result = CURL_FORMADD_MEMORY;
- else
- lforms[namex].option = CURLFORM_COPYNAME; /* Force copy. */
- }
-
- if (result == CURL_FORMADD_OK) {
- if (Curl_formadd_convert(lforms, contentx, lengthx, contentccsid) < 0)
- result = CURL_FORMADD_MEMORY;
- else
- contentx = -1;
- }
-
- /* Do the formadd with our converted parameters. */
-
- if (result == CURL_FORMADD_OK) {
- lforms[nargs].option = CURLFORM_END;
- result = curl_formadd(httppost, last_post,
- CURLFORM_ARRAY, lforms, CURLFORM_END);
- }
-
- /* Terminate. */
-
- Curl_formadd_release_local(lforms, nargs, contentx);
- return result;
-}
-
-
-typedef struct {
- curl_formget_callback append;
- void * arg;
- unsigned int ccsid;
-} cfcdata;
-
-
-static size_t
-Curl_formget_callback_ccsid(void * arg, const char * buf, size_t len)
-
-{
- cfcdata * p;
- char * b;
- int l;
- size_t ret;
-
- p = (cfcdata *) arg;
-
- if ((long) len <= 0)
- return (*p->append)(p->arg, buf, len);
-
- b = malloc(MAX_CONV_EXPANSION * len);
-
- if (!b)
- return (size_t) -1;
-
- l = convert(b, MAX_CONV_EXPANSION * len, p->ccsid, buf, len, ASCII_CCSID);
-
- if (l < 0) {
- free(b);
- return (size_t) -1;
- }
-
- ret = (*p->append)(p->arg, b, l);
- free(b);
- return ret == l? len: -1;
-}
-
-
-int
-curl_formget_ccsid(struct curl_httppost * form, void * arg,
- curl_formget_callback append, unsigned int ccsid)
-
-{
- cfcdata lcfc;
-
- lcfc.append = append;
- lcfc.arg = arg;
- lcfc.ccsid = ccsid;
- return curl_formget(form, (void *) &lcfc, Curl_formget_callback_ccsid);
-}
-
-
-CURLcode
-curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
-
-{
- CURLcode result;
- va_list arg;
- struct SessionHandle * data;
- char * s;
- char * cp;
- unsigned int ccsid;
- size_t len;
- curl_off_t pfsize;
- static char testwarn = 1;
-
- /* Warns if this procedure has not been updated when the dupstring enum
- changes.
- We (try to) do it only once: there is no need to issue several times
- the same message; but since threadsafeness is not handled here,
- this may occur (and we don't care!). */
-
- if (testwarn) {
- testwarn = 0;
-
- if ((int) STRING_LAST != (int) STRING_SSL_ISSUERCERT + 1)
- curl_mfprintf(stderr,
- "*** WARNING: curl_easy_setopt_ccsid() should be reworked ***\n");
- }
-
- data = (struct SessionHandle *) curl;
- va_start(arg, tag);
-
- switch (tag) {
-
- case CURLOPT_CAINFO:
- case CURLOPT_CAPATH:
- case CURLOPT_COOKIE:
- case CURLOPT_COOKIEFILE:
- case CURLOPT_COOKIEJAR:
- case CURLOPT_COOKIELIST:
- case CURLOPT_CUSTOMREQUEST:
- case CURLOPT_EGDSOCKET:
- case CURLOPT_ENCODING:
- case CURLOPT_FTPPORT:
- case CURLOPT_FTP_ACCOUNT:
- case CURLOPT_FTP_ALTERNATIVE_TO_USER:
- case CURLOPT_INTERFACE:
- case CURLOPT_KEYPASSWD:
- case CURLOPT_KRBLEVEL:
- case CURLOPT_NETRC_FILE:
- case CURLOPT_PROXY:
- case CURLOPT_PROXYUSERPWD:
- case CURLOPT_RANDOM_FILE:
- case CURLOPT_RANGE:
- case CURLOPT_REFERER:
- case CURLOPT_SSH_PRIVATE_KEYFILE:
- case CURLOPT_SSH_PUBLIC_KEYFILE:
- case CURLOPT_SSLCERT:
- case CURLOPT_SSLCERTTYPE:
- case CURLOPT_SSLENGINE:
- case CURLOPT_SSLKEY:
- case CURLOPT_SSLKEYTYPE:
- case CURLOPT_SSL_CIPHER_LIST:
- case CURLOPT_URL:
- case CURLOPT_USERAGENT:
- case CURLOPT_USERPWD:
- case CURLOPT_SSH_HOST_PUBLIC_KEY_MD5:
- case CURLOPT_CRLFILE:
- case CURLOPT_ISSUERCERT:
- s = va_arg(arg, char *);
- ccsid = va_arg(arg, unsigned int);
-
- if (s) {
- s = dynconvert(ASCII_CCSID, s, -1, ccsid);
-
- if (!s) {
- result = CURLE_OUT_OF_MEMORY;
- break;
- }
- }
-
- result = curl_easy_setopt(curl, tag, s);
-
- if (s)
- free(s);
-
- break;
-
- case CURLOPT_COPYPOSTFIELDS:
- /* Special case: byte count may have been given by CURLOPT_POSTFIELDSIZE
- prior to this call. In this case, convert the given byte count and
- replace the length according to the conversion result. */
- s = va_arg(arg, char *);
- ccsid = va_arg(arg, unsigned int);
-
- pfsize = data->set.postfieldsize;
-
- if (!s || !pfsize || ccsid == NOCONV_CCSID || ccsid == ASCII_CCSID) {
- result = curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, s);
- break;
- }
-
- if (pfsize == -1) {
- /* Data is null-terminated. */
- s = dynconvert(ASCII_CCSID, s, -1, ccsid);
-
- if (!s) {
- result = CURLE_OUT_OF_MEMORY;
- break;
- }
- }
- else {
- /* Data length specified. */
-
- if (pfsize < 0 || pfsize > SIZE_MAX) {
- result = CURLE_OUT_OF_MEMORY;
- break;
- }
-
- len = pfsize;
- pfsize = len * MAX_CONV_EXPANSION;
-
- if (pfsize > SIZE_MAX)
- pfsize = SIZE_MAX;
-
- cp = malloc(pfsize);
-
- if (!cp) {
- result = CURLE_OUT_OF_MEMORY;
- break;
- }
-
- pfsize = convert(cp, pfsize, ASCII_CCSID, s, len, ccsid);
-
- if (pfsize < 0) {
- free(cp);
- result = CURLE_OUT_OF_MEMORY;
- break;
- }
-
- data->set.postfieldsize = pfsize; /* Replace data size. */
- s = cp;
- }
-
- result = curl_easy_setopt(curl, CURLOPT_POSTFIELDS, s);
- data->set.str[STRING_COPYPOSTFIELDS] = s; /* Give to library. */
- break;
-
- case CURLOPT_ERRORBUFFER: /* This is an output buffer. */
- default:
- result = Curl_setopt(data, tag, arg);
- break;
- }
-
- va_end(arg);
- return result;
-}
-
-
-char *
-curl_form_long_value(long value)
-
-{
- /* ILE/RPG cannot cast an integer to a pointer. This procedure does it. */
-
- return (char *) value;
-}
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.h b/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.h
deleted file mode 100644
index f270d83..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/ccsidcurl.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * $Id$
- *
- ***************************************************************************/
-
-#ifndef __CURL_CCSIDCURL_H
-#define __CURL_CCSIDCURL_H
-
-#include <curl.h>
-#include <easy.h>
-#include <multi.h>
-
-
-CURL_EXTERN char * curl_version_ccsid(unsigned int ccsid);
-CURL_EXTERN char * curl_easy_escape_ccsid(CURL * handle,
- const char * string, int length,
- unsigned int sccsid,
- unsigned int dccsid);
-CURL_EXTERN char * curl_easy_unescape_ccsid(CURL * handle, const char * string,
- int length, int * outlength,
- unsigned int sccsid,
- unsigned int dccsid);
-CURL_EXTERN struct curl_slist * curl_slist_append_ccsid(struct curl_slist * lst,
- const char * data,
- unsigned int ccsid);
-CURL_EXTERN time_t curl_getdate_ccsid(const char * p, const time_t * unused,
- unsigned int ccsid);
-CURL_EXTERN curl_version_info_data * curl_version_info_ccsid(CURLversion stamp,
- unsigned int csid);
-CURL_EXTERN const char * curl_easy_strerror_ccsid(CURLcode error,
- unsigned int ccsid);
-CURL_EXTERN const char * curl_share_strerror_ccsid(CURLSHcode error,
- unsigned int ccsid);
-CURL_EXTERN const char * curl_multi_strerror_ccsid(CURLMcode error,
- unsigned int ccsid);
-CURL_EXTERN CURLcode curl_easy_getinfo_ccsid(CURL * curl, CURLINFO info, ...);
-CURL_EXTERN CURLFORMcode curl_formadd_ccsid(struct curl_httppost * * httppost,
- struct curl_httppost * * last_post,
- ...);
-CURL_EXTERN char * curl_form_long_value(long value);
-CURL_EXTERN int curl_formget_ccsid(struct curl_httppost * form, void * arg,
- curl_formget_callback append,
- unsigned int ccsid);
-CURL_EXTERN CURLcode curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...);
-
-#endif
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/curl.inc.in b/Utilities/cmcurl-7.19.0/packages/OS400/curl.inc.in
deleted file mode 100644
index bfbad1f..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/curl.inc.in
+++ /dev/null
@@ -1,1611 +0,0 @@
- **************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
- * ANY KIND, either express or implied.
- *
- * $Id$
- *
- **************************************************************************
- *
- /if not defined(CURL_CURL_INC_)
- /define CURL_CURL_INC_
- *
- * WARNING: this file should be kept in sync with C include files.
- *
- **************************************************************************
- * Constants
- **************************************************************************
- *
- d LIBCURL_VERSION...
- d c '@LIBCURL_VERSION@'
- d LIBCURL_VERSION_MAJOR...
- d c @LIBCURL_VERSION_MAJOR@
- d LIBCURL_VERSION_MINOR...
- d c @LIBCURL_VERSION_MINOR@
- d LIBCURL_VERSION_PATCH...
- d c @LIBCURL_VERSION_PATCH@
- d LIBCURL_VERSION_NUM...
- d c X'00@LIBCURL_VERSION_NUM@'
- d LIBCURL_TIMESTAMP...
- d c '@LIBCURL_TIMESTAMP@'
- *
- d CURL_SOCKET_BAD...
- d c -1
- d CURL_SOCKET_TIMEOUT...
- d c -1
- *
- d CURLINFO_STRING...
- d c X'00100000'
- d CURLINFO_LONG c X'00200000'
- d CURLINFO_DOUBLE...
- d c X'00300000'
- d CURLINFO_SLIST c X'00400000'
- d CURLINFO_MASK c X'000FFFFF'
- d CURLINFO_TYPEMASK...
- d c X'00F00000'
- *
- d CURL_GLOBAL_SSL...
- d c X'00000001'
- d CURL_GLOBAL_WIN32...
- d c X'00000002'
- d CURL_GLOBAL_ALL...
- d c X'00000003'
- d CURL_GLOBAL_NOTHING...
- d c X'00000000'
- d CURL_GLOBAL_DEFAULT...
- d c X'00000003'
- *
- d CURL_VERSION_IPV6...
- d c X'00000001'
- d CURL_VERSION_KERBEROS4...
- d c X'00000002'
- d CURL_VERSION_SSL...
- d c X'00000004'
- d CURL_VERSION_LIBZ...
- d c X'00000008'
- d CURL_VERSION_NTLM...
- d c X'00000010'
- d CURL_VERSION_GSSNEGOTIATE...
- d c X'00000020'
- d CURL_VERSION_DEBUG...
- d c X'00000040'
- d CURL_VERSION_ASYNCHDNS...
- d c X'00000080'
- d CURL_VERSION_SPNEGO...
- d c X'00000100'
- d CURL_VERSION_LARGEFILE...
- d c X'00000200'
- d CURL_VERSION_IDN...
- d c X'00000400'
- d CURL_VERSION_SSPI...
- d c X'00000800'
- d CURL_VERSION_CONV...
- d c X'00001000'
- *
- d HTTPPOST_FILENAME...
- d c X'00000001'
- d HTTPPOST_READFILE...
- d c X'00000002'
- d HTTPPOST_PTRNAME...
- d c X'00000004'
- d HTTPPOST_PTRCONTENTS...
- d c X'00000008'
- d HTTPPOST_BUFFER...
- d c X'00000010'
- d HTTPPOST_PTRBUFFER...
- d c X'00000020'
- d HTTPPOST_CALLBACK...
- d c X'00000040'
- *
- d CURL_READFUNC_ABORT...
- d c X'10000000'
- d CURL_READFUNC_PAUSE...
- d c X'10000001'
- *
- d CURL_WRITEFUNC_PAUSE...
- d c X'10000001'
- *
- d CURLAUTH_NONE c X'00000000'
- d CURLAUTH_BASIC c X'00000001'
- d CURLAUTH_DIGEST...
- d c X'00000002'
- d CURLAUTH_GSSNEGOTIATE...
- d c X'00000004'
- d CURLAUTH_NTLM c X'00000008'
- d CURLAUTH_ANY c X'7FFFFFFF'
- d CURLAUTH_ANYSAFE...
- d c X'7FFFFFFE' ~CURLAUTH_BASIC
- *
- d CURLSSH_AUTH_ANY...
- d c X'7FFFFFFF'
- d CURLSSH_AUTH_NONE...
- d c X'00000000'
- d CURLSSH_AUTH_PUBLICKEY...
- d c X'00000001'
- d CURLSSH_AUTH_PASSWORD...
- d c X'00000002'
- d CURLSSH_AUTH_HOST...
- d c X'00000004'
- d CURLSSH_AUTH_KEYBOARD...
- d c X'00000008'
- d CURLSSH_AUTH_DEFAULT...
- d c X'7FFFFFFF' CURLSSH_AUTH_ANY
- *
- d CURL_ERROR_SIZE...
- d c 256
- *
- d CURLOPTTYPE_LONG...
- d c 0
- d CURLOPTTYPE_OBJECTPOINT...
- d c 10000
- d CURLOPTTYPE_FUNCTIONPOINT...
- d c 20000
- d CURLOPTTYPE_OFF_T...
- d c 30000
- *
- d CURL_IPRESOLVE_WHATEVER...
- d c 0
- d CURL_IPRESOLVE_V4...
- d c 1
- d CURL_IPRESOLVE_V6...
- d c 2
- *
- d CURL_HTTP_VERSION_NONE...
- d c 0
- d CURL_HTTP_VERSION_1_0...
- d c 1
- d CURL_HTTP_VERSION_1_1...
- d c 2
- *
- d CURL_NETRC_IGNORED...
- d c 0
- d CURL_NETRC_OPTIONAL...
- d c 1
- d CURL_NETRC_REQUIRED...
- d c 2
- *
- d CURL_SSLVERSION_DEFAULT...
- d c 0
- d CURL_SSLVERSION_TLSv1...
- d c 1
- d CURL_SSLVERSION_SSLv2...
- d c 2
- d CURL_SSLVERSION_SSLv3...
- d c 3
- *
- d CURL_POLL_NONE c 0
- d CURL_POLL_IN c 1
- d CURL_POLL_OUT c 2
- d CURL_POLL_INOUT...
- d c 3
- d CURL_POLL_REMOVE...
- d c 4
- *
- d CURL_CSELECT_IN...
- d c X'00000001'
- d CURL_CSELECT_OUT...
- d c X'00000002'
- d CURL_CSELECT_ERR...
- d c X'00000004'
- *
- d CURLPAUSE_RECV c X'00000001'
- d CURLPAUSE_RECV_CONT...
- d c X'00000000'
- d CURLPAUSE_SEND c X'00000004'
- d CURLPAUSE_SEND_CONT...
- d c X'00000000'
- d CURLPAUSE_ALL c X'00000005'
- d CURLPAUSE_CONT c X'00000000'
- *
- **************************************************************************
- * Types
- **************************************************************************
- *
- d curl_socket_t s 10i 0 based(######ptr######)
- *
- d curl_off_t s 20i 0 based(######ptr######)
- *
- d CURLcode s 10i 0 based(######ptr######) Enum
- d CURLE_OK c 0
- d CURLE_UNSUPPORTED_PROTOCOL...
- d c 1
- d CURLE_FAILED_INIT...
- d c 2
- d CURLE_URL_MALFORMAT...
- d c 3
- d CURLE_OBSOLETE4...
- d c 4
- d CURLE_COULDNT_RESOLVE_PROXY...
- d c 5
- d CURLE_COULDNT_RESOLVE_HOST...
- d c 6
- d CURLE_COULDNT_CONNECT...
- d c 7
- d CURLE_FTP_WEIRD_SERVER_REPLY...
- d c 8
- d CURLE_REMOTE_ACCESS_DENIED...
- d c 9
- d CURLE_OBSOLETE10...
- d c 10
- d CURLE_FTP_WEIRD_PASS_REPLY...
- d c 11
- d CURLE_OBSOLETE12...
- d c 12
- d CURLE_FTP_WEIRD_PASV_REPLY...
- d c 13
- d CURLE_FTP_WEIRD_227_FORMAT...
- d c 14
- d CURLE_FTP_CANT_GET_HOST...
- d c 15
- d CURLE_OBSOLETE16...
- d c 16
- d CURLE_FTP_COULDNT_SET_TYPE...
- d c 17
- d CURLE_PARTIAL_FILE...
- d c 18
- d CURLE_FTP_COULDNT_RETR_FILE...
- d c 19
- d CURLE_OBSOLETE20...
- d c 20
- d CURLE_QUOTE_ERROR...
- d c 21
- d CURLE_HTTP_RETURNED_ERROR...
- d c 22
- d CURLE_WRITE_ERROR...
- d c 23
- d CURLE_OBSOLETE24...
- d c 24
- d CURLE_UPLOAD_FAILED...
- d c 25
- d CURLE_READ_ERROR...
- d c 26
- d CURLE_OUT_OF_MEMORY...
- d c 27
- d CURLE_OPERATION_TIMEDOUT...
- d c 28
- d CURLE_OBSOLETE29...
- d c 29
- d CURLE_FTP_PORT_FAILED...
- d c 30
- d CURLE_FTP_COULDNT_USE_REST...
- d c 31
- d CURLE_OBSOLETE32...
- d c 32
- d CURLE_RANGE_ERROR...
- d c 33
- d CURLE_HTTP_POST_ERROR...
- d c 34
- d CURLE_SSL_CONNECT_ERROR...
- d c 35
- d CURLE_BAD_DOWNLOAD_RESUME...
- d c 36
- d CURLE_FILE_COULDNT_READ_FILE...
- d c 37
- d CURLE_LDAP_CANNOT_BIND...
- d c 38
- d CURLE_LDAP_SEARCH_FAILED...
- d c 39
- d CURLE_OBSOLETE40...
- d c 40
- d CURLE_FUNCTION_NOT_FOUND...
- d c 41
- d CURLE_ABORTED_BY_CALLBACK...
- d c 42
- d CURLE_BAD_FUNCTION_ARGUMENT...
- d c 43
- d CURLE_OBSOLETE44...
- d c 44
- d CURLE_INTERFACE_FAILED...
- d c 45
- d CURLE_OBSOLETE46...
- d c 46
- d CURLE_TOO_MANY_REDIRECTS...
- d c 47
- d CURLE_UNKNOWN_TELNET_OPTION...
- d c 48
- d CURLE_TELNET_OPTION_SYNTAX...
- d c 49
- d CURLE_OBSOLETE50...
- d c 50
- d CURLE_PEER_FAILED_VERIFICATION...
- d c 51
- d CURLE_GOT_NOTHING...
- d c 52
- d CURLE_SSL_ENGINE_NOTFOUND...
- d c 53
- d CURLE_SSL_ENGINE_SETFAILED...
- d c 54
- d CURLE_SEND_ERROR...
- d c 55
- d CURLE_RECV_ERROR...
- d c 56
- d CURLE_OBSOLETE57...
- d c 57
- d CURLE_SSL_CERTPROBLEM...
- d c 58
- d CURLE_SSL_CIPHER...
- d c 59
- d CURLE_SSL_CACERT...
- d c 60
- d CURLE_BAD_CONTENT_ENCODING...
- d c 61
- d CURLE_LDAP_INVALID_URL...
- d c 62
- d CURLE_FILESIZE_EXCEEDED...
- d c 63
- d CURLE_USE_SSL_FAILED...
- d c 64
- d CURLE_SEND_FAIL_REWIND...
- d c 65
- d CURLE_SSL_ENGINE_INITFAILED...
- d c 66
- d CURLE_LOGIN_DENIED...
- d c 67
- d CURLE_TFTP_NOTFOUND...
- d c 68
- d CURLE_TFTP_PERM...
- d c 69
- d CURLE_REMOTE_DISK_FULL...
- d c 70
- d CURLE_TFTP_ILLEGAL...
- d c 71
- d CURLE_TFTP_UNKNOWNID...
- d c 72
- d CURLE_REMOTE_FILE_EXISTS...
- d c 73
- d CURLE_TFTP_NOSUCHUSER...
- d c 74
- d CURLE_CONV_FAILED...
- d c 75
- d CURLE_CONV_REQD...
- d c 76
- d CURLE_SSL_CACERT_BADFILE...
- d c 77
- d CURLE_REMOTE_FILE_NOT_FOUND...
- d c 78
- d CURLE_SSH...
- d c 79
- d CURLE_SSL_SHUTDOWN_FAILED...
- d c 80
- d CURLE_AGAIN...
- d c 81
- d CURLE_SSL_CRL_BADFILE...
- d c 82
- d CURLE_SSL_ISSUER_ERROR...
- d c 83
- *
- d curlioerr s 10i 0 based(######ptr######) Enum
- d CURLIOE_OK c 0
- d CURLIOE_UNKNOWNCMD...
- d c 1
- d CURLIOE_FAILRESTART...
- d c 2
- *
- d curliocmd s 10i 0 based(######ptr######) Enum
- d CURLIOCMD_NOP c 0
- d CURLIOCMD_RESTARTREAD...
- d c 1
- *
- d curl_infotype s 10i 0 based(######ptr######) Enum
- d CURLINFO_TEXT...
- d c 0
- d CURLINFO_HEADER_IN...
- d c 1
- d CURLINFO_HEADER_OUT...
- d c 2
- d CURLINFO_DATA_IN...
- d c 3
- d CURLINFO_DATA_OUT...
- d c 4
- d CURLINFO_SSL_DATA_IN...
- d c 5
- d CURLINFO_SSL_DATA_OUT...
- d c 6
- d CURLINFO_END...
- d c 7
- *
- d curl_proxytype s 10i 0 based(######ptr######) Enum
- d CURLPROXY_HTTP...
- d c 0
- d CURLPROXY_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_usessl s 10i 0 based(######ptr######) Enum
- d CURLUSESSL_NONE...
- d c 0
- d CURLUSESSL_TRY...
- d c 1
- d CURLUSESSL_CONTROL...
- d c 2
- d CURLUSESSL_ALL...
- d c 3
- *
- d curl_ftpccc s 10i 0 based(######ptr######) Enum
- d CURLFTPSSL_CCC_NONE...
- d c 0
- d CURLFTPSSL_CCC_PASSIVE...
- d c 1
- d CURLFTPSSL_CCC_ACTIVE...
- d c 2
- *
- d curl_ftpauth s 10i 0 based(######ptr######) Enum
- d CURLFTPAUTH_DEFAULT...
- d c 0
- d CURLFTPAUTH_SSL...
- d c 1
- d CURLFTPAUTH_TLS...
- d c 2
- *
- d curl_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 CURLoption s 10i 0 based(######ptr######) Enum
- d CURLOPT_FILE c 10001
- d CURLOPT_WRITEDATA...
- d c 10001
- d CURLOPT_URL c 10002
- d CURLOPT_PORT c 00003
- d CURLOPT_PROXY c 10004
- d CURLOPT_USERPWD...
- d c 10005
- d CURLOPT_PROXYUSERPWD...
- d c 10006
- d CURLOPT_RANGE c 10007
- d CURLOPT_INFILE...
- d c 10009
- d CURLOPT_READDATA...
- d c 10009
- d CURLOPT_ERRORBUFFER...
- d c 10010
- d CURLOPT_WRITEFUNCTION...
- d c 20011
- d CURLOPT_READFUNCTION...
- d c 20012
- d CURLOPT_TIMEOUT...
- d c 00013
- d CURLOPT_INFILESIZE...
- d c 00014
- d CURLOPT_POSTFIELDS...
- d c 10015
- d CURLOPT_REFERER...
- d c 10016
- d CURLOPT_FTPPORT...
- d c 10017
- d CURLOPT_USERAGENT...
- d c 10018
- d CURLOPT_LOW_SPEED_LIMIT...
- d c 00019
- d CURLOPT_LOW_SPEED_TIME...
- d c 00020
- d CURLOPT_RESUME_FROM...
- d c 00021
- d CURLOPT_COOKIE...
- d c 10022
- d CURLOPT_HTTPHEADER...
- d c 10023
- d CURLOPT_HTTPPOST...
- d c 10024
- d CURLOPT_SSLCERT...
- d c 10025
- d CURLOPT_SSLCERTPASSWD...
- d c 10026
- d CURLOPT_KEYPASSWD...
- d c 10026
- d CURLOPT_CRLF c 00027
- d CURLOPT_QUOTE c 10028
- d CURLOPT_WRITEHEADER...
- d c 10029
- d CURLOPT_HEADERDATA...
- d c 10029
- d CURLOPT_COOKIEFILE...
- d c 10031
- d CURLOPT_SSLVERSION...
- d c 00032
- d CURLOPT_TIMECONDITION...
- d c 00033
- d CURLOPT_TIMEVALUE...
- d c 00034
- d CURLOPT_CUSTOMREQUEST...
- d c 10036
- d CURLOPT_STDERR...
- d c 10037
- d CURLOPT_POSTQUOTE...
- d c 10039
- d CURLOPT_WRITEINFO...
- d c 10040
- d CURLOPT_VERBOSE...
- d c 00041
- d CURLOPT_HEADER...
- d c 00042
- d CURLOPT_NOPROGRESS...
- d c 00043
- d CURLOPT_NOBODY...
- d c 00044
- d CURLOPT_FAILONERROR...
- d c 00045
- d CURLOPT_UPLOAD...
- d c 00046
- d CURLOPT_POST c 00047
- d CURLOPT_DIRLISTONLY...
- d c 00048
- d CURLOPT_APPEND...
- d c 00050
- d CURLOPT_NETRC c 00051
- d CURLOPT_FOLLOWLOCATION...
- d c 00052
- d CURLOPT_TRANSFERTEXT...
- d c 00053
- d CURLOPT_PUT c 00054
- d CURLOPT_PROGRESSFUNCTION...
- d c 20056
- d CURLOPT_PROGRESSDATA...
- d c 10057
- d CURLOPT_AUTOREFERER...
- d c 00058
- d CURLOPT_PROXYPORT...
- d c 00059
- d CURLOPT_POSTFIELDSIZE...
- d c 00060
- d CURLOPT_HTTPPROXYTUNNEL...
- d c 00061
- d CURLOPT_INTERFACE...
- d c 10062
- d CURLOPT_KRBLEVEL...
- d c 10063
- d CURLOPT_SSL_VERIFYPEER...
- d c 00064
- d CURLOPT_CAINFO...
- d c 10065
- d CURLOPT_MAXREDIRS...
- d c 00068
- d CURLOPT_FILETIME...
- d c 00069
- d CURLOPT_TELNETOPTIONS...
- d c 10070
- d CURLOPT_MAXCONNECTS...
- d c 00071
- d CURLOPT_CLOSEPOLICY...
- d c 00072
- d CURLOPT_FRESH_CONNECT...
- d c 00074
- d CURLOPT_FORBID_REUSE...
- d c 00075
- d CURLOPT_RANDOM_FILE...
- d c 10076
- d CURLOPT_EGDSOCKET...
- d c 10077
- d CURLOPT_CONNECTTIMEOUT...
- d c 00078
- d CURLOPT_HEADERFUNCTION...
- d c 20079
- d CURLOPT_HTTPGET...
- d c 00080
- d CURLOPT_SSL_VERIFYHOST...
- d c 00081
- d CURLOPT_COOKIEJAR...
- d c 10082
- d CURLOPT_SSL_CIPHER_LIST...
- d c 10083
- d CURLOPT_HTTP_VERSION...
- d c 00084
- d CURLOPT_FTP_USE_EPSV...
- d c 00085
- d CURLOPT_SSLCERTTYPE...
- d c 10086
- d CURLOPT_SSLKEY...
- d c 10087
- d CURLOPT_SSLKEYTYPE...
- d c 10088
- d CURLOPT_SSLENGINE...
- d c 10089
- d CURLOPT_SSLENGINE_DEFAULT...
- d c 00090
- d CURLOPT_DNS_USE_GLOBAL_CACHE...
- d c 00091
- d CURLOPT_DNS_CACHE_TIMEOUT...
- d c 00092
- d CURLOPT_PREQUOTE...
- d c 10093
- d CURLOPT_DEBUGFUNCTION...
- d c 20094
- d CURLOPT_DEBUGDATA...
- d c 10095
- d CURLOPT_COOKIESESSION...
- d c 00096
- d CURLOPT_CAPATH...
- d c 10097
- d CURLOPT_BUFFERSIZE...
- d c 00098
- d CURLOPT_NOSIGNAL...
- d c 00099
- d CURLOPT_SHARE c 10100
- d CURLOPT_PROXYTYPE...
- d c 00101
- d CURLOPT_ENCODING...
- d c 10102
- d CURLOPT_PRIVATE...
- d c 10103
- d CURLOPT_HTTP200ALIASES...
- d c 10104
- d CURLOPT_UNRESTRICTED_AUTH...
- d c 00105
- d CURLOPT_FTP_USE_EPRT...
- d c 00106
- d CURLOPT_HTTPAUTH...
- d c 00107
- d CURLOPT_SSL_CTX_FUNCTION...
- d c 20108
- d CURLOPT_SSL_CTX_DATA...
- d c 10109
- d CURLOPT_FTP_CREATE_MISSING_DIRS...
- d c 00110
- d CURLOPT_PROXYAUTH...
- d c 00111
- d CURLOPT_FTP_RESPONSE_TIMEOUT...
- d c 00112
- d CURLOPT_IPRESOLVE...
- d c 00113
- d CURLOPT_MAXFILESIZE...
- d c 00114
- d CURLOPT_INFILESIZE_LARGE...
- d c 30115
- d CURLOPT_RESUME_FROM_LARGE...
- d c 30116
- d CURLOPT_MAXFILESIZE_LARGE...
- d c 30117
- d CURLOPT_NETRC_FILE...
- d c 10118
- d CURLOPT_USE_SSL...
- d c 00119
- d CURLOPT_POSTFIELDSIZE_LARGE...
- d c 30120
- d CURLOPT_TCP_NODELAY...
- d c 00121
- d CURLOPT_FTPSSLAUTH...
- d c 00129
- d CURLOPT_IOCTLFUNCTION...
- d c 20130
- d CURLOPT_IOCTLDATA...
- d c 10131
- d CURLOPT_FTP_ACCOUNT...
- d c 10134
- d CURLOPT_COOKIELIST...
- d c 10135
- d CURLOPT_IGNORE_CONTENT_LENGTH...
- d c 00136
- d CURLOPT_FTP_SKIP_PASV_IP...
- d c 00137
- d CURLOPT_FTP_FILEMETHOD...
- d c 00138
- d CURLOPT_LOCALPORT...
- d c 00139
- d CURLOPT_LOCALPORTRANGE...
- d c 00140
- d CURLOPT_CONNECT_ONLY...
- d c 00141
- d CURLOPT_CONV_FROM_NETWORK_FUNCTION...
- d c 20142
- d CURLOPT_CONV_TO_NETWORK_FUNCTION...
- d c 20143
- d CURLOPT_CONV_FROM_UTF8_FUNCTION...
- d c 20144
- d CURLOPT_MAX_SEND_SPEED_LARGE...
- d c 30145
- d CURLOPT_MAX_RECV_SPEED_LARGE...
- d c 30146
- d CURLOPT_FTP_ALTERNATIVE_TO_USER...
- d c 10147
- d CURLOPT_SOCKOPTFUNCTION...
- d c 20148
- d CURLOPT_SOCKOPTDATA...
- d c 10149
- d CURLOPT_SSL_SESSIONID_CACHE...
- d c 00150
- d CURLOPT_SSH_AUTH_TYPES...
- d c 00151
- d CURLOPT_SSH_PUBLIC_KEYFILE...
- d c 10152
- d CURLOPT_SSH_PRIVATE_KEYFILE...
- d c 10153
- d CURLOPT_FTP_SSL_CCC...
- d c 00154
- d CURLOPT_TIMEOUT_MS...
- d c 00155
- d CURLOPT_CONNECTTIMEOUT_MS...
- d c 00156
- d CURLOPT_HTTP_TRANSFER_DECODING...
- d c 00157
- d CURLOPT_HTTP_CONTENT_DECODING...
- d c 00158
- d CURLOPT_NEW_FILE_PERMS...
- d c 00159
- d CURLOPT_NEW_DIRECTORY_PERMS...
- d c 00160
- d CURLOPT_POST301...
- 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 CURLFORMcode s 10i 0 based(######ptr######) Enum
- d CURL_FORMADD_OK...
- d c 0
- d CURL_FORMADD_MEMORY...
- d c 1
- d CURL_FORMADD_OPTION_TWICE...
- d c 2
- d CURL_FORMADD_NULL...
- d c 3
- d CURL_FORMADD_UNKNOWN_OPTION...
- d c 4
- d CURL_FORMADD_INCOMPLETE...
- d c 5
- d CURL_FORMADD_ILLEGAL_ARRAY...
- d c 6
- d CURL_FORMADD_DISABLED...
- d c 7
- *
- d CURLformoption s 10i 0 based(######ptr######) Enum
- d CURLFORM_NOTHING...
- d c 0
- d CURLFORM_COPYNAME...
- d c 1
- d CURLFORM_PTRNAME...
- d c 2
- d CURLFORM_NAMELENGTH...
- d c 3
- d CURLFORM_COPYCONTENTS...
- d c 4
- d CURLFORM_PTRCONTENTS...
- d c 5
- d CURLFORM_CONTENTSLENGTH...
- d c 6
- d CURLFORM_FILECONTENT...
- d c 7
- d CURLFORM_ARRAY...
- d c 8
- d CURLFORM_OBSOLETE...
- d c 9
- d CURLFORM_FILE...
- d c 10
- d CURLFORM_BUFFER...
- d c 11
- d CURLFORM_BUFFERPTR...
- d c 12
- d CURLFORM_BUFFERLENGTH...
- d c 13
- d CURLFORM_CONTENTTYPE...
- d c 14
- d CURLFORM_CONTENTHEADER...
- d c 15
- d CURLFORM_FILENAME...
- d c 16
- d CURLFORM_END...
- d c 17
- d CURLFORM_OBSOLETE2...
- d c 18
- d CURLFORM_STREAM...
- d c 19
- *
- d CURLINFO s 10i 0 based(######ptr######) Enum
- d CURLINFO_EFFECTIVE_URL... CURLINFO_STRING + 1
- d c X'00100001'
- d CURLINFO_RESPONSE_CODE... CURLINFO_LONG + 2
- d c X'00200002'
- d CURLINFO_TOTAL_TIME... CURLINFO_DOUBLE + 3
- d c X'00300003'
- d CURLINFO_NAMELOOKUP_TIME... CURLINFO_DOUBLE + 4
- d c X'00300004'
- d CURLINFO_CONNECT_TIME... CURLINFO_DOUBLE + 5
- d c X'00300005'
- d CURLINFO_PRETRANSFER_TIME... CURLINFO_DOUBLE + 6
- d c X'00300006'
- d CURLINFO_SIZE_UPLOAD... CURLINFO_DOUBLE + 7
- d c X'00300007'
- d CURLINFO_SIZE_DOWNLOAD... CURLINFO_DOUBLE + 8
- d c X'00300008'
- d CURLINFO_SPEED_DOWNLOAD... CURLINFO_DOUBLE + 9
- d c X'00300009'
- d CURLINFO_SPEED_UPLOAD... CURLINFO_DOUBLE + 10
- d c X'0030000A'
- d CURLINFO_HEADER_SIZE... CURLINFO_LONG + 11
- d c X'0020000B'
- d CURLINFO_REQUEST_SIZE... CURLINFO_LONG + 12
- d c X'0020000C'
- d CURLINFO_SSL_VERIFYRESULT... CURLINFO_LONG + 13
- d c X'0020000D'
- d CURLINFO_FILETIME... CURLINFO_LONG + 14
- d c X'0020000E'
- d CURLINFO_CONTENT_LENGTH_DOWNLOAD... CURLINFO_DOUBLE + 15
- d c X'0030000F'
- d CURLINFO_CONTENT_LENGTH_UPLOAD... CURLINFO_DOUBLE + 16
- d c X'00300010'
- d CURLINFO_STARTTRANSFER_TIME... CURLINFO_DOUBLE + 17
- d c X'00300011'
- d CURLINFO_CONTENT_TYPE... CURLINFO_STRING + 18
- d c X'00100012'
- d CURLINFO_REDIRECT_TIME... CURLINFO_DOUBLE + 19
- d c X'00300013'
- d CURLINFO_REDIRECT_COUNT... CURLINFO_LONG + 20
- d c X'00200014'
- d CURLINFO_PRIVATE... CURLINFO_STRING + 21
- d c X'00100015'
- d CURLINFO_HTTP_CONNECTCODE... CURLINFO_LONG + 22
- d c X'00200016'
- d CURLINFO_HTTPAUTH_AVAIL... CURLINFO_LONG + 23
- d c X'00200017'
- d CURLINFO_PROXYAUTH_AVAIL... CURLINFO_LONG + 24
- d c X'00200018'
- d CURLINFO_OS_ERRNO... CURLINFO_LONG + 25
- d c X'00200019'
- d CURLINFO_NUM_CONNECTS... CURLINFO_LONG + 26
- d c X'0020001A'
- d CURLINFO_SSL_ENGINES... CURLINFO_SLIST + 27
- d c X'0040001B'
- d CURLINFO_COOKIELIST... CURLINFO_SLIST + 28
- d c X'0040001C'
- d CURLINFO_LASTSOCKET... CURLINFO_LONG + 29
- d c X'0020001D'
- d CURLINFO_FTP_ENTRY_PATH... CURLINFO_STRING + 30
- d c X'0010001E'
- d CURLINFO_REDIRECT_URL... CURLINFO_STRING + 31
- d c X'0010001F'
- d CURLINFO_PRIMARY_IP... CURLINFO_STRING + 32
- d c X'00100020'
- d CURLINFO_APPCONNECT_TIME... CURLINFO_DOUBLE + 33
- d c X'00300021'
- d CURLINFO_HTTP_CODE... Old ...RESPONSE_CODE
- d c X'00200002'
- *
- d curl_closepolicy...
- d s 10i 0 based(######ptr######) Enum
- d CURLCLOSEPOLICY_OLDEST...
- d c 1
- d CURLCLOSEPOLICY_LEAST_RECENTLY_USED...
- d c 2
- d CURLCLOSEPOLICY_LEAST_TRAFFIC...
- d c 3
- d CURLCLOSEPOLICY_SLOWEST...
- d c 4
- d CURLCLOSEPOLICY_CALLBACK...
- d c 5
- *
- d curl_lock_data...
- d s 10i 0 based(######ptr######) Enum
- d CURL_LOCK_DATA_NONE...
- d c 0
- d CURL_LOCK_DATA_SHARE...
- d c 1
- d CURL_LOCK_DATA_COOKIE...
- d c 2
- d CURL_LOCK_DATA_DNS...
- d c 3
- d CURL_LOCK_DATA_SSL_SESSION...
- d c 4
- d CURL_LOCK_DATA_CONNECT...
- d c 5
- d CURL_LOCK_DATA_LAST...
- d c 6
- *
- d curl_lock_access...
- d s 10i 0 based(######ptr######) Enum
- d CURL_LOCK_ACCESS_NONE...
- d c 0
- d CURL_LOCK_ACCESS_SHARED...
- d c 1
- d CURL_LOCK_ACCESS_SINGLE...
- d c 2
- *
- d curl_TimeCond s 10i 0 based(######ptr######) Enum
- d CURL_TIMECOND_NONE...
- d c 0
- d CURL_TIMECOND_IFMODSINCE...
- d c 1
- d CURL_TIMECOND_LASTMOD...
- d c 2
- d CURL_TIMECOND_LAST...
- d c 3
- *
- d CURLSHcode s 10i 0 based(######ptr######) Enum
- d CURLSHE_OK c 0
- d CURLSHE_BAD_OPTION...
- d c 1
- d CURLSHE_IN_USE...
- d c 2
- d CURLSHE_INVALID...
- d c 3
- d CURLSHE_NOMEM...
- d c 4
- *
- d CURLSHoption...
- d s 10i 0 based(######ptr######) Enum
- d CURLSHOPT_SHARE...
- d c 1
- d CURLSHOPT_UNSHARE...
- d c 2
- d CURLSHOPT_LOCKFUNC...
- d c 3
- d CURLSHOPT_UNLOCKFUNC...
- d c 4
- d CURLSHOPT_USERDATA...
- d c 5
- *
- d CURLversion s 10i 0 based(######ptr######) Enum
- d CURLVERSION_FIRST...
- d c 0
- d CURLVERSION_SECOND...
- d c 1
- d CURLVERSION_THIRD...
- d c 2
- d CURLVERSION_FOURTH...
- d c 3
- d CURLVERSION_NOW...
- d c 3 CURLVERSION_FOURTH
- *
- d curlsocktype s 10i 0 based(######ptr######) Enum
- d CURLSOCKTYPE_IPCXN...
- d c 0
- *
- d CURLMcode s 10i 0 based(######ptr######) Enum
- d CURLM_CALL_MULTI_PERFORM...
- d c -1
- d CURLM_CALL_MULTI_SOCKET...
- d c -1
- d CURLM_OK c 0
- d CURLM_BAD_HANDLE...
- d c 1
- d CURLM_BAD_EASY_HANDLE...
- d c 2
- d CURLM_OUT_OF_MEMORY...
- d c 3
- d CURLM_INTERNAL_ERROR...
- d c 4
- d CURLM_BAD_SOCKET...
- d c 5
- d CURLM_UNKNOWN_OPTION...
- d c 6
- d CURLM_LAST c 7
- *
- d CURLMSG s 10i 0 based(######ptr######) Enum
- d CURLMSG_NONE c 0
- d CURLMSG_DONE c 1
- *
- d CURLMoption s 10i 0 based(######ptr######) Enum
- d CURLMOPT_SOCKETFUNCTION...
- d c 20001
- d CURLMOPT_SOCKETDATA...
- d c 10002
- d CURLMOPT_PIPELINING...
- d c 00003
- d CURLMOPT_TIMERFUNCTION...
- d c 20004
- d CURLMOPT_TIMERDATA...
- d c 10005
- d CURLMOPT_MAXCONNECTS...
- d c 00006
- *
- * Renaming CURLMsg to CURL_Msg to avoid case-insensivity name clash.
- *
- d CURL_Msg ds based(######ptr######)
- d qualified
- d msg like(CURLMSG)
- d easy_handle * CURL *
- d data *
- d whatever * overlay(data) void *
- d result overlay(data) like(CURLcode)
- *
- d curl_http_post...
- d ds based(######ptr######)
- d qualified
- d next * curl_httppost *
- d name * char *
- d namelength 10i 0 long
- d contents * char *
- d contentslength...
- d 10i 0 long
- d buffer * char *
- d bufferlength...
- d 10i 0 long
- d contenttype * char *
- d contentheader...
- d * curl_slist *
- d more * curl_httppost *
- d flags 10i 0 long
- d showfilename * char *
- d userp * void *
- *
- d curl_sockaddr ds based(######ptr######)
- d qualified
- d family 10i 0
- d socktype 10i 0
- d protocol 10i 0
- d addrlen 10i 0 socklen_t
- d addr 16 struct sockaddr
- *
- d curl_forms ds based(######ptr######)
- d qualified
- d option like(CURLformoption)
- d value * const char *
- d value_ptr * overlay(value)
- d value_procptr...
- d * overlay(value) procptr
- *
- d curl_slist ds based(######ptr######)
- d qualified
- d data * char *
- d next * struct curl_slist *
- *
- d curl_version_info_data...
- d ds based(######ptr######)
- d qualified
- d age like(CURLversion)
- d version * const char *
- d version_num 10u 0
- d host * const char *
- d features 10i 0
- d ssl_version * const char *
- d ssl_version_num...
- d 10i 0 long
- d libz_version * const char *
- d protocols * const char * const *
- d ares * const char *
- d ares_num 10i 0
- d libidn * const char *
- d iconv_ver_num...
- d 10i 0
- d libssh_version...
- d * const char *
- *
- d curl_formget_callback...
- d s * based(######ptr######) procptr
- *
- d curl_malloc_callback...
- d s * based(######ptr######) procptr
- *
- d curl_free_callback...
- d s * based(######ptr######) procptr
- *
- d curl_realloc_callback...
- d s * based(######ptr######) procptr
- *
- d curl_strdup_callback...
- d s * based(######ptr######) procptr
- *
- d curl_calloc_callback...
- d s * based(######ptr######) procptr
- *
- d curl_lock_function...
- d s * based(######ptr######) procptr
- *
- d curl_unlock_function...
- d s * based(######ptr######) procptr
- *
- d curl_progress_callback...
- d s * based(######ptr######) procptr
- *
- d curl_read_callback...
- d s * based(######ptr######) procptr
- *
- d curl_write_callback...
- d s * based(######ptr######) procptr
- *
- d curl_seek_callback...
- d s * based(######ptr######) procptr
- *
- d curl_sockopt_callback...
- d s * based(######ptr######) procptr
- *
- d curl_ioctl_callback...
- d s * based(######ptr######) procptr
- *
- d curl_debug_callback...
- d s * based(######ptr######) procptr
- *
- d curl_conv_callback...
- d s * based(######ptr######) procptr
- *
- d curl_ssl_ctx_callback...
- d s * based(######ptr######) procptr
- *
- d curl_socket_callback...
- d s * based(######ptr######) procptr
- *
- d curl_opensocket_callback...
- d s * based(######ptr######) procptr
- *
- **************************************************************************
- * Prototypes
- **************************************************************************
- *
- * This procedure as a variable parameter list.
- * This prototype allows use of an option array, or a single "object"
- * option. Other argument lists may be implemented by alias procedure
- * prototype definitions.
- *
- d curl_formadd pr extproc('curl_formadd')
- d like(CURLFORMcode)
- d httppost * curl_httppost *
- d lastpost * curl_httppost *
- d option1 value like(CURLFORMoption) CURLFORM_ARRAY
- d options(*nopass)
- d object1 * value options(*string: *nopass)
- d option2 value like(CURLFORMoption) CURLFORM_END
- d options(*nopass)
- *
- *
- d curl_strequal pr 10i 0 extproc('curl_strequal')
- d s1 * value options(*string)
- d s2 * value options(*string)
- *
- d curl_strnequal pr 10i 0 extproc('curl_strnequal')
- d s1 * value options(*string)
- d s2 * value options(*string)
- d n 10u 0 value
- *
- d curl_formget pr 10i 0 extproc('curl_formget')
- d form * value curl_httppost *
- d arg * value
- d append value like(curl_formget_callback)
- *
- d curl_formfree pr extproc('curl_formfree')
- d form * value curl_httppost *
- *
- d curl_getenv pr * extproc('curl_getenv')
- d variable * value options(*string)
- *
- d curl_version pr * extproc('curl_version')
- *
- d curl_easy_escape...
- d pr * extproc('curl_easy_escape') char *
- d handle * value CURL *
- d string * value options(*string)
- d length 10i 0 value
- *
- d curl_escape pr * extproc('curl_escape') char *
- d string * value options(*string)
- d length 10i 0 value
- *
- d curl_easy_unescape...
- d pr * extproc('curl_easy_unescape') char *
- d handle * value CURL *
- d string * value options(*string)
- d length 10i 0 value
- d outlength 10i 0 options(*omit)
- *
- d curl_unescape pr * extproc('curl_unescape') char *
- d string * value options(*string)
- d length 10i 0 value
- *
- d curl_free pr extproc('curl_free')
- d p * value
- *
- d curl_global_init...
- d pr extproc('curl_global_init')
- d like(CURLcode)
- d flags 10i 0 value
- *
- d curl_global_init_mem...
- d pr extproc('curl_global_init_mem')
- d like(CURLcode)
- d m value like(curl_malloc_callback)
- d f value like(curl_free_callback)
- d r value like(curl_realloc_callback)
- d s value like(curl_strdup_callback)
- d c value like(curl_calloc_callback)
- *
- d curl_global_cleanup...
- d pr extproc('curl_global_cleanup')
- *
- d curl_slist_append...
- d pr * extproc('curl_slist_append') struct curl_slist *
- d list * value struct curl_slist *
- d data * value options(*string) const char *
- *
- d curl_slist_free_all...
- d pr extproc('curl_slist_free_all')
- d list * value struct curl_slist *
- *
- d curl_getdate pr 10i 0 extproc('curl_getdate') time_t
- d p * value options(*string) const char *
- d unused 10i 0 const options(*omit) time_t
- *
- d curl_share_init...
- d pr * extproc('curl_share_init') CURLSH * (= void *)
- *
- * Variable argument type procedure.
- * Multiply prototyped to support all possible types.
- *
- d curl_share_setopt_int...
- d pr extproc('curl_share_setopt')
- d like(CURLSHcode)
- d share * value CURLSH * (= void *)
- d option value like(CURLSHoption)
- d intarg 10i 0 value options(*nopass)
- *
- d curl_share_setopt_ptr...
- d pr extproc('curl_share_setopt')
- d like(CURLSHcode)
- d share * value CURLSH * (= void *)
- d option value like(CURLSHoption)
- d ptrarg * value options(*nopass)
- *
- d curl_share_setopt_proc...
- d pr extproc('curl_share_setopt')
- d like(CURLSHcode)
- d share * value CURLSH * (= void *)
- d option value like(CURLSHoption)
- d procarg * value procptr options(*nopass)
- *
- d curl_share_cleanup...
- d pr extproc('curl_share_cleanup')
- d like(CURLSHcode)
- d share * value CURLSH * (= void *)
- *
- d curl_version_info...
- d pr * extproc('curl_version_info') c_i_version_data *
- d version value like(CURLversion)
- *
- d curl_easy_strerror...
- d pr * extproc('curl_easy_strerror') const char *
- d code value like(CURLcode)
- *
- d curl_share_strerror...
- d pr * extproc('curl_share_strerror') const char *
- d code value like(CURLSHcode)
- *
- d curl_easy_init pr * extproc('curl_easy_init') CURL *
- *
- * Multiple prototypes for vararg procedure curl_easy_setopt.
- *
- d curl_easy_setopt_long...
- d pr extproc('curl_easy_setopt')
- d like(CURLcode)
- d curl * value CURL *
- d option value like(CURLoption)
- d longarg 10i 0 value options(*nopass)
- *
- d curl_easy_setopt_object...
- d pr extproc('curl_easy_setopt')
- d like(CURLcode)
- d curl * value CURL *
- d option value like(CURLoption)
- d objectarg * value options(*string: *nopass)
- *
- d curl_easy_setopt_function...
- d pr extproc('curl_easy_setopt')
- d like(CURLcode)
- d curl * value CURL *
- d option value like(CURLoption)
- d functionarg * value procptr options(*nopass)
- *
- d curl_easy_setopt_offset...
- d pr extproc('curl_easy_setopt')
- d like(CURLcode)
- d curl * value CURL *
- d option value like(CURLoption)
- d offsetarg value like(curl_off_t)
- d options(*nopass)
- *
- *
- d curl_easy_perform...
- d pr extproc('curl_easy_perform')
- d like(CURLcode)
- d curl * value CURL *
- *
- d curl_easy_cleanup...
- d pr extproc('curl_easy_cleanup')
- d curl * value CURL *
- *
- * Multiple prototypes for vararg procedure curl_easy_getinfo.
- *
- d curl_easy_getinfo_string...
- d pr extproc('curl_easy_getinfo')
- d like(CURLcode)
- d curl * value CURL *
- d info value like(CURLINFO)
- d stringarg * options(*nopass) char *
- *
- d curl_easy_getinfo_long...
- d pr extproc('curl_easy_getinfo')
- d like(CURLcode)
- d curl * value CURL *
- d info value like(CURLINFO)
- d longarg 10i 0 options(*nopass)
- *
- d curl_easy_getinfo_double...
- d pr extproc('curl_easy_getinfo')
- d like(CURLcode)
- d curl * value CURL *
- d info value like(CURLINFO)
- d doublearg 8f options(*nopass)
- *
- d curl_easy_getinfo_slist...
- d pr extproc('curl_easy_getinfo')
- d like(CURLcode)
- d curl * value CURL *
- d info value like(CURLINFO)
- d slistarg * options(*nopass) struct curl_slist *
- *
- *
- d curl_easy_duphandle...
- d pr * extproc('curl_easy_duphandle') CURL *
- d curl * value CURL *
- *
- d curl_easy_reset...
- d pr extproc('curl_easy_reset')
- d curl * value CURL *
- *
- d curl_easy_recv...
- d pr extproc('curl_easy_recv')
- d like(CURLcode)
- d curl * value CURL *
- d buffer * value void *
- d buflen 10u 0 value size_t
- d n 10u 0 size_t *
- *
- d curl_easy_send...
- d pr extproc('curl_easy_send')
- d like(CURLcode)
- d curl * value CURL *
- d buffer * value const void *
- d buflen 10u 0 value size_t
- d n 10u 0 size_t *
- *
- d curl_easy_pause...
- d pr extproc('curl_easy_pause')
- d curl * value CURL *
- d bitmask 10i 0 value
- *
- d curl_multi_init...
- d pr * extproc('curl_multi_init') CURLM *
- *
- d curl_multi_add_handle...
- d pr extproc('curl_multi_add_handle')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d curl_handle * value CURL *
- *
- d curl_multi_remove_handle...
- d pr extproc('curl_multi_remove_handle')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d curl_handle * value CURL *
- *
- d curl_multi_fdset...
- d pr extproc('curl_multi_fdset')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d read_fd_set 65535 options(*varsize) fd_set
- d write_fd_set 65535 options(*varsize) fd_set
- d exc_fd_set 65535 options(*varsize) fd_set
- d max_fd 10i 0
- *
- d curl_multi_perform...
- d pr extproc('curl_multi_perform')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d running_handles...
- d 10i 0
- *
- d curl_multi_cleanup...
- d pr extproc('curl_multi_cleanup')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- *
- d curl_multi_info_read...
- d pr * extproc('curl_multi_info_read') CURL_Msg *
- d multi_handle * value CURLM *
- d msgs_in_queue 10i 0
- *
- d curl_multi_strerror...
- d pr * extproc('curl_multi_strerror') char *
- d code value like(CURLMcode)
- *
- d curl_multi_socket...
- d pr extproc('curl_multi_socket')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d s value like(curl_socket_t)
- d running_handles...
- d 10i 0
- *
- d curl_multi_socket_action...
- d pr extproc('curl_multi_socket_action')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d s value like(curl_socket_t)
- d ev_bitmask 10i 0 value
- d running_handles...
- d 10i 0
- *
- d curl_multi_socket_all...
- d pr extproc('curl_multi_socket_all')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d running_handles...
- d 10i 0
- *
- d curl_multi_timeout...
- d pr extproc('curl_multi_timeout')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d milliseconds 10i 0
- *
- * Multiple prototypes for vararg procedure curl_multi_setopt.
- *
- d curl_multi_setopt_long...
- d pr extproc('curl_multi_setopt')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d option value like(CURLMoption)
- d longarg 10i 0 value options(*nopass)
- *
- d curl_multi_setopt_object...
- d pr extproc('curl_multi_setopt')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d option value like(CURLMoption)
- d objectarg * value options(*string: *nopass)
- *
- d curl_multi_setopt_function...
- d pr extproc('curl_multi_setopt')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d option value like(CURLMoption)
- d functionarg * value procptr options(*nopass)
- *
- d curl_multi_setopt_offset...
- d pr extproc('curl_multi_setopt')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d option value like(CURLMoption)
- d offsetarg value like(curl_off_t)
- d options(*nopass)
- *
- *
- d curl_multi_assign...
- d pr extproc('curl_multi_assign')
- d like(CURLMcode)
- d multi_handle * value CURLM *
- d sockfd value like(curl_socket_t)
- d sockp * value void *
- *
- **************************************************************************
- * CCSID wrapper procedure prototypes
- **************************************************************************
- *
- d curl_version_ccsid...
- d pr * extproc('curl_version_ccsid')
- d ccsid 10u 0 value
- *
- d curl_easy_escape_ccsid...
- d pr * extproc('curl_easy_escape_ccsid') char *
- d handle * value CURL *
- d string * value options(*string)
- d length 10i 0 value
- d ccsid 10u 0 value
- *
- d curl_easy_unescape_ccsid...
- d pr * extproc('curl_easy_unescape_ccsid') char *
- d handle * value CURL *
- d string * value options(*string)
- d length 10i 0 value
- d outlength 10i 0 options(*omit)
- d ccsid 10u 0 value
- *
- d curl_slist_append_ccsid...
- d pr * extproc('curl_slist_append_ccsid') struct curl_slist *
- d list * value struct curl_slist *
- d data * value options(*string) const char *
- d ccsid 10u 0 value
- *
- d curl_getdate_ccsid...
- d pr 10i 0 extproc('curl_getdate_ccsid') time_t
- d p * value options(*string) const char *
- d unused 10i 0 const options(*omit) time_t
- d ccsid 10u 0 value
- *
- d curl_version_info_ccsid...
- d pr * extproc('curl_version_info_ccsid') c_i_version_data *
- d version value like(CURLversion)
- d ccsid 10u 0 value
- *
- d curl_easy_strerror_ccsid...
- d pr * extproc('curl_easy_strerror_ccsid') const char *
- d code value like(CURLcode)
- d ccsid 10u 0 value
- *
- d curl_share_strerror_ccsid...
- d pr * extproc('curl_share_strerror_ccsid') const char *
- d code value like(CURLSHcode)
- d ccsid 10u 0 value
- *
- d curl_multi_strerror_ccsid...
- d pr * extproc('curl_multi_strerror_ccsid') char *
- d code value like(CURLMcode)
- d ccsid 10u 0 value
- *
- d curl_easy_getinfo_ccsid...
- d pr extproc('curl_easy_getinfo_ccsid')
- d like(CURLcode)
- d curl * value CURL *
- d info value like(CURLINFO)
- d stringarg * options(*nopass) char *
- d ccsid 10u 0 value options(*nopass)
- *
- d curl_formadd_ccsid...
- d pr extproc('curl_formadd_ccsid')
- d like(CURLFORMcode)
- d httppost * curl_httppost *
- d lastpost * curl_httppost *
- d option1 value like(CURLFORMoption) CURLFORM_ARRAY
- d options(*nopass)
- d object1 * value options(*string: *nopass)
- d option2 value like(CURLFORMoption) CURLFORM_END
- d options(*nopass)
- *
- d curl_formget_ccsid...
- d pr 10i 0 extproc('curl_formget_ccsid')
- d form * value curl_httppost *
- d arg * value
- d append value like(curl_formget_callback)
- d ccsid 10u 0 value
- *
- d curl_form_long_value...
- d pr * extproc('curl_form_long_value')
- d value 10i 0 value curl_httppost *
- *
- d curl_easy_setopt_ccsid...
- d pr extproc('curl_easy_setopt_ccsid')
- d like(CURLcode)
- d curl * value CURL *
- d option value like(CURLoption)
- d objectarg * value options(*string: *nopass)
- d ccsid 10u 0 value options(*nopass)
- *
- /endif
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/initscript.sh b/Utilities/cmcurl-7.19.0/packages/OS400/initscript.sh
deleted file mode 100755
index 308c6d7..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/initscript.sh
+++ /dev/null
@@ -1,177 +0,0 @@
-#!/bin/sh
-
-# $Id$
-
-case "${SCRIPTDIR}" in
-/*) ;;
-*) SCRIPTDIR="`pwd`/${SCRIPTDIR}"
-esac
-
-while true
-do case "${SCRIPTDIR}" in
- */.) SCRIPTDIR="${SCRIPTDIR%/.}";;
- *) break;;
- esac
-done
-
-# The script directory is supposed to be in $TOPDIR/packages/os400.
-
-TOPDIR=`dirname "${SCRIPTDIR}"`
-TOPDIR=`dirname "${TOPDIR}"`
-export SCRIPTDIR TOPDIR
-
-# Extract the SONAME from the library makefile.
-
-SONAME=`sed -e '/^VERSIONINFO=/!d' -e 's/^.* \([0-9]*\):.*$/\1/' -e 'q' \
- < "${TOPDIR}/lib/Makefile.am"`
-export SONAME
-
-
-################################################################################
-#
-# Tunable configuration parameters.
-#
-################################################################################
-
-TARGETLIB='CURL' # Target OS/400 program library
-STATBNDDIR='CURL_A' # Static binding directory.
-DYNBNDDIR='CURL' # Dynamic binding directory.
-SRVPGM="CURL.${SONAME}" # Service program.
-TGTCCSID='500' # Target CCSID of objects
-DEBUG='*ALL' # Debug level
-OPTIMIZE='10' # Optimisation level
-OUTPUT='*NONE' # Compilation output option.
-TGTRLS='V5R2M0' # Target OS release
-
-export TARGETLIB STATBNDDIR DYNBNDDIR SRVPGM TGTCCSID DEBUG OPTIMIZE OUTPUT
-export TGTRLS
-
-
-################################################################################
-
-# Need to get the version definitions.
-
-LIBCURL_VERSION=`grep '^#define *LIBCURL_VERSION ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/.*"\(.*\)".*/\1/'`
-LIBCURL_VERSION_MAJOR=`grep '^#define *LIBCURL_VERSION_MAJOR ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/^#define *LIBCURL_VERSION_MAJOR *\([^ ]*\).*/\1/'`
-LIBCURL_VERSION_MINOR=`grep '^#define *LIBCURL_VERSION_MINOR ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/^#define *LIBCURL_VERSION_MINOR *\([^ ]*\).*/\1/'`
-LIBCURL_VERSION_PATCH=`grep '^#define *LIBCURL_VERSION_PATCH ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/^#define *LIBCURL_VERSION_PATCH *\([^ ]*\).*/\1/'`
-LIBCURL_VERSION_NUM=`grep '^#define *LIBCURL_VERSION_NUM ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/^#define *LIBCURL_VERSION_NUM *0x\([^ ]*\).*/\1/'`
-LIBCURL_TIMESTAMP=`grep '^#define *LIBCURL_TIMESTAMP ' \
- "${TOPDIR}/include/curl/curlver.h" |
- sed 's/.*"\(.*\)".*/\1/'`
-export LIBCURL_VERSION
-export LIBCURL_VERSION_MAJOR LIBCURL_VERSION_MINOR LIBCURL_VERSION_PATCH
-export LIBCURL_VERSION_NUM LIBCURL_TIMESTAMP
-
-################################################################################
-#
-# OS/400 specific definitions.
-#
-################################################################################
-
-LIBIFSNAME="/QSYS.LIB/${TARGETLIB}.LIB"
-
-
-################################################################################
-#
-# Procedures.
-#
-################################################################################
-
-# action_needed dest [src]
-#
-# dest is an object to build
-# if specified, src is an object on which dest depends.
-#
-# exit 0 (succeeds) if some action has to be taken, else 1.
-
-action_needed()
-
-{
- [ ! -e "${1}" ] && return 0
- [ "${2}" ] || return 1
- [ "${1}" -ot "${2}" ] && return 0
- return 1
-}
-
-
-# make_module module_name source_name [additional_definitions]
-#
-# Compile source name into ASCII module if needed.
-# As side effect, append the module name to variable MODULES.
-# Set LINK to "YES" if the module has been compiled.
-
-make_module()
-
-{
- MODULES="${MODULES} ${1}"
- MODIFSNAME="${LIBIFSNAME}/${1}.MODULE"
- action_needed "${MODIFSNAME}" "${2}" || return 0;
-
- # #pragma convert has to be in the source file itself, i.e.
- # putting it in an include file makes it only active
- # for that include file.
- # Thus we build a temporary file with the pragma prepended to
- # the source file and we compile that themporary file.
-
- echo "#line 1 \"${2}\"" > __tmpsrcf.c
- echo "#pragma convert(819)" >> __tmpsrcf.c
- echo "#line 1" >> __tmpsrcf.c
- cat "${2}" >> __tmpsrcf.c
- CMD="CRTCMOD MODULE(${TARGETLIB}/${1}) SRCSTMF('__tmpsrcf.c')"
-# CMD="${CMD} SYSIFCOPT(*IFS64IO) OPTION(*INCDIRFIRST *SHOWINC *SHOWSYS)"
- CMD="${CMD} SYSIFCOPT(*IFS64IO) OPTION(*INCDIRFIRST)"
- CMD="${CMD} LOCALETYPE(*LOCALE)"
- CMD="${CMD} INCDIR('/qibm/proddata/qadrt/include'"
- CMD="${CMD} '${TOPDIR}/include/curl' '${TOPDIR}/include'"
- CMD="${CMD} '${TOPDIR}/packages/OS400' ${INCLUDES})"
- CMD="${CMD} TGTCCSID(${TGTCCSID}) TGTRLS(${TGTRLS})"
- CMD="${CMD} OUTPUT(${OUTPUT})"
- CMD="${CMD} OPTIMIZE(${OPTIMIZE})"
- CMD="${CMD} DBGVIEW(${DEBUG})"
-
- if [ "${3}" ]
- then CMD="${CMD} DEFINE(${3})"
- fi
-
- system "${CMD}"
- rm -f __tmpsrcf.c
- LINK=YES
-}
-
-
-# Determine DB2 object name from IFS name.
-
-db2_name()
-
-{
- basename "${1}" |
- tr '[a-z-]' '[A-Z_]' |
- sed -e 's/\..*//' \
- -e 's/^\(..........\).*/\1/'
-}
-
-
-# Copy IFS file replacing version info.
-
-versioned_copy()
-
-{
- sed -e "s/@LIBCURL_VERSION@/${LIBCURL_VERSION}/g" \
- -e "s/@LIBCURL_VERSION_MAJOR@/${LIBCURL_VERSION_MAJOR}/g" \
- -e "s/@LIBCURL_VERSION_MINOR@/${LIBCURL_VERSION_MINOR}/g" \
- -e "s/@LIBCURL_VERSION_PATCH@/${LIBCURL_VERSION_PATCH}/g" \
- -e "s/@LIBCURL_VERSION_NUM@/${LIBCURL_VERSION_NUM}/g" \
- -e "s/@LIBCURL_TIMESTAMP@/${LIBCURL_TIMESTAMP}/g" \
- < "${1}" > "${2}"
-}
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/make-include.sh b/Utilities/cmcurl-7.19.0/packages/OS400/make-include.sh
deleted file mode 100755
index ecbc7e1..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/make-include.sh
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/sh
-#
-# Installation of the include files in the OS/400 library.
-#
-# $Id$
-
-SCRIPTDIR=`dirname "${0}"`
-. "${SCRIPTDIR}/initscript.sh"
-cd "${TOPDIR}/include"
-
-
-# Produce the curlbuild.h include file.
-
-if action_needed curl/curlbuild.h curl/curlbuild.h.dist
-then cp -p curl/curlbuild.h.dist curl/curlbuild.h
-fi
-
-
-# Create the OS/400 source program file for the include files.
-
-SRCPF="${LIBIFSNAME}/H.FILE"
-
-if action_needed "${SRCPF}"
-then CMD="CRTSRCPF FILE(${TARGETLIB}/H) RCDLEN(112)"
- CMD="${CMD} CCSID(${TGTCCSID}) TEXT('curl: Header files')"
- system "${CMD}"
-fi
-
-
-# Enumeration values are used as va_arg tagfields, so they MUST be
-# integers.
-
-copy_hfile()
-
-{
- sed -e '1i\
-#pragma enum(int)\
-' -e '$a\
-#pragma enum(pop)\
-' < "${2}" > "${1}"
-}
-
-# Copy the header files.
-
-for HFILE in curl/*.h ${SCRIPTDIR}/ccsidcurl.h
-do DEST="${SRCPF}/`db2_name \"${HFILE}\"`.MBR"
- if action_needed "${DEST}" "${HFILE}"
- then copy_hfile "${DEST}" "${HFILE}"
- fi
-done
-
-
-# Copy the ILE/RPG include file, setting-up version number.
-
- versioned_copy "${SCRIPTDIR}/curl.inc.in" "${SRCPF}/CURL.INC.MBR"
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/make-lib.sh b/Utilities/cmcurl-7.19.0/packages/OS400/make-lib.sh
deleted file mode 100755
index b066c28..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/make-lib.sh
+++ /dev/null
@@ -1,193 +0,0 @@
-#!/bin/sh
-#
-# libcurl compilation script for the OS/400.
-#
-# $Id$
-
-SCRIPTDIR=`dirname "${0}"`
-. "${SCRIPTDIR}/initscript.sh"
-cd "${TOPDIR}/lib"
-
-
-# Create and compile the identification source file.
-
-echo '#pragma comment(user, "libcurl version '"${LIBCURL_VERSION}"'")' > os400.c
-echo '#pragma comment(date)' >> os400.c
-echo '#pragma comment(copyright, "Copyright (C) 1998-2008 Daniel Stenberg et al. OS/400 version by P. Monnerat")' >> os400.c
-make_module OS400 os400.c
-LINK= # No need to rebuild service program yet.
-MODULES=
-
-
-# Get source list.
-
-CSOURCES()
-
-{
- shift # Drop the equal sign.
- CSOURCES="$*" # Get the file names.
-}
-
-HHEADERS()
-
-{
- shift # Drop the equal sign.
- HHEADERS="$*" # Get the file names.
-}
-
-. Makefile.inc
-
-
-# Compile the sources into modules.
-
-INCLUDES="'`pwd`'"
-
-make_module OS400SYS "${SCRIPTDIR}/os400sys.c"
-make_module CCSIDCURL "${SCRIPTDIR}/ccsidcurl.c"
-
-for SRC in ${CSOURCES}
-do MODULE=`basename "${SRC}" .c |
- tr '[a-z]' '[A-Z]' |
- sed -e 's/^\(..........\).*/\1/'`
- make_module "${MODULE}" "${SRC}"
-done
-
-
-# If needed, (re)create the static binding directory.
-
-if action_needed "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
-then LINK=YES
-fi
-
-if [ "${LINK}" ]
-then rm -rf "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
- CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${STATBNDDIR})"
- CMD="${CMD} TEXT('LibCurl API static binding directory')"
- system "${CMD}"
-
- for MODULE in ${MODULES}
- do CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${STATBNDDIR})"
- CMD="${CMD} OBJ((${TARGETLIB}/${MODULE} *MODULE))"
- system "${CMD}"
- done
-fi
-
-
-# The exportation file for service program creation must be in a DB2
-# source file, so make sure it exists.
-
-if action_needed "${LIBIFSNAME}/TOOLS.FILE"
-then CMD="CRTSRCPF FILE(${TARGETLIB}/TOOLS) RCDLEN(112)"
- CMD="${CMD} TEXT('curl: build tools')"
- system "${CMD}"
-fi
-
-
-# Gather the list of symbols to export.
-
-EXPORTS=`grep '^CURL_EXTERN[ ]' \
- "${TOPDIR}"/include/curl/*.h \
- "${SCRIPTDIR}/ccsidcurl.h" |
- sed -e 's/^.*CURL_EXTERN[ ]\(.*\)(.*$/\1/' \
- -e 's/[ ]*$//' \
- -e 's/^.*[ ][ ]*//' \
- -e 's/^\*//' \
- -e 's/(\(.*\))/\1/'`
-
-# Create the service program exportation file in DB2 member if needed.
-
-BSF="${LIBIFSNAME}/TOOLS.FILE/BNDSRC.MBR"
-
-if action_needed "${BSF}" Makefile.am
-then LINK=YES
-fi
-
-if [ "${LINK}" ]
-then echo " STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('LIBCURL_${SONAME}')" \
- > "${BSF}"
- for EXPORT in ${EXPORTS}
- do echo ' EXPORT SYMBOL("'"${EXPORT}"'")' >> "${BSF}"
- done
-
- echo ' ENDPGMEXP' >> "${BSF}"
-fi
-
-
-# Build the service program if needed.
-
-if action_needed "${LIBIFSNAME}/${SRVPGM}.SRVPGM"
-then LINK=YES
-fi
-
-if [ "${LINK}" ]
-then CMD="CRTSRVPGM SRVPGM(${TARGETLIB}/${SRVPGM})"
- CMD="${CMD} SRCFILE(${TARGETLIB}/TOOLS) SRCMBR(BNDSRC)"
- CMD="${CMD} MODULE(${TARGETLIB}/OS400)"
- CMD="${CMD} BNDDIR(${TARGETLIB}/${STATBNDDIR})"
- CMD="${CMD} BNDSRVPGM(QADRTTS QGLDCLNT QGLDBRDR)"
- CMD="${CMD} TEXT('curl API library')"
- CMD="${CMD} TGTRLS(${TGTRLS})"
- system "${CMD}"
- LINK=YES
-fi
-
-
-# If needed, (re)create the dynamic binding directory.
-
-if action_needed "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
-then LINK=YES
-fi
-
-if [ "${LINK}" ]
-then rm -rf "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
- CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
- CMD="${CMD} TEXT('LibCurl API dynamic binding directory')"
- system "${CMD}"
- CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
- CMD="${CMD} OBJ((*LIBL/${SRVPGM} *SRVPGM))"
- system "${CMD}"
-fi
-
-
-# Rebuild the formdata test if needed.
-
-if [ "${TEST_FORMDATA}" ]
-then MODULES=
- make_module TFORMDATA formdata.c "'_FORM_DEBUG' 'CURLDEBUG'"
- make_module TSTREQUAL strequal.c "'_FORM_DEBUG' 'CURLDEBUG'"
- make_module TMEMDEBUG memdebug.c "'_FORM_DEBUG' 'CURLDEBUG'"
- make_module TMPRINTF mprintf.c "'_FORM_DEBUG' 'CURLDEBUG'"
- make_module TSTRERROR strerror.c "'_FORM_DEBUG' 'CURLDEBUG'"
- # The following modules should not be needed (see comment in
- # formdata.c. However, there are some unsatisfied
- # external references leading in the following
- # modules to be (recursively) needed.
- MODULES="${MODULES} EASY STRDUP SSLGEN QSSL HOSTIP HOSTIP4 HOSTIP6"
- MODULES="${MODULES} URL HASH TRANSFER GETINFO COOKIE SENDF SELECT"
- MODULES="${MODULES} INET_NTOP SHARE HOSTTHRE MULTI LLIST FTP HTTP"
- MODULES="${MODULES} HTTP_DIGES HTTP_CHUNK HTTP_NEGOT TIMEVAL HOSTSYN"
- MODULES="${MODULES} CONNECT SOCKS PROGRESS ESCAPE INET_PTON GETENV"
- MODULES="${MODULES} DICT LDAP TELNET FILE TFTP NETRC PARSEDATE"
- MODULES="${MODULES} SPEEDCHECK SPLAY BASE64 SECURITY IF2IP MD5"
- MODULES="${MODULES} KRB5 OS400SYS"
-
- PGMIFSNAME="${LIBIFSNAME}/TFORMDATA.PGM"
-
- if action_needed "${PGMIFSNAME}"
- then LINK=YES
- fi
-
- if [ "${LINK}" ]
- then CMD="CRTPGM PGM(${TARGETLIB}/TFORMDATA)"
- CMD="${CMD} ENTMOD(QADRT/QADRTMAIN2)"
- CMD="${CMD} MODULE("
-
- for MODULE in ${MODULES}
- do CMD="${CMD} ${TARGETLIB}/${MODULE}"
- done
-
- CMD="${CMD} ) BNDSRVPGM(QADRTTS)"
- CMD="${CMD} TGTRLS(${TGTRLS})"
- system "${CMD}"
- fi
-fi
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/make-src.sh b/Utilities/cmcurl-7.19.0/packages/OS400/make-src.sh
deleted file mode 100755
index ba71153..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/make-src.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-#
-# $Id$
-#
-# Not implemented yet on OS/400.
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/make-tests.sh b/Utilities/cmcurl-7.19.0/packages/OS400/make-tests.sh
deleted file mode 100755
index 6ef6af9..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/make-tests.sh
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# tests compilation script for the OS/400.
-#
-# $Id$
-
-
-SCRIPTDIR=`dirname "${0}"`
-. "${SCRIPTDIR}/initscript.sh"
-cd "${TOPDIR}/tests"
-
-
-# tests directory not implemented yet.
-
-
-# Process the libtest subdirectory.
-
-cd libtest
-
-# Get definitions from the Makefile.am file.
-# The `sed' statement works as follows:
-# _ Join \nl-separated lines.
-# _ Retain only lines that begins with "identifier =".
-# _ Turn these lines into shell variable assignments.
-
-eval "`sed -e ': begin' \
- -e '/\\\\$/{' \
- -e 'N' \
- -e 's/\\\\\\n/ /' \
- -e 'b begin' \
- -e '}' \
- -e '/^[A-Za-z_][A-Za-z0-9_]*[ ]*[=]/b keep' \
- -e 'd' \
- -e ': keep' \
- -e 's/[ ]*=[ ]*/=/' \
- -e 's/=\\(.*[^ ]\\)[ ]*$/=\\"\\1\\"/' \
- -e 's/\\$(\\([^)]*\\))/${\\1}/g' \
- < Makefile.am`"
-
-# Compile all programs.
-# The list is found in variable "noinst_PROGRAMS"
-
-INCLUDES="'${TOPDIR}/tests/libtest' '${TOPDIR}/lib'"
-
-for PGM in ${noinst_PROGRAMS}
-do DB2PGM=`db2_name "${PGM}"`
- PGMIFSNAME="${LIBIFSNAME}/${DB2PGM}.PGM"
-
- # Extract preprocessor symbol definitions from compilation
- # options for the program.
-
- PGMCFLAGS="`eval echo \"\\${${PGM}_CFLAGS}\"`"
- PGMDEFINES=
-
- for FLAG in ${PGMCFLAGS}
- do case "${FLAG}" in
- -D?*) DEFINE="`echo \"${FLAG}\" | sed 's/^..//'`"
- PGMDEFINES="${PGMDEFINES} '${DEFINE}'"
- ;;
- esac
- done
-
- # Compile all C sources for the program into modules.
-
- PGMSOURCES="`eval echo \"\\${${PGM}_SOURCES}\"`"
- LINK=
- MODULES=
-
- for SOURCE in ${PGMSOURCES}
- do case "${SOURCE}" in
- *.c) # Special processing for libxxx.c files: their
- # module name is determined by the target
- # PROGRAM name.
-
- case "${SOURCE}" in
- lib*.c) MODULE="${DB2PGM}"
- ;;
- *) MODULE=`db2_name "${SOURCE}"`
- ;;
- esac
-
- make_module "${MODULE}" "${SOURCE}" "${PGMDEFINES}"
- if action_needed "${PGMIFSNAME}" "${MODIFSNAME}"
- then LINK=yes
- fi
- ;;
- esac
- done
-
- # Link program if needed.
-
- if [ "${LINK}" ]
- then MODULES="`echo \"${MODULES}\" |
- sed \"s/[^ ][^ ]*/${TARGETLIB}\/&/g\"`"
- CMD="CRTPGM PGM(${TARGETLIB}/${DB2PGM})"
- CMD="${CMD} ENTMOD(QADRT/QADRTMAIN2)"
- CMD="${CMD} MODULE(${MODULES})"
- CMD="${CMD} BNDSRVPGM(${TARGETLIB}/${SRVPGM} QADRTTS)"
- CMD="${CMD} TGTRLS(${TGTRLS})"
- system "${CMD}"
- fi
-done
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/makefile.sh b/Utilities/cmcurl-7.19.0/packages/OS400/makefile.sh
deleted file mode 100755
index 6f435d4..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/makefile.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# curl compilation script for the OS/400.
-#
-# $Id$
-#
-# This is a shell script since make is not a standard component of OS/400.
-
-SCRIPTDIR=`dirname "${0}"`
-. "${SCRIPTDIR}/initscript.sh"
-cd "${TOPDIR}"
-
-
-# Create the OS/400 library if it does not exist.
-
-if action_needed "${LIBIFSNAME}"
-then CMD="CRTLIB LIB(${TARGETLIB}) TEXT('curl: multiprotocol support API')"
- system "${CMD}"
-fi
-
-
-# Create the DOCS source file if it does not exist.
-
-if action_needed "${LIBIFSNAME}/DOCS.FILE"
-then CMD="CRTSRCPF FILE(${TARGETLIB}/DOCS) RCDLEN(112)"
- CMD="${CMD} CCSID(${TGTCCSID}) TEXT('Documentation texts')"
- system "${CMD}"
-fi
-
-
-# Copy some documentation files if needed.
-
-for TEXT in "${TOPDIR}/COPYING" "${SCRIPTDIR}/README.OS400" \
- "${TOPDIR}/CHANGES" "${TOPDIR}/docs/THANKS" "${TOPDIR}/docs/FAQ" \
- "${TOPDIR}/docs/FEATURES" "${TOPDIR}/docs/SSLCERTS" \
- "${TOPDIR}/docs/RESOURCES" "${TOPDIR}/docs/VERSIONS" \
- "${TOPDIR}/docs/HISTORY"
-do MEMBER="`basename \"${TEXT}\" .OS400`"
- MEMBER="${LIBIFSNAME}/DOCS.FILE/`db2_name \"${MEMBER}\"`.MBR"
-
- if action_needed "${MEMBER}" "${TEXT}"
- then CMD="CPY OBJ('${TEXT}') TOOBJ('${MEMBER}') TOCCSID(${TGTCCSID})"
- CMD="${CMD} DTAFMT(*TEXT) REPLACE(*YES)"
- system "${CMD}"
- fi
-done
-
-
-# Build in each directory.
-
-for SUBDIR in include lib src tests
-do "${SCRIPTDIR}/make-${SUBDIR}.sh"
-done
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.c b/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.c
deleted file mode 100644
index 608aab6..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.c
+++ /dev/null
@@ -1,1111 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * $Id$
- *
- ***************************************************************************/
-
-/* OS/400 additional support. */
-
-#include "config-os400.h" /* Not setup.h: we only need some defines. */
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/un.h>
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <string.h>
-#include <pthread.h>
-#include <netdb.h>
-#include <qadrt.h>
-#include <errno.h>
-
-#ifdef USE_QSOSSL
-#include <qsossl.h>
-#endif
-
-#ifdef HAVE_GSSAPI
-#include <gssapi.h>
-#endif
-
-#ifndef CURL_DISABLE_LDAP
-#include <ldap.h>
-#endif
-
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "os400sys.h"
-
-
-/**
-*** QADRT OS/400 ASCII runtime defines only the most used procedures, but
-*** but a lot of them are not supported. This module implements
-*** ASCII wrappers for those that are used by libcurl, but not
-*** defined by QADRT.
-**/
-
-#pragma convert(0) /* Restore EBCDIC. */
-
-
-#define MIN_BYTE_GAIN 1024 /* Minimum gain when shortening a buffer. */
-
-typedef struct {
- unsigned long size; /* Buffer size. */
- char * buf; /* Buffer address. */
-} buffer_t;
-
-
-static char * buffer_undef(localkey_t key, long size);
-static char * buffer_threaded(localkey_t key, long size);
-static char * buffer_unthreaded(localkey_t key, long size);
-
-static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_key_t thdkey;
-static buffer_t * locbufs;
-
-char * (* Curl_thread_buffer)(localkey_t key, long size) = buffer_undef;
-
-
-static void
-thdbufdestroy(void * private)
-
-{
- localkey_t i;
- buffer_t * p;
-
- if (private) {
- p = (buffer_t *) private;
-
- for (i = (localkey_t) 0; i < LK_LAST; i++) {
- if (p->buf)
- free(p->buf);
-
- p++;
- }
-
- free(private);
- }
-}
-
-
-static void
-terminate(void)
-
-{
- if (Curl_thread_buffer == buffer_threaded) {
- locbufs = pthread_getspecific(thdkey);
- pthread_setspecific(thdkey, (void *) NULL);
- pthread_key_delete(thdkey);
- }
-
- if (Curl_thread_buffer != buffer_undef) {
- thdbufdestroy((void *) locbufs);
- locbufs = (buffer_t *) NULL;
- }
-
- Curl_thread_buffer = buffer_undef;
-}
-
-
-static char *
-get_buffer(buffer_t * buf, long size)
-
-{
- char * cp;
-
- /* If `size' >= 0, make sure buffer at `buf' is at least `size'-byte long.
- Return the buffer address. */
-
- if (size < 0)
- return buf->buf;
-
- if (!buf->buf) {
- if ((buf->buf = malloc(size)))
- buf->size = size;
-
- return buf->buf;
- }
-
- if ((unsigned long) size <= buf->size) {
- /* Shorten the buffer only if it frees a significant byte count. This
- avoids some realloc() overhead. */
-
- if (buf->size - size < MIN_BYTE_GAIN)
- return buf->buf;
- }
-
- /* Resize the buffer. */
-
- if ((cp = realloc(buf->buf, size))) {
- buf->buf = cp;
- buf->size = size;
- }
- else if (size <= buf->size)
- cp = buf->buf;
-
- return cp;
-}
-
-
-static char *
-buffer_unthreaded(localkey_t key, long size)
-
-{
- return get_buffer(locbufs + key, size);
-}
-
-
-static char *
-buffer_threaded(localkey_t key, long size)
-
-{
- buffer_t * bufs;
-
- /* Get the buffer for the given local key in the current thread, and
- make sure it is at least `size'-byte long. Set `size' to < 0 to get
- its address only. */
-
- bufs = (buffer_t *) pthread_getspecific(thdkey);
-
- if (!bufs) {
- if (size < 0)
- return (char *) NULL; /* No buffer yet. */
-
- /* Allocate buffer descriptors for the current thread. */
-
- if (!(bufs = (buffer_t *) calloc((size_t) LK_LAST, sizeof *bufs)))
- return (char *) NULL;
-
- if (pthread_setspecific(thdkey, (void *) bufs)) {
- free(bufs);
- return (char *) NULL;
- }
- }
-
- return get_buffer(bufs + key, size);
-}
-
-
-static char *
-buffer_undef(localkey_t key, long size)
-
-{
- /* Define the buffer system, get the buffer for the given local key in
- the current thread, and make sure it is at least `size'-byte long.
- Set `size' to < 0 to get its address only. */
-
- pthread_mutex_lock(&mutex);
-
- /* Determine if we can use pthread-specific data. */
-
- if (Curl_thread_buffer == buffer_undef) { /* If unchanged during lock. */
- if (!pthread_key_create(&thdkey, thdbufdestroy))
- Curl_thread_buffer = buffer_threaded;
- else if (!(locbufs = (buffer_t *) calloc((size_t) LK_LAST,
- sizeof *locbufs))) {
- pthread_mutex_unlock(&mutex);
- return (char *) NULL;
- }
- else
- Curl_thread_buffer = buffer_unthreaded;
-
- atexit(terminate);
- }
-
- pthread_mutex_unlock(&mutex);
- return Curl_thread_buffer(key, size);
-}
-
-
-int
-Curl_getnameinfo_a(const struct sockaddr * sa, socklen_t salen,
- char * nodename, socklen_t nodenamelen,
- char * servname, socklen_t servnamelen,
- int flags)
-
-{
- char * enodename;
- char * eservname;
- int status;
- int i;
-
- enodename = (char *) NULL;
- eservname = (char *) NULL;
-
- if (nodename && nodenamelen)
- if (!(enodename = malloc(nodenamelen)))
- return EAI_MEMORY;
-
- if (servname && servnamelen)
- if (!(eservname = malloc(servnamelen))) {
- if (enodename)
- free(enodename);
-
- return EAI_MEMORY;
- }
-
- status = getnameinfo(sa, salen, enodename, nodenamelen,
- eservname, servnamelen, flags);
-
- if (!status) {
- if (enodename) {
- i = QadrtConvertE2A(nodename, enodename,
- nodenamelen - 1, strlen(enodename));
- nodename[i] = '\0';
- }
-
- if (eservname) {
- i = QadrtConvertE2A(servname, eservname,
- servnamelen - 1, strlen(eservname));
- servname[i] = '\0';
- }
- }
-
- if (enodename)
- free(enodename);
-
- if (eservname)
- free(eservname);
-
- return status;
-}
-
-
-int
-Curl_getaddrinfo_a(const char * nodename, const char * servname,
- const struct addrinfo * hints,
- struct addrinfo * * res)
-
-{
- char * enodename;
- char * eservname;
- int status;
- int i;
-
- enodename = (char *) NULL;
- eservname = (char *) NULL;
-
- if (nodename) {
- i = strlen(nodename);
-
- if (!(enodename = malloc(i + 1)))
- return EAI_MEMORY;
-
- i = QadrtConvertA2E(enodename, nodename, i, i);
- enodename[i] = '\0';
- }
-
- if (servname) {
- i = strlen(servname);
-
- if (!(eservname = malloc(i + 1))) {
- if (enodename)
- free(enodename);
-
- return EAI_MEMORY;
- }
-
- QadrtConvertA2E(eservname, servname, i, i);
- eservname[i] = '\0';
- }
-
- status = getaddrinfo(enodename, eservname, hints, res);
-
- if (enodename)
- free(enodename);
-
- if (eservname)
- free(eservname);
-
- return status;
-}
-
-
-int
-Curl_inet_ntoa_r_a(struct in_addr internet_address,
- char * output_buffer, int output_buffer_length)
-
-{
- int rc;
- int i;
- char * cp;
-
- if (!output_buffer || output_buffer_length < 16)
- return inet_ntoa_r(internet_address, output_buffer, output_buffer_length);
-
- if (!(cp = malloc(output_buffer_length + 1)))
- return -1;
-
- rc = inet_ntoa_r(internet_address, cp, output_buffer_length);
-
- if (rc) {
- free(cp);
- return rc;
- }
-
- cp[output_buffer_length - 1] = '\0';
- i = strlen(cp);
- QadrtConvertE2A(output_buffer, cp, i, i);
- output_buffer[i] = '\0';
- free(cp);
- return rc;
-}
-
-
-#ifdef USE_QSOSSL
-
-/* ASCII wrappers for the SSL procedures. */
-
-int
-Curl_SSL_Init_Application_a(SSLInitApp * init_app)
-
-{
- int rc;
- unsigned int i;
- SSLInitApp ia;
-
- if (!init_app || !init_app->applicationID || !init_app->applicationIDLen)
- return SSL_Init_Application(init_app);
-
- memcpy((char *) &ia, (char *) init_app, sizeof ia);
- i = ia.applicationIDLen;
-
- if (!(ia.applicationID = malloc(i + 1))) {
- errno = ENOMEM;
- return SSL_ERROR_IO;
- }
-
- QadrtConvertA2E(ia.applicationID, init_app->applicationID, i, i);
- ia.applicationID[i] = '\0';
- rc = SSL_Init_Application(&ia);
- free(ia.applicationID);
- init_app->localCertificateLen = ia.localCertificateLen;
- init_app->sessionType = ia.sessionType;
- return rc;
-}
-
-
-int
-Curl_SSL_Init_a(SSLInit * init)
-
-{
- int rc;
- unsigned int i;
- SSLInit ia;
-
- if (!init || (!init->keyringFileName && !init->keyringPassword))
- return SSL_Init(init);
-
- memcpy((char *) &ia, (char *) init, sizeof ia);
-
- if (ia.keyringFileName) {
- i = strlen(ia.keyringFileName);
-
- if (!(ia.keyringFileName = malloc(i + 1))) {
- errno = ENOMEM;
- return SSL_ERROR_IO;
- }
-
- QadrtConvertA2E(ia.keyringFileName, init->keyringFileName, i, i);
- ia.keyringFileName[i] = '\0';
- }
-
- if (ia.keyringPassword) {
- i = strlen(ia.keyringPassword);
-
- if (!(ia.keyringPassword = malloc(i + 1))) {
- if (ia.keyringFileName)
- free(ia.keyringFileName);
-
- errno = ENOMEM;
- return SSL_ERROR_IO;
- }
-
- QadrtConvertA2E(ia.keyringPassword, init->keyringPassword, i, i);
- ia.keyringPassword[i] = '\0';
- }
-
- rc = SSL_Init(&ia);
-
- if (ia.keyringFileName)
- free(ia.keyringFileName);
-
- if (ia.keyringPassword)
- free(ia.keyringPassword);
-
- return rc;
-}
-
-
-char *
-Curl_SSL_Strerror_a(int sslreturnvalue, SSLErrorMsg * serrmsgp)
-
-{
- int i;
- char * cp;
- char * cp2;
-
- cp = SSL_Strerror(sslreturnvalue, serrmsgp);
-
- if (!cp)
- return cp;
-
- i = strlen(cp);
-
- if (!(cp2 = Curl_thread_buffer(LK_SSL_ERROR, MAX_CONV_EXPANSION * i + 1)))
- return cp2;
-
- i = QadrtConvertE2A(cp2, cp, MAX_CONV_EXPANSION * i, i);
- cp2[i] = '\0';
- return cp2;
-}
-
-#endif /* USE_QSOSSL */
-
-
-#ifdef HAVE_GSSAPI
-
-/* ASCII wrappers for the GSSAPI procedures. */
-
-static int
-Curl_gss_convert_in_place(OM_uint32 * minor_status, gss_buffer_t buf)
-
-{
- unsigned int i;
- char * t;
-
- /* Convert `buf' in place, from EBCDIC to ASCII.
- If error, release the buffer and return -1. Else return 0. */
-
- i = buf->length;
-
- if (i) {
- if (!(t = malloc(i))) {
- gss_release_buffer(minor_status, buf);
-
- if (minor_status)
- *minor_status = ENOMEM;
-
- return -1;
- }
-
- QadrtConvertE2A(t, buf->value, i, i);
- memcpy(buf->value, t, i);
- free(t);
- }
-
- return 0;
-}
-
-
-OM_uint32
-Curl_gss_import_name_a(OM_uint32 * minor_status, gss_buffer_t in_name,
- gss_OID in_name_type, gss_name_t * out_name)
-
-{
- int rc;
- unsigned int i;
- gss_buffer_desc in;
-
- if (!in_name || !in_name->value || !in_name->length)
- return gss_import_name(minor_status, in_name, in_name_type, out_name);
-
- memcpy((char *) &in, (char *) in_name, sizeof in);
- i = in.length;
-
- if (!(in.value = malloc(i + 1))) {
- if (minor_status)
- *minor_status = ENOMEM;
-
- return GSS_S_FAILURE;
- }
-
- QadrtConvertA2E(in.value, in_name->value, i, i);
- ((char *) in.value)[i] = '\0';
- rc = gss_import_name(minor_status, &in, in_name_type, out_name);
- free(in.value);
- return rc;
-}
-
-
-OM_uint32
-Curl_gss_display_status_a(OM_uint32 * minor_status, OM_uint32 status_value,
- int status_type, gss_OID mech_type,
- gss_msg_ctx_t * message_context, gss_buffer_t status_string)
-
-{
- int rc;
-
- rc = gss_display_status(minor_status, status_value, status_type,
- mech_type, message_context, status_string);
-
- if (rc != GSS_S_COMPLETE || !status_string ||
- !status_string->length || !status_string->value)
- return rc;
-
- /* No way to allocate a buffer here, because it will be released by
- gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
- with ASCII to return it. */
-
- if (Curl_gss_convert_in_place(minor_status, status_string))
- return GSS_S_FAILURE;
-
- return rc;
-}
-
-
-OM_uint32
-Curl_gss_init_sec_context_a(OM_uint32 * minor_status, gss_cred_id_t cred_handle,
- gss_ctx_id_t * context_handle,
- gss_name_t target_name, gss_OID mech_type,
- gss_flags_t req_flags, OM_uint32 time_req,
- gss_channel_bindings_t input_chan_bindings,
- gss_buffer_t input_token,
- gss_OID * actual_mech_type,
- gss_buffer_t output_token, gss_flags_t * ret_flags,
- OM_uint32 * time_rec)
-
-{
- int rc;
- unsigned int i;
- gss_buffer_desc in;
- gss_buffer_t inp;
-
- in.value = NULL;
-
- if ((inp = input_token))
- if (inp->length && inp->value) {
- i = inp->length;
-
- if (!(in.value = malloc(i + 1))) {
- if (minor_status)
- *minor_status = ENOMEM;
-
- return GSS_S_FAILURE;
- }
-
- QadrtConvertA2E(in.value, input_token->value, i, i);
- ((char *) in.value)[i] = '\0';
- in.length = i;
- inp = &in;
- }
-
- rc = gss_init_sec_context(minor_status, cred_handle, context_handle,
- target_name, mech_type, req_flags, time_req,
- input_chan_bindings, inp, actual_mech_type,
- output_token, ret_flags, time_rec);
-
- if (in.value)
- free(in.value);
-
- if (rc != GSS_S_COMPLETE || !output_token ||
- !output_token->length || !output_token->value)
- return rc;
-
- /* No way to allocate a buffer here, because it will be released by
- gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
- with ASCII to return it. */
-
- if (Curl_gss_convert_in_place(minor_status, output_token))
- return GSS_S_FAILURE;
-
- return rc;
-}
-
-
-OM_uint32
-Curl_gss_delete_sec_context_a(OM_uint32 * minor_status,
- gss_ctx_id_t * context_handle,
- gss_buffer_t output_token)
-
-{
- int rc;
-
- rc = gss_delete_sec_context(minor_status, context_handle, output_token);
-
- if (rc != GSS_S_COMPLETE || !output_token ||
- !output_token->length || !output_token->value)
- return rc;
-
- /* No way to allocate a buffer here, because it will be released by
- gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
- with ASCII to return it. */
-
- if (Curl_gss_convert_in_place(minor_status, output_token))
- return GSS_S_FAILURE;
-
- return rc;
-}
-
-#endif /* HAVE_GSSAPI */
-
-
-#ifndef CURL_DISABLE_LDAP
-
-/* ASCII wrappers for the LDAP procedures. */
-
-void *
-Curl_ldap_init_a(char * host, int port)
-
-{
- unsigned int i;
- char * ehost;
- void * result;
-
- if (!host)
- return (void *) ldap_init(host, port);
-
- i = strlen(host);
-
- if (!(ehost = malloc(i + 1)))
- return (void *) NULL;
-
- QadrtConvertA2E(ehost, host, i, i);
- ehost[i] = '\0';
- result = (void *) ldap_init(ehost, port);
- free(ehost);
- return result;
-}
-
-
-int
-Curl_ldap_simple_bind_s_a(void * ld, char * dn, char * passwd)
-
-{
- int i;
- char * edn;
- char * epasswd;
-
- edn = (char *) NULL;
- epasswd = (char *) NULL;
-
- if (dn) {
- i = strlen(dn);
-
- if (!(edn = malloc(i + 1)))
- return LDAP_NO_MEMORY;
-
- QadrtConvertA2E(edn, dn, i, i);
- edn[i] = '\0';
- }
-
- if (passwd) {
- i = strlen(passwd);
-
- if (!(epasswd = malloc(i + 1))) {
- if (edn)
- free(edn);
-
- return LDAP_NO_MEMORY;
- }
-
- QadrtConvertA2E(epasswd, passwd, i, i);
- epasswd[i] = '\0';
- }
-
- i = ldap_simple_bind_s(ld, edn, epasswd);
-
- if (epasswd)
- free(epasswd);
-
- if (edn)
- free(edn);
-
- return i;
-}
-
-
-int
-Curl_ldap_search_s_a(void * ld, char * base, int scope, char * filter,
- char * * attrs, int attrsonly, LDAPMessage * * res)
-
-{
- int i;
- int j;
- char * ebase;
- char * efilter;
- char * * eattrs;
- int status;
-
- ebase = (char *) NULL;
- efilter = (char *) NULL;
- eattrs = (char * *) NULL;
- status = LDAP_SUCCESS;
-
- if (base) {
- i = strlen(base);
-
- if (!(ebase = malloc(i + 1)))
- status = LDAP_NO_MEMORY;
- else {
- QadrtConvertA2E(ebase, base, i, i);
- ebase[i] = '\0';
- }
- }
-
- if (filter && status == LDAP_SUCCESS) {
- i = strlen(filter);
-
- if (!(efilter = malloc(i + 1)))
- status = LDAP_NO_MEMORY;
- else {
- QadrtConvertA2E(efilter, filter, i, i);
- efilter[i] = '\0';
- }
- }
-
- if (attrs && status == LDAP_SUCCESS) {
- for (i = 0; attrs[i++];)
- ;
-
- if (!(eattrs = (char * *) calloc(i, sizeof *eattrs)))
- status = LDAP_NO_MEMORY;
- else {
- for (j = 0; attrs[j]; j++) {
- i = strlen(attrs[j]);
-
- if (!(eattrs[j] = malloc(i + 1))) {
- status = LDAP_NO_MEMORY;
- break;
- }
-
- QadrtConvertA2E(eattrs[j], attrs[j], i, i);
- eattrs[j][i] = '\0';
- }
- }
- }
-
- if (status == LDAP_SUCCESS)
- status = ldap_search_s(ld, ebase? ebase: "", scope,
- efilter? efilter: "(objectclass=*)",
- eattrs, attrsonly, res);
-
- if (eattrs) {
- for (j = 0; eattrs[j]; j++)
- free(eattrs[j]);
-
- free(eattrs);
- }
-
- if (efilter)
- free(efilter);
-
- if (ebase)
- free(ebase);
-
- return status;
-}
-
-
-struct berval * *
-Curl_ldap_get_values_len_a(void * ld, LDAPMessage * entry, const char * attr)
-
-{
- int i;
- char * cp;
- struct berval * * result;
-
- cp = (char *) NULL;
-
- if (attr) {
- i = strlen(attr);
-
- if (!(cp = malloc(i + 1))) {
- ldap_set_lderrno(ld, LDAP_NO_MEMORY, NULL,
- ldap_err2string(LDAP_NO_MEMORY));
- return (struct berval * *) NULL;
- }
-
- QadrtConvertA2E(cp, attr, i, i);
- cp[i] = '\0';
- }
-
- result = ldap_get_values_len(ld, entry, cp);
-
- if (cp)
- free(cp);
-
- /* Result data are binary in nature, so they haven't been converted to EBCDIC.
- Therefore do not convert. */
-
- return result;
-}
-
-
-char *
-Curl_ldap_err2string_a(int error)
-
-{
- int i;
- char * cp;
- char * cp2;
-
- cp = ldap_err2string(error);
-
- if (!cp)
- return cp;
-
- i = strlen(cp);
-
- if (!(cp2 = Curl_thread_buffer(LK_LDAP_ERROR, MAX_CONV_EXPANSION * i + 1)))
- return cp2;
-
- i = QadrtConvertE2A(cp2, cp, MAX_CONV_EXPANSION * i, i);
- cp2[i] = '\0';
- return cp2;
-}
-
-
-char *
-Curl_ldap_get_dn_a(void * ld, LDAPMessage * entry)
-
-{
- int i;
- char * cp;
- char * cp2;
-
- cp = ldap_get_dn(ld, entry);
-
- if (!cp)
- return cp;
-
- i = strlen(cp);
-
- if (!(cp2 = malloc(i + 1)))
- return cp2;
-
- QadrtConvertE2A(cp2, cp, i, i);
-
- /* No way to allocate a buffer here, because it will be released by
- ldap_memfree() and ldap_memalloc() does not exist. The solution is to
- overwrite the EBCDIC buffer with ASCII to return it. */
-
- strcpy(cp, cp2);
- free(cp2);
- return cp;
-}
-
-
-char *
-Curl_ldap_first_attribute_a(void * ld,
- LDAPMessage * entry, BerElement * * berptr)
-
-{
- int i;
- char * cp;
- char * cp2;
-
- cp = ldap_first_attribute(ld, entry, berptr);
-
- if (!cp)
- return cp;
-
- i = strlen(cp);
-
- if (!(cp2 = malloc(i + 1)))
- return cp2;
-
- QadrtConvertE2A(cp2, cp, i, i);
-
- /* No way to allocate a buffer here, because it will be released by
- ldap_memfree() and ldap_memalloc() does not exist. The solution is to
- overwrite the EBCDIC buffer with ASCII to return it. */
-
- strcpy(cp, cp2);
- free(cp2);
- return cp;
-}
-
-
-char *
-Curl_ldap_next_attribute_a(void * ld,
- LDAPMessage * entry, BerElement * berptr)
-
-{
- int i;
- char * cp;
- char * cp2;
-
- cp = ldap_next_attribute(ld, entry, berptr);
-
- if (!cp)
- return cp;
-
- i = strlen(cp);
-
- if (!(cp2 = malloc(i + 1)))
- return cp2;
-
- QadrtConvertE2A(cp2, cp, i, i);
-
- /* No way to allocate a buffer here, because it will be released by
- ldap_memfree() and ldap_memalloc() does not exist. The solution is to
- overwrite the EBCDIC buffer with ASCII to return it. */
-
- strcpy(cp, cp2);
- free(cp2);
- return cp;
-}
-
-#endif /* CURL_DISABLE_LDAP */
-
-
-static int
-convert_sockaddr(struct sockaddr_storage * dstaddr,
- const struct sockaddr * srcaddr, int srclen)
-
-{
- const struct sockaddr_un * srcu;
- struct sockaddr_un * dstu;
- unsigned int i;
- unsigned int dstsize;
-
- /* Convert a socket address into job CCSID, if needed. */
-
- if (!srcaddr || srclen < offsetof(struct sockaddr, sa_family) +
- sizeof srcaddr->sa_family || srclen > sizeof *dstaddr) {
- errno = EINVAL;
- return -1;
- }
-
- memcpy((char *) dstaddr, (char *) srcaddr, srclen);
-
- switch (srcaddr->sa_family) {
-
- case AF_UNIX:
- srcu = (const struct sockaddr_un *) srcaddr;
- dstu = (struct sockaddr_un *) dstaddr;
- dstsize = sizeof *dstaddr - offsetof(struct sockaddr_un, sun_path);
- srclen -= offsetof(struct sockaddr_un, sun_path);
- i = QadrtConvertA2E(dstu->sun_path, srcu->sun_path, dstsize - 1, srclen);
- dstu->sun_path[i] = '\0';
- i += offsetof(struct sockaddr_un, sun_path);
- srclen = i;
- }
-
- return srclen;
-}
-
-
-int
-Curl_os400_connect(int sd, struct sockaddr * destaddr, int addrlen)
-
-{
- int i;
- struct sockaddr_storage laddr;
-
- i = convert_sockaddr(&laddr, destaddr, addrlen);
-
- if (i < 0)
- return -1;
-
- return connect(sd, (struct sockaddr *) &laddr, i);
-}
-
-
-int
-Curl_os400_bind(int sd, struct sockaddr * localaddr, int addrlen)
-
-{
- int i;
- struct sockaddr_storage laddr;
-
- i = convert_sockaddr(&laddr, localaddr, addrlen);
-
- if (i < 0)
- return -1;
-
- return bind(sd, (struct sockaddr *) &laddr, i);
-}
-
-
-int
-Curl_os400_sendto(int sd, char * buffer, int buflen, int flags,
- struct sockaddr * dstaddr, int addrlen)
-
-{
- int i;
- struct sockaddr_storage laddr;
-
- i = convert_sockaddr(&laddr, dstaddr, addrlen);
-
- if (i < 0)
- return -1;
-
- return sendto(sd, buffer, buflen, flags, (struct sockaddr *) &laddr, i);
-}
-
-
-int
-Curl_os400_recvfrom(int sd, char * buffer, int buflen, int flags,
- struct sockaddr * fromaddr, int * addrlen)
-
-{
- int i;
- int rcvlen;
- int laddrlen;
- const struct sockaddr_un * srcu;
- struct sockaddr_un * dstu;
- struct sockaddr_storage laddr;
-
- if (!fromaddr || !addrlen || *addrlen <= 0)
- return recvfrom(sd, buffer, buflen, flags, fromaddr, addrlen);
-
- laddrlen = sizeof laddr;
- laddr.ss_family = AF_UNSPEC; /* To detect if unused. */
- rcvlen = recvfrom(sd, buffer, buflen, flags,
- (struct sockaddr *) &laddr, &laddrlen);
-
- if (rcvlen < 0)
- return rcvlen;
-
- switch (laddr.ss_family) {
-
- case AF_UNIX:
- srcu = (const struct sockaddr_un *) &laddr;
- dstu = (struct sockaddr_un *) fromaddr;
- i = *addrlen - offsetof(struct sockaddr_un, sun_path);
- laddrlen -= offsetof(struct sockaddr_un, sun_path);
- i = QadrtConvertE2A(dstu->sun_path, srcu->sun_path, i, laddrlen);
- laddrlen = i + offsetof(struct sockaddr_un, sun_path);
-
- if (laddrlen < *addrlen)
- dstu->sun_path[i] = '\0';
-
- break;
-
- case AF_UNSPEC:
- break;
-
- default:
- if (laddrlen > *addrlen)
- laddrlen = *addrlen;
-
- if (laddrlen)
- memcpy((char *) fromaddr, (char *) &laddr, laddrlen);
-
- break;
- }
-
- *addrlen = laddrlen;
- return rcvlen;
-}
diff --git a/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.h b/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.h
deleted file mode 100644
index fb36ac8..0000000
--- a/Utilities/cmcurl-7.19.0/packages/OS400/os400sys.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * $Id$
- *
- ***************************************************************************/
-
-/* OS/400 additional definitions. */
-
-#ifndef __OS400_SYS_
-#define __OS400_SYS_
-
-
-/* Per-thread item identifiers. */
-
-typedef enum {
- LK_SSL_ERROR,
- LK_LDAP_ERROR,
- LK_CURL_VERSION,
- LK_VERSION_INFO,
- LK_VERSION_INFO_DATA,
- LK_EASY_STRERROR,
- LK_SHARE_STRERROR,
- LK_MULTI_STRERROR,
- LK_LAST
-} localkey_t;
-
-
-extern char * (* Curl_thread_buffer)(localkey_t key, long size);
-
-
-/* Maximum string expansion factor due to character code conversion. */
-
-#define MAX_CONV_EXPANSION 4 /* Can deal with UTF-8. */
-
-#endif