Add rxgk boilerplate

Error table, protocol description, and stubs for the security object
routines, with header to declare them.

The public header rxgk.h currently only contains the security level enum
and includes the RPC interface and com_err code headers.

Change-Id: I7893f78119bb4aef12112cc1e51e1ec69de326c2
Dummy Makefile for rxgk

Change-Id: I21c37787eeafb9bf99731f8bbe5d54dcab42c8bd
Hook rxgk directory up to the build

Change-Id: I8a42d14dd494fac10a999120e53045302a2e51d1
Configure glue for rxgk

Add an --enable-rxgk switch to control whether the feature is used.
For now, just build the code as a dependency of finale, but we will
phase it in to other parts of the tree as appropriate.

Change-Id: Idf8b4e5f2f4d0f015e1efa1b610a89f8f9fbc241
Add rxgk_procs.c

Server-side routines for RXGK RPCs.
Just dummy stubs that return failure for now.

Change-Id: I2abb3a5b8082bcbc8d98b774061f8fc8f3e95c94
Build rxgk_procs

In a very silly fashion, mind you, but see if it compiles anyway.

Change-Id: I3652c60caa648d9e0a05b10bc0eec9091cc8cdea
Tweak dependencies

Change-Id: I2765f320dac69107dc75078fb481afb8c1c1090a
Make RXGK RPC server stubs less silly

Actually pass nonempty structures in most places.

Change-Id: I06631e98de1d6ddff40d70f3f057d57ca9b00f63
Export afs_xdr_u_int

Not sure why it was skipped, when u_short and u_char are already
there, as well as plain int.

Change-Id: I72b049065877018b2497bc4c493db02d1204a4e3
s/osi_alloc/xdr_alloc/g

Apparently osi_alloc isn't exported by libtool in the libraries.
Shrug.

Change-Id: I3b7ed75c08f732b7afa335a0d3395ca53004e2bf
Use correct form for pthreaded library

We want the rxgk lib to be a pthread library only, as it will
link against libgssapi.  This requires a symbol file for libtool
to use when generating the library.  For now, just export the
two RPCs.

Change-Id: Ie1ce9321f37e6294c501a4d24acd7dea89af91ac
Add the XDR-derived objects to LT_objs

We will need the RPCs in the library in order to export them.

Change-Id: I659e815154c722a015759f431558ce4b1adf6006
Add rxgkd

A small standalone daemon to backend the RXGK RPCs.
Intended to be used for development/testing; it is expected that
in production the RXGK service will be available on existing service
endpoints.

Change-Id: I3c7a4839c8e4cad73b2c6f15d8b72821c456fd20
Add ndebug for testing GSSNegotiate

A dummy utility which establishes a connection and then calls the
RXGK_GSSNegotiate RPC, printing the RPC's output.

Since the server implementation currently is a dummy stub that always
reports success and static data, this utility does not need to attempt
any negotiation either.

Change-Id: I67600a16b9fd3788b77025253b24cf255a33ac4e
Use less-dummy arguments for GSSNegotiate

But still no gss_init_sec_context.

Change-Id: I936c7b29a5f7958c32a339e4211fb4385810cd01
Attempt to ready ndebug for gssapi

Call gss_init_sec_context nominally within a loop and try to pass
the tokens over to the server.
Since the server always returns success on the first try, there's
not much to test yet.

Change-Id: I5e4fb4bddc85f7e9cffbb7739c7e42cc00ff7fe5
Fix server name

Syntax was wrong, and don't try to include a realm for now, just
run everything in the test realm.

Change-Id: I5e6d69589ae3432fee704d27dbf952897475a9fd
Print status from gss_init_sec_context

So we have some idea whether it's working.

Change-Id: I76a884335527f20d2c210e0e6ad830f2b34d829a
Factor out fill_start_params

It's a sizable chunk of code, with error checking, and does not need
to clutter up main.

Change-Id: I37d551ed97265a3ab4bcb0af366bf50e64d87bd6
Attempt to make rxgkd do GSSAPI, too

Actually call gss_accept_sec_context, read in the input token,
pass out the output token, etc.

Change-Id: I385e817f8d4bdfa080905480f517e55ca513ba8e