cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: libcurl on Solaris 10 X86

From: Mohun Biswas <m_biswas_at_mailinator.com>
Date: Wed, 06 Oct 2004 16:53:17 -0400

Daniel Stenberg wrote:

> On Tue, 5 Oct 2004, Mohun Biswas wrote:
>
>> gcc -DHAVE_CONFIG_H -I../include -I../lib -I../lib -g -O2 -MT if2ip.lo
>> -MD -MP -MF .deps/if2ip.Tpo -c if2ip.c -fPIC -DPIC -o .libs/if2ip.o
>> if2ip.c: In function `Curl_if2ip':
>> if2ip.c:96: error: storage size of 'req' isn't known
>> if2ip.c:106: error: invalid application of `sizeof' to incomplete type
>> `ifreq'
>
>
> On my Solaris 2.7 box, this stuff is in the sys/sockio.h header. It
> puzzles me that they've changed this...
>
> Try grepping for it:
>
> $ grep -l 'struct ifreq' /usr/include/*/*.h

I don't have Solaris 7 ... on both Solaris 9 and 10 (beta63), struct
ifreq is _referenced_ in sys/sockio.h with verbiage indicating that it's
obsolete:

/*
  * Obsolete interface ioctls using struct ifreq that are supported
  * for compatibility. New interface ioctls use struct lifreq.
  */
#define SIOCSIFADDR _IOW('i', 12, struct ifreq) /* set if address */

and many more such defines follow. But struct ifreq is actually defined
in <net/if.h>. When I add that manually ahead of sockio.h I get:

In file included from if2ip.c:64:
/usr/include/net/if.h:370: error: parse error before "zoneid_t"
/usr/include/net/if.h:392: error: parse error before '}' token

However, it builds fine on Solaris 9. I will continue looking into this.

FWIW I tried cURL 7.11.1 also with same result.

M.Biswas
Received on 2004-10-06