[Perlgssapi-users] Building perlgssapi against other gssapi impls
Brought to you by:
achimgrolms
From: David L. <Dav...@qu...> - 2006-02-21 05:09:51
|
Hi. Here is some build feedback with GSSAPI-0.18. We have a Heimdal-derived GSSAPI implementation called VAS. Anyway, when I tried to build GSSAPI-0.18 against it, I found I could succeed with this patch: --- GSSAPI-0.18.orig/GSSAPI.xs 2006-02-21 14:42:37.000000000 +1000 +++ GSSAPI-0.18/GSSAPI.xs 2006-02-21 14:42:54.000000000 +1000 @@ -9,8 +9,10 @@ #define __GSS_KRB5_NT_PRINCIPAL_NAME &mygss_nt_krb5_principal #define __gss_mech_krb5_v2 &mygss_mech_krb5_v2 +#define HEIMDAL #if defined(HEIMDAL) #include <gssapi.h> +#include <gssapi_krb5.h> #endif #if !defined(HEIMDAL) This is needed because 'krb5-config --version' does not contain "eimdal", and gssapi_krb5.h was split from gssapi.h to better match the RFCs. So, I have some questions. How can this situation be improved? Our 'krb5-config --version' only spits out the product version number ("3.0.1"). Should it say "Heimdal" somewhere in there? Indeed, is there a standard way to tell programs that the interface is a Heimdal variant and not MIT? Also, could perlgssapi's Makefile.PL dynamially detect the presence/requirement of <gssapi_krb5.h>? Not knowing which header to include is a deficiency in the standards (RFC1964 has no corresponding C binding std). Otherwise, GSSAPI-0.18 built fine. Follows is the build output, with a lot of warnings. d davidl@willy-wagtail:GSSAPI-0.18$ perl Makefile.PL && make Welcome to GSSAPI.pm setup! run "perl Makefile.PL --help" to see further installation options ---------------------------------------------------------- Searching krb5-config command... /opt/quest/bin/krb5-config ---------------------------------------------------------- using GSSAPI implementation 3.0.1 ---------------------------------------------------------- Adding from your Perlinstallation ($Config{lddlflags}) to LDDLFLAGS -shared ---------------------------------------------------------- Bypassing to LDDLFLAGS -shared -Wl,-rpath -Wl,/opt/quest/lib:/opt/quest/lib/support ---------------------------------------------------------- Using LIBS -L/opt/quest/lib -lvas -L/opt/quest/lib/support -lgcc_s ---------------------------------------------------------- Using INC includeconfiguration -I/opt/quest/include ---------------------------------------------------------- Checking if your kit is complete... Looks good Writing Makefile for GSSAPI cp GSSAPI.pm blib/lib/GSSAPI.pm cp GSSAPI/OID/Set.pm blib/lib/GSSAPI/OID/Set.pm cp GSSAPI/OID.pm blib/lib/GSSAPI/OID.pm cp GSSAPI/Status.pm blib/lib/GSSAPI/Status.pm /usr/bin/perl /usr/lib/perl5/5.8.6/ExtUtils/xsubpp -typemap /usr/lib/perl5/5.8.6/ExtUtils/typemap -typemap typemap GSSAPI.xs > GSSAPI.xsc && mv GSSAPI.xsc GSSAPI.c cc -c -I/opt/quest/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -march=i586 -mcpu=i686 -fmessage-length=0 -Wall -g -Wall -pipe -DVERSION=\"0.18\" -DXS_VERSION=\"0.18\" -fPIC "-I/usr/lib/perl5/5.8.6/i586-linux-thread-multi/CORE" GSSAPI.c GSSAPI.xs: In function `constant_GSS_S_NO': GSSAPI.xs:69: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_N': GSSAPI.xs:92: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_BAD_N': GSSAPI.xs:125: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_BAD_S': GSSAPI.xs:154: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_B': GSSAPI.xs:203: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_CON': GSSAPI.xs:236: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_CO': GSSAPI.xs:259: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_CALL_I': GSSAPI.xs:292: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_CA': GSSAPI.xs:321: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_C': GSSAPI.xs:373: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_DU': GSSAPI.xs:406: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_DE': GSSAPI.xs:439: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_D': GSSAPI.xs:456: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_UNA': GSSAPI.xs:485: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_U': GSSAPI.xs:514: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_S_': GSSAPI.xs:561: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF_N': GSSAPI.xs:598: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF_C': GSSAPI.xs:627: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF_D': GSSAPI.xs:672: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF_I': GSSAPI.xs:701: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF_L': GSSAPI.xs:730: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_AF': GSSAPI.xs:839: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_A': GSSAPI.xs:870: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_RO': GSSAPI.xs:903: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_R': GSSAPI.xs:926: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_SU': GSSAPI.xs:959: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_S': GSSAPI.xs:982: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_CA': GSSAPI.xs:1015: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_C': GSSAPI.xs:1038: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_I': GSSAPI.xs:1079: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C_M': GSSAPI.xs:1108: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_GSS_C': GSSAPI.xs:1197: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant_G': GSSAPI.xs:1222: warning: label `not_there' defined but not used GSSAPI.xs: In function `constant': GSSAPI.xs:1238: warning: label `not_there' defined but not used GSSAPI.c: In function `XS_GSSAPI__Status_new': GSSAPI.c:1444: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__Name_new': GSSAPI.c:1694: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__Name_import': GSSAPI.c:1744: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__OID_new': GSSAPI.c:2047: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__OID_DESTROY': xs/OID.xs:14: warning: unused variable `minor' GSSAPI.c: In function `XS_GSSAPI__OID_from_str': GSSAPI.c:2109: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__OID__Set_new': GSSAPI.c:2502: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__Binding_new': GSSAPI.c:3108: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__Context_new': GSSAPI.c:3460: warning: unused variable `class' GSSAPI.c: In function `XS_GSSAPI__Context_import': GSSAPI.c:4234: warning: unused variable `class' Running Mkbootstrap for GSSAPI () chmod 644 GSSAPI.bs rm -f blib/arch/auto/GSSAPI/GSSAPI.so LD_RUN_PATH="/opt/quest/lib:/opt/quest/lib/support" cc -shared -Wl,-rpath -Wl,/opt/quest/lib:/opt/quest/lib/support GSSAPI.o -o blib/arch/auto/GSSAPI/GSSAPI.so -L/opt/quest/lib -lvas -L/opt/quest/lib/support -lgcc_s chmod 755 blib/arch/auto/GSSAPI/GSSAPI.so cp GSSAPI.bs blib/arch/auto/GSSAPI/GSSAPI.bs chmod 644 blib/arch/auto/GSSAPI/GSSAPI.bs Manifying blib/man3/GSSAPI.3pm Manifying blib/man3/GSSAPI::OID::Set.3pm Manifying blib/man3/GSSAPI::OID.3pm Manifying blib/man3/GSSAPI::Status.3pm -- David Leonard Vintela Resource Central software engineer Quest Software; 303 Adelaide St, Brisbane, Australia; www.quest.com Phone: (US) +1 801 655 2755 (AU) +61 7 3023 5133 |