[BUG] lib/interfaces.c - Solaris struct ifreq.ifr_netmask missing

Gerald (Jerry) Carter jerry at samba.org
Wed Oct 24 23:40:01 GMT 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jeremy,

The autoconf failure is:

  In file included from conftest.c:439 :
  ./lib/interfaces.c: In function `_get_interfaces':
  ./lib/interfaces.c:231: error: structure has no member
     named  `ifr_netmask'
  configure:49185: $? = 1
  configure: program exited with status 1
  configure: failed program was:

We need to add this code (probably to lib/replace/network.h):

  #ifndef ifr_netmask
  #  define ifr_netmask ifr_addrs
  #endif

The reason this works (same as why it would work on Linux),
is that the "struct sockaddr" members in struct ifreq (see
/usr/include/linux/if.h) are contained in a union.  So
ifr_addr or ifr_netmask are really the same.  Solaris 8
at least just does not name the ifr_netmask macro explicitly.

The end result right now is that the HAVE_IFACE_IFCONF test
is failing on Solaris where as before it succeeded.  In tre
older code I think we determined the netmask manually.

Thanks to Danilo for helping to point this out.



cheers, jerry
- --
=====================================================================
Samba                                    ------- http://www.samba.org
Centeris                         -----------  http://www.centeris.com
"What man is a man who does not make the world better?"      --Balian
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHH9fRIR7qMdg1EfYRAmIUAJ4ynOEps53YrFOHKVdn1VTrLjqHhQCfThC8
b1xYYTAs54UHcsgLtxi73ZM=
=N2Uy
-----END PGP SIGNATURE-----


More information about the samba-technical mailing list