summaryrefslogtreecommitdiff
path: root/ftp/rexx-curl/files/patch-rexxcurl.c
blob: 22d99508b6196670211a4e54aa2289d6787a39ff (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
--- rexxcurl.c.orig	2012-04-26 09:56:03 UTC
+++ rexxcurl.c
@@ -384,7 +384,9 @@ static curl_options RexxCurlOptions[] =
 #if LIBCURL_VERSION_NUM >= 0x071301
    { "CERTINFO"        ,CURLOPT_CERTINFO        ,RXCURLOPT_LONG        , NULL },
 #endif
+#if 0
    { "CLOSEPOLICY"     ,CURLOPT_CLOSEPOLICY     ,RXCURLOPT_POLICY      , NULL },
+#endif
 #if LIBCURL_VERSION_NUM >= 0x070f02
    { "CONNECTONLY"     ,CURLOPT_CONNECT_ONLY    ,RXCURLOPT_LONG        , NULL },
 #endif
@@ -489,8 +491,13 @@ static curl_options RexxCurlOptions[] =
    { "GSSAPIDELEGATION",CURLOPT_GSSAPI_DELEGATION,RXCURLOPT_GSSAPI_DELEGATION , NULL },
 #endif
    { "HEADER"          ,CURLOPT_HEADER          ,RXCURLOPT_BOOL        , NULL },
+#if LIBCURL_VERSION_NUM >= 0x070907
+   { "HEADERFILE"      ,CURLOPT_HEADERDATA      ,RXCURLOPT_OUTFILE     , NULL },
+   { "HEADERSTEM"      ,CURLOPT_HEADERDATA      ,RXCURLOPT_HEADERSTEM  , NULL },
+#else
    { "HEADERFILE"      ,CURLOPT_WRITEHEADER     ,RXCURLOPT_OUTFILE     , NULL },
    { "HEADERSTEM"      ,CURLOPT_WRITEHEADER     ,RXCURLOPT_HEADERSTEM  , NULL },
+#endif
 #if LIBCURL_VERSION_NUM >= 0x070a03
    { "HTTP200ALIASES"  ,CURLOPT_HTTP200ALIASES  ,RXCURLOPT_LIST        , NULL },
 #endif
@@ -517,9 +524,17 @@ static curl_options RexxCurlOptions[] =
 #if LIBCURL_VERSION_NUM >= 0x070e01
    { "IGNORECONTENTLENGTH",CURLOPT_IGNORE_CONTENT_LENGTH,RXCURLOPT_LONG, NULL },
 #endif
+#if LIBCURL_VERSION_NUM >= 0x070907
+   { "INFILE"          ,CURLOPT_READDATA        ,RXCURLOPT_INFILE      , NULL },
+#else
    { "INFILE"          ,CURLOPT_INFILE          ,RXCURLOPT_INFILE      , NULL },
+#endif
    { "INTERFACE"       ,CURLOPT_INTERFACE       ,RXCURLOPT_STRING      , NULL },
+#if LIBCURL_VERSION_NUM >= 0x070907
+   { "INSTEM"          ,CURLOPT_READDATA        ,RXCURLOPT_INSTEM      , NULL },
+#else
    { "INSTEM"          ,CURLOPT_INFILE          ,RXCURLOPT_INSTEM      , NULL },
+#endif
 #if LIBCURL_VERSION_NUM >= 0x070a08
    { "IPRESOLVE"       ,CURLOPT_IPRESOLVE       ,RXCURLOPT_IPRESOLVE   , NULL },
 #endif
@@ -576,8 +591,10 @@ static curl_options RexxCurlOptions[] =
 #if LIBCURL_VERSION_NUM >= 0x070a02
    { "NOSIGNAL"        ,CURLOPT_NOSIGNAL        ,RXCURLOPT_BOOL        , NULL },
 #endif
-   { "OUTFILE"         ,CURLOPT_FILE            ,RXCURLOPT_OUTFILE     , NULL },
-   { "OUTSTEM"         ,CURLOPT_FILE            ,RXCURLOPT_OUTSTEM     , NULL },
+#if LIBCURL_VERSION_NUM >= 0x070907
+   { "OUTFILE"         ,CURLOPT_WRITEDATA       ,RXCURLOPT_OUTFILE     , NULL },
+   { "OUTSTEM"         ,CURLOPT_WRITEDATA       ,RXCURLOPT_OUTSTEM     , NULL },
+#endif
 #if LIBCURL_VERSION_NUM >= 0x071301
    { "PASSWORD"        ,CURLOPT_PASSWORD        ,RXCURLOPT_STRING      , NULL },
 #endif
@@ -1269,7 +1286,7 @@ void RexxCURLSetVersionInfoConstants( Rx
    valuelen = 0;
    namelen = sprintf( name, "%sLIBSSH_VERSION", RxGetConstantPrefix( RxPackageGlobalData ) );
 #if LIBCURL_VERSION_NUM >= 0x071001
-   support = version_info->libssh_version;
+   support = (char *) version_info->libssh_version;
    valuelen = (version_info->libssh_version) ? strlen( version_info->libssh_version ) : 0;
 #endif
    SetRexxVariable( RxPackageGlobalData, name, namelen, support, valuelen );
@@ -2273,9 +2290,10 @@ rxfunc( CurlSetopt )
             SetCURLError( RxPackageGlobalData,  curl_rc, curl_errors[rc] );
             break;
          }
+#if LIBCURL_VERSION_NUMBER > 0x070907
          switch ( RexxCurlOptions[opt].number )
          {
-            case CURLOPT_FILE:
+            case CURLOPT_WRITEDATA:
                if ( argv[2].strlength )
                {
                   /*
@@ -2293,6 +2311,7 @@ rxfunc( CurlSetopt )
             default:
                break;
          }
+#endif
          break;
       case RXCURLOPT_INFILE:
          /* parameter must be the name of a file to read from or blank to turn it off */
@@ -2317,7 +2336,11 @@ rxfunc( CurlSetopt )
           */
          switch ( RexxCurlOptions[opt].number )
          {
+#if LIBCURL_VERSION_NUM >= 0x070907
+            case CURLOPT_READDATA:
+#else
             case CURLOPT_INFILE:
+#endif
                /*
                 * Always set the file size for the specified INFILE
                 */