FreeCalypso > hg > freecalypso-sw
comparison rvinterf/tmsh/pktsort.c @ 335:40b8557b9d04
rvinterf suite: libasync factored out of fc-tmsh
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Tue, 22 Apr 2014 06:51:09 +0000 |
parents | c146f38d2b5f |
children | a26470040d89 |
comparison
equal
deleted
inserted
replaced
334:73a2b359b3cd | 335:40b8557b9d04 |
---|---|
13 #include "localtypes.h" | 13 #include "localtypes.h" |
14 #include "etm.h" | 14 #include "etm.h" |
15 | 15 |
16 extern u_char rvi_msg[]; | 16 extern u_char rvi_msg[]; |
17 extern int rvi_msg_len; | 17 extern int rvi_msg_len; |
18 | |
19 void | |
20 safe_print_trace(src, srclen, dest) | |
21 u_char *src; | |
22 char *dest; | |
23 { | |
24 int i, c; | |
25 char *dp; | |
26 | |
27 dp = dest; | |
28 for (i = 0; i < srclen; i++) { | |
29 c = src[i]; | |
30 if (c & 0x80) { | |
31 *dp++ = 'M'; | |
32 *dp++ = '-'; | |
33 c &= 0x7F; | |
34 } | |
35 if (c < 0x20) { | |
36 *dp++ = '^'; | |
37 *dp++ = c + '@'; | |
38 } else if (c == 0x7F) { | |
39 *dp++ = '^'; | |
40 *dp++ = '?'; | |
41 } else | |
42 *dp++ = c; | |
43 } | |
44 *dp = '\0'; | |
45 } | |
46 | |
47 static void | |
48 handle_useid_0() | |
49 { | |
50 char buf[MAX_PKT_FROM_TARGET*4]; | |
51 | |
52 if (strncmp(rvi_msg + 7, "RVT: Lost Message", 17)) | |
53 return; | |
54 safe_print_trace(rvi_msg + 7, rvi_msg_len - 7, buf); | |
55 async_msg_output(buf); | |
56 } | |
57 | 18 |
58 static void | 19 static void |
59 print_etm_trace() | 20 print_etm_trace() |
60 { | 21 { |
61 char buf[MAX_PKT_FROM_TARGET*4]; | 22 char buf[MAX_PKT_FROM_TARGET*4]; |