This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: resolv.h test proposal


Stepan Kasal schrieb:
Hello,
   the text below seems to relly be a bug report with a proposed fix.
So I take the liberty to forward it to the bug report address.

Many thanks for doing this for us.


----- Forwarded message from "Gerrit P. Haase" -----
Date: Mon, 25 Oct 2004 13:46:43 +0200
From: "Gerrit P. Haase" <freeweb@nyckelpiga.de>
To: cygwin@cygwin.com
Cc: autoconf@gnu.org
Subject: Re: [bugreport] resolv.h test fails (was: Re: minires-devel-0.97-1:
	resolv.h fails)

Gerrit wrote:
Pierre A. Humblet wrote:
At 01:03 PM 10/18/2004 +0200, Corinna Vinschen wrote:
On Oct 18 03:28, Reini Urban wrote:

minires-devel-0.97-1:
#include <resolv.h> fails suddenly.

Apparently /usr/include/resolv.h misses the definition for
sockaddr_in, which is defined in <cygwin/in.h>

Have no clue why it suddenly fails. Anyone else?
These headers didn't change for years...

Which file is supposed to include cygwin/in.h? I found nothing.

netinet/in.h


Its an upstream issue. According to the resolver man page, netinet/in.h should be included before resolv.h.

For example
<http://www.mcsr.olemiss.edu/cgi-bin/man-cgi?resolver+3>
SYNOPSIS
    #include <sys/types.h>
    #include <netinet/in.h>
    #include <arpa/nameser.h>
    #include <resolv.h>


I think this is correct.  What is buggy is the autoconf test which is
just including resolv.h and not netinet/in.h to compile the test exe.

This applies to the default test when calling AC_CHECK_HEADERS([resolv.h])

Workaround is to use s.th. like this in configure.ac:

AC_CHECK_HEADERS([arpa/nameser.h netinet/in.h sys/socket.h sys/types.h])
AC_CHECK_HEADERS([resolv.h], [], [],
      [[#if HAVE_SYS_TYPES_H
        #  include <sys/types.h>
        #endif
        #ifdef HAVE_NETINET_IN_H
        #  include <netinet/in.h>   /* inet_ functions / structs */
        #endif
        #ifdef HAVE_ARPA_NAMESER_H
        #  include <arpa/nameser.h> /* DNS HEADER struct */
        #endif
        #ifdef HAVE_SYS_SOCKET_H
        #  include <sys/socket.h> /* DNS HEADER struct */
        #endif
     ]])

Anyway, there should be a macro which provides this functionity.

-- Reini Urban http://xarch.tu-graz.ac.at/home/rurban/

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]