Package: orbit
Version: 0.5.17-9
Severity: normal
Tags: patch

This will cause a segfault:

        echo ORBIIOPIPv6=1 >>~/.orbitrc; multi-gnome-terminal

This is not specific to Debian.  MGT will segfault on the latest Gentoo
and FreeBSD 4.11-STABLE as well if ORBIIOPIPv6 is set to 1.  Now, I'm
not certain if it's really MGT, some layer in between or ORBit that is
to blame, but apparently the problems with ORBIIOPIPv6=1 are very old.
Googling for it I found:

        
http://mail.gnome.org/archives/gnome-devel-list/2000-August/msg00138.html

Looking in the ORBit 0.5.17 sources, it turns out that IPv6 is _not_
enabled - the configure script never sets the HAVE_IPV6 macro.  Now,
this is of course tempting to add, but one then finds this in line 591
of src/IIOP/connection.c:

        g_error("IPv6 support is baroquen! (Actually just never worked)");

Since

        1) IPv6 support apparently is broken,
        2) pre-ORBit2 is obsolete anyway,
        3) and IPv6 actually isn't enabled,

I'd suggest this patch that simply makes ORBit ignore ORBIIOPIPv6=1,
so that old legacy GNOME 1 packages won't break even if the user
decides to play with IPv6 for ORBit2 stuff:

diff -Naur orbit-0.5.17/debian/orbitrc orbit-0.5.17.fixed/debian/orbitrc
--- orbit-0.5.17/debian/orbitrc 2005-02-11 12:18:07.891608467 +0100
+++ orbit-0.5.17.fixed/debian/orbitrc   2005-02-11 12:16:52.593056559 +0100
@@ -7,4 +7,5 @@
 #
 ORBIIOPUSock=1
 #ORBIIOPIPv4=1
+# ORBit releases prior to version 2 do not support IPv6
 #ORBIIOPIPv6=1
diff -Naur orbit-0.5.17/src/orb/orb.c orbit-0.5.17.fixed/src/orb/orb.c
--- orbit-0.5.17/src/orb/orb.c  2005-02-11 12:18:07.815622037 +0100
+++ orbit-0.5.17.fixed/src/orb/orb.c    2005-02-11 12:17:56.238689580 +0100
@@ -438,11 +438,13 @@
        
        }
 
+#ifdef HAVE_IPV6
        if(use_ipv6) {
                orb->cnx.ipv6 = GIOP_CONNECTION(iiop_connection_server_ipv6());
                giop_connection_ref(orb->cnx.ipv6);
                GIOP_CONNECTION(orb->cnx.ipv6)->orb_data = orb;
        }
+#endif
 
        ORBit_make_local_tmpdir();

-ukh


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to