1*2d9fd380Sjfb8856606 /* SPDX-License-Identifier: BSD-3-Clause
2*2d9fd380Sjfb8856606  * Copyright(c) 2020 Intel Corporation
3*2d9fd380Sjfb8856606  */
4*2d9fd380Sjfb8856606 
5*2d9fd380Sjfb8856606 #ifndef TEST_CRYPTODEV_SECURITY_DOCSIS_TEST_VECTORS_H_
6*2d9fd380Sjfb8856606 #define TEST_CRYPTODEV_SECURITY_DOCSIS_TEST_VECTORS_H_
7*2d9fd380Sjfb8856606 
8*2d9fd380Sjfb8856606 /*
9*2d9fd380Sjfb8856606  * DOCSIS test data and cases
10*2d9fd380Sjfb8856606  * - encrypt direction: CRC-Crypto
11*2d9fd380Sjfb8856606  * - decrypt direction: Crypto-CRC
12*2d9fd380Sjfb8856606  */
13*2d9fd380Sjfb8856606 
14*2d9fd380Sjfb8856606 struct docsis_test_data {
15*2d9fd380Sjfb8856606 	struct {
16*2d9fd380Sjfb8856606 		uint8_t data[32];
17*2d9fd380Sjfb8856606 		unsigned int len;
18*2d9fd380Sjfb8856606 	} key;
19*2d9fd380Sjfb8856606 
20*2d9fd380Sjfb8856606 	struct {
21*2d9fd380Sjfb8856606 		uint8_t data[16] __rte_aligned(16);
22*2d9fd380Sjfb8856606 		unsigned int len;
23*2d9fd380Sjfb8856606 	} iv;
24*2d9fd380Sjfb8856606 
25*2d9fd380Sjfb8856606 	struct {
26*2d9fd380Sjfb8856606 		uint8_t data[1024];
27*2d9fd380Sjfb8856606 		unsigned int len;
28*2d9fd380Sjfb8856606 		unsigned int cipher_offset;
29*2d9fd380Sjfb8856606 		unsigned int crc_offset;
30*2d9fd380Sjfb8856606 		bool no_cipher;
31*2d9fd380Sjfb8856606 		bool no_crc;
32*2d9fd380Sjfb8856606 	} plaintext;
33*2d9fd380Sjfb8856606 
34*2d9fd380Sjfb8856606 	struct {
35*2d9fd380Sjfb8856606 		uint8_t data[1024];
36*2d9fd380Sjfb8856606 		unsigned int len;
37*2d9fd380Sjfb8856606 		unsigned int cipher_offset;
38*2d9fd380Sjfb8856606 		unsigned int crc_offset;
39*2d9fd380Sjfb8856606 		bool no_cipher;
40*2d9fd380Sjfb8856606 		bool no_crc;
41*2d9fd380Sjfb8856606 	} ciphertext;
42*2d9fd380Sjfb8856606 };
43*2d9fd380Sjfb8856606 
44*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_1 = {
45*2d9fd380Sjfb8856606 	.key = {
46*2d9fd380Sjfb8856606 		.data = {
47*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
48*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
49*2d9fd380Sjfb8856606 		},
50*2d9fd380Sjfb8856606 		.len = 16
51*2d9fd380Sjfb8856606 	},
52*2d9fd380Sjfb8856606 	.iv = {
53*2d9fd380Sjfb8856606 		.data = {
54*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
55*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
56*2d9fd380Sjfb8856606 		},
57*2d9fd380Sjfb8856606 		.len = 16
58*2d9fd380Sjfb8856606 	},
59*2d9fd380Sjfb8856606 	.plaintext = {
60*2d9fd380Sjfb8856606 		.data = {
61*2d9fd380Sjfb8856606 			/* DOCSIS header */
62*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
63*2d9fd380Sjfb8856606 			/* Ethernet frame */
64*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
65*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
66*2d9fd380Sjfb8856606 			/* CRC */
67*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
68*2d9fd380Sjfb8856606 		},
69*2d9fd380Sjfb8856606 		.len = 24,
70*2d9fd380Sjfb8856606 		.cipher_offset = 18,
71*2d9fd380Sjfb8856606 		.crc_offset = 6,
72*2d9fd380Sjfb8856606 		.no_cipher = false,
73*2d9fd380Sjfb8856606 		.no_crc = false
74*2d9fd380Sjfb8856606 	},
75*2d9fd380Sjfb8856606 	.ciphertext = {
76*2d9fd380Sjfb8856606 		.data = {
77*2d9fd380Sjfb8856606 			/* DOCSIS header */
78*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
79*2d9fd380Sjfb8856606 			/* Ethernet frame */
80*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
81*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x7A, 0xF0,
82*2d9fd380Sjfb8856606 			/* CRC */
83*2d9fd380Sjfb8856606 			0x61, 0xF8, 0x63, 0x42
84*2d9fd380Sjfb8856606 		},
85*2d9fd380Sjfb8856606 		.len = 24,
86*2d9fd380Sjfb8856606 		.cipher_offset = 18,
87*2d9fd380Sjfb8856606 		.crc_offset = 6,
88*2d9fd380Sjfb8856606 		.no_cipher = false,
89*2d9fd380Sjfb8856606 		.no_crc = false
90*2d9fd380Sjfb8856606 	}
91*2d9fd380Sjfb8856606 };
92*2d9fd380Sjfb8856606 
93*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_2 = {
94*2d9fd380Sjfb8856606 	.key = {
95*2d9fd380Sjfb8856606 		.data = {
96*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
97*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
98*2d9fd380Sjfb8856606 		},
99*2d9fd380Sjfb8856606 		.len = 16
100*2d9fd380Sjfb8856606 	},
101*2d9fd380Sjfb8856606 	.iv = {
102*2d9fd380Sjfb8856606 		.data = {
103*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
104*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
105*2d9fd380Sjfb8856606 		},
106*2d9fd380Sjfb8856606 		.len = 16
107*2d9fd380Sjfb8856606 	},
108*2d9fd380Sjfb8856606 	.plaintext = {
109*2d9fd380Sjfb8856606 		.data = {
110*2d9fd380Sjfb8856606 			/* DOCSIS header */
111*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
112*2d9fd380Sjfb8856606 			/* Ethernet frame */
113*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
114*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA,
115*2d9fd380Sjfb8856606 			/* CRC */
116*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
117*2d9fd380Sjfb8856606 		},
118*2d9fd380Sjfb8856606 		.len = 25,
119*2d9fd380Sjfb8856606 		.cipher_offset = 18,
120*2d9fd380Sjfb8856606 		.crc_offset = 6,
121*2d9fd380Sjfb8856606 		.no_cipher = false,
122*2d9fd380Sjfb8856606 		.no_crc = false
123*2d9fd380Sjfb8856606 	},
124*2d9fd380Sjfb8856606 	.ciphertext = {
125*2d9fd380Sjfb8856606 		.data = {
126*2d9fd380Sjfb8856606 			/* DOCSIS header */
127*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
128*2d9fd380Sjfb8856606 			/* Ethernet frame */
129*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
130*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x7A, 0xF0, 0xDF,
131*2d9fd380Sjfb8856606 			/* CRC */
132*2d9fd380Sjfb8856606 			0xFE, 0x12, 0x99, 0xE5
133*2d9fd380Sjfb8856606 		},
134*2d9fd380Sjfb8856606 		.len = 25,
135*2d9fd380Sjfb8856606 		.cipher_offset = 18,
136*2d9fd380Sjfb8856606 		.crc_offset = 6,
137*2d9fd380Sjfb8856606 		.no_cipher = false,
138*2d9fd380Sjfb8856606 		.no_crc = false
139*2d9fd380Sjfb8856606 	}
140*2d9fd380Sjfb8856606 };
141*2d9fd380Sjfb8856606 
142*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_3 = {
143*2d9fd380Sjfb8856606 	.key = {
144*2d9fd380Sjfb8856606 		.data = {
145*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
146*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
147*2d9fd380Sjfb8856606 		},
148*2d9fd380Sjfb8856606 		.len = 16
149*2d9fd380Sjfb8856606 	},
150*2d9fd380Sjfb8856606 	.iv = {
151*2d9fd380Sjfb8856606 		.data = {
152*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
153*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
154*2d9fd380Sjfb8856606 		},
155*2d9fd380Sjfb8856606 		.len = 16
156*2d9fd380Sjfb8856606 	},
157*2d9fd380Sjfb8856606 	.plaintext = {
158*2d9fd380Sjfb8856606 		.data = {
159*2d9fd380Sjfb8856606 			/* DOCSIS header */
160*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
161*2d9fd380Sjfb8856606 			/* Ethernet frame */
162*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
163*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
164*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
165*2d9fd380Sjfb8856606 			/* CRC */
166*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
167*2d9fd380Sjfb8856606 		},
168*2d9fd380Sjfb8856606 		.len = 34,
169*2d9fd380Sjfb8856606 		.cipher_offset = 18,
170*2d9fd380Sjfb8856606 		.crc_offset = 6,
171*2d9fd380Sjfb8856606 		.no_cipher = false,
172*2d9fd380Sjfb8856606 		.no_crc = false
173*2d9fd380Sjfb8856606 	},
174*2d9fd380Sjfb8856606 	.ciphertext = {
175*2d9fd380Sjfb8856606 		.data = {
176*2d9fd380Sjfb8856606 			/* DOCSIS header */
177*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
178*2d9fd380Sjfb8856606 			/* Ethernet frame */
179*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
180*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0xD6, 0xE2, 0x70, 0x5C,
181*2d9fd380Sjfb8856606 			0xE6, 0x4D, 0xCC, 0x8C, 0x47, 0xB7, 0x09, 0xD6,
182*2d9fd380Sjfb8856606 			/* CRC */
183*2d9fd380Sjfb8856606 			0x54, 0x85, 0xF8, 0x32
184*2d9fd380Sjfb8856606 		},
185*2d9fd380Sjfb8856606 		.len = 34,
186*2d9fd380Sjfb8856606 		.cipher_offset = 18,
187*2d9fd380Sjfb8856606 		.crc_offset = 6,
188*2d9fd380Sjfb8856606 		.no_cipher = false,
189*2d9fd380Sjfb8856606 		.no_crc = false
190*2d9fd380Sjfb8856606 	}
191*2d9fd380Sjfb8856606 };
192*2d9fd380Sjfb8856606 
193*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_4 = {
194*2d9fd380Sjfb8856606 	.key = {
195*2d9fd380Sjfb8856606 		.data = {
196*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
197*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
198*2d9fd380Sjfb8856606 		},
199*2d9fd380Sjfb8856606 		.len = 16
200*2d9fd380Sjfb8856606 	},
201*2d9fd380Sjfb8856606 	.iv = {
202*2d9fd380Sjfb8856606 		.data = {
203*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
204*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
205*2d9fd380Sjfb8856606 		},
206*2d9fd380Sjfb8856606 		.len = 16
207*2d9fd380Sjfb8856606 	},
208*2d9fd380Sjfb8856606 	.plaintext = {
209*2d9fd380Sjfb8856606 		.data = {
210*2d9fd380Sjfb8856606 			/* DOCSIS header */
211*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
212*2d9fd380Sjfb8856606 			/* Ethernet frame */
213*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
214*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
215*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
216*2d9fd380Sjfb8856606 			0xAA,
217*2d9fd380Sjfb8856606 			/* CRC */
218*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
219*2d9fd380Sjfb8856606 		},
220*2d9fd380Sjfb8856606 		.len = 35,
221*2d9fd380Sjfb8856606 		.cipher_offset = 18,
222*2d9fd380Sjfb8856606 		.crc_offset = 6,
223*2d9fd380Sjfb8856606 		.no_cipher = false,
224*2d9fd380Sjfb8856606 		.no_crc = false
225*2d9fd380Sjfb8856606 	},
226*2d9fd380Sjfb8856606 	.ciphertext = {
227*2d9fd380Sjfb8856606 		.data = {
228*2d9fd380Sjfb8856606 			/* DOCSIS header */
229*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
230*2d9fd380Sjfb8856606 			/* Ethernet frame */
231*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
232*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x92, 0x6A, 0xC2, 0xDC,
233*2d9fd380Sjfb8856606 			0xEE, 0x3B, 0x31, 0xEC, 0x03, 0xDE, 0x95, 0x33,
234*2d9fd380Sjfb8856606 			0x5E,
235*2d9fd380Sjfb8856606 			/* CRC */
236*2d9fd380Sjfb8856606 			0xFE, 0x47, 0x3E, 0x22
237*2d9fd380Sjfb8856606 		},
238*2d9fd380Sjfb8856606 		.len = 35,
239*2d9fd380Sjfb8856606 		.cipher_offset = 18,
240*2d9fd380Sjfb8856606 		.crc_offset = 6,
241*2d9fd380Sjfb8856606 		.no_cipher = false,
242*2d9fd380Sjfb8856606 		.no_crc = false
243*2d9fd380Sjfb8856606 	}
244*2d9fd380Sjfb8856606 };
245*2d9fd380Sjfb8856606 
246*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_5 = {
247*2d9fd380Sjfb8856606 	.key = {
248*2d9fd380Sjfb8856606 		.data = {
249*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
250*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
251*2d9fd380Sjfb8856606 		},
252*2d9fd380Sjfb8856606 		.len = 16
253*2d9fd380Sjfb8856606 	},
254*2d9fd380Sjfb8856606 	.iv = {
255*2d9fd380Sjfb8856606 		.data = {
256*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
257*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
258*2d9fd380Sjfb8856606 		},
259*2d9fd380Sjfb8856606 		.len = 16
260*2d9fd380Sjfb8856606 	},
261*2d9fd380Sjfb8856606 	.plaintext = {
262*2d9fd380Sjfb8856606 		.data = {
263*2d9fd380Sjfb8856606 			/* DOCSIS header */
264*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
265*2d9fd380Sjfb8856606 			/* Ethernet frame */
266*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
267*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
268*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
269*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
270*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
271*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
272*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
273*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
274*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
275*2d9fd380Sjfb8856606 			/* CRC */
276*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
277*2d9fd380Sjfb8856606 		},
278*2d9fd380Sjfb8856606 		.len = 82,
279*2d9fd380Sjfb8856606 		.cipher_offset = 18,
280*2d9fd380Sjfb8856606 		.crc_offset = 6,
281*2d9fd380Sjfb8856606 		.no_cipher = false,
282*2d9fd380Sjfb8856606 		.no_crc = false
283*2d9fd380Sjfb8856606 	},
284*2d9fd380Sjfb8856606 	.ciphertext = {
285*2d9fd380Sjfb8856606 		.data = {
286*2d9fd380Sjfb8856606 			/* DOCSIS header */
287*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
288*2d9fd380Sjfb8856606 			/* Ethernet frame */
289*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
290*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x77, 0x74, 0x56, 0x05,
291*2d9fd380Sjfb8856606 			0xD1, 0x14, 0xA2, 0x8D, 0x2C, 0x9A, 0x11, 0xFC,
292*2d9fd380Sjfb8856606 			0x7D, 0xB0, 0xE7, 0x18, 0xCE, 0x75, 0x7C, 0x89,
293*2d9fd380Sjfb8856606 			0x14, 0x56, 0xE2, 0xF2, 0xB7, 0x47, 0x08, 0x27,
294*2d9fd380Sjfb8856606 			0xF7, 0x08, 0x7A, 0x13, 0x90, 0x81, 0x75, 0xB0,
295*2d9fd380Sjfb8856606 			0xC7, 0x91, 0x04, 0x83, 0xAD, 0x11, 0x46, 0x46,
296*2d9fd380Sjfb8856606 			0xF8, 0x54, 0x87, 0xA0, 0x42, 0xF3, 0x71, 0xA9,
297*2d9fd380Sjfb8856606 			0x8A, 0xCD, 0x59, 0x77, 0x67, 0x11, 0x1A, 0x87,
298*2d9fd380Sjfb8856606 			/* CRC */
299*2d9fd380Sjfb8856606 			0xAB, 0xED, 0x2C, 0x26
300*2d9fd380Sjfb8856606 		},
301*2d9fd380Sjfb8856606 		.len = 82,
302*2d9fd380Sjfb8856606 		.cipher_offset = 18,
303*2d9fd380Sjfb8856606 		.crc_offset = 6,
304*2d9fd380Sjfb8856606 		.no_cipher = false,
305*2d9fd380Sjfb8856606 		.no_crc = false
306*2d9fd380Sjfb8856606 	}
307*2d9fd380Sjfb8856606 };
308*2d9fd380Sjfb8856606 
309*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_6 = {
310*2d9fd380Sjfb8856606 	.key = {
311*2d9fd380Sjfb8856606 		.data = {
312*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
313*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
314*2d9fd380Sjfb8856606 		},
315*2d9fd380Sjfb8856606 		.len = 16
316*2d9fd380Sjfb8856606 	},
317*2d9fd380Sjfb8856606 	.iv = {
318*2d9fd380Sjfb8856606 		.data = {
319*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
320*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
321*2d9fd380Sjfb8856606 		},
322*2d9fd380Sjfb8856606 		.len = 16
323*2d9fd380Sjfb8856606 	},
324*2d9fd380Sjfb8856606 	.plaintext = {
325*2d9fd380Sjfb8856606 		.data = {
326*2d9fd380Sjfb8856606 			/* DOCSIS header */
327*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
328*2d9fd380Sjfb8856606 			/* Ethernet frame */
329*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
330*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
331*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
332*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
333*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
334*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
335*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
336*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
337*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
338*2d9fd380Sjfb8856606 			0xAA,
339*2d9fd380Sjfb8856606 			/* CRC */
340*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
341*2d9fd380Sjfb8856606 		},
342*2d9fd380Sjfb8856606 		.len = 83,
343*2d9fd380Sjfb8856606 		.cipher_offset = 18,
344*2d9fd380Sjfb8856606 		.crc_offset = 6,
345*2d9fd380Sjfb8856606 		.no_cipher = false,
346*2d9fd380Sjfb8856606 		.no_crc = false
347*2d9fd380Sjfb8856606 	},
348*2d9fd380Sjfb8856606 	.ciphertext = {
349*2d9fd380Sjfb8856606 		.data = {
350*2d9fd380Sjfb8856606 			/* DOCSIS header */
351*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
352*2d9fd380Sjfb8856606 			/* Ethernet frame */
353*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
354*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x77, 0x74, 0x56, 0x05,
355*2d9fd380Sjfb8856606 			0xD1, 0x14, 0xA2, 0x8D, 0x2C, 0x9A, 0x11, 0xFC,
356*2d9fd380Sjfb8856606 			0x7D, 0xB0, 0xE7, 0x18, 0xCE, 0x75, 0x7C, 0x89,
357*2d9fd380Sjfb8856606 			0x14, 0x56, 0xE2, 0xF2, 0xB7, 0x47, 0x08, 0x27,
358*2d9fd380Sjfb8856606 			0xF7, 0x08, 0x7A, 0x13, 0x90, 0x81, 0x75, 0xB0,
359*2d9fd380Sjfb8856606 			0xC7, 0x91, 0x04, 0x83, 0xAD, 0x11, 0x46, 0x46,
360*2d9fd380Sjfb8856606 			0xF8, 0x54, 0x87, 0xA0, 0xA4, 0x0C, 0xC2, 0xF0,
361*2d9fd380Sjfb8856606 			0x81, 0x49, 0xA8, 0xA6, 0x6C, 0x48, 0xEB, 0x1F,
362*2d9fd380Sjfb8856606 			0x4B,
363*2d9fd380Sjfb8856606 			/* CRC */
364*2d9fd380Sjfb8856606 			0x2F, 0xD4, 0x48, 0x18
365*2d9fd380Sjfb8856606 		},
366*2d9fd380Sjfb8856606 		.len = 83,
367*2d9fd380Sjfb8856606 		.cipher_offset = 18,
368*2d9fd380Sjfb8856606 		.crc_offset = 6,
369*2d9fd380Sjfb8856606 		.no_cipher = false,
370*2d9fd380Sjfb8856606 		.no_crc = false
371*2d9fd380Sjfb8856606 	}
372*2d9fd380Sjfb8856606 };
373*2d9fd380Sjfb8856606 
374*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_7 = {
375*2d9fd380Sjfb8856606 	.key = {
376*2d9fd380Sjfb8856606 		.data = {
377*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
378*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
379*2d9fd380Sjfb8856606 		},
380*2d9fd380Sjfb8856606 		.len = 16
381*2d9fd380Sjfb8856606 	},
382*2d9fd380Sjfb8856606 	.iv = {
383*2d9fd380Sjfb8856606 		.data = {
384*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
385*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
386*2d9fd380Sjfb8856606 		},
387*2d9fd380Sjfb8856606 		.len = 16
388*2d9fd380Sjfb8856606 	},
389*2d9fd380Sjfb8856606 	.plaintext = {
390*2d9fd380Sjfb8856606 		.data = {
391*2d9fd380Sjfb8856606 			/* DOCSIS header */
392*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
393*2d9fd380Sjfb8856606 			/* Ethernet frame */
394*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
395*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
396*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
397*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
398*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
399*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
400*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
401*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
402*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
403*2d9fd380Sjfb8856606 			0xAA,
404*2d9fd380Sjfb8856606 			/* CRC */
405*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
406*2d9fd380Sjfb8856606 		},
407*2d9fd380Sjfb8856606 		.len = 83,
408*2d9fd380Sjfb8856606 		.cipher_offset = 40,
409*2d9fd380Sjfb8856606 		.crc_offset = 6,
410*2d9fd380Sjfb8856606 		.no_cipher = false,
411*2d9fd380Sjfb8856606 		.no_crc = false
412*2d9fd380Sjfb8856606 	},
413*2d9fd380Sjfb8856606 	.ciphertext = {
414*2d9fd380Sjfb8856606 		.data = {
415*2d9fd380Sjfb8856606 			/* DOCSIS header */
416*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
417*2d9fd380Sjfb8856606 			/* Ethernet frame */
418*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
419*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
420*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
421*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
422*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0x3B, 0x9F, 0x72, 0x4C, 0xB5, 0x72,
423*2d9fd380Sjfb8856606 			0x3E, 0x56, 0x54, 0x49, 0x13, 0x53, 0xC4, 0xAA,
424*2d9fd380Sjfb8856606 			0xCD, 0xEA, 0x6A, 0x88, 0x99, 0x07, 0x86, 0xF4,
425*2d9fd380Sjfb8856606 			0xCF, 0x03, 0x4E, 0xDF, 0x65, 0x61, 0x47, 0x5B,
426*2d9fd380Sjfb8856606 			0x2F, 0x81, 0x09, 0x12, 0x9A, 0xC2, 0x24, 0x8C,
427*2d9fd380Sjfb8856606 			0x09,
428*2d9fd380Sjfb8856606 			/* CRC */
429*2d9fd380Sjfb8856606 			0x11, 0xB4, 0x06, 0x33
430*2d9fd380Sjfb8856606 		},
431*2d9fd380Sjfb8856606 		.len = 83,
432*2d9fd380Sjfb8856606 		.cipher_offset = 40,
433*2d9fd380Sjfb8856606 		.crc_offset = 6,
434*2d9fd380Sjfb8856606 		.no_cipher = false,
435*2d9fd380Sjfb8856606 		.no_crc = false
436*2d9fd380Sjfb8856606 	}
437*2d9fd380Sjfb8856606 };
438*2d9fd380Sjfb8856606 
439*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_8 = {
440*2d9fd380Sjfb8856606 	.key = {
441*2d9fd380Sjfb8856606 		.data = {
442*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
443*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
444*2d9fd380Sjfb8856606 		},
445*2d9fd380Sjfb8856606 		.len = 16
446*2d9fd380Sjfb8856606 	},
447*2d9fd380Sjfb8856606 	.iv = {
448*2d9fd380Sjfb8856606 		.data = {
449*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
450*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
451*2d9fd380Sjfb8856606 		},
452*2d9fd380Sjfb8856606 		.len = 16
453*2d9fd380Sjfb8856606 	},
454*2d9fd380Sjfb8856606 	.plaintext = {
455*2d9fd380Sjfb8856606 		.data = {
456*2d9fd380Sjfb8856606 			/* DOCSIS header */
457*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
458*2d9fd380Sjfb8856606 			/* Ethernet frame */
459*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
460*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
461*2d9fd380Sjfb8856606 			/* CRC */
462*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
463*2d9fd380Sjfb8856606 		},
464*2d9fd380Sjfb8856606 		.len = 24,
465*2d9fd380Sjfb8856606 		.cipher_offset = 18,
466*2d9fd380Sjfb8856606 		.crc_offset = 6,
467*2d9fd380Sjfb8856606 		.no_cipher = false,
468*2d9fd380Sjfb8856606 		.no_crc = true
469*2d9fd380Sjfb8856606 	},
470*2d9fd380Sjfb8856606 	.ciphertext = {
471*2d9fd380Sjfb8856606 		.data = {
472*2d9fd380Sjfb8856606 			/* DOCSIS header */
473*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
474*2d9fd380Sjfb8856606 			/* Ethernet frame */
475*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
476*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x7A, 0xF0,
477*2d9fd380Sjfb8856606 			/* CRC */
478*2d9fd380Sjfb8856606 			0x8A, 0x0F, 0x74, 0xE8
479*2d9fd380Sjfb8856606 		},
480*2d9fd380Sjfb8856606 		.len = 24,
481*2d9fd380Sjfb8856606 		.cipher_offset = 18,
482*2d9fd380Sjfb8856606 		.crc_offset = 6,
483*2d9fd380Sjfb8856606 		.no_cipher = false,
484*2d9fd380Sjfb8856606 		.no_crc = true
485*2d9fd380Sjfb8856606 	}
486*2d9fd380Sjfb8856606 };
487*2d9fd380Sjfb8856606 
488*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_9 = {
489*2d9fd380Sjfb8856606 	.key = {
490*2d9fd380Sjfb8856606 		.data = {
491*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
492*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
493*2d9fd380Sjfb8856606 		},
494*2d9fd380Sjfb8856606 		.len = 16
495*2d9fd380Sjfb8856606 	},
496*2d9fd380Sjfb8856606 	.iv = {
497*2d9fd380Sjfb8856606 		.data = {
498*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
499*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
500*2d9fd380Sjfb8856606 		},
501*2d9fd380Sjfb8856606 		.len = 16
502*2d9fd380Sjfb8856606 	},
503*2d9fd380Sjfb8856606 	.plaintext = {
504*2d9fd380Sjfb8856606 		.data = {
505*2d9fd380Sjfb8856606 			/* DOCSIS header */
506*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
507*2d9fd380Sjfb8856606 			/* Ethernet frame */
508*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
509*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
510*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
511*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
512*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
513*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
514*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
515*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
516*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
517*2d9fd380Sjfb8856606 			0xAA,
518*2d9fd380Sjfb8856606 			/* CRC */
519*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
520*2d9fd380Sjfb8856606 		},
521*2d9fd380Sjfb8856606 		.len = 83,
522*2d9fd380Sjfb8856606 		.cipher_offset = 40,
523*2d9fd380Sjfb8856606 		.crc_offset = 6,
524*2d9fd380Sjfb8856606 		.no_cipher = false,
525*2d9fd380Sjfb8856606 		.no_crc = true
526*2d9fd380Sjfb8856606 	},
527*2d9fd380Sjfb8856606 	.ciphertext = {
528*2d9fd380Sjfb8856606 		.data = {
529*2d9fd380Sjfb8856606 			/* DOCSIS header */
530*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
531*2d9fd380Sjfb8856606 			/* Ethernet frame */
532*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
533*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
534*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
535*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
536*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0x3B, 0x9F, 0x72, 0x4C, 0xB5, 0x72,
537*2d9fd380Sjfb8856606 			0x3E, 0x56, 0x54, 0x49, 0x13, 0x53, 0xC4, 0xAA,
538*2d9fd380Sjfb8856606 			0xCD, 0xEA, 0x6A, 0x88, 0x99, 0x07, 0x86, 0xF4,
539*2d9fd380Sjfb8856606 			0xCF, 0x03, 0x4E, 0xDF, 0x65, 0x61, 0x47, 0x5B,
540*2d9fd380Sjfb8856606 			0x2F, 0x81, 0x09, 0x12, 0x9A, 0xC2, 0x24, 0x8C,
541*2d9fd380Sjfb8856606 			0x09,
542*2d9fd380Sjfb8856606 			/* CRC */
543*2d9fd380Sjfb8856606 			0x5D, 0x2B, 0x12, 0xF4
544*2d9fd380Sjfb8856606 		},
545*2d9fd380Sjfb8856606 		.len = 83,
546*2d9fd380Sjfb8856606 		.cipher_offset = 40,
547*2d9fd380Sjfb8856606 		.crc_offset = 6,
548*2d9fd380Sjfb8856606 		.no_cipher = false,
549*2d9fd380Sjfb8856606 		.no_crc = true
550*2d9fd380Sjfb8856606 	}
551*2d9fd380Sjfb8856606 };
552*2d9fd380Sjfb8856606 
553*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_10 = {
554*2d9fd380Sjfb8856606 	.key = {
555*2d9fd380Sjfb8856606 		.data = {
556*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
557*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
558*2d9fd380Sjfb8856606 		},
559*2d9fd380Sjfb8856606 		.len = 16
560*2d9fd380Sjfb8856606 	},
561*2d9fd380Sjfb8856606 	.iv = {
562*2d9fd380Sjfb8856606 		.data = {
563*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
564*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
565*2d9fd380Sjfb8856606 		},
566*2d9fd380Sjfb8856606 		.len = 16
567*2d9fd380Sjfb8856606 	},
568*2d9fd380Sjfb8856606 	.plaintext = {
569*2d9fd380Sjfb8856606 		.data = {
570*2d9fd380Sjfb8856606 			/* DOCSIS header */
571*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
572*2d9fd380Sjfb8856606 			/* Ethernet frame */
573*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
574*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
575*2d9fd380Sjfb8856606 			/* CRC */
576*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
577*2d9fd380Sjfb8856606 		},
578*2d9fd380Sjfb8856606 		.len = 24,
579*2d9fd380Sjfb8856606 		.cipher_offset = 18,
580*2d9fd380Sjfb8856606 		.crc_offset = 6,
581*2d9fd380Sjfb8856606 		.no_cipher = true,
582*2d9fd380Sjfb8856606 		.no_crc = false
583*2d9fd380Sjfb8856606 	},
584*2d9fd380Sjfb8856606 	.ciphertext = {
585*2d9fd380Sjfb8856606 		.data = {
586*2d9fd380Sjfb8856606 			/* DOCSIS header */
587*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
588*2d9fd380Sjfb8856606 			/* Ethernet frame */
589*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
590*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
591*2d9fd380Sjfb8856606 			/* CRC */
592*2d9fd380Sjfb8856606 			0x14, 0x08, 0xE8, 0x55
593*2d9fd380Sjfb8856606 		},
594*2d9fd380Sjfb8856606 		.len = 24,
595*2d9fd380Sjfb8856606 		.cipher_offset = 18,
596*2d9fd380Sjfb8856606 		.crc_offset = 6,
597*2d9fd380Sjfb8856606 		.no_cipher = true,
598*2d9fd380Sjfb8856606 		.no_crc = false
599*2d9fd380Sjfb8856606 	}
600*2d9fd380Sjfb8856606 };
601*2d9fd380Sjfb8856606 
602*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_11 = {
603*2d9fd380Sjfb8856606 	.key = {
604*2d9fd380Sjfb8856606 		.data = {
605*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
606*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
607*2d9fd380Sjfb8856606 		},
608*2d9fd380Sjfb8856606 		.len = 16
609*2d9fd380Sjfb8856606 	},
610*2d9fd380Sjfb8856606 	.iv = {
611*2d9fd380Sjfb8856606 		.data = {
612*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
613*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
614*2d9fd380Sjfb8856606 		},
615*2d9fd380Sjfb8856606 		.len = 16
616*2d9fd380Sjfb8856606 	},
617*2d9fd380Sjfb8856606 	.plaintext = {
618*2d9fd380Sjfb8856606 		.data = {
619*2d9fd380Sjfb8856606 			/* DOCSIS header */
620*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
621*2d9fd380Sjfb8856606 			/* Ethernet frame */
622*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
623*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
624*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
625*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
626*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
627*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
628*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
629*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
630*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
631*2d9fd380Sjfb8856606 			0xAA,
632*2d9fd380Sjfb8856606 			/* CRC */
633*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
634*2d9fd380Sjfb8856606 		},
635*2d9fd380Sjfb8856606 		.len = 83,
636*2d9fd380Sjfb8856606 		.cipher_offset = 40,
637*2d9fd380Sjfb8856606 		.crc_offset = 6,
638*2d9fd380Sjfb8856606 		.no_cipher = true,
639*2d9fd380Sjfb8856606 		.no_crc = false
640*2d9fd380Sjfb8856606 	},
641*2d9fd380Sjfb8856606 	.ciphertext = {
642*2d9fd380Sjfb8856606 		.data = {
643*2d9fd380Sjfb8856606 			/* DOCSIS header */
644*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
645*2d9fd380Sjfb8856606 			/* Ethernet frame */
646*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
647*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
648*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
649*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
650*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
651*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
652*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
653*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
654*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
655*2d9fd380Sjfb8856606 			0xAA,
656*2d9fd380Sjfb8856606 			/* CRC */
657*2d9fd380Sjfb8856606 			0xB3, 0x60, 0xEB, 0x38
658*2d9fd380Sjfb8856606 		},
659*2d9fd380Sjfb8856606 		.len = 83,
660*2d9fd380Sjfb8856606 		.cipher_offset = 40,
661*2d9fd380Sjfb8856606 		.crc_offset = 6,
662*2d9fd380Sjfb8856606 		.no_cipher = true,
663*2d9fd380Sjfb8856606 		.no_crc = false
664*2d9fd380Sjfb8856606 	}
665*2d9fd380Sjfb8856606 };
666*2d9fd380Sjfb8856606 
667*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_12 = {
668*2d9fd380Sjfb8856606 	.key = {
669*2d9fd380Sjfb8856606 		.data = {
670*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
671*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
672*2d9fd380Sjfb8856606 		},
673*2d9fd380Sjfb8856606 		.len = 16
674*2d9fd380Sjfb8856606 	},
675*2d9fd380Sjfb8856606 	.iv = {
676*2d9fd380Sjfb8856606 		.data = {
677*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
678*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
679*2d9fd380Sjfb8856606 		},
680*2d9fd380Sjfb8856606 		.len = 16
681*2d9fd380Sjfb8856606 	},
682*2d9fd380Sjfb8856606 	.plaintext = {
683*2d9fd380Sjfb8856606 		.data = {
684*2d9fd380Sjfb8856606 			/* DOCSIS header */
685*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
686*2d9fd380Sjfb8856606 			/* Ethernet frame */
687*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
688*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
689*2d9fd380Sjfb8856606 			/* CRC */
690*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
691*2d9fd380Sjfb8856606 		},
692*2d9fd380Sjfb8856606 		.len = 24,
693*2d9fd380Sjfb8856606 		.cipher_offset = 18,
694*2d9fd380Sjfb8856606 		.crc_offset = 6,
695*2d9fd380Sjfb8856606 		.no_cipher = true,
696*2d9fd380Sjfb8856606 		.no_crc = true
697*2d9fd380Sjfb8856606 	},
698*2d9fd380Sjfb8856606 	.ciphertext = {
699*2d9fd380Sjfb8856606 		.data = {
700*2d9fd380Sjfb8856606 			/* DOCSIS header */
701*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
702*2d9fd380Sjfb8856606 			/* Ethernet frame */
703*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
704*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
705*2d9fd380Sjfb8856606 			/* CRC */
706*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
707*2d9fd380Sjfb8856606 		},
708*2d9fd380Sjfb8856606 		.len = 24,
709*2d9fd380Sjfb8856606 		.cipher_offset = 18,
710*2d9fd380Sjfb8856606 		.crc_offset = 6,
711*2d9fd380Sjfb8856606 		.no_cipher = true,
712*2d9fd380Sjfb8856606 		.no_crc = true
713*2d9fd380Sjfb8856606 	}
714*2d9fd380Sjfb8856606 };
715*2d9fd380Sjfb8856606 
716*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_13 = {
717*2d9fd380Sjfb8856606 	.key = {
718*2d9fd380Sjfb8856606 		.data = {
719*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
720*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
721*2d9fd380Sjfb8856606 		},
722*2d9fd380Sjfb8856606 		.len = 16
723*2d9fd380Sjfb8856606 	},
724*2d9fd380Sjfb8856606 	.iv = {
725*2d9fd380Sjfb8856606 		.data = {
726*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
727*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
728*2d9fd380Sjfb8856606 		},
729*2d9fd380Sjfb8856606 		.len = 16
730*2d9fd380Sjfb8856606 	},
731*2d9fd380Sjfb8856606 	.plaintext = {
732*2d9fd380Sjfb8856606 		.data = {
733*2d9fd380Sjfb8856606 			/* DOCSIS header */
734*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
735*2d9fd380Sjfb8856606 			/* Ethernet frame */
736*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
737*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
738*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
739*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
740*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
741*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
742*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
743*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
744*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
745*2d9fd380Sjfb8856606 			0xAA,
746*2d9fd380Sjfb8856606 			/* CRC */
747*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
748*2d9fd380Sjfb8856606 		},
749*2d9fd380Sjfb8856606 		.len = 83,
750*2d9fd380Sjfb8856606 		.cipher_offset = 40,
751*2d9fd380Sjfb8856606 		.crc_offset = 6,
752*2d9fd380Sjfb8856606 		.no_cipher = true,
753*2d9fd380Sjfb8856606 		.no_crc = true
754*2d9fd380Sjfb8856606 	},
755*2d9fd380Sjfb8856606 	.ciphertext = {
756*2d9fd380Sjfb8856606 		.data = {
757*2d9fd380Sjfb8856606 			/* DOCSIS header */
758*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
759*2d9fd380Sjfb8856606 			/* Ethernet frame */
760*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
761*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
762*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
763*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
764*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
765*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
766*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
767*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
768*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
769*2d9fd380Sjfb8856606 			0xAA,
770*2d9fd380Sjfb8856606 			/* CRC */
771*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
772*2d9fd380Sjfb8856606 		},
773*2d9fd380Sjfb8856606 		.len = 83,
774*2d9fd380Sjfb8856606 		.cipher_offset = 40,
775*2d9fd380Sjfb8856606 		.crc_offset = 6,
776*2d9fd380Sjfb8856606 		.no_cipher = true,
777*2d9fd380Sjfb8856606 		.no_crc = true
778*2d9fd380Sjfb8856606 	}
779*2d9fd380Sjfb8856606 };
780*2d9fd380Sjfb8856606 
781*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_14 = {
782*2d9fd380Sjfb8856606 	.key = {
783*2d9fd380Sjfb8856606 		.data = {
784*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
785*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
786*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
787*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
788*2d9fd380Sjfb8856606 		},
789*2d9fd380Sjfb8856606 		.len = 32
790*2d9fd380Sjfb8856606 	},
791*2d9fd380Sjfb8856606 	.iv = {
792*2d9fd380Sjfb8856606 		.data = {
793*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
794*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
795*2d9fd380Sjfb8856606 		},
796*2d9fd380Sjfb8856606 		.len = 16
797*2d9fd380Sjfb8856606 	},
798*2d9fd380Sjfb8856606 	.plaintext = {
799*2d9fd380Sjfb8856606 		.data = {
800*2d9fd380Sjfb8856606 			/* DOCSIS header */
801*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
802*2d9fd380Sjfb8856606 			/* Ethernet frame */
803*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
804*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
805*2d9fd380Sjfb8856606 			/* CRC */
806*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
807*2d9fd380Sjfb8856606 		},
808*2d9fd380Sjfb8856606 		.len = 24,
809*2d9fd380Sjfb8856606 		.cipher_offset = 18,
810*2d9fd380Sjfb8856606 		.crc_offset = 6,
811*2d9fd380Sjfb8856606 		.no_cipher = false,
812*2d9fd380Sjfb8856606 		.no_crc = false
813*2d9fd380Sjfb8856606 	},
814*2d9fd380Sjfb8856606 	.ciphertext = {
815*2d9fd380Sjfb8856606 		.data = {
816*2d9fd380Sjfb8856606 			/* DOCSIS header */
817*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
818*2d9fd380Sjfb8856606 			/* Ethernet frame */
819*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
820*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x6A, 0x86,
821*2d9fd380Sjfb8856606 			/* CRC */
822*2d9fd380Sjfb8856606 			0x9B, 0xB3, 0x1A, 0x26
823*2d9fd380Sjfb8856606 		},
824*2d9fd380Sjfb8856606 		.len = 24,
825*2d9fd380Sjfb8856606 		.cipher_offset = 18,
826*2d9fd380Sjfb8856606 		.crc_offset = 6,
827*2d9fd380Sjfb8856606 		.no_cipher = false,
828*2d9fd380Sjfb8856606 		.no_crc = false
829*2d9fd380Sjfb8856606 	}
830*2d9fd380Sjfb8856606 };
831*2d9fd380Sjfb8856606 
832*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_15 = {
833*2d9fd380Sjfb8856606 	.key = {
834*2d9fd380Sjfb8856606 		.data = {
835*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
836*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
837*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
838*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
839*2d9fd380Sjfb8856606 		},
840*2d9fd380Sjfb8856606 		.len = 32
841*2d9fd380Sjfb8856606 	},
842*2d9fd380Sjfb8856606 	.iv = {
843*2d9fd380Sjfb8856606 		.data = {
844*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
845*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
846*2d9fd380Sjfb8856606 		},
847*2d9fd380Sjfb8856606 		.len = 16
848*2d9fd380Sjfb8856606 	},
849*2d9fd380Sjfb8856606 	.plaintext = {
850*2d9fd380Sjfb8856606 		.data = {
851*2d9fd380Sjfb8856606 			/* DOCSIS header */
852*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
853*2d9fd380Sjfb8856606 			/* Ethernet frame */
854*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
855*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA,
856*2d9fd380Sjfb8856606 			/* CRC */
857*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
858*2d9fd380Sjfb8856606 		},
859*2d9fd380Sjfb8856606 		.len = 25,
860*2d9fd380Sjfb8856606 		.cipher_offset = 18,
861*2d9fd380Sjfb8856606 		.crc_offset = 6,
862*2d9fd380Sjfb8856606 		.no_cipher = false,
863*2d9fd380Sjfb8856606 		.no_crc = false
864*2d9fd380Sjfb8856606 	},
865*2d9fd380Sjfb8856606 	.ciphertext = {
866*2d9fd380Sjfb8856606 		.data = {
867*2d9fd380Sjfb8856606 			/* DOCSIS header */
868*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
869*2d9fd380Sjfb8856606 			/* Ethernet frame */
870*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
871*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x6A, 0x86, 0x25,
872*2d9fd380Sjfb8856606 			/* CRC */
873*2d9fd380Sjfb8856606 			0xB5, 0x6B, 0xFD, 0xCB
874*2d9fd380Sjfb8856606 		},
875*2d9fd380Sjfb8856606 		.len = 25,
876*2d9fd380Sjfb8856606 		.cipher_offset = 18,
877*2d9fd380Sjfb8856606 		.crc_offset = 6,
878*2d9fd380Sjfb8856606 		.no_cipher = false,
879*2d9fd380Sjfb8856606 		.no_crc = false
880*2d9fd380Sjfb8856606 	}
881*2d9fd380Sjfb8856606 };
882*2d9fd380Sjfb8856606 
883*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_16 = {
884*2d9fd380Sjfb8856606 	.key = {
885*2d9fd380Sjfb8856606 		.data = {
886*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
887*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
888*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
889*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
890*2d9fd380Sjfb8856606 		},
891*2d9fd380Sjfb8856606 		.len = 32
892*2d9fd380Sjfb8856606 	},
893*2d9fd380Sjfb8856606 	.iv = {
894*2d9fd380Sjfb8856606 		.data = {
895*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
896*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
897*2d9fd380Sjfb8856606 		},
898*2d9fd380Sjfb8856606 		.len = 16
899*2d9fd380Sjfb8856606 	},
900*2d9fd380Sjfb8856606 	.plaintext = {
901*2d9fd380Sjfb8856606 		.data = {
902*2d9fd380Sjfb8856606 			/* DOCSIS header */
903*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
904*2d9fd380Sjfb8856606 			/* Ethernet frame */
905*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
906*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
907*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
908*2d9fd380Sjfb8856606 			/* CRC */
909*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
910*2d9fd380Sjfb8856606 		},
911*2d9fd380Sjfb8856606 		.len = 34,
912*2d9fd380Sjfb8856606 		.cipher_offset = 18,
913*2d9fd380Sjfb8856606 		.crc_offset = 6,
914*2d9fd380Sjfb8856606 		.no_cipher = false,
915*2d9fd380Sjfb8856606 		.no_crc = false
916*2d9fd380Sjfb8856606 	},
917*2d9fd380Sjfb8856606 	.ciphertext = {
918*2d9fd380Sjfb8856606 		.data = {
919*2d9fd380Sjfb8856606 			/* DOCSIS header */
920*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
921*2d9fd380Sjfb8856606 			/* Ethernet frame */
922*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
923*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0xF6, 0xA1, 0x2E, 0x0A,
924*2d9fd380Sjfb8856606 			0xBB, 0x27, 0x82, 0x4F, 0x99, 0x0A, 0xE2, 0x3F,
925*2d9fd380Sjfb8856606 			/* CRC */
926*2d9fd380Sjfb8856606 			0xEB, 0xB7, 0x89, 0xB0
927*2d9fd380Sjfb8856606 		},
928*2d9fd380Sjfb8856606 		.len = 34,
929*2d9fd380Sjfb8856606 		.cipher_offset = 18,
930*2d9fd380Sjfb8856606 		.crc_offset = 6,
931*2d9fd380Sjfb8856606 		.no_cipher = false,
932*2d9fd380Sjfb8856606 		.no_crc = false
933*2d9fd380Sjfb8856606 	}
934*2d9fd380Sjfb8856606 };
935*2d9fd380Sjfb8856606 
936*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_17 = {
937*2d9fd380Sjfb8856606 	.key = {
938*2d9fd380Sjfb8856606 		.data = {
939*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
940*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
941*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
942*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
943*2d9fd380Sjfb8856606 		},
944*2d9fd380Sjfb8856606 		.len = 32
945*2d9fd380Sjfb8856606 	},
946*2d9fd380Sjfb8856606 	.iv = {
947*2d9fd380Sjfb8856606 		.data = {
948*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
949*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
950*2d9fd380Sjfb8856606 		},
951*2d9fd380Sjfb8856606 		.len = 16
952*2d9fd380Sjfb8856606 	},
953*2d9fd380Sjfb8856606 	.plaintext = {
954*2d9fd380Sjfb8856606 		.data = {
955*2d9fd380Sjfb8856606 			/* DOCSIS header */
956*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
957*2d9fd380Sjfb8856606 			/* Ethernet frame */
958*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
959*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
960*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
961*2d9fd380Sjfb8856606 			0xAA,
962*2d9fd380Sjfb8856606 			/* CRC */
963*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
964*2d9fd380Sjfb8856606 		},
965*2d9fd380Sjfb8856606 		.len = 35,
966*2d9fd380Sjfb8856606 		.cipher_offset = 18,
967*2d9fd380Sjfb8856606 		.crc_offset = 6,
968*2d9fd380Sjfb8856606 		.no_cipher = false,
969*2d9fd380Sjfb8856606 		.no_crc = false
970*2d9fd380Sjfb8856606 	},
971*2d9fd380Sjfb8856606 	.ciphertext = {
972*2d9fd380Sjfb8856606 		.data = {
973*2d9fd380Sjfb8856606 			/* DOCSIS header */
974*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
975*2d9fd380Sjfb8856606 			/* Ethernet frame */
976*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
977*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0xE1, 0x30, 0x38, 0xC8,
978*2d9fd380Sjfb8856606 			0xC4, 0x59, 0x8D, 0x43, 0x9A, 0xBE, 0xBE, 0x73,
979*2d9fd380Sjfb8856606 			0xC3,
980*2d9fd380Sjfb8856606 			/*CRC */
981*2d9fd380Sjfb8856606 			0x8C, 0xE1, 0x89, 0x8B
982*2d9fd380Sjfb8856606 		},
983*2d9fd380Sjfb8856606 		.len = 35,
984*2d9fd380Sjfb8856606 		.cipher_offset = 18,
985*2d9fd380Sjfb8856606 		.crc_offset = 6,
986*2d9fd380Sjfb8856606 		.no_cipher = false,
987*2d9fd380Sjfb8856606 		.no_crc = false
988*2d9fd380Sjfb8856606 	}
989*2d9fd380Sjfb8856606 };
990*2d9fd380Sjfb8856606 
991*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_18 = {
992*2d9fd380Sjfb8856606 	.key = {
993*2d9fd380Sjfb8856606 		.data = {
994*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
995*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
996*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
997*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
998*2d9fd380Sjfb8856606 		},
999*2d9fd380Sjfb8856606 		.len = 32
1000*2d9fd380Sjfb8856606 	},
1001*2d9fd380Sjfb8856606 	.iv = {
1002*2d9fd380Sjfb8856606 		.data = {
1003*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1004*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1005*2d9fd380Sjfb8856606 		},
1006*2d9fd380Sjfb8856606 		.len = 16
1007*2d9fd380Sjfb8856606 	},
1008*2d9fd380Sjfb8856606 	.plaintext = {
1009*2d9fd380Sjfb8856606 		.data = {
1010*2d9fd380Sjfb8856606 			/* DOCSIS header */
1011*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1012*2d9fd380Sjfb8856606 			/* Ethernet frame */
1013*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1014*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1015*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1016*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1017*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1018*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1019*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1020*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1021*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1022*2d9fd380Sjfb8856606 			/* CRC */
1023*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1024*2d9fd380Sjfb8856606 		},
1025*2d9fd380Sjfb8856606 		.len = 82,
1026*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1027*2d9fd380Sjfb8856606 		.crc_offset = 6,
1028*2d9fd380Sjfb8856606 		.no_cipher = false,
1029*2d9fd380Sjfb8856606 		.no_crc = false
1030*2d9fd380Sjfb8856606 	},
1031*2d9fd380Sjfb8856606 	.ciphertext = {
1032*2d9fd380Sjfb8856606 		.data = {
1033*2d9fd380Sjfb8856606 			/* DOCSIS header */
1034*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1035*2d9fd380Sjfb8856606 			/* Ethernet frame */
1036*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1037*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0xE9, 0x12, 0x3B, 0x12,
1038*2d9fd380Sjfb8856606 			0x36, 0x56, 0x95, 0xA6, 0x97, 0xF1, 0x74, 0x68,
1039*2d9fd380Sjfb8856606 			0xBA, 0x58, 0x77, 0xEA, 0x43, 0x11, 0x85, 0xD4,
1040*2d9fd380Sjfb8856606 			0x7A, 0xF8, 0x1C, 0x11, 0x50, 0xD1, 0xF1, 0xBD,
1041*2d9fd380Sjfb8856606 			0x15, 0x4D, 0x99, 0xB5, 0x39, 0x74, 0x84, 0xDF,
1042*2d9fd380Sjfb8856606 			0xD4, 0x8B, 0xDC, 0xB7, 0x58, 0x1B, 0x22, 0xAB,
1043*2d9fd380Sjfb8856606 			0xF3, 0x29, 0xC6, 0xCB, 0x26, 0x07, 0x36, 0x6B,
1044*2d9fd380Sjfb8856606 			0x8C, 0xAC, 0x6E, 0x99, 0x37, 0x94, 0xDF, 0x31,
1045*2d9fd380Sjfb8856606 			/* CRC */
1046*2d9fd380Sjfb8856606 			0xA1, 0x7D, 0x70, 0xBB
1047*2d9fd380Sjfb8856606 		},
1048*2d9fd380Sjfb8856606 		.len = 82,
1049*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1050*2d9fd380Sjfb8856606 		.crc_offset = 6,
1051*2d9fd380Sjfb8856606 		.no_cipher = false,
1052*2d9fd380Sjfb8856606 		.no_crc = false
1053*2d9fd380Sjfb8856606 	}
1054*2d9fd380Sjfb8856606 };
1055*2d9fd380Sjfb8856606 
1056*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_19 = {
1057*2d9fd380Sjfb8856606 	.key = {
1058*2d9fd380Sjfb8856606 		.data = {
1059*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1060*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1061*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1062*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1063*2d9fd380Sjfb8856606 		},
1064*2d9fd380Sjfb8856606 		.len = 32
1065*2d9fd380Sjfb8856606 	},
1066*2d9fd380Sjfb8856606 	.iv = {
1067*2d9fd380Sjfb8856606 		.data = {
1068*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1069*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1070*2d9fd380Sjfb8856606 		},
1071*2d9fd380Sjfb8856606 		.len = 16
1072*2d9fd380Sjfb8856606 	},
1073*2d9fd380Sjfb8856606 	.plaintext = {
1074*2d9fd380Sjfb8856606 		.data = {
1075*2d9fd380Sjfb8856606 			/* DOCSIS header */
1076*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1077*2d9fd380Sjfb8856606 			/* Ethernet frame */
1078*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1079*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1080*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1081*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1082*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1083*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1084*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1085*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1086*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1087*2d9fd380Sjfb8856606 			0xAA,
1088*2d9fd380Sjfb8856606 			/* CRC */
1089*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1090*2d9fd380Sjfb8856606 		},
1091*2d9fd380Sjfb8856606 		.len = 83,
1092*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1093*2d9fd380Sjfb8856606 		.crc_offset = 6,
1094*2d9fd380Sjfb8856606 		.no_cipher = false,
1095*2d9fd380Sjfb8856606 		.no_crc = false
1096*2d9fd380Sjfb8856606 	},
1097*2d9fd380Sjfb8856606 	.ciphertext = {
1098*2d9fd380Sjfb8856606 		.data = {
1099*2d9fd380Sjfb8856606 			/* DOCSIS header */
1100*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1101*2d9fd380Sjfb8856606 			/* Ethernet frame */
1102*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1103*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0xE9, 0x12, 0x3B, 0x12,
1104*2d9fd380Sjfb8856606 			0x36, 0x56, 0x95, 0xA6, 0x97, 0xF1, 0x74, 0x68,
1105*2d9fd380Sjfb8856606 			0xBA, 0x58, 0x77, 0xEA, 0x43, 0x11, 0x85, 0xD4,
1106*2d9fd380Sjfb8856606 			0x7A, 0xF8, 0x1C, 0x11, 0x50, 0xD1, 0xF1, 0xBD,
1107*2d9fd380Sjfb8856606 			0x15, 0x4D, 0x99, 0xB5, 0x39, 0x74, 0x84, 0xDF,
1108*2d9fd380Sjfb8856606 			0xD4, 0x8B, 0xDC, 0xB7, 0x58, 0x1B, 0x22, 0xAB,
1109*2d9fd380Sjfb8856606 			0xF3, 0x29, 0xC6, 0xCB, 0x13, 0xED, 0x08, 0xF5,
1110*2d9fd380Sjfb8856606 			0x1B, 0x4B, 0xD8, 0x79, 0x93, 0x26, 0x69, 0x03,
1111*2d9fd380Sjfb8856606 			0x23,
1112*2d9fd380Sjfb8856606 			/* CRC */
1113*2d9fd380Sjfb8856606 			0xC8, 0x8E, 0x02, 0x3A
1114*2d9fd380Sjfb8856606 		},
1115*2d9fd380Sjfb8856606 		.len = 83,
1116*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1117*2d9fd380Sjfb8856606 		.crc_offset = 6,
1118*2d9fd380Sjfb8856606 		.no_cipher = false,
1119*2d9fd380Sjfb8856606 		.no_crc = false
1120*2d9fd380Sjfb8856606 	}
1121*2d9fd380Sjfb8856606 };
1122*2d9fd380Sjfb8856606 
1123*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_20 = {
1124*2d9fd380Sjfb8856606 	.key = {
1125*2d9fd380Sjfb8856606 		.data = {
1126*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1127*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1128*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1129*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1130*2d9fd380Sjfb8856606 		},
1131*2d9fd380Sjfb8856606 		.len = 32
1132*2d9fd380Sjfb8856606 	},
1133*2d9fd380Sjfb8856606 	.iv = {
1134*2d9fd380Sjfb8856606 		.data = {
1135*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1136*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1137*2d9fd380Sjfb8856606 		},
1138*2d9fd380Sjfb8856606 		.len = 16
1139*2d9fd380Sjfb8856606 	},
1140*2d9fd380Sjfb8856606 	.plaintext = {
1141*2d9fd380Sjfb8856606 		.data = {
1142*2d9fd380Sjfb8856606 			/* DOCSIS header */
1143*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1144*2d9fd380Sjfb8856606 			/* Ethernet frame */
1145*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1146*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1147*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1148*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1149*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1150*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1151*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1152*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1153*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1154*2d9fd380Sjfb8856606 			0xAA,
1155*2d9fd380Sjfb8856606 			/* CRC */
1156*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1157*2d9fd380Sjfb8856606 		},
1158*2d9fd380Sjfb8856606 		.len = 83,
1159*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1160*2d9fd380Sjfb8856606 		.crc_offset = 6,
1161*2d9fd380Sjfb8856606 		.no_cipher = false,
1162*2d9fd380Sjfb8856606 		.no_crc = false
1163*2d9fd380Sjfb8856606 	},
1164*2d9fd380Sjfb8856606 	.ciphertext = {
1165*2d9fd380Sjfb8856606 		.data = {
1166*2d9fd380Sjfb8856606 			/* DOCSIS header */
1167*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1168*2d9fd380Sjfb8856606 			/* Ethernet frame */
1169*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1170*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1171*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1172*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1173*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0x54, 0xB4, 0x55, 0x68, 0x06, 0xBF,
1174*2d9fd380Sjfb8856606 			0x00, 0x8B, 0x5F, 0x2C, 0x10, 0x4A, 0xBF, 0x5A,
1175*2d9fd380Sjfb8856606 			0xF2, 0x20, 0xD9, 0x77, 0x7F, 0x2D, 0x2B, 0x11,
1176*2d9fd380Sjfb8856606 			0xAC, 0xAF, 0x21, 0x36, 0xD2, 0xD4, 0x80, 0xF2,
1177*2d9fd380Sjfb8856606 			0x4F, 0x14, 0xA0, 0x3A, 0x66, 0xE5, 0xC5, 0xE2,
1178*2d9fd380Sjfb8856606 			0x15,
1179*2d9fd380Sjfb8856606 			/* CRC */
1180*2d9fd380Sjfb8856606 			0x0C, 0x89, 0x76, 0x26
1181*2d9fd380Sjfb8856606 		},
1182*2d9fd380Sjfb8856606 		.len = 83,
1183*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1184*2d9fd380Sjfb8856606 		.crc_offset = 6,
1185*2d9fd380Sjfb8856606 		.no_cipher = false,
1186*2d9fd380Sjfb8856606 		.no_crc = false
1187*2d9fd380Sjfb8856606 	}
1188*2d9fd380Sjfb8856606 };
1189*2d9fd380Sjfb8856606 
1190*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_21 = {
1191*2d9fd380Sjfb8856606 	.key = {
1192*2d9fd380Sjfb8856606 		.data = {
1193*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1194*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1195*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1196*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1197*2d9fd380Sjfb8856606 		},
1198*2d9fd380Sjfb8856606 		.len = 32
1199*2d9fd380Sjfb8856606 	},
1200*2d9fd380Sjfb8856606 	.iv = {
1201*2d9fd380Sjfb8856606 		.data = {
1202*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1203*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1204*2d9fd380Sjfb8856606 		},
1205*2d9fd380Sjfb8856606 		.len = 16
1206*2d9fd380Sjfb8856606 	},
1207*2d9fd380Sjfb8856606 	.plaintext = {
1208*2d9fd380Sjfb8856606 		.data = {
1209*2d9fd380Sjfb8856606 			/* DOCSIS header */
1210*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1211*2d9fd380Sjfb8856606 			/* Ethernet frame */
1212*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1213*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
1214*2d9fd380Sjfb8856606 			/* CRC */
1215*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1216*2d9fd380Sjfb8856606 		},
1217*2d9fd380Sjfb8856606 		.len = 24,
1218*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1219*2d9fd380Sjfb8856606 		.crc_offset = 6,
1220*2d9fd380Sjfb8856606 		.no_cipher = false,
1221*2d9fd380Sjfb8856606 		.no_crc = true
1222*2d9fd380Sjfb8856606 	},
1223*2d9fd380Sjfb8856606 	.ciphertext = {
1224*2d9fd380Sjfb8856606 		.data = {
1225*2d9fd380Sjfb8856606 			/* DOCSIS header */
1226*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1227*2d9fd380Sjfb8856606 			/* Ethernet frame */
1228*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1229*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x6A, 0x86,
1230*2d9fd380Sjfb8856606 			/* CRC */
1231*2d9fd380Sjfb8856606 			0x70, 0x44, 0x0D, 0x8C
1232*2d9fd380Sjfb8856606 		},
1233*2d9fd380Sjfb8856606 		.len = 24,
1234*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1235*2d9fd380Sjfb8856606 		.crc_offset = 6,
1236*2d9fd380Sjfb8856606 		.no_cipher = false,
1237*2d9fd380Sjfb8856606 		.no_crc = true
1238*2d9fd380Sjfb8856606 	}
1239*2d9fd380Sjfb8856606 };
1240*2d9fd380Sjfb8856606 
1241*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_22 = {
1242*2d9fd380Sjfb8856606 	.key = {
1243*2d9fd380Sjfb8856606 		.data = {
1244*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1245*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1246*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1247*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1248*2d9fd380Sjfb8856606 		},
1249*2d9fd380Sjfb8856606 		.len = 32
1250*2d9fd380Sjfb8856606 	},
1251*2d9fd380Sjfb8856606 	.iv = {
1252*2d9fd380Sjfb8856606 		.data = {
1253*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1254*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1255*2d9fd380Sjfb8856606 		},
1256*2d9fd380Sjfb8856606 		.len = 16
1257*2d9fd380Sjfb8856606 	},
1258*2d9fd380Sjfb8856606 	.plaintext = {
1259*2d9fd380Sjfb8856606 		.data = {
1260*2d9fd380Sjfb8856606 			/* DOCSIS header */
1261*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1262*2d9fd380Sjfb8856606 			/* Ethernet frame */
1263*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1264*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1265*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1266*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1267*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1268*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1269*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1270*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1271*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1272*2d9fd380Sjfb8856606 			0xAA,
1273*2d9fd380Sjfb8856606 			/* CRC */
1274*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1275*2d9fd380Sjfb8856606 		},
1276*2d9fd380Sjfb8856606 		.len = 83,
1277*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1278*2d9fd380Sjfb8856606 		.crc_offset = 6,
1279*2d9fd380Sjfb8856606 		.no_cipher = false,
1280*2d9fd380Sjfb8856606 		.no_crc = true
1281*2d9fd380Sjfb8856606 	},
1282*2d9fd380Sjfb8856606 	.ciphertext = {
1283*2d9fd380Sjfb8856606 		.data = {
1284*2d9fd380Sjfb8856606 			/* DOCSIS header */
1285*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1286*2d9fd380Sjfb8856606 			/* Ethernet frame */
1287*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1288*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1289*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1290*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1291*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0x54, 0xB4, 0x55, 0x68, 0x06, 0xBF,
1292*2d9fd380Sjfb8856606 			0x00, 0x8B, 0x5F, 0x2C, 0x10, 0x4A, 0xBF, 0x5A,
1293*2d9fd380Sjfb8856606 			0xF2, 0x20, 0xD9, 0x77, 0x7F, 0x2D, 0x2B, 0x11,
1294*2d9fd380Sjfb8856606 			0xAC, 0xAF, 0x21, 0x36, 0xD2, 0xD4, 0x80, 0xF2,
1295*2d9fd380Sjfb8856606 			0x4F, 0x14, 0xA0, 0x3A, 0x66, 0xE5, 0xC5, 0xE2,
1296*2d9fd380Sjfb8856606 			0x15,
1297*2d9fd380Sjfb8856606 			/* CRC */
1298*2d9fd380Sjfb8856606 			0x40, 0x16, 0x62, 0xE1
1299*2d9fd380Sjfb8856606 		},
1300*2d9fd380Sjfb8856606 		.len = 83,
1301*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1302*2d9fd380Sjfb8856606 		.crc_offset = 6,
1303*2d9fd380Sjfb8856606 		.no_cipher = false,
1304*2d9fd380Sjfb8856606 		.no_crc = true
1305*2d9fd380Sjfb8856606 	}
1306*2d9fd380Sjfb8856606 };
1307*2d9fd380Sjfb8856606 
1308*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_23 = {
1309*2d9fd380Sjfb8856606 	.key = {
1310*2d9fd380Sjfb8856606 		.data = {
1311*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1312*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1313*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1314*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1315*2d9fd380Sjfb8856606 		},
1316*2d9fd380Sjfb8856606 		.len = 32
1317*2d9fd380Sjfb8856606 	},
1318*2d9fd380Sjfb8856606 	.iv = {
1319*2d9fd380Sjfb8856606 		.data = {
1320*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1321*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1322*2d9fd380Sjfb8856606 		},
1323*2d9fd380Sjfb8856606 		.len = 16
1324*2d9fd380Sjfb8856606 	},
1325*2d9fd380Sjfb8856606 	.plaintext = {
1326*2d9fd380Sjfb8856606 		.data = {
1327*2d9fd380Sjfb8856606 			/* DOCSIS header */
1328*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1329*2d9fd380Sjfb8856606 			/* Ethernet frame */
1330*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1331*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
1332*2d9fd380Sjfb8856606 			/* CRC */
1333*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1334*2d9fd380Sjfb8856606 		},
1335*2d9fd380Sjfb8856606 		.len = 24,
1336*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1337*2d9fd380Sjfb8856606 		.crc_offset = 6,
1338*2d9fd380Sjfb8856606 		.no_cipher = true,
1339*2d9fd380Sjfb8856606 		.no_crc = false
1340*2d9fd380Sjfb8856606 	},
1341*2d9fd380Sjfb8856606 	.ciphertext = {
1342*2d9fd380Sjfb8856606 		.data = {
1343*2d9fd380Sjfb8856606 			/* DOCSIS header */
1344*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1345*2d9fd380Sjfb8856606 			/* Ethernet frame */
1346*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1347*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
1348*2d9fd380Sjfb8856606 			/* CRC */
1349*2d9fd380Sjfb8856606 			0x14, 0x08, 0xE8, 0x55
1350*2d9fd380Sjfb8856606 		},
1351*2d9fd380Sjfb8856606 		.len = 24,
1352*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1353*2d9fd380Sjfb8856606 		.crc_offset = 6,
1354*2d9fd380Sjfb8856606 		.no_cipher = true,
1355*2d9fd380Sjfb8856606 		.no_crc = false
1356*2d9fd380Sjfb8856606 	}
1357*2d9fd380Sjfb8856606 };
1358*2d9fd380Sjfb8856606 
1359*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_24 = {
1360*2d9fd380Sjfb8856606 	.key = {
1361*2d9fd380Sjfb8856606 		.data = {
1362*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1363*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1364*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1365*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1366*2d9fd380Sjfb8856606 		},
1367*2d9fd380Sjfb8856606 		.len = 32
1368*2d9fd380Sjfb8856606 	},
1369*2d9fd380Sjfb8856606 	.iv = {
1370*2d9fd380Sjfb8856606 		.data = {
1371*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1372*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1373*2d9fd380Sjfb8856606 		},
1374*2d9fd380Sjfb8856606 		.len = 16
1375*2d9fd380Sjfb8856606 	},
1376*2d9fd380Sjfb8856606 	.plaintext = {
1377*2d9fd380Sjfb8856606 		.data = {
1378*2d9fd380Sjfb8856606 			/* DOCSIS header */
1379*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1380*2d9fd380Sjfb8856606 			/* Ethernet frame */
1381*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1382*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1383*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1384*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1385*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1386*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1387*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1388*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1389*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1390*2d9fd380Sjfb8856606 			0xAA,
1391*2d9fd380Sjfb8856606 			/* CRC */
1392*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1393*2d9fd380Sjfb8856606 		},
1394*2d9fd380Sjfb8856606 		.len = 83,
1395*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1396*2d9fd380Sjfb8856606 		.crc_offset = 6,
1397*2d9fd380Sjfb8856606 		.no_cipher = true,
1398*2d9fd380Sjfb8856606 		.no_crc = false
1399*2d9fd380Sjfb8856606 	},
1400*2d9fd380Sjfb8856606 	.ciphertext = {
1401*2d9fd380Sjfb8856606 		.data = {
1402*2d9fd380Sjfb8856606 			/* DOCSIS header */
1403*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1404*2d9fd380Sjfb8856606 			/* Ethernet frame */
1405*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1406*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1407*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1408*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1409*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1410*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1411*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1412*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1413*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1414*2d9fd380Sjfb8856606 			0xAA,
1415*2d9fd380Sjfb8856606 			/* CRC */
1416*2d9fd380Sjfb8856606 			0xB3, 0x60, 0xEB, 0x38
1417*2d9fd380Sjfb8856606 		},
1418*2d9fd380Sjfb8856606 		.len = 83,
1419*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1420*2d9fd380Sjfb8856606 		.crc_offset = 6,
1421*2d9fd380Sjfb8856606 		.no_cipher = true,
1422*2d9fd380Sjfb8856606 		.no_crc = false
1423*2d9fd380Sjfb8856606 	}
1424*2d9fd380Sjfb8856606 };
1425*2d9fd380Sjfb8856606 
1426*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_25 = {
1427*2d9fd380Sjfb8856606 	.key = {
1428*2d9fd380Sjfb8856606 		.data = {
1429*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1430*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1431*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1432*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1433*2d9fd380Sjfb8856606 		},
1434*2d9fd380Sjfb8856606 		.len = 32
1435*2d9fd380Sjfb8856606 	},
1436*2d9fd380Sjfb8856606 	.iv = {
1437*2d9fd380Sjfb8856606 		.data = {
1438*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1439*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1440*2d9fd380Sjfb8856606 		},
1441*2d9fd380Sjfb8856606 		.len = 16
1442*2d9fd380Sjfb8856606 	},
1443*2d9fd380Sjfb8856606 	.plaintext = {
1444*2d9fd380Sjfb8856606 		.data = {
1445*2d9fd380Sjfb8856606 			/* DOCSIS header */
1446*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1447*2d9fd380Sjfb8856606 			/* Ethernet frame */
1448*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1449*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
1450*2d9fd380Sjfb8856606 			/* CRC */
1451*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1452*2d9fd380Sjfb8856606 		},
1453*2d9fd380Sjfb8856606 		.len = 24,
1454*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1455*2d9fd380Sjfb8856606 		.crc_offset = 6,
1456*2d9fd380Sjfb8856606 		.no_cipher = true,
1457*2d9fd380Sjfb8856606 		.no_crc = true
1458*2d9fd380Sjfb8856606 	},
1459*2d9fd380Sjfb8856606 	.ciphertext = {
1460*2d9fd380Sjfb8856606 		.data = {
1461*2d9fd380Sjfb8856606 			/* DOCSIS header */
1462*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1463*2d9fd380Sjfb8856606 			/* Ethernet frame */
1464*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1465*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00,
1466*2d9fd380Sjfb8856606 			/* CRC */
1467*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1468*2d9fd380Sjfb8856606 		},
1469*2d9fd380Sjfb8856606 		.len = 24,
1470*2d9fd380Sjfb8856606 		.cipher_offset = 18,
1471*2d9fd380Sjfb8856606 		.crc_offset = 6,
1472*2d9fd380Sjfb8856606 		.no_cipher = true,
1473*2d9fd380Sjfb8856606 		.no_crc = true
1474*2d9fd380Sjfb8856606 	}
1475*2d9fd380Sjfb8856606 };
1476*2d9fd380Sjfb8856606 
1477*2d9fd380Sjfb8856606 struct docsis_test_data docsis_test_case_26 = {
1478*2d9fd380Sjfb8856606 	.key = {
1479*2d9fd380Sjfb8856606 		.data = {
1480*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0xAA, 0xBB, 0xCC, 0xDD,
1481*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55,
1482*2d9fd380Sjfb8856606 			0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD,
1483*2d9fd380Sjfb8856606 			0xEE, 0xFF, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55
1484*2d9fd380Sjfb8856606 		},
1485*2d9fd380Sjfb8856606 		.len = 32
1486*2d9fd380Sjfb8856606 	},
1487*2d9fd380Sjfb8856606 	.iv = {
1488*2d9fd380Sjfb8856606 		.data = {
1489*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
1490*2d9fd380Sjfb8856606 			0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11
1491*2d9fd380Sjfb8856606 		},
1492*2d9fd380Sjfb8856606 		.len = 16
1493*2d9fd380Sjfb8856606 	},
1494*2d9fd380Sjfb8856606 	.plaintext = {
1495*2d9fd380Sjfb8856606 		.data = {
1496*2d9fd380Sjfb8856606 			/* DOCSIS header */
1497*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1498*2d9fd380Sjfb8856606 			/* Ethernet frame */
1499*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1500*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1501*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1502*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1503*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1504*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1505*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1506*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1507*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1508*2d9fd380Sjfb8856606 			0xAA,
1509*2d9fd380Sjfb8856606 			/* CRC */
1510*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1511*2d9fd380Sjfb8856606 		},
1512*2d9fd380Sjfb8856606 		.len = 83,
1513*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1514*2d9fd380Sjfb8856606 		.crc_offset = 6,
1515*2d9fd380Sjfb8856606 		.no_cipher = true,
1516*2d9fd380Sjfb8856606 		.no_crc = true
1517*2d9fd380Sjfb8856606 	},
1518*2d9fd380Sjfb8856606 	.ciphertext = {
1519*2d9fd380Sjfb8856606 		.data = {
1520*2d9fd380Sjfb8856606 			/* DOCSIS header */
1521*2d9fd380Sjfb8856606 			0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1522*2d9fd380Sjfb8856606 			/* Ethernet frame */
1523*2d9fd380Sjfb8856606 			0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x05,
1524*2d9fd380Sjfb8856606 			0x04, 0x03, 0x02, 0x01, 0x08, 0x00, 0xAA, 0xAA,
1525*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1526*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1527*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1528*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1529*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1530*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1531*2d9fd380Sjfb8856606 			0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,
1532*2d9fd380Sjfb8856606 			0xAA,
1533*2d9fd380Sjfb8856606 			/* CRC */
1534*2d9fd380Sjfb8856606 			0xFF, 0xFF, 0xFF, 0xFF
1535*2d9fd380Sjfb8856606 		},
1536*2d9fd380Sjfb8856606 		.len = 83,
1537*2d9fd380Sjfb8856606 		.cipher_offset = 40,
1538*2d9fd380Sjfb8856606 		.crc_offset = 6,
1539*2d9fd380Sjfb8856606 		.no_cipher = true,
1540*2d9fd380Sjfb8856606 		.no_crc = true
1541*2d9fd380Sjfb8856606 	}
1542*2d9fd380Sjfb8856606 };
1543*2d9fd380Sjfb8856606 
1544*2d9fd380Sjfb8856606 #endif /* TEST_CRYPTODEV_SECURITY_DOCSIS_TEST_VECTORS_H_ */
1545