1*13fc573aSDominic Spill /* -*- c -*- */
2*13fc573aSDominic Spill /*
3*13fc573aSDominic Spill * Copyright 2012 Dominic Spill
4*13fc573aSDominic Spill *
5*13fc573aSDominic Spill * This file is part of libbtbb
6*13fc573aSDominic Spill *
7*13fc573aSDominic Spill * This program is free software; you can redistribute it and/or modify
8*13fc573aSDominic Spill * it under the terms of the GNU General Public License as published by
9*13fc573aSDominic Spill * the Free Software Foundation; either version 2, or (at your option)
10*13fc573aSDominic Spill * any later version.
11*13fc573aSDominic Spill *
12*13fc573aSDominic Spill * This program is distributed in the hope that it will be useful,
13*13fc573aSDominic Spill * but WITHOUT ANY WARRANTY; without even the implied warranty of
14*13fc573aSDominic Spill * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15*13fc573aSDominic Spill * GNU General Public License for more details.
16*13fc573aSDominic Spill *
17*13fc573aSDominic Spill * You should have received a copy of the GNU General Public License
18*13fc573aSDominic Spill * along with libbtbb; see the file COPYING. If not, write to
19*13fc573aSDominic Spill * the Free Software Foundation, Inc., 51 Franklin Street,
20*13fc573aSDominic Spill * Boston, MA 02110-1301, USA.
21*13fc573aSDominic Spill */
22*13fc573aSDominic Spill /*
23*13fc573aSDominic Spill UAP Data HEC Header (octal)
24*13fc573aSDominic Spill ----------------------------------
25*13fc573aSDominic Spill 00 123 e1 770007 007070 000777
26*13fc573aSDominic Spill 47 123 06 770007 007007 700000
27*13fc573aSDominic Spill 00 124 32 007007 007007 007700
28*13fc573aSDominic Spill 47 124 d5 007007 007070 707077
29*13fc573aSDominic Spill 00 125 5a 707007 007007 077070
30*13fc573aSDominic Spill 47 125 bd 707007 007070 777707
31*13fc573aSDominic Spill 00 126 e2 077007 007007 000777
32*13fc573aSDominic Spill 47 126 05 077007 007070 700000
33*13fc573aSDominic Spill 00 127 8a 777007 007007 070007
34*13fc573aSDominic Spill 47 127 6d 777007 007070 770770
35*13fc573aSDominic Spill 00 11b 9e 770770 007007 777007
36*13fc573aSDominic Spill 47 11b 79 770770 007070 077770
37*13fc573aSDominic Spill 00 11c 4d 007770 007070 770070
38*13fc573aSDominic Spill 47 11c aa 007770 007007 070707
39*13fc573aSDominic Spill 00 11d 25 707770 007070 700700
40*13fc573aSDominic Spill 47 11d c2 707770 007007 000077
41*13fc573aSDominic Spill 00 11e 9d 077770 007070 777007
42*13fc573aSDominic Spill 47 11e 7a 077770 007007 077770
43*13fc573aSDominic Spill 00 11f f5 777770 007070 707777
44*13fc573aSDominic Spill 47 11f 12 777770 007007 007000
45*13fc573aSDominic Spill */
46*13fc573aSDominic Spill
47*13fc573aSDominic Spill #include "../bluetooth_packet_tx.h"
48*13fc573aSDominic Spill #include <stdio.h>
49*13fc573aSDominic Spill
test_gen_packet_header()50*13fc573aSDominic Spill int test_gen_packet_header() {
51*13fc573aSDominic Spill char *optr;
52*13fc573aSDominic Spill int i, j, ret, err;
53*13fc573aSDominic Spill ret = 0;
54*13fc573aSDominic Spill
55*13fc573aSDominic Spill printf("Testing header\n");
56*13fc573aSDominic Spill printf("---------------\n");
57*13fc573aSDominic Spill
58*13fc573aSDominic Spill /* lt_addr, type, flow, arqn, seqn, UAP, HEC */
59*13fc573aSDominic Spill uint8_t data[20][7] = {
60*13fc573aSDominic Spill {},
61*13fc573aSDominic Spill {},
62*13fc573aSDominic Spill {},
63*13fc573aSDominic Spill {},
64*13fc573aSDominic Spill {},
65*13fc573aSDominic Spill {},
66*13fc573aSDominic Spill {},
67*13fc573aSDominic Spill {},
68*13fc573aSDominic Spill {},
69*13fc573aSDominic Spill {}
70*13fc573aSDominic Spill UAP Data HE
71*13fc573aSDominic Spill -----------
72*13fc573aSDominic Spill 00 123 e1
73*13fc573aSDominic Spill 47 123 06
74*13fc573aSDominic Spill 00 124 32
75*13fc573aSDominic Spill 47 124 d5
76*13fc573aSDominic Spill 00 125 5a
77*13fc573aSDominic Spill 47 125 bd
78*13fc573aSDominic Spill 00 126 e2
79*13fc573aSDominic Spill 47 126 05
80*13fc573aSDominic Spill 00 127 8a
81*13fc573aSDominic Spill 47 127 6d
82*13fc573aSDominic Spill 00 11b 9e
83*13fc573aSDominic Spill 47 11b 79
84*13fc573aSDominic Spill 00 11c 4d
85*13fc573aSDominic Spill 47 11c aa
86*13fc573aSDominic Spill 00 11d 25
87*13fc573aSDominic Spill 47 11d c2
88*13fc573aSDominic Spill 00 11e 9d
89*13fc573aSDominic Spill 47 11e 7a
90*13fc573aSDominic Spill 00 11f f5
91*13fc573aSDominic Spill 47 11f 12
92*13fc573aSDominic Spill
93*13fc573aSDominic Spill };
94*13fc573aSDominic Spill
95*13fc573aSDominic Spill for(i = 0; i < 20; i++) {
96*13fc573aSDominic Spill gen_packet_header(uint8_t lt_addr, uint8_t type, uint8_t flow, uint8_t arqn, uint8_t seqn)
97*13fc573aSDominic Spill if (uap == 1) {
98*13fc573aSDominic Spill printf("E");
99*13fc573aSDominic Spill ret++;
100*13fc573aSDominic Spill }
101*13fc573aSDominic Spill else
102*13fc573aSDominic Spill printf(".");
103*13fc573aSDominic Spill }
104*13fc573aSDominic Spill
105*13fc573aSDominic Spill if (ret > 0)
106*13fc573aSDominic Spill printf("%d errors\n", ret);
107*13fc573aSDominic Spill printf("\n--------------------\n");
108*13fc573aSDominic Spill printf("Done testing unfec23\n");
109*13fc573aSDominic Spill return ret;
110*13fc573aSDominic Spill }
111*13fc573aSDominic Spill
main(int argc,char ** argv)112*13fc573aSDominic Spill int main(int argc, char** argv) {
113*13fc573aSDominic Spill int ret = 0;
114*13fc573aSDominic Spill
115*13fc573aSDominic Spill ret += test_unfec23();
116*13fc573aSDominic Spill
117*13fc573aSDominic Spill exit(ret);
118*13fc573aSDominic Spill }
119