<<< Date Index >>>     <<< Thread Index >>>

bug#1695: marked as done (mutt-1.5.5.1i: doesn't detect libidn-0.3.x)



Your message dated Wed, 12 Nov 2003 14:48:52 +0100
with message-id <20031112134852.GC31944@xxxxxxxxxxxxxxxxxxxxxxxxxx>
and subject line bug#1695: mutt-1.5.5.1i: doesn't detect libidn-0.3.x
has caused the attached bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Herr der Kaefer
(administrator, GUUG bugs database)

--------------------------------------
Received: (at submit) by bugs.guug.de; 10 Nov 2003 14:32:33 +0000
>From ttakah@xxxxxxxxxxxxxxxxx Mon Nov 10 15:32:23 2003
Received: from c150240.vh.plala.or.jp ([210.150.150.240] helo=mps7.plala.or.jp)
        by trithemius.gnupg.org with esmtp (Exim 3.35 #1 (Debian))
        id 1AJD5a-0003dC-00
        for <submit@xxxxxxxxxxxx>; Mon, 10 Nov 2003 15:32:22 +0100
Received: from mutt.no-ip.org ([220.109.84.240]) by mps7.plala.or.jp
          with SMTP
          id <20031110143443.PKSU11918.mps7.plala.or.jp@xxxxxxxxxxxxxx>
          for <submit@xxxxxxxxxxxx>; Mon, 10 Nov 2003 23:34:43 +0900
Received: (qmail 38710 invoked by uid 1001); 10 Nov 2003 12:48:23 -0000
Date: Mon, 10 Nov 2003 21:48:23 +0900
From: TAKAHASHI Tamotsu <ttakah@xxxxxxxxxxxxxxxxx>
To: submit@xxxxxxxxxxxx
Subject: mutt-1.5.5.1i: doesn't detect libidn-0.3.x
Message-ID: <20031110124823.GA38592%tamo@xxxxxxxxxxxxxx>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.5.1i-ja.1
X-Spam-Status: No, hits=-6.5 required=5.0
        tests=AWL,BAYES_01,PATCH_UNIFIED_DIFF,USER_AGENT
        version=2.55
X-Spam-Level: 
X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)

Package: mutt
Version: 1.5.5.1i
Severity: wishlist

-- Please type your report below this line

Mutt simply fails to detect libidn-0.3.3.
I wrote the following patch to fix this on my FreeBSD machine.
Though I am not a programmer, this seems working fine for now.

This changes
idna_to_acii_from_utf8 (const char * input, char ** output, int 
allowunassigned, int usestd3asciirules);
to
idna_to_ascii_8z       (const char * input, char ** output, int flags);

while seeing <idna.h>:
typedef enum {
        IDNA_ALLOW_UNASSIGNED = 0x0001,
        IDNA_USE_STD3_ASCII_RULES = 0x0002
} Idna_flags;



You don't have to CC me because I am subscribed to mutt-dev.


--- mutt_idna.c~        Wed Nov  5 18:41:32 2003
+++ mutt_idna.c Sun Nov  9 16:23:52 2003
@@ -47,7 +47,7 @@
     goto notrans;
   
   /* Is this the right function?  Interesting effects with some bad 
identifiers! */
-  if (idna_to_unicode_utf8_from_utf8 (in, out, 1, 0) != IDNA_SUCCESS)
+  if (idna_to_unicode_8z8z (in, out, 1) != IDNA_SUCCESS)
     goto notrans;
   if (mutt_convert_string (out, "utf-8", Charset, M_ICONV_HOOK_TO) == -1)
     goto notrans;
@@ -63,7 +63,7 @@
     char *tmp = safe_strdup (*out);
     if (mutt_convert_string (&tmp, Charset, "utf-8", M_ICONV_HOOK_FROM) == -1)
       irrev = 1;
