Hi,

The problem is like this. In case of the ipx protocol you can select different 
ipx types of ipx packets. On linux there's an entry in the sockaddr_ipx 
struct in which you can change and further you can change it at the ipx 
socket level using that SOL_IPX stuff. I wasn't aware that this stuff doesn't 
exist on freebsd. Unfortunately I don't have any freebsd experience, so I 
don't know about the way to do it on your OS. I will try to find a solution, 
if none can be found I'm affraight we need some #ifdef stuff.

Thanks,

Roderick

On Thursday 09 September 2004 14:55, you wrote:
> The following change
>
>    revision 1.155
>    date: 2004/09/07 20:47:03;  author: julliard;  state: Exp;  lines: +113
> -0 Roderick Colenbrander <[EMAIL PROTECTED]>
>    - set ipx packet type
>    - add support for retrieving some ipx info
>
> breaks FreeBSD 4.10 quite a bit:
>
>    /sw/gcc-3.3.4/bin/gcc -c -I. -I. -I../../include -I../../include
>    -D__WINESRC__ -DUSE_WS_PREFIX -D_REENTRANT -fPIC -Wall -pipe
>    -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+
> -Wpointer-arith -g -O2 -o socket.o socket.c
>    socket.c: In function `WS2_send':
>    socket.c:1120: error: `SOL_IPX' undeclared (first use in this function)
>    socket.c:1120: error: (Each undeclared identifier is reported only once
>    socket.c:1120: error: for each function it appears in.)
>    socket.c:1120: error: `IPX_TYPE' undeclared (first use in this function)
>    socket.c:1123: error: structure has no member named `sipx_type'
>    socket.c: In function `WS_getsockopt':
>    socket.c:1585: error: `SOL_IPX' undeclared (first use in this function)
>    socket.c:1585: error: `IPX_TYPE' undeclared (first use in this function)
>    socket.c: In function `WS_setsockopt':
>    socket.c:2312: error: `SOL_IPX' undeclared (first use in this function)
>    socket.c:2312: error: `IPX_TYPE' undeclared (first use in this function)
>    gmake: *** [socket.o] Error 1
>
> Concerning the error in socket.c, line 1120, SOL_IPX is not defined on
> FreeBSD 4.10, but there is a constant SOL_SOCKET which is supposed to
> be passed as the second parameter of getsockopt with the following
> description: "To manipulate options at the socket level, level is
> specified as SOL_SOCKET".  Would that do the job?
>
> Concerning the error in socket.c, line 1123, struct sockaddr_ipx looks as
> follows on FreeBSD 4.10:
>
>    struct sockaddr_ipx {
>          u_char          sipx_len;
>          u_char          sipx_family;
>          struct ipx_addr sipx_addr;
>          char            sipx_zero[2];
>    };
>
> Finally, I could not find anything remotely similiar to IPX_TYPE.
>
>
> I hope this will allow you to fix this breakage?  (To check for FreeBSD,
> you can use #ifdef __FreeBSD_...)
>
> Thanks,
> Gerald

Reply via email to