Re: [evolution-patches] IDN patch for evolution head



Here is the problem,

camel-http-stream.c:

static CamelStream *
http_connect (CamelHttpStream *http, CamelURL *url)
{
        CamelStream *stream = NULL;
        struct hostent *host;
        int errsave;

        if (!strcasecmp (url->protocol, "https")) {
#ifdef HAVE_SSL
                stream = camel_tcp_stream_ssl_new (http->session, url->host,
                					          ^^^^^^^^^								 
                 SSL_FLAGS);
#endif



and 

host = camel_gethostbyname (url->host, NULL);
                            ^^^^^^^^^
                            
These can't be utf8_hosts....



>
>like what? where is this a problem?
>
>> 
>> I can make utf8_host set always.
>
>what I want to see is no camel files changed except camel-url.c (and, if
>necessary, camel-url-scanner.c)
>

Currently the logic for determine the end of a valid url only considers ASCII 
character, suppose that you have a link in a received like follows

http://<multibyte host>/index.htm

within a mail, that link need to be active when viewed in mail window (should be 
clickable), currently 8bit characters are not treated as valid hostnames. This 
logic takes in each utf8 charcter of the hostname and will check whether each 
utf8 charcter is fit to be as a part of a hostname, each utf8 character will be 
converted to ASCII compatible encoding and will be checked.

>in fact, I don't even understand the change in camel-url-scanner.c - can
>you explain that logic?





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]