#include <iconv.h>#include <string.h>#include <stdlib.h>#include <errno.h>#include <stdarg.h>#include "curl.h"#include "mprintf.h"#include "slist.h"#include "urldata.h"#include "url.h"#include "getinfo.h"#include "ccsidcurl.h"#include "os400sys.h"
Go to the source code of this file.
Classes | |
| struct | cfcdata |
Defines | |
| #define | ALLOC_GRANULE 8 /* Alloc. granule for curl_formadd_ccsid(). */ |
| #define | ASCII_CCSID 819 /* Use ISO-8859-1 as ASCII. */ |
| #define | ICONV_ID_SIZE 32 /* Size of iconv_open() code identifier. */ |
| #define | ICONV_OPEN_ERROR(t) ((t).return_value == -1) |
| #define | NOCONV_CCSID 65535 /* No conversion. */ |
| #define | SIZE_MAX ((size_t) ~0) /* Is unsigned on OS/400. */ |
Functions | |
| static int | convert (char *d, size_t dlen, int dccsid, const char *s, int slen, int sccsid) |
| static int | convert_version_info_string (const char **stringp, char **bufp, int *left, unsigned int ccsid) |
| void | curl_certinfo_free_all (struct curl_certinfo *info) |
| char * | curl_easy_escape_ccsid (CURL *handle, const char *string, int length, unsigned int sccsid, unsigned int dccsid) |
| CURLcode | curl_easy_getinfo_ccsid (CURL *curl, CURLINFO info,...) |
| CURLcode | curl_easy_setopt_ccsid (CURL *curl, CURLoption tag,...) |
| const char * | curl_easy_strerror_ccsid (CURLcode error, unsigned int ccsid) |
| char * | curl_easy_unescape_ccsid (CURL *handle, const char *string, int length, int *outlength, unsigned int sccsid, unsigned int dccsid) |
| char * | curl_form_long_value (long value) |
| CURLFORMcode | curl_formadd_ccsid (struct curl_httppost **httppost, struct curl_httppost **last_post,...) |
| static int | Curl_formadd_convert (struct curl_forms *forms, int formx, int lengthx, unsigned int ccsid) |
| static void | Curl_formadd_release_local (struct curl_forms *forms, int nargs, int skip) |
| static size_t | Curl_formget_callback_ccsid (void *arg, const char *buf, size_t len) |
| int | curl_formget_ccsid (struct curl_httppost *form, void *arg, curl_formget_callback append, unsigned int ccsid) |
| time_t | curl_getdate_ccsid (const char *p, const time_t *unused, unsigned int ccsid) |
| static int | Curl_is_formadd_string (CURLformoption option) |
| const char * | curl_multi_strerror_ccsid (CURLMcode error, unsigned int ccsid) |
| char * | curl_pushheader_byname_ccsid (struct curl_pushheaders *h, const char *header, unsigned int ccsidin, unsigned int ccsidout) |
| char * | curl_pushheader_bynum_cssid (struct curl_pushheaders *h, size_t num, unsigned int ccsid) |
| const char * | curl_share_strerror_ccsid (CURLSHcode error, unsigned int ccsid) |
| struct curl_slist * | curl_slist_append_ccsid (struct curl_slist *list, const char *data, unsigned int ccsid) |
| char * | curl_version_ccsid (unsigned int ccsid) |
| curl_version_info_data * | curl_version_info_ccsid (CURLversion stamp, unsigned int ccsid) |
| static char * | dynconvert (int dccsid, const char *s, int slen, int sccsid) |
| static iconv_t | iconv_open_CCSID (unsigned int ccsidout, unsigned int ccsidin, unsigned int cstr) |
| static void | makeOS400IconvCode (char buf[ICONV_ID_SIZE], unsigned int ccsid) |
| static struct curl_slist * | slist_convert (int dccsid, struct curl_slist *from, int sccsid) |
| #define ALLOC_GRANULE 8 /* Alloc. granule for curl_formadd_ccsid(). */ |
Definition at line 54 of file ccsidcurl.c.
| #define ASCII_CCSID 819 /* Use ISO-8859-1 as ASCII. */ |
Definition at line 49 of file ccsidcurl.c.
| #define ICONV_ID_SIZE 32 /* Size of iconv_open() code identifier. */ |
Definition at line 51 of file ccsidcurl.c.
| #define ICONV_OPEN_ERROR | ( | t | ) | ((t).return_value == -1) |
Definition at line 52 of file ccsidcurl.c.
| #define NOCONV_CCSID 65535 /* No conversion. */ |
Definition at line 50 of file ccsidcurl.c.
Definition at line 45 of file ccsidcurl.c.
| static int convert | ( | char * | d, |
| size_t | dlen, | ||
| int | dccsid, | ||
| const char * | s, | ||
| int | slen, | ||
| int | sccsid | ||
| ) | [static] |
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.
Definition at line 106 of file ccsidcurl.c.
| static int convert_version_info_string | ( | const char ** | stringp, |
| char ** | bufp, | ||
| int * | left, | ||
| unsigned int | ccsid | ||
| ) | [static] |
Definition at line 369 of file ccsidcurl.c.
| void curl_certinfo_free_all | ( | struct curl_certinfo * | info | ) |
Definition at line 587 of file ccsidcurl.c.
| char* curl_easy_escape_ccsid | ( | CURL * | handle, |
| const char * | string, | ||
| int | length, | ||
| unsigned int | sccsid, | ||
| unsigned int | dccsid | ||
| ) |
Definition at line 260 of file ccsidcurl.c.
| CURLcode curl_easy_getinfo_ccsid | ( | CURL * | curl, |
| CURLINFO | info, | ||
| ... | |||
| ) |
Definition at line 605 of file ccsidcurl.c.
| CURLcode curl_easy_setopt_ccsid | ( | CURL * | curl, |
| CURLoption | tag, | ||
| ... | |||
| ) |
Definition at line 1106 of file ccsidcurl.c.
| const char* curl_easy_strerror_ccsid | ( | CURLcode | error, |
| unsigned int | ccsid | ||
| ) |
Definition at line 512 of file ccsidcurl.c.
| char* curl_easy_unescape_ccsid | ( | CURL * | handle, |
| const char * | string, | ||
| int | length, | ||
| int * | outlength, | ||
| unsigned int | sccsid, | ||
| unsigned int | dccsid | ||
| ) |
Definition at line 290 of file ccsidcurl.c.
| char* curl_form_long_value | ( | long | value | ) |
Definition at line 1299 of file ccsidcurl.c.
| CURLFORMcode curl_formadd_ccsid | ( | struct curl_httppost ** | httppost, |
| struct curl_httppost ** | last_post, | ||
| ... | |||
| ) |
Definition at line 779 of file ccsidcurl.c.
| static int Curl_formadd_convert | ( | struct curl_forms * | forms, |
| int | formx, | ||
| int | lengthx, | ||
| unsigned int | ccsid | ||
| ) | [static] |
Definition at line 735 of file ccsidcurl.c.
| static void Curl_formadd_release_local | ( | struct curl_forms * | forms, |
| int | nargs, | ||
| int | skip | ||
| ) | [static] |
Definition at line 721 of file ccsidcurl.c.
| static size_t Curl_formget_callback_ccsid | ( | void * | arg, |
| const char * | buf, | ||
| size_t | len | ||
| ) | [static] |
Definition at line 1060 of file ccsidcurl.c.
| int curl_formget_ccsid | ( | struct curl_httppost * | form, |
| void * | arg, | ||
| curl_formget_callback | append, | ||
| unsigned int | ccsid | ||
| ) |
Definition at line 1092 of file ccsidcurl.c.
| time_t curl_getdate_ccsid | ( | const char * | p, |
| const time_t * | unused, | ||
| unsigned int | ccsid | ||
| ) |
Definition at line 348 of file ccsidcurl.c.
| static int Curl_is_formadd_string | ( | CURLformoption | option | ) | [static] |
Definition at line 701 of file ccsidcurl.c.
| const char* curl_multi_strerror_ccsid | ( | CURLMcode | error, |
| unsigned int | ccsid | ||
| ) |
Definition at line 562 of file ccsidcurl.c.
| char* curl_pushheader_byname_ccsid | ( | struct curl_pushheaders * | h, |
| const char * | header, | ||
| unsigned int | ccsidin, | ||
| unsigned int | ccsidout | ||
| ) |
Definition at line 1324 of file ccsidcurl.c.
| char* curl_pushheader_bynum_cssid | ( | struct curl_pushheaders * | h, |
| size_t | num, | ||
| unsigned int | ccsid | ||
| ) |
Definition at line 1309 of file ccsidcurl.c.
| const char* curl_share_strerror_ccsid | ( | CURLSHcode | error, |
| unsigned int | ccsid | ||
| ) |
Definition at line 537 of file ccsidcurl.c.
| struct curl_slist* curl_slist_append_ccsid | ( | struct curl_slist * | list, |
| const char * | data, | ||
| unsigned int | ccsid | ||
| ) | [read] |
Definition at line 325 of file ccsidcurl.c.
| char* curl_version_ccsid | ( | unsigned int | ccsid | ) |
Definition at line 234 of file ccsidcurl.c.
| curl_version_info_data* curl_version_info_ccsid | ( | CURLversion | stamp, |
| unsigned int | ccsid | ||
| ) |
Definition at line 394 of file ccsidcurl.c.
| static char* dynconvert | ( | int | dccsid, |
| const char * | s, | ||
| int | slen, | ||
| int | sccsid | ||
| ) | [static] |
Definition at line 163 of file ccsidcurl.c.
| static iconv_t iconv_open_CCSID | ( | unsigned int | ccsidout, |
| unsigned int | ccsidin, | ||
| unsigned int | cstr | ||
| ) | [static] |
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".
Definition at line 80 of file ccsidcurl.c.
| static void makeOS400IconvCode | ( | char | buf[ICONV_ID_SIZE], |
| unsigned int | ccsid | ||
| ) | [static] |
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.
Definition at line 58 of file ccsidcurl.c.
| static struct curl_slist* slist_convert | ( | int | dccsid, |
| struct curl_slist * | from, | ||
| int | sccsid | ||
| ) | [static, read] |
Definition at line 215 of file ccsidcurl.c.