bug-inetutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-inetutils] Re: [patches] man/Makefile.am, telnetd/telnetd.c, ifconf


From: Simon Josefsson
Subject: [bug-inetutils] Re: [patches] man/Makefile.am, telnetd/telnetd.c, ifconfig/if_index.c
Date: Tue, 21 Sep 2010 12:32:58 +0200
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux)

Mats Erik Andersson <address@hidden> writes:

> tisdag den 21 september 2010 klockan 10:56 skrev Simon Josefsson detta:
>> Mats Erik Andersson <address@hidden> writes:
>> 
>> >     ifconfig/if_index.c: Encapsulate using HAVE_STRUCT_IF_NAMEINDEX
>> 
>> Here I am less certain, so I didn't push this one.  All these #ifdef's
>> are ugly.  Can't we move this into gnulib to allow the code to assume
>> there is a struct?  I'm assuming it is a standard GNU/POSIX struct.
>> Note that I am only speaking generally, I haven't considered the details
>> around this struct at all.
>
> Without the proposed change, OpenBSD comes to a halt with a cryptic
> message about clashing prototypes for free(3). The explanation is
> that OpenBSD uses
>
>     ### /usr/include/net/if.h
>
>     #define if_freenameindex(x) free(x)
>
> The corresponding function in GNU/Linux is a true function!

Interesting.  According to POSIX:

http://www.opengroup.org/onlinepubs/9699919799/functions/if_freenameindex.html

It should be a real function.  Could you report this as a OpenBSD bug?

It does sounds as if this is something that gnulib could offer a working
replacement for, instead of InetUtils using a hack.  It looks like an
OpenBSD bug that would affect other applications too.

The exact compile error would help in understanding why things fail
here.  Could you create a small example that reproduce the problem?
E.g. something like:

#include <net/if.h>
int main (void) { if_freenameindex ((void*)0); }

or something like that?  And then quote the compile error.

/Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]