-    if (!irrev && idna_to_ascii_from_utf8 (tmp, &t2, 1, 0) != IDNA_SUCCESS)
+    if (!irrev && idna_to_ascii_8z (tmp, &t2, 1) != IDNA_SUCCESS)
       irrev = 1;
     if (!irrev && ascii_strcasecmp (t2, in))
     {
@@ -101,7 +101,7 @@
   
   if (mutt_convert_string (&tmp, Charset, "utf-8", M_ICONV_HOOK_FROM) == -1)
     rv = -1;
-  if (!rv && idna_to_ascii_from_utf8 (tmp, out, 1, 0) != IDNA_SUCCESS)
+  if (!rv && idna_to_ascii_8z (tmp, out, 1) != IDNA_SUCCESS)
     rv = -2;
   
   FREE (&tmp);
--- mutt_socket.c~      Tue Mar  4 18:50:13 2003
+++ mutt_socket.c       Sun Nov  9 16:29:12 2003
@@ -413,7 +413,7 @@
   snprintf (port, sizeof (port), "%d", conn->account.port);
   
 # ifdef HAVE_LIBIDN
-  if (idna_to_ascii_from_locale (conn->account.host, &host_idna, 1, 0) != 
IDNA_SUCCESS)
+  if (idna_to_ascii_lz (conn->account.host, &host_idna, 1) != IDNA_SUCCESS)
   {
     mutt_error (_("Bad IDN \"%s\"."), conn->account.host);
     return -1;
@@ -470,7 +470,7 @@
   sin.sin_family = AF_INET;
 
 # ifdef HAVE_LIBIDN
-  if (idna_to_ascii_from_locale (conn->account.host, &host_idna, 1, 0) != 
IDNA_SUCCESS)
+  if (idna_to_ascii_lz (conn->account.host, &host_idna, 1) != IDNA_SUCCESS)
   {
     mutt_error (_("Bad IDN \"%s\"."), conn->account.host);
     return -1;
--- configure~  Sun Nov  9 15:45:49 2003
+++ configure   Sun Nov  9 16:30:38 2003
@@ -5832,9 +5832,9 @@
 fi
 
 
-echo $ac_n "checking for idna_to_ascii_from_utf8 in -lidn""... $ac_c" 1>&6
-echo "configure:5814: checking for idna_to_ascii_from_utf8 in -lidn" >&5
-ac_lib_var=`echo idn'_'idna_to_ascii_from_utf8 | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for idna_to_ascii_8z in -lidn""... $ac_c" 1>&6
+echo "configure:5814: checking for idna_to_ascii_8z in -lidn" >&5
+ac_lib_var=`echo idn'_'idna_to_ascii_8z | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5846,10 +5846,10 @@
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
     builtin and then its argument prototype would still apply.  */
-char idna_to_ascii_from_utf8();
+char idna_to_ascii_8z();
 
 int main() {
-idna_to_ascii_from_utf8()
+idna_to_ascii_8z()
 ; return 0; }
 EOF
 if { (eval echo configure:5833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && 
test -s conftest${ac_exeext}; then
--- configure.in~       Sun Nov  9 15:45:48 2003
+++ configure.in        Sun Nov  9 16:31:17 2003
@@ -702,7 +702,7 @@
                 ]
 )
 
-AC_CHECK_LIB(idn, idna_to_ascii_from_utf8)
+AC_CHECK_LIB(idn, idna_to_ascii_8z)
 
 if test "$need_md5" = "yes"
 then


-- System Information
System Version: FreeBSD 5.1-RELEASE i386 

-- Build environment information

(Note: This is the build environment installed on the system
muttbug is run on.  Information may or may not match the environment
used to build mutt.)

- gcc version information
cc -I/usr/local/include -I/usr/local/include/slang
Using built-in specs.
Configured with: FreeBSD/i386 system compiler
Thread model: posix
gcc version 3.2.2 [FreeBSD] 20030205 (release)

- CFLAGS
-Wall -pedantic -O2 -pipe -march=pentium2

-- Mutt Version Information

Mutt 1.5.5.1i-ja.1 (2003-11-05)
Copyright (C) 1996-2002 Michael R. Elkins and others.

System: FreeBSD 5.1-RELEASE (i386) [using slang 10409] [using libiconv 1.9] 
[using libidn 0.3.3 (compiled with 0.3.3)]

patch-1.5.4.tt.ja.1 (with modified safe_realloc)

---------------------------------------
Received: (at 1695-done) by bugs.guug.de; 12 Nov 2003 13:46:25 +0000
>From roessler+bounce@xxxxxxxxxxxxxxxxxx Wed Nov 12 14:46:23 2003
Received: from does-not-exist.info ([217.160.221.198] 
helo=kamino.does-not-exist.org)
        by trithemius.gnupg.org with esmtp (Exim 3.35 #1 (Debian))
        id 1AJvKB-0004yi-00
        for <1695-done@xxxxxxxxxxxx>; Wed, 12 Nov 2003 14:46:23 +0100
Received: from voyager.does-not-exist.org (schroedinger.iam.uni-bonn.de 
[131.220.223.204])
        (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits))
        (No client certificate requested)
        by kamino.does-not-exist.org (Postfix) with ESMTP
        id 08A163140D5; Wed, 12 Nov 2003 14:48:55 +0100 (CET)
Received: by voyager.does-not-exist.org (Postfix, from userid 500)
        id A999C8110; Wed, 12 Nov 2003 14:48:53 +0100 (CET)
Date: Wed, 12 Nov 2003 14:48:52 +0100
From: Thomas Roessler <roessler@xxxxxxxxxxxxxxxxxx>
To: TAKAHASHI Tamotsu <ttakah@xxxxxxxxxxxxxxxxx>
Cc: 1695-done@xxxxxxxxxxxx
Subject: Re: bug#1695: mutt-1.5.5.1i: doesn't detect libidn-0.3.x
Message-ID: <20031112134852.GC31944@xxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <20031110124823.GA38592%tamo@xxxxxxxxxxxxxx> 
<20031112122016.GA31944@xxxxxxxxxxxxxxxxxxxxxxxxxx> 
<20031112132636.GA53497%tamo@xxxxxxxxxxxxxx>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20031112132636.GA53497%tamo@xxxxxxxxxxxxxx>
User-Agent: Mutt/1.5.5i
X-Spam-Status: No, hits=-107.8 required=5.0
        tests=AWL,BAYES_01,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT,
              REFERENCES,REPLY_WITH_QUOTES,USER_AGENT_MUTT,
              USER_IN_WHITELIST
        autolearn=ham version=2.55
X-Spam-Level: 
X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)

I'll commit this patch.

On 2003-11-12 22:26:36 +0900, TAKAHASHI Tamotsu wrote:
> From: TAKAHASHI Tamotsu <ttakah@xxxxxxxxxxxxxxxxx>
> To: Thomas Roessler <roessler@xxxxxxxxxxxxxxxxxx>, 1695@xxxxxxxxxxxx
> Date: Wed, 12 Nov 2003 22:26:36 +0900
> Subject: bug#1695: mutt-1.5.5.1i: doesn't detect libidn-0.3.x
> X-Spam-Level: 
> 
> Hello,
> 
> 
> On Wed, Nov 12, 2003 at 01:20:17PM +0100, Thomas Roessler wrote:
> 
> > Please try the attached patch instead.
> 
> Great! Thanks for the excellent solution.
> But, these checks should not be done if $with_idn is no.
> See my message sent to mutt-dev on March 25 or 26, 2003.
> 
> > diff -u -r3.12 configure.in
> > --- configure.in    12 Nov 2003 11:47:46 -0000      3.12
> > +++ configure.in    12 Nov 2003 12:16:23 -0000
> > @@ -685,7 +685,10 @@
> >              ]
> >  )
> >  
> > -AC_CHECK_LIB(idn, idna_to_ascii_from_utf8)
> > +AC_CHECK_LIB(idn, stringprep_check_version)
> > +AC_CHECK_FUNCS(idna_to_unicode_utf8_from_utf8 idna_to_unicode_8z8z)
> > +AC_CHECK_FUNCS(idna_to_ascii_from_utf8 idna_to_ascii_8z)
> > +AC_CHECK_FUNCS(idna_to_ascii_lz idna_to_ascii_from_locale)
> >  
> >  if test "$need_md5" = "yes"
> >  then
> 
> With much thanks,
> -- 
> tamo
> 

-- 
Thomas Roessler                       <roessler@xxxxxxxxxxxxxxxxxx>