X-Git-Url: http://nitlanguage.org diff --git a/lib/curl/native_curl.nit b/lib/curl/native_curl.nit index d611dbf..d3ed43a 100644 --- a/lib/curl/native_curl.nit +++ b/lib/curl/native_curl.nit @@ -87,9 +87,9 @@ extern class NativeCurl `{ CURL * `} fun easy_setopt(opt: CURLOption, obj: Object): CURLCode do if obj isa Int then return native_setopt_int(opt, obj) - if obj isa Bool and obj == true then return native_setopt_int(opt, 1) - if obj isa Bool and obj == false then return native_setopt_int(opt, 0) - if obj isa String then return native_setopt_string(opt, obj) + if obj == true then return native_setopt_int(opt, 1) + if obj == false then return native_setopt_int(opt, 0) + if obj isa String then return native_setopt_string(opt, obj.to_cstring) if obj isa FileWriter then return native_setopt_file(opt, obj._file.as(not null)) if obj isa CURLSList then return native_setopt_slist(opt, obj) return once new CURLCode.unknown_option @@ -107,9 +107,8 @@ extern class NativeCurl `{ CURL * `} private fun native_setopt_slist(opt: CURLOption, list: CURLSList): CURLCode `{ return curl_easy_setopt( self, opt, list); `} # Internal method to set options to CURL using String parameter. - private fun native_setopt_string(opt: CURLOption, str: String): CURLCode import String.to_cstring `{ - char *rStr = String_to_cstring(str); - return curl_easy_setopt( self, opt, rStr); + private fun native_setopt_string(opt: CURLOption, str: CString): CURLCode `{ + return curl_easy_setopt( self, opt, str); `} # Request Chars internal information from the CURL session @@ -121,7 +120,7 @@ extern class NativeCurl `{ CURL * `} return answ.item.to_s end - # Internal method used to get String object information initially knowns as C Chars type + # Internal method used to get String object information initially known as C Chars type private fun native_getinfo_chars(opt: CURLInfoChars, res: Ref[CString]): CURLCode import Ref[CString].item= `{ char *r; @@ -324,7 +323,7 @@ extern class CURLSList `{ struct curl_slist * `} var r = new Array[String] var cursor = self loop - if native_data_reachable(cursor) != true then break + if not native_data_reachable(cursor) then break r.add(native_data(cursor)) cursor = native_next(cursor) end @@ -753,6 +752,10 @@ extern class CURLOption `{ CURLoption `} # new `{ return CURLOPT_SSH_KEYFUNCTION; `} # new `{ return CURLOPT_SSH_KEYDATA; `} + # TELNET Options + +# new `{ return CURLOPT_TELNETOPTIONS; `} + # Other Options # new `{ return CURLOPT_PRIVATE; `} @@ -760,7 +763,6 @@ extern class CURLOption `{ CURLoption `} # new `{ return CURLOPT_NEW_FILE_PERMS; `} # new `{ return CURLOPT_NEW_DIRECTORY_PERMS; `} - # TELNET Options - -# new `{ return CURLOPT_TELNETOPTIONS; `} + # Set the Unix domain socket + new unix_socket_path `{ return CURLOPT_UNIX_SOCKET_PATH; `} end