Kerberos + Qpopper Build fails
Viji
vijayalakshmi_k at hotpop.com
Wed Jul 27 02:41:53 EDT 2005
Hi,
Thanks for your valuable help. This works fine.
> Try something like this with qpopper-4.0.5 and krb5-1.4.1.
>
>
> --- ./qpopper4.0.5/popper/,pop_init.c Mon Mar 17 13:08:52 2003
> +++ ./qpopper4.0.5/popper/pop_init.c Wed Jul 13 13:04:05 2005
> @@ -313,6 +313,7 @@
> * _both_ V5 and V4 pop services.
> */
>
> +#ifdef KRB5_KRB4_COMPAT
> retval = krb5_compat_recvauth ( pop_context, &auth_context,
> (krb5_pointer) &sock,
> KRB5_APPL_VERSION, server,
> @@ -330,6 +331,13 @@
> NULL, /* Key schedule (unused)
> */
> &v4_version /* V4 version */
> );
> +#else
> + auth_sys = KRB5_RECVAUTH_V5;
> + retval = krb5_recvauth_version(pop_context, &auth_context,
> + (krb5_pointer) &sock,
> + NULL, 0, NULL, &ticket, &v4_version);
> +#endif
> +
> if ( retval ) {
> pop_msg ( p, POP_FAILURE, HERE, "recvauth failed--%s",
> error_message(retval) );
> @@ -418,6 +426,7 @@
> EXIT ( -1 );
> } /* krb5_aname_to_localname failed */
> # endif /* NO_CROSSREALM */
> + p->AuthType = kerberos;
> }
> # endif /* KRB5 */
> #else /* not KERBEROS */
> --- ./qpopper4.0.5/popper/,pop_updt.c Wed Jan 1 20:39:03 2003
> +++ ./qpopper4.0.5/popper/pop_updt.c Tue Jul 12 08:37:13 2005
> @@ -293,7 +293,7 @@
> DEBUG_LOG0 ( p, "Checking to see if all messages were deleted" );
>
> if ( p->bStats ) {
> - pop_log ( p, POP_PRIORITY, HERE, "Stats: %s %d %ld %d %ld %s %s",
> + pop_log ( p, LOG_CRIT/*POP_PRIORITY*/, HERE, "Stats: %s %d %ld %d
> %ld %s %s",
> p->user, p->msgs_deleted, p->bytes_deleted,
> p->msg_count - p->msgs_deleted,
> p->drop_size - p->bytes_deleted,
> --- ./qpopper4.0.5/popper/,pop_user.c Wed Mar 12 20:06:38 2003
> +++ ./qpopper4.0.5/popper/pop_user.c Wed Jul 13 14:10:06 2005
> @@ -235,6 +235,7 @@
> # endif /* APOP_ONLY */
> #endif /* SCRAM_ONLY */
>
> + if (p->AuthType != kerberos) {
>
> #ifdef AUTHON
>
> @@ -425,6 +426,8 @@
>
> } while ( 0 ); /* so a break will work */
> #endif /* defined(__bsdi__) && _BSDI_VERSION >= 199608 */
> +
> +} /* p->AuthType != kerberos */
>
> if ( p->AuthType == noauth ) /* If authentication method is unknown
> (i.e. */
> p->AuthType = plain; /* not Kerberos) then assume plain
> text */
> --- ./qpopper4.0.5/,configure.in Tue Feb 4 21:06:08 2003
> +++ ./qpopper4.0.5/configure.in Tue Jul 12 15:08:53 2005
> @@ -630,8 +630,8 @@
> fi
> AC_DEFINE(KERBEROS)
> AC_DEFINE(KRB5)
> - AC_DEFINE(KRB5_KRB4_COMPAT)
> - KERBEROS_LIBS="$KERBEROS_LIBS -lkrb5util -lkrb5 -ldes425 -lcom_err"
> + dnl DEE NO KRB4 AC_DEFINE(KRB5_KRB4_COMPAT)
> + KERBEROS_LIBS="$KERBEROS_LIBS -lkrb5 -ldes425 -lcom_err"
> AC_CHECK_LIB( k5crypto, krb5_c_string_to_key,
> KERBEROS_LIBS="$KERBEROS_LIBS -lk5crypto" )
> AC_CHECK_LIB( crypto, krb5_c_string_to_key,
> KERBEROS_LIBS="$KERBEROS_LIBS -lcrypto" )
> AC_CHECK_LIB( krb4, krb_create_ticket,
> KERBEROS_LIBS="$KERBEROS_LIBS -lkrb4" )
> @@ -929,7 +929,7 @@
> [5]*) OS_DEFS="$OS_DEFS -DSOLARIS2 -DGNU_PASS"
> OS_DEFS="$OS_DEFS -DNO_GETLINE -DCONTENT_LENGTH=1"
> if test $krb5_prefix != "no" -a $krb5_prefix !=
> "yes"; then
> -
> KERBEROS_LIBS="$KERBEROS_LIBS -R${krb5_prefix}/lib"
> + KERBEROS_LIBS="$KERBEROS_LIBS "
> fi;;
> [4]*) OS_DEFS="$OS_DEFS -DSUNOS4"
> IS_SUNOS4=yes;;
> --- ./qpopper4.0.5/,configure Tue Feb 4 21:06:30 2003
> +++ ./qpopper4.0.5/configure Tue Jul 12 15:08:04 2005
> @@ -3175,11 +3175,7 @@
> #define KRB5 1
> EOF
>
> - cat >>confdefs.h <<\EOF
> -#define KRB5_KRB4_COMPAT 1
> -EOF
> -
> - KERBEROS_LIBS="$KERBEROS_LIBS -lkrb5util -lkrb5 -ldes425 -lcom_err"
> + KERBEROS_LIBS="$KERBEROS_LIBS -lkrb5 -ldes425 -lcom_err"
> echo "$as_me:3183: checking for krb5_c_string_to_key in -lk5crypto"
> >&5
> echo $ECHO_N "checking for krb5_c_string_to_key in -lk5crypto... $ECHO_C"
> >&6
> if test "${ac_cv_lib_k5crypto_krb5_c_string_to_key+set}" = set; then
> @@ -3895,7 +3891,7 @@
> 5*) OS_DEFS="$OS_DEFS -DSOLARIS2 -DGNU_PASS"
> OS_DEFS="$OS_DEFS -DNO_GETLINE -DCONTENT_LENGTH=1"
> if test $krb5_prefix != "no" -a $krb5_prefix !=
> "yes"; then
> -
> KERBEROS_LIBS="$KERBEROS_LIBS -R${krb5_prefix}/lib"
> + KERBEROS_LIBS="$KERBEROS_LIBS "
> fi;;
> 4*) OS_DEFS="$OS_DEFS -DSUNOS4"
> IS_SUNOS4=yes;;
More information about the Kerberos
mailing list