Update to rra-c-util 5.5 and C TAP Harness 3.1

Update to rra-c-util 5.5:

* Use Lancaster Consensus environment variables to control tests.
* Use calloc or reallocarray for protection against integer overflows.
* Suppress warnings from Kerberos headers in non-system paths.
* Update warning flags when building with make warnings.
* Only pass warning suppression flags to Perl under make warnings.

Update to C TAP Harness 3.1:

* Check for integer overflow on memory allocations.
* Avoid all remaining uses of sprintf.

Change-Id: I9fcc94b072d06b7811e8d61d56b3b913ffc95056
Reviewed-on: https://gerrit.stanford.edu/1577
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Release 4.6.1

Change-Id: I7dedbc66dd287269c6b48f6e665846eaaed2bad1
Reviewed-on: https://gerrit.stanford.edu/1578
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Bump shared library versioning

The change in the webauth_webkdc_config struct means that some
interfaces are no longer compatible with previous releases.  Be
conservative and bump all of the library versioning.  (Normally
I wouldn't do an ABI bump in a minor release, but in this case
the effect of the changes is very minor, just still an ABI break.)

Change-Id: Ibbb515d7d9393f63751f11d05e5a135c1e3aa5dd
Reviewed-on: https://gerrit.stanford.edu/1579
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Remove stray column from rm factor definition

In the mod_webauth manual, the rm factor definition had a stray
column that messed up the formatting.

Change-Id: I35cacdf37cea28a82560fdbf9a441789308f3a2c
Reviewed-on: https://gerrit.stanford.edu/1580
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Add Autoconf probe for Jansson

We will be using the Jansson library to parse JSON exchanges with
the user information service.

Change-Id: Id39e3327c7d03b5681c3a991bbad6d59c265bbd9
Reviewed-on: https://gerrit.stanford.edu/1582
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Remove remctl and kadmin-remctl references in README

This was for the separate query for the user's password expiration,
which is no longer supported in favor of pulling that information
from the user information service and passing it down from mod_webkdc.

Change-Id: Iaeba7fe731ce471aaabef2e92d1f9b450996a5dc
Reviewed-on: https://gerrit.stanford.edu/1583
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Initial implementation of JSON user information service support

An initial implementation of a new user information service protocol
that uses JSON for communication.  The JSON call and parsing of the
result is implemented and compiles, but is not yet tested and is
probably buggy.  The code is in significant need of refactoring at
some point.

Change-Id: Ieefe5b372600a5a8dd73688a59760daf4d6c8e64
Reviewed-on: https://gerrit.stanford.edu/1584
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Initial framework for testing JSON user information calls

Add the remctl interface, the Perl backend, and the JSON data
for testing the user information service with JSON.  This is not
yet hooked into the test suite.

Change-Id: I1bdddcc8b0104217e276014e6b0246ba5cb46169
Reviewed-on: https://gerrit.stanford.edu/1585
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Resync TODO with JIRA

All the JIRA ticket numbers changed, so bring TODO back in line
with JIRA.

Change-Id: Ia873b15e34ce2652463d1fdcf8695dba8b08c46d
Reviewed-on: https://gerrit.stanford.edu/1589
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>