pwd_mkdb: default to network (big) endian hash order

For cross-architecture reproducibility.  The db(3) functions work with
hashes of either endianness, and the current (v4) version password db
entries already store integers in network order.  Do so with the hash as
well so that identical password databases can be created on big- and
little-endian hosts.

The -B and -L flags exist to set the endianness for legacy (v3) entries
when the -l flag is used, and they will still control hash endianness
(at least until the backwards compatibility infrastructure is removed).

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Ed Maste 2018-04-24 01:22:57 +00:00
parent 7cd794214a
commit e936bb9f69

View File

@ -77,7 +77,7 @@ static HASHINFO openinfo = {
256, /* nelem */
2048 * 1024, /* cachesize */
NULL, /* hash() */
BYTE_ORDER /* lorder */
BIG_ENDIAN /* lorder */
};
static enum state { FILE_INSECURE, FILE_SECURE, FILE_ORIG } clean;