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];