Sean O'Malley wrote:
Am I supposed to have rxk5 support while building krb5 utilities?
I was trying to build Solaris 10/x86 with sun krb5 against cvs head and it
was failing miserably.


Tghe CVS might not be stable, I see klog.c was change 40 hours ago. But
the 1.4.5 aklog builds against Solaris 10 update 4 (Sun included the krb5.h)
with no changes if you configure with something like:


KRB5CFLAGS="-I/usr/include/kerberosv5"
KRB5LIBS="/usr/lib/gss/mech_krb5.so -R/usr/lib/gss"
export KRB5CFLAGS
export KRB5LIBS
CC=/opt/SUNWspro/bin/cc
export CC
./configure --enable-transarc-paths \
              --with-krb5=yes \
               --enable-namei-fileserver \
               --enable-largefile-fileserver \
               --host=sparc-sun-solaris2.10




The two biggest issues were libcom_err.a wasn't being linked.
I manually added that to the compile. I made a couple of changes to klog.c
The first I assume is because it wasn't including com_err.h
the second is a hack I stole from Marcus and the rxk5 peeps, but I think
the ifdef isn't correct. It should be something like
#ifndef SUNKRB5 with a test somewhere to define it because you should be
able to use another krb5 on Solaris.

Once I got this compiled, the klog utility worked with krb5 but core
dumped with the -tmp flag.

Here is what I added:

Index: openafs/src/aklog/klog.c
===================================================================
RCS file: /cvs/openafs/src/aklog/klog.c,v
retrieving revision 1.4
diff -u -r1.4 klog.c
--- openafs/src/aklog/klog.c    5 Nov 2007 21:43:00 -0000       1.4
+++ openafs/src/aklog/klog.c    7 Nov 2007 03:43:00 -0000
@@ -390,7 +390,7 @@
     Silent = (as->parms[aSILENT].items ? 1 : 0);

     if (Silent) {
-       set_com_err_hook(silent_errors);
+       afs_set_com_err_hook(silent_errors);
     }

     if ((code = krb5_init_context(&k5context))) {
@@ -598,9 +598,11 @@
                what = "getting default ccache";
                code = krb5_cc_default(k5context, &cc);
            } else {
+#ifndef sun
                what = "krb5_cc_register";
                code = krb5_cc_register(k5context, &krb5_mcc_ops, FALSE);
                if (code && code != KRB5_CC_TYPE_EXISTS) goto Failed;
+#endif
                what = "krb5_cc_resolve";
                code = krb5_cc_resolve(k5context, "MEMORY:core", &cc);
                if (code) goto Failed;



--------------------------------------
  Sean O'Malley, Information Technologist
  Michigan State University
-------------------------------------

_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel



--

 Douglas E. Engert  <[EMAIL PROTECTED]>
 Argonne National Laboratory
 9700 South Cass Avenue
 Argonne, Illinois  60439
 (630) 252-5444
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel

Reply via email to