mirror of
https://github.com/moparisthebest/curl
synced 2024-11-12 04:25:08 -05:00
OS400: add URL API ccsid wrappers and sync ILE/RPG bindings
This commit is contained in:
parent
5bfaa86ceb
commit
a77b640cc0
@ -75,6 +75,7 @@ options:
|
||||
CURLOPT_CUSTOMREQUEST
|
||||
CURLOPT_DEFAULT_PROTOCOL
|
||||
CURLOPT_DNS_SERVERS
|
||||
CURLOPT_DOH_URL
|
||||
CURLOPT_EGDSOCKET
|
||||
CURLOPT_ENCODING
|
||||
CURLOPT_FTPPORT
|
||||
|
@ -1125,7 +1125,7 @@ curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
|
||||
if(testwarn) {
|
||||
testwarn = 0;
|
||||
|
||||
if((int) STRING_LASTZEROTERMINATED != (int) STRING_TARGET + 1 ||
|
||||
if((int) STRING_LASTZEROTERMINATED != (int) STRING_DOH + 1 ||
|
||||
(int) STRING_LAST != (int) STRING_COPYPOSTFIELDS + 1)
|
||||
curl_mfprintf(stderr,
|
||||
"*** WARNING: curl_easy_setopt_ccsid() should be reworked ***\n");
|
||||
@ -1147,6 +1147,7 @@ curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
|
||||
case CURLOPT_CUSTOMREQUEST:
|
||||
case CURLOPT_DEFAULT_PROTOCOL:
|
||||
case CURLOPT_DNS_SERVERS:
|
||||
case CURLOPT_DOH_URL:
|
||||
case CURLOPT_EGDSOCKET:
|
||||
case CURLOPT_ENCODING:
|
||||
case CURLOPT_FTPPORT:
|
||||
@ -1424,3 +1425,46 @@ curl_mime_data_ccsid(curl_mimepart *part,
|
||||
free(s);
|
||||
return result;
|
||||
}
|
||||
|
||||
CURLUcode
|
||||
curl_url_get_ccsid(CURLU *handle, CURLUPart what, char **part,
|
||||
unsigned int flags, unsigned int ccsid)
|
||||
|
||||
{
|
||||
char *s = (char *)NULL;
|
||||
CURLUcode result;
|
||||
|
||||
if(!part)
|
||||
return CURLUE_BAD_PARTPOINTER;
|
||||
|
||||
*part = (char *)NULL;
|
||||
result = curl_url_get(handle, what, &s, flags);
|
||||
if(result == CURLUE_OK) {
|
||||
if(s) {
|
||||
*part = dynconvert(ccsid, s, -1, ccsid, ASCII_CCSID);
|
||||
if(!*part)
|
||||
result = CURLUE_OUT_OF_MEMORY;
|
||||
}
|
||||
if(s)
|
||||
free(s);
|
||||
return result;
|
||||
}
|
||||
|
||||
CURLUcode
|
||||
curl_url_set_ccsid(CURLU *handle, CURLUPart what, const char *part,
|
||||
unsigned int flags, unsigned int ccsid)
|
||||
|
||||
{
|
||||
char *s = (char *)NULL;
|
||||
CURLUcode result;
|
||||
|
||||
if(part) {
|
||||
s = dynconvert(ASCII_CCSID, part, -1, ccsid);
|
||||
if(!s)
|
||||
return CURLUE_OUT_OF_MEMORY;
|
||||
}
|
||||
result = curl_url_set(handle, what, s, flags);
|
||||
if(s)
|
||||
free(s);
|
||||
return result;
|
||||
}
|
||||
|
@ -85,5 +85,11 @@ CURL_EXTERN CURLcode curl_mime_filedata_ccsid(curl_mimepart *part,
|
||||
CURL_EXTERN CURLcode curl_mime_data_ccsid(curl_mimepart *part,
|
||||
const char *data, size_t datasize,
|
||||
unsigned int ccsid);
|
||||
CURL_EXTERN CURLUcode curl_url_get_ccsid(CURLU *handle, CURLUPart what,
|
||||
char **part, unsigned int flags,
|
||||
unsigned int ccsid);
|
||||
CURL_EXTERN CURLUcode curl_url_set_ccsid(CURLU *handle, CURLUPart what,
|
||||
const char *part, unsigned int flags,
|
||||
unsigned int ccsid);
|
||||
|
||||
#endif
|
||||
|
@ -369,6 +369,27 @@
|
||||
d CURL_WAIT_POLLOUT...
|
||||
d c X'0004'
|
||||
*
|
||||
d CURLU_DEFAULT_PORT...
|
||||
d c X'00000001'
|
||||
d CURLU_NO_DEFAULT_PORT...
|
||||
d c X'00000002'
|
||||
d CURLU_DEFAULT_SCHEME...
|
||||
d c X'00000004'
|
||||
d CURLU_NON_SUPPORT_SCHEME...
|
||||
d c X'00000008'
|
||||
d CURLU_PATH_AS_IS...
|
||||
d c X'00000010'
|
||||
d CURLU_DISALLOW_USER...
|
||||
d c X'00000020'
|
||||
d CURLU_URLDECODE...
|
||||
d c X'00000040'
|
||||
d CURLU_URLENCODE...
|
||||
d c X'00000080'
|
||||
d CURLU_APPENDQUERY...
|
||||
d c X'00000100'
|
||||
d CURLU_GUESS_SCHEME...
|
||||
d c X'00000200'
|
||||
*
|
||||
**************************************************************************
|
||||
* Types
|
||||
**************************************************************************
|
||||
@ -480,7 +501,7 @@
|
||||
d c 49
|
||||
d CURLE_OBSOLETE50...
|
||||
d c 50
|
||||
d CURLE_PEER_FAILED_VERIFICATION...
|
||||
d CURLE_OBSOLETE51...
|
||||
d c 51
|
||||
d CURLE_GOT_NOTHING...
|
||||
d c 52
|
||||
@ -498,7 +519,7 @@
|
||||
d c 58
|
||||
d CURLE_SSL_CIPHER...
|
||||
d c 59
|
||||
d CURLE_SSL_CACERT...
|
||||
d CURLE_PEER_FAILED_VERIFICATION...
|
||||
d c 60
|
||||
d CURLE_BAD_CONTENT_ENCODING...
|
||||
d c 61
|
||||
@ -565,6 +586,9 @@
|
||||
d CURLE_HTTP2_STREAM...
|
||||
d c 92
|
||||
*
|
||||
d CURLE_SSL_CACERT...
|
||||
d c 60
|
||||
*
|
||||
/if not defined(CURL_NO_OLDIES)
|
||||
d CURLE_URL_MALFORMAT_USER...
|
||||
d c 4
|
||||
@ -727,6 +751,12 @@
|
||||
d CURLSSLOPT_NO_REVOKE...
|
||||
d c X'0002'
|
||||
*
|
||||
d CURL_HET_DEFAULT...
|
||||
d c 200
|
||||
*
|
||||
d CURL_UPKEEP_INTERVAL_DEFAULT...
|
||||
d c 60000
|
||||
*
|
||||
/if not defined(CURL_NO_OLDIES)
|
||||
d curl_ftpssl s like(curl_usessl)
|
||||
d based(######ptr######)
|
||||
@ -1348,6 +1378,12 @@
|
||||
d c 10277
|
||||
d CURLOPT_DISALLOW_USERNAME_IN_URL...
|
||||
d c 00278
|
||||
d CURLOPT_DOH_URL...
|
||||
d c 10279
|
||||
d CURLOPT_UPLOAD_BUFFERSIZE...
|
||||
d c 00280
|
||||
d CURLOPT_UPKEEP_INTERVAL_MS...
|
||||
d c 00281
|
||||
*
|
||||
/if not defined(CURL_NO_OLDIES)
|
||||
d CURLOPT_FILE c 10001
|
||||
@ -1804,7 +1840,64 @@
|
||||
d c 12
|
||||
d CURL_RTSPREQ_LAST...
|
||||
d c 13
|
||||
|
||||
*
|
||||
d CURLUcode s 10i 0 based(######ptr######) Enum
|
||||
d CURLUE_OK c 0
|
||||
d CURLUE_BAD_HANDLE...
|
||||
d c 1
|
||||
d CURLUE_BAD_PARTPOINTER...
|
||||
d c 2
|
||||
d CURLUE_MALFORMED_INPUT...
|
||||
d c 3
|
||||
d CURLUE_BAD_PORT_NUMBER...
|
||||
d c 4
|
||||
d CURLUE_UNSUPPORTED_SCHEME...
|
||||
d c 5
|
||||
d CURLUE_URLDECODE...
|
||||
d c 6
|
||||
d CURLUE_OUT_OF_MEMORY...
|
||||
d c 7
|
||||
d CURLUE_USER_NOT_ALLOWED...
|
||||
d c 8
|
||||
d CURLUE_UNKNOWN_PART...
|
||||
d c 9
|
||||
d CURLUE_NO_SCHEME...
|
||||
d c 10
|
||||
d CURLUE_NO_USER...
|
||||
d c 11
|
||||
d CURLUE_NO_PASSWORD...
|
||||
d c 12
|
||||
d CURLUE_NO_OPTIONS...
|
||||
d c 13
|
||||
d CURLUE_NO_HOST...
|
||||
d c 14
|
||||
d CURLUE_NO_PORT...
|
||||
d c 15
|
||||
d CURLUE_NO_QUERY...
|
||||
d c 16
|
||||
d CURLUE_NO_FRAGMENT...
|
||||
d c 17
|
||||
*
|
||||
d CURLUPart s 10i 0 based(######ptr######) Enum
|
||||
d CURLUPART_URL c 0
|
||||
d CURLUPART_SCHEME...
|
||||
d c 1
|
||||
d CURLUPART_USER...
|
||||
d c 2
|
||||
d CURLUPART_PASSWORD...
|
||||
d c 3
|
||||
d CURLUPART_OPTIONS...
|
||||
d c 4
|
||||
d CURLUPART_HOST...
|
||||
d c 5
|
||||
d CURLUPART_PORT...
|
||||
d c 6
|
||||
d CURLUPART_PATH...
|
||||
d c 7
|
||||
d CURLUPART_QUERY...
|
||||
d c 8
|
||||
d CURLUPART_FRAGMENT...
|
||||
d c 9
|
||||
*
|
||||
* Renaming CURLMsg to CURL_Msg to avoid case-insensivity name clash.
|
||||
*
|
||||
@ -2486,6 +2579,29 @@
|
||||
d sockfd value like(curl_socket_t)
|
||||
d sockp * value void *
|
||||
*
|
||||
d curl_url pr * extproc('curl_url') CURLU *
|
||||
*
|
||||
d curl_url_cleanup...
|
||||
d pr extproc('curl_url_cleanup')
|
||||
d handle * value CURLU *
|
||||
*
|
||||
d curl_url_dup pr * extproc('curl_url_dup') CURLU *
|
||||
d in * value CURLU *
|
||||
*
|
||||
d curl_url_get pr extproc('curl_url_get')
|
||||
d like(CURLUcode)
|
||||
d handle * value CURLU *
|
||||
d what value like(CURLUPart)
|
||||
d part * char **
|
||||
d flags 10u 0 value
|
||||
*
|
||||
d curl_url_set pr extproc('curl_url_set')
|
||||
d like(CURLUcode)
|
||||
d handle * value CURLU *
|
||||
d what value like(CURLUPart)
|
||||
d part * value options(*string)
|
||||
d flags 10u 0 value
|
||||
*
|
||||
**************************************************************************
|
||||
* CCSID wrapper procedure prototypes
|
||||
**************************************************************************
|
||||
@ -2640,6 +2756,24 @@
|
||||
d like(CURLcode)
|
||||
d part * value curl_mimepart *
|
||||
d filename * value options(*string)
|
||||
d ccsid 10u 0 value
|
||||
*
|
||||
d curl_url_get_ccsid...
|
||||
d pr extproc('curl_url_get_ccsid')
|
||||
d like(CURLUcode)
|
||||
d handle * value CURLU *
|
||||
d what value like(CURLUPart)
|
||||
d part * char **
|
||||
d flags 10u 0 value
|
||||
d ccsid 10u 0 value
|
||||
*
|
||||
d curl_url_set_ccsid...
|
||||
d pr extproc('curl_url_set_ccsid')
|
||||
d like(CURLUcode)
|
||||
d handle * value CURLU *
|
||||
d what value like(CURLUPart)
|
||||
d part * value options(*string)
|
||||
d flags 10u 0 value
|
||||
d ccsid 10u 0 value
|
||||
*
|
||||
/endif
|
||||
|
Loading…
Reference in New Issue
Block a user