FreeCalypso > hg > freecalypso-tools
annotate rvinterf/tmsh/audioresp.c @ 161:da6950e936bf
fc-tmsh: proper handling of auw responses
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 17 Mar 2017 08:00:19 +0000 |
parents | e4c98a2c1673 |
children | ce7479d28b02 |
rev | line source |
---|---|
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * In this module we are going to implement the handling of ETM_AUDIO responses. |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 */ |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 #include <sys/types.h> |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 #include <stdio.h> |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 #include <string.h> |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 #include <strings.h> |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 #include <stdlib.h> |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 #include "pktmux.h" |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 #include "limits.h" |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 #include "localtypes.h" |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 #include "etm.h" |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 extern u_char rvi_msg[]; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 extern int rvi_msg_len; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 static void |
160
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
19 aul_aus_response(op) |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
20 char *op; |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 { |
160
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
22 char buf[80]; |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
160
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
24 if (rvi_msg_len != 6) { |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
25 sprintf(buf, "%s response wrong length", op); |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
26 print_etm_pkt_raw(buf); |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
27 return; |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
28 } |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
29 if (rvi_msg[3]) |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
30 sprintf(buf, "%s error %u (0x%02X)", op, |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
31 rvi_msg[3], rvi_msg[3]); |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
32 else |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
33 sprintf(buf, "%s OK", op); |
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
34 async_msg_output(buf); |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 } |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 static void |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 aur_response() |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 { |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 print_etm_pkt_raw("aur response"); |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 } |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 static void |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 auw_response() |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 { |
161
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
46 char buf[80]; |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
47 |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
48 if (rvi_msg_len != 7) { |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
49 print_etm_pkt_raw("auw response wrong length"); |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
50 return; |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
51 } |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
52 if (rvi_msg[3]) |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
53 sprintf(buf, "auw %u error %u (0x%02X)", rvi_msg[5], |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
54 rvi_msg[3], rvi_msg[3]); |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
55 else |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
56 sprintf(buf, "auw %u OK", rvi_msg[5]); |
da6950e936bf
fc-tmsh: proper handling of auw responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
160
diff
changeset
|
57 async_msg_output(buf); |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 } |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 void |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 etm_audio_msg_rx() |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 { |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 switch (rvi_msg[4]) { |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 case 'L': |
160
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
65 aul_aus_response("aul"); |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 return; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 case 'S': |
160
e4c98a2c1673
fc-tmsh: implemented proper handling of aul and aus responses
Mychaela Falconia <falcon@freecalypso.org>
parents:
159
diff
changeset
|
68 aul_aus_response("aus"); |
159
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 return; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 case 'R': |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 aur_response(); |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 return; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 case 'W': |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 auw_response(); |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 return; |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 default: |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 unknown: |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 print_etm_pkt_raw("ETM_AUDIO"); |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 } |
8fac4aaec230
fc-tmsh: beginning of intelligent ETM_AUDIO response handling
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 } |