Don't use %zu

Eventually we'll need to make sure that a) libroken's stdint.h defines
the max integer types, b) the libroken *printf()s can handle all the
standard length and conversion specifiers.
Don't need, so don't use, stdbool.h
libedit should check HAVE_STDINT_H (S8)
Make lib/otp/Makefile.am use -I$(DBHEADER)
Check fcache st_uid == geteuid(), not getuid()

Programs like sshd may create or access a ccache with
ruid != user's UID, euid == user's UID.

Set-uid-0 programs (ob reminder: they start life as ruid == user's UID,
euid == 0) shouldn't unintentionally access ccaches.  Therefore we
shouldn't check both of ruid and euid, just euid.
krb5_set_default_realm.3 man page update

Since the memory is allocated inside the Kerberos library, it
should be freed by code inside the same library.  free, as
previously recommended, therefore doesn't seem appropriate.
Instead, recommend krb5_xfree, which exists for this purpose.
krb5_set_default_realm.3 man page update

Change-Id: I11d119edf03148cbdc654480c72ddffb540084ec
rename struct krb5_name_canon_* name collisions

C++ does not permit struct names and typedef names to be the same.
Rename

  struct krb5_name_canon_rule to struct krb5_name_canon_rule_data

and

  struct krb5_name_canon_iterator to struct krb5_name_canon_iterator_data

Change-Id: I92766e0878bf0beef92de1649baf9e5cafbf86aa
libtommath: remove unnecessary comparison

As pointed out by Steffen Jaeckel [https://github.com/sjaeckel],
within bn_mp_prime_next_prime() t <= PRIME_SIZE as per the check
at the top of the function.  Remove the unnecessary comparison in
a for loop conditional.

Change-Id: I868bee1a7a019e0ab06bf2b81cc71cf66ca9acff
libtommath: protect functions by tommath_class macros

libtommath protects the inclusion of functions by wrapping their
declarations by CPP #ifdef tests and defining the matching macros
within libtommath_class.h.

Add missing macros:

  BN_MP_FIND_PRIME_C
  BN_MP_ISPRIME_C

Change-Id: Ic577300114f8e88d7a3af3d9f717a249d57f03b1
Convert mp_find_prime to use mp_prime_is_prime

Modify the signature of mp_find_prime() to permit the number of
Miller-Rabin rounds to be specified.  In addition, valid responses
now include MP_NO, MP_YES, and MP_VAL which is returned when
mp_prime_is_prime() fails.

Change-Id: I0195129a4dd75875e6dddb6d49a5ceb30afb1a17
libtommath: allow mp_shrink to shrink initialized, but empty MPI's

from https://github.com/libtom/libtommath

Change-Id: I5814caeb44db710957152a7d47b03f9beb6e5147
libtommath: mp_error_to_string: return const char* instead of char*

From https://github.com/libtom/libtommath

Change-Id: Idd5cbab380f5d504fece93afb3a5fcc026309482
libtommath: Fix mp_mod(a, b, c) if b < 0 and a = n * b, n integer

it used to return b, now it return 0.

From https://github.com/libtom/libtommath

Change-Id: I99f5d42c09a6fbddfb32b7dd0ed10ef04f1c08a5
libtommath: remove bn_mp_isprime.c

Now that mp_prime() is no longer used, remove bn_mp_isprime.c from
the source tree.

Change-Id: Ie0f7ce3184c000f27ae5b9dbe07b323c02ce7199
Windows Installer: gssapi.dll in Heimdal\bin

gssapi.dll is supposed to be implementation agnostic.  No version
numbers and no manifest required to load it.   In addition to the
version that is installed as part of the assembly also include a
version that can be discovered by LoadLibrary() via PATH search.

Change-Id: I1865dd2ecec208745a40e699837bd2a888341a31
Windows Installer: Add missing Package properties

Platform
InstallScope
InstallPrivileges
Keywords

Change-Id: I04ecfb4456e62a60e737ac26de098f11849c4ec0
libtommath: fix typo in bn_mp_mod.c

Change-Id: Ieec5c01d5bd59b9268f41933389b1b32a4c4d0c6
Windows Installer: Add custom graphics

Change-Id: I9218a4ccc128730ef7fea88cd68aab73209570fb
Use defrealm in last-resort parse of kt principal
Windows: Install loose gssapi.dll with manifest

When installing the gssapi.dll within the Heimdal\bin directory
make sure to install the version that has the assembly manifest.
Otherwise, the DLL cannot find the heimdal.dll.

Change-Id: Idd6f8f00db718f8a764e1cfa9d06d188ab22a313