aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src
diff options
context:
space:
mode:
authorRichard M. Stallman1994-01-06 03:56:59 +0000
committerRichard M. Stallman1994-01-06 03:56:59 +0000
commit20333561440df66d09615f7abb07d86519207a30 (patch)
treea3fffabb0845a660ce82edb1d93b6cf37b422bf2 /lib-src
parentc8b836f65e07583447282bdb78c45d9984a81627 (diff)
downloademacs-20333561440df66d09615f7abb07d86519207a30.tar.gz
emacs-20333561440df66d09615f7abb07d86519207a30.zip
Fix up whitespace. Get rid of spurious casts to void.
[MSDOS]: Use binary file modes for non-text side of pipe. (main): Use fclose to close file opened by fopen.
Diffstat (limited to 'lib-src')
-rw-r--r--lib-src/hexl.c291
1 files changed, 156 insertions, 135 deletions
diff --git a/lib-src/hexl.c b/lib-src/hexl.c
index 8b28880ea79..20504211b55 100644
--- a/lib-src/hexl.c
+++ b/lib-src/hexl.c
@@ -1,5 +1,8 @@
1#include <stdio.h> 1#include <stdio.h>
2#include <ctype.h> 2#include <ctype.h>
3#ifdef MSDOS
4#include <fcntl.h>
5#endif
3 6
4#define DEFAULT_GROUPING 0x01 7#define DEFAULT_GROUPING 0x01
5#define DEFAULT_BASE 16 8#define DEFAULT_BASE 16
@@ -9,211 +12,229 @@
9#define TRUE (1) 12#define TRUE (1)
10#define FALSE (0) 13#define FALSE (0)
11 14
12extern void exit(), perror(); 15extern void exit (), perror ();
13 16
14int base = DEFAULT_BASE, un_flag = FALSE, iso_flag = FALSE, endian = 1; 17int base = DEFAULT_BASE, un_flag = FALSE, iso_flag = FALSE, endian = 1;
15int group_by = DEFAULT_GROUPING; 18int group_by = DEFAULT_GROUPING;
16char *progname; 19char *progname;
17 20
18main(argc, argv) 21main (argc, argv)
19int argc; 22 int argc;
20char *argv[]; 23 char *argv[];
21{ 24{
22 register long address; 25 register long address;
23 char string[18]; 26 char string[18];
24 FILE *fp; 27 FILE *fp;
25 28
26 progname = *argv++; --argc; 29 progname = *argv++; --argc;
27 30
28 /* 31 /*
29 ** -hex hex dump 32 ** -hex hex dump
30 ** -oct Octal dump 33 ** -oct Octal dump
31 ** -group-by-8-bits 34 ** -group-by-8-bits
32 ** -group-by-16-bits 35 ** -group-by-16-bits
33 ** -group-by-32-bits 36 ** -group-by-32-bits
34 ** -group-by-64-bits 37 ** -group-by-64-bits
35 ** -iso iso character set. 38 ** -iso iso character set.
36 ** -big-endian Big Endian 39 ** -big-endian Big Endian
37 ** -little-endian Little Endian 40 ** -little-endian Little Endian
38 ** -un || -de from hexl format to binary. 41 ** -un || -de from hexl format to binary.
39 ** -- End switch list. 42 ** -- End switch list.
40 ** <filename> dump filename 43 ** <filename> dump filename
41 ** - (as filename == stdin) 44 ** - (as filename == stdin)
42 */ 45 */
43 46
44 while (*argv && *argv[0] == '-' && (*argv)[1]) 47 while (*argv && *argv[0] == '-' && (*argv)[1])
45 { 48 {
46 /* A switch! */ 49 /* A switch! */
47 if (!strcmp(*argv, "--")) 50 if (!strcmp (*argv, "--"))
48 { 51 {
49 --argc; argv++; 52 --argc; argv++;
50 break; 53 break;
51 } else if (!strcmp(*argv, "-un") || !strcmp(*argv, "-de")) 54 }
55 else if (!strcmp (*argv, "-un") || !strcmp (*argv, "-de"))
52 { 56 {
53 un_flag = TRUE; 57 un_flag = TRUE;
54 --argc; argv++; 58 --argc; argv++;
55 } else if (!strcmp(*argv, "-hex")) 59 }
60 else if (!strcmp (*argv, "-hex"))
56 { 61 {
57 base = 16; 62 base = 16;
58 --argc; argv++; 63 --argc; argv++;
59 } else if (!strcmp(*argv, "-iso")) 64 }
65 else if (!strcmp (*argv, "-iso"))
60 { 66 {
61 iso_flag = TRUE; 67 iso_flag = TRUE;
62 --argc; argv++; 68 --argc; argv++;
63 } else if (!strcmp(*argv, "-oct")) 69 }
70 else if (!strcmp (*argv, "-oct"))
64 { 71 {
65 base = 8; 72 base = 8;
66 --argc; argv++; 73 --argc; argv++;
67 } else if (!strcmp(*argv, "-big-endian")) 74 }
75 else if (!strcmp (*argv, "-big-endian"))
68 { 76 {
69 endian = 1; 77 endian = 1;
70 --argc; argv++; 78 --argc; argv++;
71 } else if (!strcmp(*argv, "-little-endian")) 79 }
80 else if (!strcmp (*argv, "-little-endian"))
72 { 81 {
73 endian = 0; 82 endian = 0;
74 --argc; argv++; 83 --argc; argv++;
75 } else if (!strcmp(*argv, "-group-by-8-bits")) 84 }
85 else if (!strcmp (*argv, "-group-by-8-bits"))
76 { 86 {
77 group_by = 0x00; 87 group_by = 0x00;
78 --argc; argv++; 88 --argc; argv++;
79 } else if (!strcmp(*argv, "-group-by-16-bits")) 89 }
90 else if (!strcmp (*argv, "-group-by-16-bits"))
80 { 91 {
81 group_by = 0x01; 92 group_by = 0x01;
82 --argc; argv++; 93 --argc; argv++;
83 } else if (!strcmp(*argv, "-group-by-32-bits")) 94 }
95 else if (!strcmp (*argv, "-group-by-32-bits"))
84 { 96 {
85 group_by = 0x03; 97 group_by = 0x03;
86 --argc; argv++; 98 --argc; argv++;
87 } else if (!strcmp(*argv, "-group-by-64-bits")) 99 }
100 else if (!strcmp (*argv, "-group-by-64-bits"))
88 { 101 {
89 group_by = 0x07; 102 group_by = 0x07;
90 endian = 0; 103 endian = 0;
91 --argc; argv++; 104 --argc; argv++;
92 } else 105 }
106 else
93 { 107 {
94 (void) fprintf(stderr, "%s: invalid switch: \"%s\".\n", progname, 108 fprintf (stderr, "%s: invalid switch: \"%s\".\n", progname,
95 *argv); 109 *argv);
96 usage(); 110 usage ();
97 } 111 }
98 } 112 }
99 113
100 do 114 do
101 { 115 {
102 if (*argv == NULL) 116 if (*argv == NULL)
103 fp = stdin; 117 fp = stdin;
104 else 118 else
105 { 119 {
106 char *filename = *argv++; 120 char *filename = *argv++;
107 121
108 if (!strcmp(filename, "-")) 122 if (!strcmp (filename, "-"))
109 fp = stdin; 123 fp = stdin;
110 else 124 else if ((fp = fopen (filename, "r")) == NULL)
111 if ((fp = fopen(filename, "r")) == NULL) 125 {
112 { 126 perror (filename);
113 perror(filename); 127 continue;
114 continue; 128 }
115 }
116 } 129 }
117 130
118 if (un_flag) 131 if (un_flag)
119 { 132 {
120 char buf[18]; 133 char buf[18];
121 134
122 for (;;) 135#ifdef MSDOS
136 (stdout)->_flag &= ~_IOTEXT; /* print binary */
137 _setmode (fileno (stdout), O_BINARY);
138#endif
139 for (;;)
123 { 140 {
124 register int i, c, d; 141 register int i, c, d;
125 142
126#define hexchar(x) (isdigit(x) ? x - '0' : x - 'a' + 10) 143#define hexchar(x) (isdigit (x) ? x - '0' : x - 'a' + 10)
127 144
128 (void) fread(buf, 1, 10, fp); /* skip 10 bytes */ 145 fread (buf, 1, 10, fp); /* skip 10 bytes */
129 146
130 for (i=0; i < 16; ++i) 147 for (i=0; i < 16; ++i)
131 { 148 {
132 if ((c = getc(fp)) == ' ' || c == EOF) 149 if ((c = getc (fp)) == ' ' || c == EOF)
133 break; 150 break;
134 151
135 d = getc(fp); 152 d = getc (fp);
136 c = hexchar(c) * 0x10 + hexchar(d); 153 c = hexchar (c) * 0x10 + hexchar (d);
137 (void) putchar(c); 154 putchar (c);
138 155
139 if ((i&group_by) == group_by) 156 if ((i&group_by) == group_by)
140 (void) getc(fp); 157 getc (fp);
141 } 158 }
142 159
143 if (c == ' ') 160 if (c == ' ')
144 { 161 {
145 while ((c = getc(fp)) != '\n' && c != EOF) 162 while ((c = getc (fp)) != '\n' && c != EOF)
146 ; 163 ;
147 164
148 if (c == EOF) 165 if (c == EOF)
149 break; 166 break;
150 } 167 }
151 else 168 else
152 { 169 {
153 if (i < 16) 170 if (i < 16)
154 break; 171 break;
155 172
156 (void) fread(buf, 1, 18, fp); /* skip 18 bytes */ 173 fread (buf, 1, 18, fp); /* skip 18 bytes */
157 } 174 }
158 } 175 }
159 } 176 }
160 else 177 else
161 { 178 {
162 address = 0; 179#ifdef MSDOS
163 string[0] = ' '; 180 (fp)->_flag &= ~_IOTEXT; /* read binary */
164 string[17] = '\0'; 181 _setmode (fileno (fp), O_BINARY);
165 for (;;) 182#endif
183 address = 0;
184 string[0] = ' ';
185 string[17] = '\0';
186 for (;;)
166 { 187 {
167 register int i, c; 188 register int i, c;
168 189
169 for (i=0; i < 16; ++i) 190 for (i=0; i < 16; ++i)
170 { 191 {
171 if ((c = getc(fp)) == EOF) 192 if ((c = getc (fp)) == EOF)
172 { 193 {
173 if (!i) 194 if (!i)
174 break; 195 break;
175 196
176 (void) fputs(" ", stdout); 197 fputs (" ", stdout);
177 string[i+1] = '\0'; 198 string[i+1] = '\0';
178 } 199 }
179 else 200 else
180 { 201 {
181 if (!i) 202 if (!i)
182 (void) printf("%08x: ", address); 203 printf ("%08x: ", address);
183 204
184 if (iso_flag) 205 if (iso_flag)
185 string[i+1] = 206 string[i+1] =
186 (c < 0x20 || (c >= 0x7F && c < 0xa0)) ? '.' :c; 207 (c < 0x20 || (c >= 0x7F && c < 0xa0)) ? '.' :c;
187 else 208 else
188 string[i+1] = (c < 0x20 || c >= 0x7F) ? '.' : c; 209 string[i+1] = (c < 0x20 || c >= 0x7F) ? '.' : c;
189 210
190 (void) printf("%02x", c); 211 printf ("%02x", c);
191 } 212 }
192 213
193 if ((i&group_by) == group_by) 214 if ((i&group_by) == group_by)
194 (void) putchar(' '); 215 putchar (' ');
195 } 216 }
196 217
197 if (i) 218 if (i)
198 (void) puts(string); 219 puts (string);
199 220
200 if (c == EOF) 221 if (c == EOF)
201 break; 222 break;
202 223
203 address += 0x10; 224 address += 0x10;
204 225
205 } 226 }
206 } 227 }
207 228
208 if (fp != stdin) 229 if (fp != stdin)
209 (void) close(fp); 230 fclose (fp);
210 231
211 } while (*argv != NULL); 232 } while (*argv != NULL);
212 return 0; 233 return 0;
213} 234}
214 235
215usage() 236usage ()
216{ 237{
217 (void) fprintf(stderr, "usage: %s [-de] [-iso]\n", progname); 238 fprintf (stderr, "usage: %s [-de] [-iso]\n", progname);
218 exit(1); 239 exit (1);
219} 240}