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_CUSTOMREQUEST
|
||||||
CURLOPT_DEFAULT_PROTOCOL
|
CURLOPT_DEFAULT_PROTOCOL
|
||||||
CURLOPT_DNS_SERVERS
|
CURLOPT_DNS_SERVERS
|
||||||
|
CURLOPT_DOH_URL
|
||||||
CURLOPT_EGDSOCKET
|
CURLOPT_EGDSOCKET
|
||||||
CURLOPT_ENCODING
|
CURLOPT_ENCODING
|
||||||
CURLOPT_FTPPORT
|
CURLOPT_FTPPORT
|
||||||
|
@ -1125,7 +1125,7 @@ curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
|
|||||||
if(testwarn) {
|
if(testwarn) {
|
||||||
testwarn = 0;
|
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)
|
(int) STRING_LAST != (int) STRING_COPYPOSTFIELDS + 1)
|
||||||
curl_mfprintf(stderr,
|
curl_mfprintf(stderr,
|
||||||
"*** WARNING: curl_easy_setopt_ccsid() should be reworked ***\n");
|
"*** 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_CUSTOMREQUEST:
|
||||||
case CURLOPT_DEFAULT_PROTOCOL:
|
case CURLOPT_DEFAULT_PROTOCOL:
|
||||||
case CURLOPT_DNS_SERVERS:
|
case CURLOPT_DNS_SERVERS:
|
||||||
|
case CURLOPT_DOH_URL:
|
||||||
case CURLOPT_EGDSOCKET:
|
case CURLOPT_EGDSOCKET:
|
||||||
case CURLOPT_ENCODING:
|
case CURLOPT_ENCODING:
|
||||||
case CURLOPT_FTPPORT:
|
case CURLOPT_FTPPORT:
|
||||||
@ -1424,3 +1425,46 @@ curl_mime_data_ccsid(curl_mimepart *part,
|
|||||||
free(s);
|
free(s);
|
||||||
return result;
|
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,
|
CURL_EXTERN CURLcode curl_mime_data_ccsid(curl_mimepart *part,
|
||||||
const char *data, size_t datasize,
|
const char *data, size_t datasize,
|
||||||
unsigned int ccsid);
|
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
|
#endif
|
||||||
|
@ -369,6 +369,27 @@
|
|||||||
d CURL_WAIT_POLLOUT...
|
d CURL_WAIT_POLLOUT...
|
||||||
d c X'0004'
|
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
|
* Types
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
@ -480,7 +501,7 @@
|
|||||||
d c 49
|
d c 49
|
||||||
d CURLE_OBSOLETE50...
|
d CURLE_OBSOLETE50...
|
||||||
d c 50
|
d c 50
|
||||||
d CURLE_PEER_FAILED_VERIFICATION...
|
d CURLE_OBSOLETE51...
|
||||||
d c 51
|
d c 51
|
||||||
d CURLE_GOT_NOTHING...
|
d CURLE_GOT_NOTHING...
|
||||||
d c 52
|
d c 52
|
||||||
@ -498,7 +519,7 @@
|
|||||||
d c 58
|
d c 58
|
||||||
d CURLE_SSL_CIPHER...
|
d CURLE_SSL_CIPHER...
|
||||||
d c 59
|
d c 59
|
||||||
d CURLE_SSL_CACERT...
|
d CURLE_PEER_FAILED_VERIFICATION...
|
||||||
d c 60
|
d c 60
|
||||||
d CURLE_BAD_CONTENT_ENCODING...
|
d CURLE_BAD_CONTENT_ENCODING...
|
||||||
d c 61
|
d c 61
|
||||||
@ -565,6 +586,9 @@
|
|||||||
d CURLE_HTTP2_STREAM...
|
d CURLE_HTTP2_STREAM...
|
||||||
d c 92
|
d c 92
|
||||||
*
|
*
|
||||||
|
d CURLE_SSL_CACERT...
|
||||||
|
d c 60
|
||||||
|
*
|
||||||
/if not defined(CURL_NO_OLDIES)
|
/if not defined(CURL_NO_OLDIES)
|
||||||
d CURLE_URL_MALFORMAT_USER...
|
d CURLE_URL_MALFORMAT_USER...
|
||||||
d c 4
|
d c 4
|
||||||
@ -727,6 +751,12 @@
|
|||||||
d CURLSSLOPT_NO_REVOKE...
|
d CURLSSLOPT_NO_REVOKE...
|
||||||
d c X'0002'
|
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)
|
/if not defined(CURL_NO_OLDIES)
|
||||||
d curl_ftpssl s like(curl_usessl)
|
d curl_ftpssl s like(curl_usessl)
|
||||||
d based(######ptr######)
|
d based(######ptr######)
|
||||||
@ -1348,6 +1378,12 @@
|
|||||||
d c 10277
|
d c 10277
|
||||||
d CURLOPT_DISALLOW_USERNAME_IN_URL...
|
d CURLOPT_DISALLOW_USERNAME_IN_URL...
|
||||||
d c 00278
|
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)
|
/if not defined(CURL_NO_OLDIES)
|
||||||
d CURLOPT_FILE c 10001
|
d CURLOPT_FILE c 10001
|
||||||
@ -1804,7 +1840,64 @@
|
|||||||
d c 12
|
d c 12
|
||||||
d CURL_RTSPREQ_LAST...
|
d CURL_RTSPREQ_LAST...
|
||||||
d c 13
|
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.
|
* Renaming CURLMsg to CURL_Msg to avoid case-insensivity name clash.
|
||||||
*
|
*
|
||||||
@ -2486,6 +2579,29 @@
|
|||||||
d sockfd value like(curl_socket_t)
|
d sockfd value like(curl_socket_t)
|
||||||
d sockp * value void *
|
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
|
* CCSID wrapper procedure prototypes
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
@ -2640,6 +2756,24 @@
|
|||||||
d like(CURLcode)
|
d like(CURLcode)
|
||||||
d part * value curl_mimepart *
|
d part * value curl_mimepart *
|
||||||
d filename * value options(*string)
|
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
|
d ccsid 10u 0 value
|
||||||
*
|
*
|
||||||
/endif
|
/endif
|
||||||
|
Loading…
Reference in New Issue
Block a user