cURL / Mailing Lists / curl-users / Single Mail

curl-users

Re: 7.10.3-pre4

From: <crpalmer_at_vivisimo.com>
Date: Thu, 9 Jan 2003 16:49:14 -0500

There seem to be some more issues with the multi package.
In particular, it seems that there is a problem during a connection
attampt to a remote host (my guess is that the problem is related
to the asynchronous connect, rather than a connect that succeeds
immediately).

Compiling my example program against 7.10.3-pre5 returns no data
while it works correctly with 7.10.2. If I change the URL from
vivisimo.com (remote) to 127.0.0.1 (local), both version work correctly.
This is running on RedHat 7.2 (IPv4, I believe)..

Let me know if I can offer any more information.

Cheers,
Chris.

------------------ example code --------------------------

#include <stdio.h>
#include <stdlib.h>
#include "curl/curl.h"

int
main(int argc, char **argv)
{
    CURL *c;

    curl_global_init(CURL_GLOBAL_ALL);
    c = curl_easy_init();
    curl_easy_setopt(c, CURLOPT_URL, "http://vivisimo.com/");

    /* turned this off because 7.10.2 has a bug in the verbose */
    /* turning it with --proxy shows the following line twice
        * About to connect() to localhost:3128
     */

    //curl_easy_setopt(c, CURLOPT_VERBOSE, 1);

    {
        CURLM *m = curl_multi_init();
        CURLMcode res;
        int running;

        res = curl_multi_add_handle(m, c);

        for (;;) {
            fd_set rd, wr, exc;
            int max_fd;

            while (res == CURLM_CALL_MULTI_PERFORM) {
                res = curl_multi_perform(m, &running);
                if (running <= 0) {
                    exit(0);
                }
            }

            if (res != CURLM_OK) {
                fprintf(stderr, "not okay???\n");
                exit(2);
            }

            FD_ZERO(&rd);
            FD_ZERO(&wr);
            FD_ZERO(&exc);
            max_fd = 0;

            if (curl_multi_fdset(m, &rd, &wr, &exc, &max_fd) != CURLM_OK) {
                fprintf(stderr, "unexpected failured of fdset.\n");
                exit(3);
            }

            if (select(max_fd+1, &rd, &wr, &exc, NULL) == -1) {
                fprintf(stderr, "bad select??\n");
                exit(4);
            }

            res = CURLM_CALL_MULTI_PERFORM;
        }
    }
        
    return 0;
}

Os Thu, Jan 09, 2003 at 11:43:49AM +0100, Daniel Stenberg wrote:
> Download pre-release 4 from here:
>
> http://curl.haxx.se/beta/
>
> I consider this a release candidate. I don't plan on doing many more changes
> unless I have to before 7.10.3 goes public.
>
> Please let me know if you experience any problems with this package.
>
> There are still some open bug reports (please, if you know of other bugs not
> currently mentioned in the bug tracker, add them!) but none of them is a
> showstopper.
>
> --
> Daniel Stenberg - http://daniel.haxx.se - +46-705-44 31 77
> ech`echo xiun|tr nu oc|sed 'sx\([sx]\)\([xoi]\)xo un\2\1 is xg'`ol
>
>
> -------------------------------------------------------
> This SF.NET email is sponsored by:
> SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
> http://www.vasoftware.com

-- 
Christopher R. Palmer                     palmer_at_vivisimo.com
Chief Technology Officer                  www.vivisimo.com
Vivisimo, Inc.                            412-422-2499
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
Received on 2003-01-10