Support master keys shorter than 64 bytes
Support master keys shorter than 64 bytes

fscryptctl currently only supports 64-byte master keys.  However the
kernel supports shorter master keys if AES-256-XTS isn't being used.
(And there's also a chance that at some point the kernel will be changed
to allow 32-byte master keys even for AES-256-XTS, as 256 bits of
entropy is enough.)

So change fscryptctl to allow variable-length master keys.

While doing this, clean up read_key() to use read() instead of fread()
to avoid a temporary buffer that may not get cleared, improve some
variable names, and change insert_logon_key() to return bool.

google/fscryptctl,google/fscryptctl