Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Dec 2008 11:09:40 -0800
From:      "Li, Qing" <qing.li@bluecoat.com>
To:        "Gerald Pfeifer" <gerald@pfeifer.com>, "Vladimir Grebenschikov" <vova@fbsd.ru>
Cc:        Qing Li <qingli@freebsd.org>, freebsd-current@freebsd.org, freebsd-net@freebsd.org
Subject:   RE: HEADSUP: arp-v2 has been committed
Message-ID:  <561201c9639f$b096ac5c$7202020a@internal.cacheflow.com>

next in thread | raw e-mail | index | archive | help
I am not entirely sure if that piece of code fragment you referred to is =
OS agnostic. This code is very similar to another piece of code in mibII =
at.c code where it checks for whether RTF_LLINFO is defined, however, =
there is inconsistency in enforcement throughout that file.

So far in the reported cases the code in question requires a simple =
removal of that flag bit. One could go a little further and remove some =
dead code.

I am curious if there is a better approach to compatibility without =
having to re-introduce RTF_LLINFO flag.

-- Qing

-----Original Message-----
From: Gerald Pfeifer <gerald@pfeifer.com>
Sent: Sunday, December 21, 2008 4:06 AM
To: Vladimir Grebenschikov <vova@fbsd.ru>
Cc: Qing Li <qingli@freebsd.org>; freebsd-current@freebsd.org =
<freebsd-current@freebsd.org>; freebsd-net@freebsd.org =
<freebsd-net@freebsd.org>
Subject: Re: HEADSUP: arp-v2 has been committed

The code in question on the Wine side is

#if defined(HAVE_SYS_SYSCTL_H) && defined(NET_RT_DUMP)
  int mib[] =3D {CTL_NET, PF_ROUTE, 0, AF_INET, NET_RT_FLAGS, =
RTF_LLINFO};

and there is nothing FreeBSD-specific in dlls/iphlpapi/ipstats.c as far
as I can see. =20

If the arp-v2 update now made us incompatible both with earlier versions =

of FreeBSD and Linux, that sounds like something that should be fixed=20
(instead of hacking applications like Wine).

On the other hand, the commit message at
  http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/net/route.h
explicitly says
  The change in design obsoletes the semantics of RTF_CLONING,=20
  RTF_WASCLONE and RTF_LLINFO routing flags. The userland applications=20
  such as "arp" and "ndp" have been modified to reflect those changes.
so I guess it's not so easy. =20

How many other ports are affected?

What shall we do on the Wine front?  Simply #ifdef-ing out the code in
question may not be the best of ideas, either. :-(

Gerald

On Fri, 19 Dec 2008, Vladimir Grebenschikov wrote:
> On Mon, 15 Dec 2008 06:34:13 GMT, Qing Li <qingli@freebsd.org> wrote:
>=20
>>> The arp-v2 changes have been committed into HEAD.
>>> Please report problems to me and Kip Macy.
>=20
> Wine is not build any more:=20
>=20
> ...
> cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__  =
-D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing =
-Wdeclaration-after-statement -Wwrite-strings -Wpointer-arith =
-I/usr/local/include -O2 -pipe -fno-strict-aliasing  -o ipstats.o =
ipstats.c
> ipstats.c: In function 'getNumArpEntries':
> ipstats.c:1253: error: 'RTF_LLINFO' undeclared (first use in this =
function)
> ipstats.c:1253: error: (Each undeclared identifier is reported only =
once
> ipstats.c:1253: error: for each function it appears in.)
> ipstats.c: In function 'getArpTable':
> ipstats.c:1311: error: 'RTF_LLINFO' undeclared (first use in this =
function)
> ipstats.c:1311: warning: initialization makes integer from pointer =
without a cast
> gmake[2]: *** [ipstats.o] ?????? 1
> gmake[2]: Leaving directory =
`/usr/ports/emulators/wine/work/wine-1.1.10/dlls/iphlpapi'
> gmake[1]: *** [iphlpapi] ?????? 2
> gmake[1]: Leaving directory =
`/usr/ports/emulators/wine/work/wine-1.1.10/dlls'
> gmake: *** [dlls] ?????? 2
>=20
>=20

--=20
Gerald (Jerry) Pfeifer   gerald@pfeifer.com   =
http://www.pfeifer.com/gerald/
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to =
"freebsd-current-unsubscribe@freebsd.org"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?561201c9639f$b096ac5c$7202020a>