diff options
author | simonb <simonb@NetBSD.org> | 1999-08-21 07:02:46 +0000 |
---|---|---|
committer | simonb <simonb@NetBSD.org> | 1999-08-21 07:02:46 +0000 |
commit | 9f5f92a0f3b2deed923c1d9c5613fe2dc55e605f (patch) | |
tree | d48210e3e87ce7617ea961b9d8cc43db484bccfe /fortune/strfile | |
parent | e6838d71c5f48786e0e7ce3a0ff47d9b1f71abcf (diff) | |
download | bsdgames-darwin-9f5f92a0f3b2deed923c1d9c5613fe2dc55e605f.tar.gz bsdgames-darwin-9f5f92a0f3b2deed923c1d9c5613fe2dc55e605f.tar.zst bsdgames-darwin-9f5f92a0f3b2deed923c1d9c5613fe2dc55e605f.zip |
Use new endian-specific conversion macros - 64-bit off_t's are now
the stored the same regardess of the byte order of the generating
host.
Note in the strfile(8) man page that all fields are big-endian, not
in network byte order.
Diffstat (limited to 'fortune/strfile')
-rw-r--r-- | fortune/strfile/strfile.8 | 4 | ||||
-rw-r--r-- | fortune/strfile/strfile.c | 18 | ||||
-rw-r--r-- | fortune/strfile/strfile.h | 15 |
3 files changed, 20 insertions, 17 deletions
diff --git a/fortune/strfile/strfile.8 b/fortune/strfile/strfile.8 index 3f9554e9..96512e3c 100644 --- a/fortune/strfile/strfile.8 +++ b/fortune/strfile/strfile.8 @@ -1,4 +1,4 @@ -.\" $NetBSD: strfile.8,v 1.5 1999/03/22 18:49:11 garbled Exp $ +.\" $NetBSD: strfile.8,v 1.6 1999/08/21 07:02:46 simonb Exp $ .\" .\" Copyright (c) 1989, 1991, 1993 .\" The Regents of the University of California. All rights reserved. @@ -115,7 +115,7 @@ unsigned long str_flags; /* bit field for flags */ char str_delim; /* delimiting character */ .Ed .Pp -All fields are written in network byte order. +All fields are written in big-endian byte order. .Pp The purpose of .Nm unstr diff --git a/fortune/strfile/strfile.c b/fortune/strfile/strfile.c index f4ba208e..a27c2711 100644 --- a/fortune/strfile/strfile.c +++ b/fortune/strfile/strfile.c @@ -1,4 +1,4 @@ -/* $NetBSD: strfile.c,v 1.8 1998/09/13 15:27:28 hubertf Exp $ */ +/* $NetBSD: strfile.c,v 1.9 1999/08/21 07:02:46 simonb Exp $ */ /*- * Copyright (c) 1989, 1993 @@ -46,7 +46,7 @@ __COPYRIGHT("@(#) Copyright (c) 1989, 1993\n\ #if 0 static char sccsid[] = "@(#)strfile.c 8.1 (Berkeley) 5/31/93"; #else -__RCSID("$NetBSD: strfile.c,v 1.8 1998/09/13 15:27:28 hubertf Exp $"); +__RCSID("$NetBSD: strfile.c,v 1.9 1999/08/21 07:02:46 simonb Exp $"); #endif #endif /* not lint */ @@ -244,15 +244,15 @@ main(ac, av) } (void) fseek(outf, (off_t) 0, 0); - Tbl.str_version = htonl(Tbl.str_version); - Tbl.str_numstr = htonl(Num_pts - 1); - Tbl.str_longlen = htonl(Tbl.str_longlen); - Tbl.str_shortlen = htonl(Tbl.str_shortlen); - Tbl.str_flags = htonl(Tbl.str_flags); + HTOBE32(Tbl.str_version); + Tbl.str_numstr = htobe32(Num_pts - 1); + HTOBE32(Tbl.str_longlen); + HTOBE32(Tbl.str_shortlen); + HTOBE32(Tbl.str_flags); (void) fwrite((char *) &Tbl, sizeof Tbl, 1, outf); if (STORING_PTRS) { for (p = Seekpts, cnt = Num_pts; cnt--; ++p) - *p = htonl(*p); + HTOBE64(*p); (void) fwrite((char *) Seekpts, sizeof *Seekpts, (int) Num_pts, outf); } (void) fclose(outf); @@ -334,7 +334,7 @@ add_offset(fp, off) off_t net; if (!STORING_PTRS) { - net = htonl(off); + net = htobe64(off); fwrite(&net, 1, sizeof net, fp); } else { ALLOC(Seekpts, Num_pts + 1); diff --git a/fortune/strfile/strfile.h b/fortune/strfile/strfile.h index 48efc747..326ccd0d 100644 --- a/fortune/strfile/strfile.h +++ b/fortune/strfile/strfile.h @@ -1,4 +1,4 @@ -/* $NetBSD: strfile.h,v 1.3 1995/03/23 08:28:49 cgd Exp $ */ +/* $NetBSD: strfile.h,v 1.4 1999/08/21 07:02:46 simonb Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -38,19 +38,22 @@ * @(#)strfile.h 8.1 (Berkeley) 5/31/93 */ +#include <sys/types.h> +#include <sys/endian.h> + #define STR_ENDSTRING(line,tbl) \ ((line)[0] == (tbl).str_delim && (line)[1] == '\n') typedef struct { /* information table */ #define VERSION 1 - unsigned long str_version; /* version number */ - unsigned long str_numstr; /* # of strings in the file */ - unsigned long str_longlen; /* length of longest string */ - unsigned long str_shortlen; /* length of shortest string */ + u_int32_t str_version; /* version number */ + u_int32_t str_numstr; /* # of strings in the file */ + u_int32_t str_longlen; /* length of longest string */ + u_int32_t str_shortlen; /* length of shortest string */ #define STR_RANDOM 0x1 /* randomized pointers */ #define STR_ORDERED 0x2 /* ordered pointers */ #define STR_ROTATED 0x4 /* rot-13'd text */ - unsigned long str_flags; /* bit field for flags */ + u_int32_t str_flags; /* bit field for flags */ unsigned char stuff[4]; /* long aligned space */ #define str_delim stuff[0] /* delimiting character */ } STRFILE; |