From: Brian Takita Date: 2005-07-29T11:21:01+09:00 Subject: libcurl and ruby-dl Hello, I'm trying to figure out how to use libcurl via ruby-dl. Here is some good documentation I found about ruby-dl. http://www.jbrowse.com/text/rdl_en.html I read _Why's intro to using libcurl at, http://whytheluckystiff.net/articles/rubyOneEightOh.html, which is an exciting but shallow introduction. Right now, I am having trouble setting the url parameter by calling curl_easy_setopt. Here is libcurl's documentation that I am trying to grok: http://curl.mirror.internet.tp/libcurl/c/curl_easy_setopt.html What I have so far is at the end of this message. Unforunately, my C knowledge is lacking that I am not confident how to finish this test script. Can somebody help me to get a simple request working with libcurl and Ruby? Thank you, Brian Takita require 'dl/import' require 'dl/struct' module Curl extend DL::Importable dlload "libcurl.dll" typealias('CURL', 'void') typealias('CURLOPT', 'long') extern "CURL *curl_easy_init()" extern "char *curl_version()" extern "void *curl_version_info(int)" extern "void curl_easy_setopt(CURL *, CURLOPT, char *)" extern "curl_easy_cleanup(CURL *)" VersionInfoData = struct [ "int age", "char *version", "uint version_num", "char *host", "int features", "char *ssl_version", "long ssl_version_num", "char *libz_version", "char **protocols" ] end handle = Curl.curl_easy_init url_param = 0 # I don't know the value Curl.curl_easy_setopt(handle, url_param, 'http://www.google.com') # This also fails # Documentation is at http://curl.mirror.internet.tp/libcurl/c/curl_easy_cleanup.html Curl.curl_easy_cleanup(handle)