If the problem is that the usock.sun_path char array isn't
nul-terminated anymore (and it used to be), then the correct fix would
be something more like:
if (getpeername (GIOP_CONNECTION_GET_FD(fd_cnx),
(struct sockaddr *)&fd_cnx->u.usock, &n)) < 0)
fn_cnx->u.usock.sun_path[0] = '\0';
else
((char *) &fn_cnx->u.usock)[n] = '\0';
or, to be safer... perhaps zero the struct using memset before calling
getpeername?
either way Ron's fix is wrong as it negates the sun_path variable
completely, making the call to getpeername utterly worthless.
Jeff
On Mon, 2003-01-06 at 20:29, Chris Toshok wrote:
> I must be missing something, but what on earth is this fix supposed to
> accomplish? It actually fixes something?
>
> I can see doing something like:
>
> if (getpeername (GIOP_CONNECTION_GET_FD(fd_cnx),
> (struct sockaddr *)&fd_cnx->u.usock, &n)) < 0)
> fn_cnx->u.usock.sun_path[0] = '\0';
>
> but blindly clobbering the path to the socket on the other end seems
> like a bad idea.
>
> Chris
>
> On Sun, 2003-01-05 at 21:43, Ronald Kuetemeier wrote:
> > On Sun, Jan 05, 2003 at 10:41:43PM +0200, Mika Liljeberg wrote:
> > > By the way, your patch is included in Debian unstable
> > > [liborbit0-0.5.17-5]:
> > >
> > >
> > > --- orbit-0.5.17.orig/src/IIOP/connection.c
> > > +++ orbit-0.5.17/src/IIOP/connection.c
> > > @@ -459,6 +459,7 @@
> > > fd_cnx->u.usock.sun_family = AF_UNIX;
> > > getpeername(GIOP_CONNECTION_GET_FD(fd_cnx),
> > > (struct sockaddr *)&fd_cnx->u.usock, &n);
> > > + fd_cnx->u.usock.sun_path[0] = '\0';
> > > break;
> > >
> > > #ifdef HAVE_IPV6
> > >
> > > It may not be the correct fix but at least it solves the immediate
> > > problem.
> > It is the only place to fix it without interfering with other programs,
> > that's why I did fixed it there.
> > Good to see that some distributions prefer a stable system.
> > Ronald
> > >
> > > Cheers,
> > >
> > > MikaL
> > >
> > >
> > > On Sun, 2003-01-05 at 20:23, Ronald Kuetemeier wrote:
> > > > On Mon, Jan 06, 2003 at 05:40:45PM +0100, Joaquim Fellmann wrote:
> > > > > On Sat, 2003-01-04 at 02:13, Ronald Kuetemeier wrote:
> > > > >
> > > > > > Sorry but _NO_ it's not 2.5, Gnome is broken,
> > > > > > you can read all about it and get a patch on the evolution-hackers list.
> > > > >
> > > > > Wrong too.
> > > > > It seems to be Orbit assuming a kernel routine to return some value but
> > > > > receiving something else.
> > > > > Actually it was a kernel bug (that got fixed) on which Orbit was
> > > > > relying.
> > > > > Problem is that Orbit didn't get fixed.
> > > > Maybe you should read the thread on evolution-hackers,and then contact some
>kernel hackers, Alan, Dave and Al come to mind.
> > > > My patch resets new 2.5 behavior for/in Orbit to 2.4 behavior. But the real
>problem is within Gnome, so far I only hear from the Gnome/Orbit maintainers it's the
>Kernel without any proof. Just saying so is not enough, I know it's kind of hard to
>find a problem in a few hundred thousand kernel and Gnome/evolution source lines.
>Been there done that. And if you take a look at the Gnome 2.X source you might find
>that it's mood to talk about this any further, if you understand the problem.
> > > > Ronald
> > > >
> > > > >
> > > > > A message on the linux kernel mailing list is refering to a bitkeeper
> > > > > changeset at the origin of the "evolution case". Before this changeset
> > > > > Evolution is dealing right with kernel 2.5 and after this changeset it
> > > > > doesn't work anymore.
> > > > >
> > > > >
> > > > > See http://www.cs.helsinki.fi/linux/linux-kernel/2002-41/0444.html
> > > > >
> > > > >
> > > > > Regards
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > >
> > > > > Joaquim Fellmann <[EMAIL PROTECTED]>
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > evolution maillist - [EMAIL PROTECTED]
> > > > > http://lists.ximian.com/mailman/listinfo/evolution
> > > >
> > > > _______________________________________________
> > > > evolution maillist - [EMAIL PROTECTED]
> > > > http://lists.ximian.com/mailman/listinfo/evolution
> >
> > _______________________________________________
> > evolution maillist - [EMAIL PROTECTED]
> > http://lists.ximian.com/mailman/listinfo/evolution
>
> _______________________________________________
> evolution maillist - [EMAIL PROTECTED]
> http://lists.ximian.com/mailman/listinfo/evolution
--
Jeffrey Stedfast
Evolution Hacker - Ximian, Inc.
[EMAIL PROTECTED] - www.ximian.com
_______________________________________________
evolution maillist - [EMAIL PROTECTED]
http://lists.ximian.com/mailman/listinfo/evolution