Lines 81-93
main(int argc, char *argv[])
Link Here
|
81 |
size_t buflen, bufpos; |
81 |
size_t buflen, bufpos; |
82 |
long pri; |
82 |
long pri; |
83 |
int ch, clear; |
83 |
int ch, clear; |
84 |
bool all; |
84 |
bool all, loop; |
85 |
|
85 |
|
86 |
all = false; |
86 |
all = loop = false; |
87 |
clear = false; |
87 |
clear = false; |
88 |
(void) setlocale(LC_CTYPE, ""); |
88 |
(void) setlocale(LC_CTYPE, ""); |
89 |
memf = nlistf = NULL; |
89 |
memf = nlistf = NULL; |
90 |
while ((ch = getopt(argc, argv, "acM:N:")) != -1) |
90 |
while ((ch = getopt(argc, argv, "acM:N:w")) != -1) |
91 |
switch(ch) { |
91 |
switch(ch) { |
92 |
case 'a': |
92 |
case 'a': |
93 |
all = true; |
93 |
all = true; |
Lines 101-106
main(int argc, char *argv[])
Link Here
|
101 |
case 'N': |
101 |
case 'N': |
102 |
nlistf = optarg; |
102 |
nlistf = optarg; |
103 |
break; |
103 |
break; |
|
|
104 |
case 'w': |
105 |
loop = true; |
106 |
break; |
104 |
case '?': |
107 |
case '?': |
105 |
default: |
108 |
default: |
106 |
usage(); |
109 |
usage(); |
Lines 109-114
main(int argc, char *argv[])
Link Here
|
109 |
if (argc != 0) |
112 |
if (argc != 0) |
110 |
usage(); |
113 |
usage(); |
111 |
|
114 |
|
|
|
115 |
again: |
116 |
|
112 |
if (memf == NULL) { |
117 |
if (memf == NULL) { |
113 |
/* |
118 |
/* |
114 |
* Running kernel. Use sysctl. This gives an unwrapped buffer |
119 |
* Running kernel. Use sysctl. This gives an unwrapped buffer |
Lines 203-217
main(int argc, char *argv[])
Link Here
|
203 |
} |
208 |
} |
204 |
} |
209 |
} |
205 |
|
210 |
|
|
|
211 |
if (*p == '\0') continue; |
212 |
|
206 |
(void)strvisx(visbp, p, nextp - p, 0); |
213 |
(void)strvisx(visbp, p, nextp - p, 0); |
207 |
(void)printf("%s", visbp); |
214 |
if (*visbp != '\n') (void)printf("%s", visbp); |
208 |
} |
215 |
} |
|
|
216 |
|
217 |
free (bp); |
218 |
free (visbp); |
219 |
|
220 |
if (loop) { |
221 |
usleep(100000); |
222 |
goto again; |
223 |
} |
224 |
|
209 |
exit(0); |
225 |
exit(0); |
210 |
} |
226 |
} |
211 |
|
227 |
|
212 |
void |
228 |
void |
213 |
usage(void) |
229 |
usage(void) |
214 |
{ |
230 |
{ |
215 |
fprintf(stderr, "usage: dmesg [-ac] [-M core [-N system]]\n"); |
231 |
fprintf(stderr, "usage: dmesg [-acw] [-M core [-N system]]\n"); |
216 |
exit(1); |
232 |
exit(1); |
217 |
} |
233 |
} |