[package - head-amd64-default][security/p5-Authen-Krb5] Failed for p5-Authen-Krb5-1.9 in build

Kurt Jaeger lists at opsec.eu
Tue Jul 29 08:07:09 UTC 2014


Hi!

I investigated this build failure, and if no-one knows better, will
mark this port as BROKEN and pending-expire, because it seems the
whole code relies on old kerberos APIs which are no longer available.

> cc -c  -I/usr/local/include  -O2 -pipe  -fno-strict-aliasing -O2 -pipe -fno-strict-aliasing    -DVERSION=\"1.9\"  -DXS_VERSION=\"1.9\" -DPIC -fPIC "-I/usr/local/lib/perl5/5.16/mach/CORE"   Krb5.c
> Krb5.xs:35:9: error: unknown type name 'krb5_enc_tkt_part'
> typedef krb5_enc_tkt_part       *Authen__Krb5__EncTktPart;
>         ^
> Krb5.xs:53:17: error: conflicting types for 'krb5_free_krbhst'
> krb5_error_code krb5_free_krbhst(krb5_context, char * const *);
>                 ^
> /usr/include/krb5-protos.h:1942:1: note: previous declaration is here
> krb5_free_krbhst (
> ^
> Krb5.xs:54:17: error: conflicting types for 'krb5_get_krbhst'
> krb5_error_code krb5_get_krbhst(krb5_context, const krb5_data *, char ***);
>                 ^
> /usr/include/krb5-protos.h:2446:1: note: previous declaration is here
> krb5_get_krbhst (
> ^
> Krb5.xs:115:38: warning: implicit declaration of function 'error_message' is invalid in C99 [-Wimplicit-function-declaration]
>                 ST(0) = sv_2mortal(newSVpv((char *)error_message(e), 0));
>                                                    ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:363:42: note: expanded from macro 'newSVpv'
> #define newSVpv(a,b)            Perl_newSVpv(aTHX_ a,b)
>                                                    ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:536:46: note: expanded from macro 'sv_2mortal'
> #define sv_2mortal(a)           Perl_sv_2mortal(aTHX_ a)
>                                                       ^
> Krb5.xs:115:30: warning: cast to 'char *' from smaller integer type 'int' [-Wint-to-pointer-cast]
>                 ST(0) = sv_2mortal(newSVpv((char *)error_message(e), 0));
>                                            ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:363:42: note: expanded from macro 'newSVpv'
> #define newSVpv(a,b)            Perl_newSVpv(aTHX_ a,b)
>                                                    ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:536:46: note: expanded from macro 'sv_2mortal'
> #define sv_2mortal(a)           Perl_sv_2mortal(aTHX_ a)
>                                                       ^
> Krb5.xs:118:30: warning: cast to 'char *' from smaller integer type 'int' [-Wint-to-pointer-cast]
>                 ST(0) = sv_2mortal(newSVpv((char *)error_message(err), 0));
>                                            ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:363:42: note: expanded from macro 'newSVpv'
> #define newSVpv(a,b)            Perl_newSVpv(aTHX_ a,b)
>                                                    ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:536:46: note: expanded from macro 'sv_2mortal'
> #define sv_2mortal(a)           Perl_sv_2mortal(aTHX_ a)
>                                                       ^
> Krb5.xs:191:32: warning: incompatible pointer types passing 'krb5_data *' (aka 'struct heim_octet_string *') to parameter of type 'const krb5_realm *' (aka 'char *const *') [-Wincompatible-pointer-types]
>         err = krb5_get_krbhst(context,&realm_data,&hostlist);
>                                       ^~~~~~~~~~~
> /usr/include/krb5-protos.h:2448:29: note: passing argument to parameter here
>         const krb5_realm */*realm*/,
>                                    ^
> Krb5.xs:205:3: warning: 'krb5_princ_realm' is deprecated [-Wdeprecated-declarations]
>                 krb5_princ_realm(context, p)->length,
>                 ^
> /usr/include/krb5-protos.h:3251:1: note: 'krb5_princ_realm' declared here
> krb5_princ_realm (
> ^
> Krb5.xs:205:31: error: member reference base type 'krb5_realm' (aka 'char *') is not a structure or union
>                 krb5_princ_realm(context, p)->length,
>                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ~~~~~~
> Krb5.c:527:2: error: use of undeclared identifier 'krb5_int32'
>         krb5_int32      type = (int)SvIV(ST(2))
>         ^
> Krb5.xs:239:55: error: use of undeclared identifier 'type'
>         err = krb5_sname_to_principal(context,hostname,sname,type,&RETVAL);
>                                                              ^
> Krb5.xs:350:2: warning: 'krb5_get_init_creds_opt_init' is deprecated [-Wdeprecated-declarations]
>         krb5_get_init_creds_opt_init(&opt);
>         ^
> /usr/include/krb5-protos.h:2284:1: note: 'krb5_get_init_creds_opt_init' declared here
> krb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/)
> ^
> Krb5.xs:379:2: warning: 'krb5_get_init_creds_opt_init' is deprecated [-Wdeprecated-declarations]
>         krb5_get_init_creds_opt_init(&opt);
>         ^
> /usr/include/krb5-protos.h:2284:1: note: 'krb5_get_init_creds_opt_init' declared here
> krb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/)
> ^
> Krb5.xs:410:2: warning: 'krb5_get_init_creds_opt_init' is deprecated [-Wdeprecated-declarations]
>         krb5_get_init_creds_opt_init(&opt);
>         ^
> /usr/include/krb5-protos.h:2284:1: note: 'krb5_get_init_creds_opt_init' declared here
> krb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/)
> ^
> Krb5.xs:447:2: warning: 'krb5_get_init_creds_opt_init' is deprecated [-Wdeprecated-declarations]
>         krb5_get_init_creds_opt_init(&opt);
>         ^
> /usr/include/krb5-protos.h:2284:1: note: 'krb5_get_init_creds_opt_init' declared here
> krb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/)
> ^
> Krb5.xs:522:8: warning: implicit declaration of function 'krb5_gen_portaddr' is invalid in C99 [-Wimplicit-function-declaration]
>         err = krb5_gen_portaddr(context,addr,(krb5_pointer)&port,&RETVAL);
>               ^
> Krb5.xs:549:8: warning: implicit declaration of function 'krb5_gen_replay_name' is invalid in C99 [-Wimplicit-function-declaration]
>         err = krb5_gen_replay_name(context,addr,uniq,&RETVAL);
>               ^
> Krb5.xs:654:37: error: member reference base type 'Realm' (aka 'char *') is not a structure or union
>         ST(0) = sv_2mortal(newSVpv(p->realm.data,p->realm.length));
>                                    ~~~~~~~~^~~~~
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:363:42: note: expanded from macro 'newSVpv'
> #define newSVpv(a,b)            Perl_newSVpv(aTHX_ a,b)
>                                                    ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:536:46: note: expanded from macro 'sv_2mortal'
> #define sv_2mortal(a)           Perl_sv_2mortal(aTHX_ a)
>                                                       ^
> Krb5.c:1607:2: error: use of undeclared identifier 'krb5_int32'
>         krb5_int32      RETVAL;
>         ^
> Krb5.xs:661:2: error: use of undeclared identifier 'RETVAL'
>         RETVAL = p->type;
>         ^
> Krb5.xs:661:14: error: no member named 'type' in 'struct Principal'
>         RETVAL = p->type;
>                  ~  ^
> Krb5.c:1625:23: error: use of undeclared identifier 'RETVAL'
>         XSprePUSH; PUSHi((IV)RETVAL);
>                              ^
> /usr/local/lib/perl5/5.16/mach/CORE/pp.h:295:51: note: expanded from macro 'PUSHi'
> #define PUSHi(i)        STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
>                                                          ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:609:46: note: expanded from macro 'sv_setiv'
> #define sv_setiv(a,b)           Perl_sv_setiv(aTHX_ a,b)
>                                                       ^
> Krb5.xs:671:9: error: no member named 'length' in 'struct Principal'
>         if (p->length > 0) {
>             ~  ^
> Krb5.xs:672:16: error: no member named 'length' in 'struct Principal'
>                 int len = p->length;
>                           ~  ^
> Krb5.xs:676:18: error: no member named 'data' in 'struct Principal'
>                 for (data = p->data; len--; data++) {
>                             ~  ^
> Krb5.xs:814:15: error: no member named 'length' in 'struct EncryptionKey'
>         RETVAL = kb->length;
>                  ~~  ^
> Krb5.xs:825:30: error: no member named 'contents' in 'struct EncryptionKey'
>         XPUSHs(newSVpvn((char*)(kb->contents), kb->length));
>                                 ~~  ^
> /usr/local/lib/perl5/5.16/mach/CORE/embed.h:368:44: note: expanded from macro 'newSVpvn'
> #define newSVpvn(a,b)           Perl_newSVpvn(aTHX_ a,b)
>                                                     ^
> /usr/local/lib/perl5/5.16/mach/CORE/pp.h:298:56: note: expanded from macro 'XPUSHs'
> #define XPUSHs(s)       STMT_START { EXTEND(sp,1); (*++sp = (s)); } STMT_END
>                                                              ^
> Krb5.xs:832:20: error: no member named 'enctype' in 'struct EncryptionKey'
>         RETVAL = (int)kb->enctype;
>                       ~~  ^
> Krb5.xs:845:35: error: no member named 'enctype' in 'struct EncryptionKey'
>         err = krb5_enctype_to_string(kb->enctype, buf, 255);
>                                      ~~  ^
> Krb5.xs:881:2: error: use of undeclared identifier 'krb5_int32'
>         krb5_int32 flags;
>         ^
> fatal error: too many errors emitted, stopping now [-ferror-limit=]
> 11 warnings and 20 errors generated.
> *** Error code 1
> 
> Stop.
> make[1]: stopped in /wrkdirs/usr/ports/security/p5-Authen-Krb5/work/Krb5-1.9
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/ports/security/p5-Authen-Krb5
> _______________________________________________
> freebsd-perl at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-perl
> To unsubscribe, send any mail to "freebsd-perl-unsubscribe at freebsd.org"

-- 
pi at opsec.eu            +49 171 3101372                         6 years to go !


More information about the freebsd-perl mailing list