[OpenAFS-devel] 1.4.5 pre5 klog v5

Marcus Watts mdw@spam.ifs.umich.edu
Thu, 03 Jan 2008 14:12:36 -0500


> Date:    Thu, 03 Jan 2008 09:29:30 EST
> To:      "OpenAFS Devel" <openafs-devel@openafs.org>
> From:    "Derrick Brashear" <shadow@gmail.com>
> Subject: Re: [OpenAFS-devel] 1.4.5 pre5 klog v5
> 
> >
> > The file:
> > /afs/umich.edu/group/itd/build/mdw/openafs/patches/openafs-
> > 1.4.6-klog1.diff
> > contains diffs which should apply to stock 1.4.6 code, to result
> > in building klog.ka whenver aklog would also be built.
> >
> > I called it 'klog.k5'.  That's easy enough to change if you hate it.
> >
> 
> Given that we called the old thing "klog.krb", "klog.krb5" might be a better
> parallel.

We do?  I think klog.krb is the same thing as "klog -t"; the k5 klog
doesn't do "-t" unless asked to.  If we want that analogy, we might
want names like "klog.5" "klog.krb5" but that's just weird.  But really,
I don't care that much about names.  I think sites that actually care
will probably wind up swapping binaries anyways.  It might be worth finding
out if there are sites out there that depend on klog.krb and want to
get a credentials cache without specifying -t, in which case the name
issue gets interesting.

> 
> >
> > The configure/Makefile logic here is scaled way back.  I presume something
> > knows when to build and install aklog (not sure what -- ?) - so this
> > just piggy-backs on that.  If there's no such logic then I can put
> > something
> > in here.
> >
> 
> look at Makefile.in at the top level; if we have krb5, we build the aklog
> target.

Oh.  *That* ugly if.  Uh, right.  Anyways, yes, should be no problem.

> 
> >
> > klog.c here is what was in the "1.4" branch, which has various changes
> > from omalleys, shadow, sxw in it.  I also added in a bunch of changes
> > from the rxk5 branch.  Some of those are important (freeing invalid memory
> > pointer) some are cosmetic (avoid extra newlines), and some just won't
> > matter right now (rxk5).
> >
> > The library order in the makefile was wrong for klog, so I fixed that as
> > well.
> >
> 
> (It did work on the systems I tested on)

make[1]: Entering directory `/home/mdw/src/openafs-1.4.6+/src/aklog'
gcc -pipe -o klog  -I/usr/local/mit-k5-1.4.3/include -DALLOW_REGISTER -I/home/mdw/src/openafs-1.4.6+/src/config -I. -I. -I/home/mdw/src/openafs-1.4.6+/include -I/home/mdw/src/openafs-1.4.6+/include/afs -I/home/mdw/src/openafs-1.4.6+/include/rx -I/home/mdw/src/openafs-1.4.6+ -I/home/mdw/src/openafs-1.4.6+/src -I/home/mdw/src/openafs-1.4.6+/src -g -O2 -D_LARGEFILE64_SOURCE  klog.o skipwrap.o  -L/usr/local/mit-k5-1.4.3/lib -Wl,-rpath -Wl,/usr/local/mit-k5-1.4.3/lib -lkrb5 -lk5crypto -lkrb5support -lcom_err -lresolv /home/mdw/src/openafs-1.4.6+/lib/libprot.a /home/mdw/src/openafs-1.4.6+/lib/libubik.a /home/mdw/src/openafs-1.4.6+/lib/libauth.a /home/mdw/src/openafs-1.4.6+/lib/librxkad.a /home/mdw/src/openafs-1.4.6+/lib/librx.a /home/mdw/src/openafs-1.4.6+/lib/liblwp.a /home/mdw/src/openafs-1.4.6+/lib/libsys.a /home/mdw/src/openafs-1.4.6+/lib/libdes.a /home/mdw/src/openafs-1.4.6+/lib/libcom_err.a /home/mdw/src/openafs-1.4.6+/lib/libafsutil.a \
/home/mdw/src/openafs-1.4.6+/lib/libcmd.a -lresolv 
/home/mdw/src/openafs-1.4.6+/lib/libsys.a(rmtsysc.o): In function `rx_connection':
/home/mdw/src/openafs-1.4.6+/src/sys/rmtsysc.c:135: undefined reference to `rxnull_NewClientSecurityObject'
collect2: ld returned 1 exit status
make[1]: *** [klog] Error 1

That order will work just fine on aix.  The 1.4 stable branch makefile
has librx.a twice for klog, which also fixes this--perhaps that's what you
were using.  Possibly klog should be calling lsetpag or some such in which
case this problem might also go away.

				-Marcus Watts