cURL
Haxx ad
libcurl

Shopping cart software, Online file storage, Online photo storage, Hosted shopping cart, Contact management software, Email marketing software, Project management software, Issue tracking software, Online notepad, Web publishing software

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curl-library Archives

missing mutual exclusion of header files for gss

From: Marco Maggi <marco.maggi-ipsu_at_poste.it>
Date: Mon, 09 Nov 2009 21:05:02 +0100

Ciao,

  I am new with cURL; while building version 7.19.7 with
--with-gssapi and GNU GSS installed, I get this error:

libtool: compile: gcc -DHAVE_CONFIG_H -I../include -I../include -I../lib -I../lib -I/usr/local/include -I/usr/local/include -I/usr/include/openssl -I/usr/include -I/usr/local/include -O3 -march=i686 -mtune=i686 -g0 -Wno-system-headers -MT krb5.lo -MD -MP -MF .deps/krb5.Tpo -c krb5.c -fPIC -DPIC -o .libs/krb5.o
In file included from /usr/local/include/gss.h:83,
                 from urldata.h:130,
                 from krb5.c:59:
/usr/local/include/gss/api.h:92: error: redefinition of 'struct gss_OID_desc_struct'
/usr/local/include/gss/api.h:98: error: redefinition of 'struct gss_OID_set_desc_struct'
/usr/local/include/gss/api.h:104: error: redefinition of 'struct gss_buffer_desc_struct'
/usr/local/include/gss/api.h:110: error: redefinition of 'struct gss_channel_bindings_struct'

the problem is that, while "lib/urldata.h" has this block:

#ifdef HAVE_GSSAPI
# ifdef HAVE_GSSGNU
# include <gss.h>
# elif defined HAVE_GSSMIT
# include <gssapi/gssapi.h>
# include <gssapi/gssapi_generic.h>
# else
# include <gssapi.h>
# endif
#endif

which correctly handles mutual exclusion of header files,
"lib/krb5.c" does:

#ifdef HAVE_GSSMIT
/* MIT style */
#include <gssapi/gssapi.h>
#include <gssapi/gssapi_generic.h>
#include <gssapi/gssapi_krb5.h>
#else
/* Heimdal-style */
#include <gssapi.h>
#endif

#include "urldata.h"

which does not. The code being as it is, it seems to me
that just removing the block:

#ifdef HAVE_GSSMIT
/* MIT style */
#include <gssapi/gssapi.h>
#include <gssapi/gssapi_generic.h>
#include <gssapi/gssapi_krb5.h>
#else
/* Heimdal-style */
#include <gssapi.h>
#endif

from "lib/krb5.c" and keeping:

#include "urldata.h"

in it would fix things.

Thanks.

-- 
Marco Maggi
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2009-11-09

These mail archives are generated by hypermail.

donate! Page updated November 16, 2009.
web site info

File upload with ASP.NET