Re: squid_kerb_auth build issues with 3.1.0.1 on FreeBSD

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Sun, 09 Nov 2008 14:55:21 +1300

Thomas-Martin Seck wrote:
> Squid devs,
>
> I had a look at 3.1.0.1 today and started to create a FreeBSD port for
> the 3.1 series.
>
> The environments in which I test the port are clean FreeBSD jails
> running 6.3-RELEASE and 7.0-RELEASE i386 respectively. The directory
> prefix passed to configure is set to /usr/scratch, CFLAGS are the
> FreeBSD default of "-O2 -fno-strict-aliasing") and CONFIG_SHELL is
> /bin/sh. I included aufs and COSS into the build.
>
> I ran into the following issues while build-testing:
>
> 1) two (probably harmless) bashisms snuck into configure.in, see this
> patch:
>

Thanks. Now Fixed. Will be in next daily snapshot and 3.1.0.2 shortly.

> 2) squid_kerb_auth does not build on either FreeBSD 6 or 7 (and
> probably 8-CURRENT):

The kerb issue is more difficult. (cc'ing the author).
For an initial build the helper can be omitted.

The configure is going to have to change something to get the squid
portability file 'config.h' included before every system header.

>
> Making all in negotiate_auth
> Making all in squid_kerb_auth
> make all-recursive
> if cc -DHAVE_CONFIG_H -I. -I. -I. -Ispnegohelp -I/usr/include -I/usr/scratch/include -I../../../include -O2 -fno-strict-aliasing -pipe -Wall -Wextra -Werror -Wcomment -Wpointer-arith -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wdeclaration-after-statement -Wshadow -MT squid_kerb_auth.o -MD -MP -MF ".deps/squid_kerb_auth.Tpo" -c -o squid_kerb_auth.o squid_kerb_auth.c; then mv -f ".deps/squid_kerb_auth.Tpo" ".deps/squid_kerb_auth.Po"; else rm -f ".deps/squid_kerb_auth.Tpo"; exit 1; fi
> In file included from ../../../include/getaddrinfo.h:21,
> from squid_kerb_auth.c:65:
> ../../../include/config.h:196:1: "FD_SETSIZE" redefined
> In file included from /usr/include/sys/types.h:299,
> from /usr/include/unistd.h:41,
> from squid_kerb_auth.c:36:
> /usr/include/sys/select.h:59:1: this is the location of the previous definition
> squid_kerb_auth.c:121:20: base64.h: No such file or directory
> squid_kerb_auth.c:123:24: spnegohelp.h: No such file or directory
> squid_kerb_auth.c: In function `main':
> squid_kerb_auth.c:424: warning: implicit declaration of function `ska_base64_decode_len'
> squid_kerb_auth.c:429: warning: implicit declaration of function `ska_base64_decode'
> squid_kerb_auth.c:433: warning: implicit declaration of function `parseNegTokenInit'
> squid_kerb_auth.c:512: warning: implicit declaration of function `makeNegTokenTarg'
> squid_kerb_auth.c:529: warning: implicit declaration of function `ska_base64_encode_len'
> squid_kerb_auth.c:537: warning: implicit declaration of function `ska_base64_encode'
> *** Error code 1
>
> On FreeBSD 6, helpers/negotiate_auth/squid_kerb_auth/config.h looks
> like the following, on FreeBSD 7 the only difference is that
> HAVE_GSSAPI_GSSAPI_KRB5_H is (correctly) defined:
>
> /* config.h. Generated from config.h.in by configure. */
> /* config.h.in. Generated from configure.in by autoheader. */
>
> /*
> * -----------------------------------------------------------------------------
> *
> * Author: Markus Moeller (markus_moeller_at_compuserve.com)
> *
> * Copyright (C) 2007 Markus Moeller. All rights reserved.
> *
<snip>
>
>
> #ifdef HAVE_HEIMDAL_KERBEROS
> #ifdef HAVE_GSSAPI_GSSAPI_H
> #include <gssapi/gssapi.h>
> #elif defined(HAVE_GSSAPI_H)
> #include <gssapi.h>
> #endif
> #define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE
> #else
> #ifdef HAVE_SEAM_KERBEROS
> #ifdef HAVE_GSSAPI_GSSAPI_H
> #include <gssapi/gssapi.h>
> #elif defined(HAVE_GSSAPI_H)
> #include <gssapi.h>
> #endif
> #ifdef HAVE_GSSAPI_GSSAPI_EXT_H
> #include <gssapi/gssapi_ext.h>
> #endif
> #define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE
> #else /*MIT*/
> #ifdef HAVE_GSSAPI_GSSAPI_H
> #include <gssapi/gssapi.h>
> #elif defined(HAVE_GSSAPI_H)
> #include <gssapi.h>
> #endif
> #ifdef HAVE_GSSAPI_GSSAPI_KRB5_H
> #include <gssapi/gssapi_krb5.h>
> #endif
> #ifdef HAVE_GSSAPI_GSSAPI_GENERIC_H
> #include <gssapi/gssapi_generic.h>
> #endif
> #endif
> #endif
>

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE5 or 3.0.STABLE10
   Current Beta Squid 3.1.0.1
Received on Sun Nov 09 2008 - 01:55:27 MST

This archive was generated by hypermail 2.2.0 : Sun Nov 09 2008 - 12:00:03 MST