summaryrefslogtreecommitdiffstats
path: root/usr.sbin/services_mkdb/services_mkdb.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2014-01-22 16:50:18 +0000
committerjhb <jhb@FreeBSD.org>2014-01-22 16:50:18 +0000
commitada0e25d918f99abb6bf16ddd3802b8b28a5c935 (patch)
treeeb9b51abca9c240367567e0786ea70f326ff0442 /usr.sbin/services_mkdb/services_mkdb.c
parent3f1e8f48cd8fa6e166ed853783ef71a081b29aaf (diff)
downloadFreeBSD-src-ada0e25d918f99abb6bf16ddd3802b8b28a5c935.zip
FreeBSD-src-ada0e25d918f99abb6bf16ddd3802b8b28a5c935.tar.gz
Similar to cap_mkdb(1), add endianness support to services_mkdb(1)
to support cross-builds once this is invoked during releases.
Diffstat (limited to 'usr.sbin/services_mkdb/services_mkdb.c')
-rw-r--r--usr.sbin/services_mkdb/services_mkdb.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/usr.sbin/services_mkdb/services_mkdb.c b/usr.sbin/services_mkdb/services_mkdb.c
index 7f5316c..a91340e 100644
--- a/usr.sbin/services_mkdb/services_mkdb.c
+++ b/usr.sbin/services_mkdb/services_mkdb.c
@@ -67,7 +67,7 @@ static const char *getprotostr(StringList *, size_t);
static const char *mkaliases(StringList *, char *, size_t);
static void usage(void);
-const HASHINFO hinfo = {
+HASHINFO hinfo = {
.bsize = 256,
.ffactor = 4,
.nelem = 32768,
@@ -87,14 +87,21 @@ main(int argc, char *argv[])
int warndup = 1;
int unique = 0;
int otherflag = 0;
+ int byteorder = 0;
size_t cnt = 0;
StringList *sl, ***svc;
size_t port, proto;
setprogname(argv[0]);
- while ((ch = getopt(argc, argv, "qo:u")) != -1)
+ while ((ch = getopt(argc, argv, "blo:qu")) != -1)
switch (ch) {
+ case 'b':
+ case 'l':
+ if (byteorder != 0)
+ usage();
+ byteorder = ch == 'b' ? 4321 : 1234;
+ break;
case 'q':
otherflag = 1;
warndup = 0;
@@ -119,6 +126,9 @@ main(int argc, char *argv[])
if (argc == 1)
fname = argv[0];
+ /* Set byte order. */
+ hinfo.lorder = byteorder;
+
if (unique)
uniq(fname);
@@ -423,7 +433,8 @@ out:
static void
usage(void)
{
- (void)fprintf(stderr, "Usage:\t%s [-q] [-o <db>] [<servicefile>]\n"
+ (void)fprintf(stderr,
+ "Usage:\t%s [-b | -l] [-q] [-o <db>] [<servicefile>]\n"
"\t%s -u [<servicefile>]\n", getprogname(), getprogname());
exit(1);
}
OpenPOWER on IntegriCloud