|
1 /* Any copyright is dedicated to the Public Domain. |
|
2 http://creativecommons.org/publicdomain/zero/1.0/ */ |
|
3 |
|
4 let CP = {}; |
|
5 subscriptLoader.loadSubScript("resource://gre/modules/CpPduHelper.jsm", CP); |
|
6 CP.debug = do_print; |
|
7 |
|
8 function run_test() { |
|
9 run_next_test(); |
|
10 } |
|
11 |
|
12 function test_parser(rawDataArray, contentType, expectResult) { |
|
13 let data = { array: rawDataArray, offset: 0 }; |
|
14 let msg = CP.PduHelper.parse(data, contentType); |
|
15 do_check_eq(msg.contentType, expectResult.contentType); |
|
16 do_check_eq(msg.content, expectResult.content); |
|
17 do_check_eq(msg.content.length, expectResult.content.length); |
|
18 } |
|
19 |
|
20 function test_hmac(rawDataArray, mac, key, expectResult) { |
|
21 let authInfo = CP.Authenticator.check(rawDataArray, 0, mac, function getNetworkPin() { |
|
22 return key; |
|
23 }); |
|
24 do_check_eq(authInfo.data, rawDataArray); |
|
25 do_check_eq(authInfo.data.length, rawDataArray.length); |
|
26 do_check_eq(authInfo.checked, expectResult.checked); |
|
27 do_check_eq(authInfo.pass, expectResult.pass); |
|
28 } |
|
29 |
|
30 /* |
|
31 * Test data from OMA-TS-WAP_ProvCont-V1_1-2009 0421-C.pdf, clause 6.1 |
|
32 */ |
|
33 let text_data_array = new Uint8Array([ |
|
34 0x3C, 0x3F, 0x78, 0x6D, 0x6C, 0x20, 0x76, 0x65, |
|
35 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x3D, 0x22, 0x31, |
|
36 0x2E, 0x30, 0x22, 0x3F, 0x3E, 0x3C, 0x21, 0x44, |
|
37 0x4F, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x77, |
|
38 0x61, 0x70, 0x2D, 0x70, 0x72, 0x6F, 0x76, 0x69, |
|
39 0x73, 0x69, 0x6F, 0x6E, 0x69, 0x6E, 0x67, 0x64, |
|
40 0x6F, 0x63, 0x20, 0x50, 0x55, 0x42, 0x4C, 0x49, |
|
41 0x43, 0x20, 0x22, 0x2D, 0x2F, 0x2F, 0x57, 0x41, |
|
42 0x50, 0x46, 0x4F, 0x52, 0x55, 0x4D, 0x2F, 0x2F, |
|
43 0x44, 0x54, 0x44, 0x20, 0x50, 0x52, 0x4F, 0x56, |
|
44 0x20, 0x31, 0x2E, 0x30, 0x2F, 0x2F, 0x45, 0x4E, |
|
45 0x22, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3A, |
|
46 0x2F, 0x2F, 0x77, 0x77, 0x77, 0x2E, 0x77, 0x61, |
|
47 0x70, 0x66, 0x6F, 0x72, 0x75, 0x6D, 0x2E, 0x6F, |
|
48 0x72, 0x67, 0x2F, 0x44, 0x54, 0x44, 0x2F, 0x70, |
|
49 0x72, 0x6F, 0x76, 0x2E, 0x64, 0x74, 0x64, 0x22, |
|
50 0x3E, 0x3C, 0x77, 0x61, 0x70, 0x2D, 0x70, 0x72, |
|
51 0x6F, 0x76, 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x69, |
|
52 0x6E, 0x67, 0x64, 0x6F, 0x63, 0x20, 0x76, 0x65, |
|
53 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x3D, 0x22, 0x31, |
|
54 0x2E, 0x30, 0x22, 0x3E, 0x3C, 0x63, 0x68, 0x61, |
|
55 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x69, 0x73, |
|
56 0x74, 0x69, 0x63, 0x20, 0x74, 0x79, 0x70, 0x65, |
|
57 0x3D, 0x22, 0x50, 0x58, 0x4C, 0x4F, 0x47, 0x49, |
|
58 0x43, 0x41, 0x4C, 0x22, 0x3E, 0x3C, 0x70, 0x61, |
|
59 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, |
|
60 0x22, 0x50, 0x52, 0x4F, 0x58, 0x59, 0x2D, 0x49, |
|
61 0x44, 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, |
|
62 0x3D, 0x22, 0x31, 0x37, 0x30, 0x2E, 0x31, 0x38, |
|
63 0x37, 0x2E, 0x35, 0x31, 0x2E, 0x34, 0x22, 0x2F, |
|
64 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, |
|
65 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x50, 0x52, 0x4F, |
|
66 0x58, 0x59, 0x2D, 0x50, 0x57, 0x22, 0x20, 0x76, |
|
67 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x70, 0x72, |
|
68 0x6F, 0x78, 0x79, 0x70, 0x61, 0x73, 0x73, 0x77, |
|
69 0x64, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, |
|
70 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, |
|
71 0x50, 0x50, 0x47, 0x41, 0x55, 0x54, 0x48, 0x2D, |
|
72 0x54, 0x59, 0x50, 0x45, 0x22, 0x20, 0x76, 0x61, |
|
73 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x48, 0x54, 0x54, |
|
74 0x50, 0x2D, 0x42, 0x41, 0x53, 0x49, 0x43, 0x22, |
|
75 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, |
|
76 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x4E, 0x41, |
|
77 0x4D, 0x45, 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, |
|
78 0x65, 0x3D, 0x22, 0x42, 0x61, 0x6E, 0x6B, 0x4D, |
|
79 0x61, 0x69, 0x6E, 0x50, 0x72, 0x6F, 0x78, 0x79, |
|
80 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
81 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x53, |
|
82 0x54, 0x41, 0x52, 0x54, 0x50, 0x41, 0x47, 0x45, |
|
83 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
84 0x22, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, |
|
85 0x77, 0x77, 0x77, 0x2E, 0x62, 0x61, 0x6E, 0x6B, |
|
86 0x2E, 0x63, 0x6F, 0x6D, 0x2F, 0x73, 0x74, 0x61, |
|
87 0x72, 0x74, 0x70, 0x61, 0x67, 0x65, 0x2E, 0x77, |
|
88 0x6D, 0x6C, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, |
|
89 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, |
|
90 0x22, 0x50, 0x55, 0x4C, 0x4C, 0x45, 0x4E, 0x41, |
|
91 0x42, 0x4C, 0x45, 0x44, 0x22, 0x20, 0x76, 0x61, |
|
92 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x31, 0x22, 0x2F, |
|
93 0x3E, 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
94 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
95 0x20, 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, 0x50, |
|
96 0x58, 0x41, 0x55, 0x54, 0x48, 0x49, 0x4E, 0x46, |
|
97 0x4F, 0x22, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
98 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x50, |
|
99 0x58, 0x41, 0x55, 0x54, 0x48, 0x2D, 0x54, 0x59, |
|
100 0x50, 0x45, 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, |
|
101 0x65, 0x3D, 0x22, 0x48, 0x54, 0x54, 0x50, 0x2D, |
|
102 0x42, 0x41, 0x53, 0x49, 0x43, 0x22, 0x2F, 0x3E, |
|
103 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, |
|
104 0x6D, 0x65, 0x3D, 0x22, 0x50, 0x58, 0x41, 0x55, |
|
105 0x54, 0x48, 0x2D, 0x49, 0x44, 0x22, 0x20, 0x76, |
|
106 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x70, 0x78, |
|
107 0x75, 0x73, 0x65, 0x72, 0x6E, 0x61, 0x6D, 0x65, |
|
108 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
109 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x50, |
|
110 0x58, 0x41, 0x55, 0x54, 0x48, 0x2D, 0x50, 0x57, |
|
111 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
112 0x22, 0x70, 0x78, 0x75, 0x73, 0x65, 0x72, 0x70, |
|
113 0x61, 0x73, 0x73, 0x77, 0x64, 0x22, 0x2F, 0x3E, |
|
114 0x3C, 0x2F, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
115 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
116 0x3E, 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
117 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
118 0x20, 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, 0x50, |
|
119 0x58, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, |
|
120 0x4C, 0x22, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
121 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x50, |
|
122 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4C, 0x2D, |
|
123 0x50, 0x52, 0x4F, 0x58, 0x59, 0x2D, 0x49, 0x44, |
|
124 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
125 0x22, 0x50, 0x52, 0x4F, 0x58, 0x59, 0x20, 0x31, |
|
126 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
127 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x44, |
|
128 0x4F, 0x4D, 0x41, 0x49, 0x4E, 0x22, 0x20, 0x76, |
|
129 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x77, 0x77, |
|
130 0x77, 0x2E, 0x62, 0x61, 0x6E, 0x6B, 0x2E, 0x63, |
|
131 0x6F, 0x6D, 0x2F, 0x22, 0x2F, 0x3E, 0x3C, 0x70, |
|
132 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, |
|
133 0x3D, 0x22, 0x50, 0x58, 0x41, 0x44, 0x44, 0x52, |
|
134 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
135 0x22, 0x31, 0x37, 0x30, 0x2E, 0x31, 0x38, 0x37, |
|
136 0x2E, 0x35, 0x31, 0x2E, 0x33, 0x22, 0x2F, 0x3E, |
|
137 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, |
|
138 0x6D, 0x65, 0x3D, 0x22, 0x50, 0x58, 0x41, 0x44, |
|
139 0x44, 0x52, 0x54, 0x59, 0x50, 0x45, 0x22, 0x20, |
|
140 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x49, |
|
141 0x50, 0x56, 0x34, 0x22, 0x2F, 0x3E, 0x3C, 0x70, |
|
142 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, |
|
143 0x3D, 0x22, 0x50, 0x58, 0x41, 0x44, 0x44, 0x52, |
|
144 0x2D, 0x46, 0x51, 0x44, 0x4E, 0x22, 0x20, 0x76, |
|
145 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x70, 0x72, |
|
146 0x6F, 0x78, 0x79, 0x31, 0x2E, 0x6F, 0x70, 0x65, |
|
147 0x72, 0x61, 0x74, 0x6F, 0x72, 0x2E, 0x63, 0x6F, |
|
148 0x6D, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, |
|
149 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, |
|
150 0x54, 0x4F, 0x2D, 0x4E, 0x41, 0x50, 0x49, 0x44, |
|
151 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
152 0x22, 0x49, 0x4E, 0x54, 0x45, 0x52, 0x4E, 0x45, |
|
153 0x54, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, |
|
154 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, |
|
155 0x54, 0x4F, 0x2D, 0x4E, 0x41, 0x50, 0x49, 0x44, |
|
156 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
157 0x22, 0x4E, 0x41, 0x50, 0x31, 0x22, 0x2F, 0x3E, |
|
158 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, |
|
159 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x20, |
|
160 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, 0x50, 0x4F, |
|
161 0x52, 0x54, 0x22, 0x3E, 0x3C, 0x70, 0x61, 0x72, |
|
162 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, |
|
163 0x50, 0x4F, 0x52, 0x54, 0x4E, 0x42, 0x52, 0x22, |
|
164 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, |
|
165 0x39, 0x32, 0x30, 0x33, 0x22, 0x2F, 0x3E, 0x3C, |
|
166 0x2F, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, |
|
167 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x3E, |
|
168 0x3C, 0x2F, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
169 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
170 0x3E, 0x3C, 0x2F, 0x63, 0x68, 0x61, 0x72, 0x61, |
|
171 0x63, 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, |
|
172 0x63, 0x3E, 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, |
|
173 0x63, 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, |
|
174 0x63, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, |
|
175 0x4E, 0x41, 0x50, 0x44, 0x45, 0x46, 0x22, 0x3E, |
|
176 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, |
|
177 0x6D, 0x65, 0x3D, 0x22, 0x4E, 0x41, 0x50, 0x49, |
|
178 0x44, 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, |
|
179 0x3D, 0x22, 0x4E, 0x41, 0x50, 0x31, 0x22, 0x2F, |
|
180 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, |
|
181 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x42, 0x45, 0x41, |
|
182 0x52, 0x45, 0x52, 0x22, 0x20, 0x76, 0x61, 0x6C, |
|
183 0x75, 0x65, 0x3D, 0x22, 0x47, 0x53, 0x4D, 0x2D, |
|
184 0x43, 0x53, 0x44, 0x22, 0x2F, 0x3E, 0x3C, 0x70, |
|
185 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, |
|
186 0x3D, 0x22, 0x4E, 0x41, 0x4D, 0x45, 0x22, 0x20, |
|
187 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x4D, |
|
188 0x59, 0x20, 0x49, 0x53, 0x50, 0x20, 0x43, 0x53, |
|
189 0x44, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, |
|
190 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, |
|
191 0x4E, 0x41, 0x50, 0x2D, 0x41, 0x44, 0x44, 0x52, |
|
192 0x45, 0x53, 0x53, 0x22, 0x20, 0x76, 0x61, 0x6C, |
|
193 0x75, 0x65, 0x3D, 0x22, 0x2B, 0x33, 0x35, 0x38, |
|
194 0x30, 0x38, 0x31, 0x32, 0x34, 0x30, 0x30, 0x32, |
|
195 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
196 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x4E, |
|
197 0x41, 0x50, 0x2D, 0x41, 0x44, 0x44, 0x52, 0x54, |
|
198 0x59, 0x50, 0x45, 0x22, 0x20, 0x76, 0x61, 0x6C, |
|
199 0x75, 0x65, 0x3D, 0x22, 0x45, 0x31, 0x36, 0x34, |
|
200 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
201 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x44, |
|
202 0x4E, 0x53, 0x2D, 0x41, 0x44, 0x44, 0x52, 0x22, |
|
203 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, |
|
204 0x31, 0x37, 0x30, 0x2E, 0x31, 0x38, 0x37, 0x2E, |
|
205 0x35, 0x31, 0x2E, 0x32, 0x22, 0x2F, 0x3E, 0x3C, |
|
206 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, |
|
207 0x65, 0x3D, 0x22, 0x43, 0x41, 0x4C, 0x4C, 0x54, |
|
208 0x59, 0x50, 0x45, 0x22, 0x20, 0x76, 0x61, 0x6C, |
|
209 0x75, 0x65, 0x3D, 0x22, 0x41, 0x4E, 0x41, 0x4C, |
|
210 0x4F, 0x47, 0x2D, 0x4D, 0x4F, 0x44, 0x45, 0x4D, |
|
211 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
212 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x4D, |
|
213 0x41, 0x58, 0x2D, 0x4E, 0x55, 0x4D, 0x2D, 0x52, |
|
214 0x45, 0x54, 0x52, 0x59, 0x22, 0x20, 0x76, 0x61, |
|
215 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x33, 0x22, 0x2F, |
|
216 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, |
|
217 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x46, 0x49, 0x52, |
|
218 0x53, 0x54, 0x2D, 0x52, 0x45, 0x54, 0x52, 0x59, |
|
219 0x2D, 0x54, 0x49, 0x4D, 0x45, 0x4F, 0x55, 0x54, |
|
220 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
221 0x22, 0x36, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, |
|
222 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, |
|
223 0x22, 0x52, 0x45, 0x52, 0x45, 0x47, 0x2D, 0x54, |
|
224 0x48, 0x52, 0x45, 0x53, 0x48, 0x4F, 0x4C, 0x44, |
|
225 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
226 0x22, 0x33, 0x30, 0x22, 0x2F, 0x3E, 0x3C, 0x70, |
|
227 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, |
|
228 0x3D, 0x22, 0x54, 0x2D, 0x42, 0x49, 0x54, 0x22, |
|
229 0x2F, 0x3E, 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, |
|
230 0x63, 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, |
|
231 0x63, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, |
|
232 0x4E, 0x41, 0x50, 0x41, 0x55, 0x54, 0x48, 0x49, |
|
233 0x4E, 0x46, 0x4F, 0x22, 0x3E, 0x3C, 0x70, 0x61, |
|
234 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, |
|
235 0x22, 0x41, 0x55, 0x54, 0x48, 0x54, 0x59, 0x50, |
|
236 0x45, 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, |
|
237 0x3D, 0x22, 0x50, 0x41, 0x50, 0x22, 0x2F, 0x3E, |
|
238 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, |
|
239 0x6D, 0x65, 0x3D, 0x22, 0x41, 0x55, 0x54, 0x48, |
|
240 0x4E, 0x41, 0x4D, 0x45, 0x22, 0x20, 0x76, 0x61, |
|
241 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x77, 0x77, 0x77, |
|
242 0x6D, 0x6D, 0x6D, 0x75, 0x73, 0x65, 0x72, 0x22, |
|
243 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, |
|
244 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x41, 0x55, |
|
245 0x54, 0x48, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, |
|
246 0x22, 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, |
|
247 0x22, 0x77, 0x77, 0x77, 0x6D, 0x6D, 0x6D, 0x73, |
|
248 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x2F, 0x3E, |
|
249 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, 0x61, |
|
250 0x6D, 0x65, 0x3D, 0x22, 0x41, 0x55, 0x54, 0x48, |
|
251 0x2D, 0x45, 0x4E, 0x54, 0x49, 0x54, 0x59, 0x22, |
|
252 0x20, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, |
|
253 0x48, 0x41, 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, |
|
254 0x72, 0x6D, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, |
|
255 0x22, 0x53, 0x50, 0x49, 0x22, 0x20, 0x76, 0x61, |
|
256 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x46, 0x45, 0x44, |
|
257 0x43, 0x42, 0x41, 0x39, 0x38, 0x22, 0x2F, 0x3E, |
|
258 0x3C, 0x2F, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
259 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
260 0x3E, 0x3C, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, |
|
261 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, |
|
262 0x20, 0x74, 0x79, 0x70, 0x65, 0x3D, 0x22, 0x56, |
|
263 0x41, 0x4C, 0x49, 0x44, 0x49, 0x54, 0x59, 0x22, |
|
264 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, 0x20, 0x6E, |
|
265 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x43, 0x4F, 0x55, |
|
266 0x4E, 0x54, 0x52, 0x59, 0x22, 0x20, 0x76, 0x61, |
|
267 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x32, 0x32, 0x38, |
|
268 0x22, 0x2F, 0x3E, 0x3C, 0x70, 0x61, 0x72, 0x6D, |
|
269 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x3D, 0x22, 0x4E, |
|
270 0x45, 0x54, 0x57, 0x4F, 0x52, 0x4B, 0x22, 0x20, |
|
271 0x76, 0x61, 0x6C, 0x75, 0x65, 0x3D, 0x22, 0x30, |
|
272 0x30, 0x31, 0x22, 0x2F, 0x3E, 0x3C, 0x2F, 0x63, |
|
273 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, |
|
274 0x69, 0x73, 0x74, 0x69, 0x63, 0x3E, 0x3C, 0x2F, |
|
275 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, |
|
276 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x3E, 0x3C, |
|
277 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, |
|
278 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x20, 0x74, |
|
279 0x79, 0x70, 0x65, 0x3D, 0x22, 0x41, 0x43, 0x43, |
|
280 0x45, 0x53, 0x53, 0x22, 0x3E, 0x3C, 0x2F, 0x63, |
|
281 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, |
|
282 0x69, 0x73, 0x74, 0x69, 0x63, 0x3E, 0x3C, 0x2F, |
|
283 0x77, 0x61, 0x70, 0x2D, 0x70, 0x72, 0x6F, 0x76, |
|
284 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x69, 0x6E, 0x67, |
|
285 0x64, 0x6F, 0x63, 0x3E |
|
286 ]); |
|
287 |
|
288 /* |
|
289 * Test data from OMA-TS-WAP_ProvCont-V1_1-20090421-C.pdf, Appendix C |
|
290 */ |
|
291 let wbxml_data_array = new Uint8Array([ |
|
292 // WBXML version 1.3 |
|
293 0x03, |
|
294 // The Public Identifier for "-//WAPFORUM//DTD PROV 1.0//EN" |
|
295 0x0b, |
|
296 // Character set UTF-8 |
|
297 0x6a, |
|
298 // String table length = 05 |
|
299 0x05, |
|
300 // String table: 'N', 'A', 'P', '1', 00 |
|
301 0x4e, 0x41, 0x50, 0x31, 0x00, |
|
302 // <wap-provisioningdoc version="1.0"> |
|
303 0xc5, 0x46, 0x01, |
|
304 // <characteristic type="PXLOGICAL"> |
|
305 0xc6, 0x51, 0x01, |
|
306 // <parm name="PROXY-ID" value="170.187.51.4"/> |
|
307 0x87, 0x15, 0x06, 0x03, 0x31, 0x37, 0x30, 0x2e, |
|
308 0x31, 0x38, 0x37, 0x2e, 0x35, 0x31, 0x2e, 0x34, |
|
309 0x00, 0x01, |
|
310 // <parm name="PROXY-PW" value="proxypasswd"/> |
|
311 0x87, 0x3E, 0x06, 0x03, 0x70, 0x72, 0x6f, 0x78, |
|
312 0x79, 0x70, 0x61, 0x73, 0x73, 0x77, 0x64, 0x00, |
|
313 0x01, |
|
314 // <parm name="PPGAUTH-TYPE" value="HTTP-BASIC"/> |
|
315 0x87, 0x3F, 0x06, 0x9C, 0x01, |
|
316 // <parm name="NAME" value="BankMainProxy"/> |
|
317 0x87, 0x07, 0x06, 0x03, 0x42, 0x61, 0x6e, 0x6b, |
|
318 0x4d, 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x78, |
|
319 0x79, 0x00, 0x01, |
|
320 // <parm name="STARTPAGE" value="http://www.bank.com/startpage.wml"/> |
|
321 0x87, 0x1c, 0x06, 0x03, 0x68, 0x74, 0x74, 0x70, |
|
322 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x62, |
|
323 0x61, 0x6e, 0x6b, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, |
|
324 0x73, 0x74, 0x61, 0x72, 0x74, 0x70, 0x61, 0x67, |
|
325 0x65, 0x2e, 0x77, 0x6d, 0x6c, 0x00, 0x01, |
|
326 // <parm name="PULLENABLED" value="1"/> |
|
327 0x87, 0x47, 0x06, 0x03, 0x31, 0x00, 0x01, |
|
328 // <characteristic type="PXAUTHINFO"> |
|
329 0xc6, 0x59, 0x01, |
|
330 // <parm name="PXAUTH-TYPE" value="HTTP-BASIC"/> |
|
331 0x87, 0x19, 0x06, 0x9c, 0x01, |
|
332 // <parm name="PXAUTH-ID" value="pxusername"/> |
|
333 0x87, 0x1a, 0x06, 0x03, 0x70, 0x78, 0x75, 0x73, |
|
334 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x00, 0x01, |
|
335 // <parm name="PXAUTH-PW" value="pxuserpasswd"/> |
|
336 0x87, 0x1b, 0x06, 0x03, 0x70, 0x78, 0x75, 0x73, |
|
337 0x65, 0x72, 0x70, 0x61, 0x73, 0x73, 0x77, 0x64, |
|
338 0x00, 0x01, |
|
339 // </characteristic> |
|
340 0x01, |
|
341 // <characteristic type="PXPHYSICAL"> |
|
342 0xc6, 0x52, 0x01, |
|
343 // <parm name="PHYSICAL-PROXY-ID" value="PROXY 1"/> |
|
344 0x87, 0x2f, 0x06, 0x03, 0x50, 0x52, 0x4f, 0x58, |
|
345 0x59, 0x20, 0x31, 0x00, 0x01, |
|
346 // <parm name="DOMAIN" value="www.bank.com/"/> |
|
347 0x87, 0x17, 0x06, 0x03, 0x77, 0x77, 0x77, 0x2e, |
|
348 0x62, 0x61, 0x6e, 0x6b, 0x2e, 0x63, 0x6f, 0x6d, |
|
349 0x2f, 0x00, 0x01, |
|
350 // <parm name="PXADDR" value="170.187.51.3"/> |
|
351 0x87, 0x20, 0x06, 0x03, 0x31, 0x37, 0x30, 0x2e, |
|
352 0x31, 0x38, 0x37, 0x2e, 0x35, 0x31, 0x2e, 0x33, |
|
353 0x00, 0x01, |
|
354 // <parm name="PXADDRTYPE" value="IPV4"/> |
|
355 0x87, 0x21, 0x06, 0x85, 0x01, |
|
356 // <parm name="PXADDR-FQDN" value="proxy1.operator.com"/> |
|
357 0x87, 0x3D, 0x06, 0x03, 0x70, 0x72, 0x6f, 0x78, |
|
358 0x79, 0x31, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, |
|
359 0x74, 0x6f, 0x72, 0x2e, 0x63, 0x6f, 0x6d, 0x00, |
|
360 0x01, |
|
361 // <parm name="TO-NAPID" value="INTERNET"/> |
|
362 0x87, 0x22, 0x06, 0x03, 0x49, 0x4e, 0x54, 0x45, |
|
363 0x52, 0x4e, 0x45, 0x54, 0x00, 0x01, |
|
364 // <parm name="TO-NAPID" value="NAP1"/> |
|
365 0x87, 0x22, 0x06, 0x83, 0x00, 0x01, |
|
366 // <characteristic type="PORT"> |
|
367 0xc6, 0x53, 0x01, |
|
368 // <parm name="PORTNBR" value="9203"/> |
|
369 0x87, 0x23, 0x06, 0x03, 0x39, 0x32, 0x30, 0x33, |
|
370 0x00, 0x01, |
|
371 // </characteristic> |
|
372 0x01, |
|
373 // </characteristic> |
|
374 0x01, |
|
375 // </characteristic> |
|
376 0x01, |
|
377 // <characteristic type="NAPDEF"> |
|
378 0xc6, 0x55, 0x01, |
|
379 // <parm name="NAPID" value="NAP1"/> |
|
380 0x87, 0x11, 0x06, 0x83, 0x00, 0x01, |
|
381 // <parm name="BEARER" value="GSM-CSD"/> |
|
382 0x87, 0x10, 0x06, 0xaa, 0x01, |
|
383 // <parm name="NAME" value="MY ISP CSD"/> |
|
384 0x87, 0x07, 0x06, 0x03, 0x4d, 0x59, 0x20, 0x49, |
|
385 0x53, 0x50, 0x20, 0x43, 0x53, 0x44, 0x00, 0x01, |
|
386 // <parm name="NAP-ADDRESS" value="+35808124002"/> |
|
387 0x87, 0x08, 0x06, 0x03, 0x2b, 0x33, 0x35, 0x38, |
|
388 0x30, 0x38, 0x31, 0x32, 0x34, 0x30, 0x30, 0x32, |
|
389 0x00, 0x01, |
|
390 // <parm name="NAP-ADDRTYPE" value="E164"/> |
|
391 0x87, 0x09, 0x06, 0x87, 0x01, |
|
392 // <parm name="DNS-ADDR" value="170.187.51.2"/> |
|
393 0x87, 0x48, 0x06, 0x03, 0x31, 0x37, 0x30, 0x2e, |
|
394 0x31, 0x38, 0x37, 0x2e, 0x35, 0x31, 0x2e, 0x32, |
|
395 0x00, 0x01, |
|
396 // <parm name="CALLTYPE" value="ANALOG-MODEM"/> |
|
397 0x87, 0x0a, 0x06, 0x90, 0x01, |
|
398 // <parm name="MAX-NUM-RETRY" value="3"/> |
|
399 0x87, 0x49, 0x06, 0x03, 0x33, 0x00, 0x01, |
|
400 // <parm name="FIRST-RETRY-TIMEOUT" value="6"/> |
|
401 0x87, 0x4A, 0x06, 0x03, 0x36, 0x00, 0x01, |
|
402 // <parm name="REREG-THRESHOLD" value="30"/> |
|
403 0x87, 0x4B, 0x06, 0x03, 0x33, 0x30, 0x00, 0x01, |
|
404 // <parm name="T-BIT"/> |
|
405 0x87, 0x4C, 0x01, |
|
406 // <characteristic type="NAPAUTHINFO"> |
|
407 0xc6, 0x5a, 0x01, |
|
408 // <parm name="AUTHTYPE" value="PAP"/> |
|
409 0x87, 0x0c, 0x06, 0x9a, 0x01, |
|
410 // <parm name="AUTHNAME" value="wwwmmmuser"/> |
|
411 0x87, 0x0d, 0x06, 0x03, 0x77, 0x77, 0x77, 0x6d, |
|
412 0x6d, 0x6d, 0x75, 0x73, 0x65, 0x72, 0x00, 0x01, |
|
413 // <parm name="AUTHSECRET" value="wwwmmmsecret"/> |
|
414 0x87, 0x0e, 0x06, 0x03, 0x77, 0x77, 0x77, 0x6d, |
|
415 0x6d, 0x6d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, |
|
416 0x00, 0x01, |
|
417 // <parm name="AUTH-ENTITY" value="HA"/> |
|
418 0x87, 0x4E, 0x06, 0xE1, 0x01, |
|
419 // <parm name="SPI" value="FEDCBA98"/> |
|
420 0x87, 0x4F, 0x06, 0x03, 0x46, 0x45, 0x44, 0x43, |
|
421 0x42, 0x41, 0x39, 0x38, 0x00, 0x01, |
|
422 // </characteristic> |
|
423 0x01, |
|
424 // <characteristic type="VALIDITY"> |
|
425 0xc6, 0x54, 0x01, |
|
426 // <parm name="COUNTRY" value="228"/> |
|
427 0x87, 0x12, 0x06, 0x03, 0x32, 0x32, 0x38, 0x00, |
|
428 0x01, |
|
429 // <parm name="NETWORK" value="001"/> |
|
430 0x87, 0x13, 0x06, 0x03, 0x30, 0x30, 0x31, 0x00, |
|
431 0x01, |
|
432 // </characteristic> |
|
433 0x01, |
|
434 // </characteristic> |
|
435 0x01, |
|
436 // <characteristic type="ACCESS"> |
|
437 0xC6, 0x5B, 0x01, |
|
438 // </characteristic> |
|
439 0x01, |
|
440 // </wap-provisioningdoc> |
|
441 0x01 |
|
442 ]); |
|
443 |
|
444 /* |
|
445 * Test data from CHT CP, with code page change |
|
446 */ |
|
447 let wbxml_code_page_data_array = new Uint8Array([ |
|
448 0x03, 0x0B, 0x6A, 0x00, 0x45, 0xC6, 0x56, 0x01, |
|
449 0x87, 0x07, 0x06, 0x03, 0x43, 0x48, 0x54, 0x5F, |
|
450 0x65, 0x6D, 0x6F, 0x6D, 0x65, 0x00, 0x01, 0x01, |
|
451 0xC6, 0x00, 0x01, 0x55, 0x01, 0x87, 0x36, 0x00, |
|
452 0x00, 0x06, 0x03, 0x77, 0x32, 0x00, 0x01, 0x87, |
|
453 0x00, 0x01, 0x39, 0x00, 0x00, 0x06, 0x03, 0x57, |
|
454 0x50, 0x52, 0x4F, 0x58, 0x59, 0x00, 0x01, 0x87, |
|
455 0x07, 0x06, 0x03, 0x43, 0x48, 0x54, 0x5F, 0x65, |
|
456 0x6D, 0x6F, 0x6D, 0x65, 0x00, 0x01, 0xC6, 0x00, |
|
457 0x01, 0x59, 0x01, 0x87, 0x3A, 0x00, 0x00, 0x06, |
|
458 0x03, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, |
|
459 0x77, 0x61, 0x70, 0x2E, 0x65, 0x6D, 0x6F, 0x6D, |
|
460 0x65, 0x2E, 0x6E, 0x65, 0x74, 0x2F, 0x00, 0x01, |
|
461 0x87, 0x07, 0x06, 0x03, 0x43, 0x48, 0x54, 0x5F, |
|
462 0x65, 0x6D, 0x6F, 0x6D, 0x65, 0x00, 0x01, 0x87, |
|
463 0x1C, 0x01, 0x01, 0x01, 0xC6, 0x00, 0x01, 0x55, |
|
464 0x01, 0x87, 0x36, 0x00, 0x00, 0x06, 0x03, 0x77, |
|
465 0x34, 0x00, 0x01, 0x87, 0x00, 0x01, 0x39, 0x00, |
|
466 0x00, 0x06, 0x03, 0x4D, 0x50, 0x52, 0x4F, 0x58, |
|
467 0x59, 0x00, 0x01, 0x87, 0x00, 0x01, 0x34, 0x00, |
|
468 0x00, 0x06, 0x03, 0x68, 0x74, 0x74, 0x70, 0x3A, |
|
469 0x2F, 0x2F, 0x6D, 0x6D, 0x73, 0x3A, 0x38, 0x30, |
|
470 0x30, 0x32, 0x00, 0x01, 0x01, 0xC6, 0x51, 0x01, |
|
471 0x87, 0x15, 0x06, 0x03, 0x57, 0x50, 0x52, 0x4F, |
|
472 0x58, 0x59, 0x00, 0x01, 0x87, 0x07, 0x06, 0x03, |
|
473 0x43, 0x48, 0x54, 0x5F, 0x65, 0x6D, 0x6F, 0x6D, |
|
474 0x65, 0x00, 0x01, 0x87, 0x1C, 0x06, 0x03, 0x68, |
|
475 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x77, 0x61, |
|
476 0x70, 0x2E, 0x65, 0x6D, 0x6F, 0x6D, 0x65, 0x2E, |
|
477 0x6E, 0x65, 0x74, 0x2F, 0x00, 0x01, 0xC6, 0x52, |
|
478 0x01, 0x87, 0x2F, 0x06, 0x03, 0x50, 0x52, 0x4F, |
|
479 0x58, 0x59, 0x31, 0x00, 0x01, 0x87, 0x20, 0x06, |
|
480 0x03, 0x31, 0x30, 0x2E, 0x31, 0x2E, 0x31, 0x2E, |
|
481 0x31, 0x00, 0x01, 0x87, 0x21, 0x06, 0x85, 0x01, |
|
482 0x87, 0x22, 0x06, 0x03, 0x43, 0x48, 0x54, 0x5F, |
|
483 0x65, 0x6D, 0x6F, 0x6D, 0x65, 0x00, 0x01, 0xC6, |
|
484 0x53, 0x01, 0x87, 0x23, 0x06, 0x03, 0x38, 0x30, |
|
485 0x38, 0x30, 0x00, 0x01, 0x01, 0x01, 0x01, 0xC6, |
|
486 0x51, 0x01, 0x87, 0x15, 0x06, 0x03, 0x4D, 0x50, |
|
487 0x52, 0x4F, 0x58, 0x59, 0x00, 0x01, 0x87, 0x07, |
|
488 0x06, 0x03, 0x43, 0x48, 0x54, 0x5F, 0x4D, 0x4D, |
|
489 0x53, 0x00, 0x01, 0xC6, 0x52, 0x01, 0x87, 0x2F, |
|
490 0x06, 0x03, 0x50, 0x52, 0x4F, 0x58, 0x59, 0x32, |
|
491 0x00, 0x01, 0x87, 0x20, 0x06, 0x03, 0x31, 0x30, |
|
492 0x2E, 0x31, 0x2E, 0x31, 0x2E, 0x31, 0x00, 0x01, |
|
493 0x87, 0x21, 0x06, 0x85, 0x01, 0x87, 0x22, 0x06, |
|
494 0x03, 0x43, 0x48, 0x54, 0x5F, 0x4D, 0x4D, 0x53, |
|
495 0x00, 0x01, 0xC6, 0x53, 0x01, 0x87, 0x23, 0x06, |
|
496 0x03, 0x38, 0x30, 0x38, 0x30, 0x00, 0x01, 0x01, |
|
497 0x01, 0x01, 0xC6, 0x55, 0x01, 0x87, 0x11, 0x06, |
|
498 0x03, 0x43, 0x48, 0x54, 0x5F, 0x65, 0x6D, 0x6F, |
|
499 0x6D, 0x65, 0x00, 0x01, 0x87, 0x07, 0x06, 0x03, |
|
500 0x43, 0x48, 0x54, 0x5F, 0x65, 0x6D, 0x6F, 0x6D, |
|
501 0x65, 0x00, 0x01, 0x87, 0x10, 0x06, 0xAB, 0x01, |
|
502 0x87, 0x08, 0x06, 0x03, 0x65, 0x6D, 0x6F, 0x6D, |
|
503 0x65, 0x00, 0x01, 0x87, 0x09, 0x06, 0x89, 0x01, |
|
504 0x01, 0xC6, 0x55, 0x01, 0x87, 0x11, 0x06, 0x03, |
|
505 0x43, 0x48, 0x54, 0x5F, 0x4D, 0x4D, 0x53, 0x00, |
|
506 0x01, 0x87, 0x07, 0x06, 0x03, 0x43, 0x48, 0x54, |
|
507 0x5F, 0x4D, 0x4D, 0x53, 0x00, 0x01, 0x87, 0x10, |
|
508 0x06, 0xAB, 0x01, 0x87, 0x08, 0x06, 0x03, 0x65, |
|
509 0x6D, 0x6F, 0x6D, 0x65, 0x00, 0x01, 0x87, 0x09, |
|
510 0x06, 0x89, 0x01, 0x01, 0x01 |
|
511 ]); |
|
512 |
|
513 /* |
|
514 * Test data from OMA-TS-WAP_ProvCont-V1_1-20090421-C.pdf, clause 6.1 |
|
515 */ |
|
516 let xml_header = |
|
517 "<?xml version=\"1.0\"?>" + |
|
518 "<!DOCTYPE wap-provisioningdoc PUBLIC \"-//WAPFORUM//DTD PROV 1.0//EN\" \"http://www.wapforum.org/DTD/prov.dtd\">"; |
|
519 |
|
520 let xml_body = |
|
521 "<wap-provisioningdoc version=\"1.0\">" + |
|
522 "<characteristic type=\"PXLOGICAL\">" + |
|
523 "<parm name=\"PROXY-ID\" value=\"170.187.51.4\"/>" + |
|
524 "<parm name=\"PROXY-PW\" value=\"proxypasswd\"/>" + |
|
525 "<parm name=\"PPGAUTH-TYPE\" value=\"HTTP-BASIC\"/>" + |
|
526 "<parm name=\"NAME\" value=\"BankMainProxy\"/>" + |
|
527 "<parm name=\"STARTPAGE\" value=\"http://www.bank.com/startpage.wml\"/>" + |
|
528 "<parm name=\"PULLENABLED\" value=\"1\"/>" + |
|
529 "<characteristic type=\"PXAUTHINFO\">" + |
|
530 "<parm name=\"PXAUTH-TYPE\" value=\"HTTP-BASIC\"/>" + |
|
531 "<parm name=\"PXAUTH-ID\" value=\"pxusername\"/>" + |
|
532 "<parm name=\"PXAUTH-PW\" value=\"pxuserpasswd\"/>" + |
|
533 "</characteristic>" + |
|
534 "<characteristic type=\"PXPHYSICAL\">" + |
|
535 "<parm name=\"PHYSICAL-PROXY-ID\" value=\"PROXY 1\"/>" + |
|
536 "<parm name=\"DOMAIN\" value=\"www.bank.com/\"/>" + |
|
537 "<parm name=\"PXADDR\" value=\"170.187.51.3\"/>" + |
|
538 "<parm name=\"PXADDRTYPE\" value=\"IPV4\"/>" + |
|
539 "<parm name=\"PXADDR-FQDN\" value=\"proxy1.operator.com\"/>" + |
|
540 "<parm name=\"TO-NAPID\" value=\"INTERNET\"/>" + |
|
541 "<parm name=\"TO-NAPID\" value=\"NAP1\"/>" + |
|
542 "<characteristic type=\"PORT\">" + |
|
543 "<parm name=\"PORTNBR\" value=\"9203\"/>" + |
|
544 "</characteristic>" + |
|
545 "</characteristic>" + |
|
546 "</characteristic>" + |
|
547 "<characteristic type=\"NAPDEF\">" + |
|
548 "<parm name=\"NAPID\" value=\"NAP1\"/>" + |
|
549 "<parm name=\"BEARER\" value=\"GSM-CSD\"/>" + |
|
550 "<parm name=\"NAME\" value=\"MY ISP CSD\"/>" + |
|
551 "<parm name=\"NAP-ADDRESS\" value=\"+35808124002\"/>" + |
|
552 "<parm name=\"NAP-ADDRTYPE\" value=\"E164\"/>" + |
|
553 "<parm name=\"DNS-ADDR\" value=\"170.187.51.2\"/>" + |
|
554 "<parm name=\"CALLTYPE\" value=\"ANALOG-MODEM\"/>" + |
|
555 "<parm name=\"MAX-NUM-RETRY\" value=\"3\"/>" + |
|
556 "<parm name=\"FIRST-RETRY-TIMEOUT\" value=\"6\"/>" + |
|
557 "<parm name=\"REREG-THRESHOLD\" value=\"30\"/>" + |
|
558 "<parm name=\"T-BIT\"/>" + |
|
559 "<characteristic type=\"NAPAUTHINFO\">" + |
|
560 "<parm name=\"AUTHTYPE\" value=\"PAP\"/>" + |
|
561 "<parm name=\"AUTHNAME\" value=\"wwwmmmuser\"/>" + |
|
562 "<parm name=\"AUTHSECRET\" value=\"wwwmmmsecret\"/>" + |
|
563 "<parm name=\"AUTH-ENTITY\" value=\"HA\"/>" + |
|
564 "<parm name=\"SPI\" value=\"FEDCBA98\"/>" + |
|
565 "</characteristic>" + |
|
566 "<characteristic type=\"VALIDITY\">" + |
|
567 "<parm name=\"COUNTRY\" value=\"228\"/>" + |
|
568 "<parm name=\"NETWORK\" value=\"001\"/>" + |
|
569 "</characteristic>" + |
|
570 "</characteristic>" + |
|
571 "<characteristic type=\"ACCESS\">" + |
|
572 "</characteristic>" + |
|
573 "</wap-provisioningdoc>"; |
|
574 |
|
575 let wbxml_code_page_content = |
|
576 "<wap-provisioningdoc>" + |
|
577 "<characteristic type=\"BOOTSTRAP\">" + |
|
578 "<parm name=\"NAME\" value=\"CHT_emome\"/>" + |
|
579 "</characteristic>" + |
|
580 "<characteristic type=\"APPLICATION\">" + |
|
581 "<parm name=\"APPID\" value=\"w2\"/>" + |
|
582 "<parm name=\"TO-PROXY\" value=\"WPROXY\"/>" + |
|
583 "<parm name=\"NAME\" value=\"CHT_emome\"/>" + |
|
584 "<characteristic type=\"RESOURCE\">" + |
|
585 "<parm name=\"URI\" value=\"http://wap.emome.net/\"/>" + |
|
586 "<parm name=\"NAME\" value=\"CHT_emome\"/>" + |
|
587 "<parm name=\"STARTPAGE\"/>" + |
|
588 "</characteristic>" + |
|
589 "</characteristic>" + |
|
590 "<characteristic type=\"APPLICATION\">" + |
|
591 "<parm name=\"APPID\" value=\"w4\"/>" + |
|
592 "<parm name=\"TO-PROXY\" value=\"MPROXY\"/>" + |
|
593 "<parm name=\"ADDR\" value=\"http://mms:8002\"/>" + |
|
594 "</characteristic>" + |
|
595 "<characteristic type=\"PXLOGICAL\">" + |
|
596 "<parm name=\"PROXY-ID\" value=\"WPROXY\"/>" + |
|
597 "<parm name=\"NAME\" value=\"CHT_emome\"/>" + |
|
598 "<parm name=\"STARTPAGE\" value=\"http://wap.emome.net/\"/>" + |
|
599 "<characteristic type=\"PXPHYSICAL\">" + |
|
600 "<parm name=\"PHYSICAL-PROXY-ID\" value=\"PROXY1\"/>" + |
|
601 "<parm name=\"PXADDR\" value=\"10.1.1.1\"/>" + |
|
602 "<parm name=\"PXADDRTYPE\" value=\"IPV4\"/>" + |
|
603 "<parm name=\"TO-NAPID\" value=\"CHT_emome\"/>" + |
|
604 "<characteristic type=\"PORT\">" + |
|
605 "<parm name=\"PORTNBR\" value=\"8080\"/>" + |
|
606 "</characteristic>" + |
|
607 "</characteristic>" + |
|
608 "</characteristic>" + |
|
609 "<characteristic type=\"PXLOGICAL\">" + |
|
610 "<parm name=\"PROXY-ID\" value=\"MPROXY\"/>" + |
|
611 "<parm name=\"NAME\" value=\"CHT_MMS\"/>" + |
|
612 "<characteristic type=\"PXPHYSICAL\">" + |
|
613 "<parm name=\"PHYSICAL-PROXY-ID\" value=\"PROXY2\"/>" + |
|
614 "<parm name=\"PXADDR\" value=\"10.1.1.1\"/>" + |
|
615 "<parm name=\"PXADDRTYPE\" value=\"IPV4\"/>" + |
|
616 "<parm name=\"TO-NAPID\" value=\"CHT_MMS\"/>" + |
|
617 "<characteristic type=\"PORT\">" + |
|
618 "<parm name=\"PORTNBR\" value=\"8080\"/>" + |
|
619 "</characteristic>" + |
|
620 "</characteristic>" + |
|
621 "</characteristic>" + |
|
622 "<characteristic type=\"NAPDEF\">" + |
|
623 "<parm name=\"NAPID\" value=\"CHT_emome\"/>" + |
|
624 "<parm name=\"NAME\" value=\"CHT_emome\"/>" + |
|
625 "<parm name=\"BEARER\" value=\"GSM-GPRS\"/>" + |
|
626 "<parm name=\"NAP-ADDRESS\" value=\"emome\"/>" + |
|
627 "<parm name=\"NAP-ADDRTYPE\" value=\"APN\"/>" + |
|
628 "</characteristic>" + |
|
629 "<characteristic type=\"NAPDEF\">" + |
|
630 "<parm name=\"NAPID\" value=\"CHT_MMS\"/>" + |
|
631 "<parm name=\"NAME\" value=\"CHT_MMS\"/>" + |
|
632 "<parm name=\"BEARER\" value=\"GSM-GPRS\"/>" + |
|
633 "<parm name=\"NAP-ADDRESS\" value=\"emome\"/>" + |
|
634 "<parm name=\"NAP-ADDRTYPE\" value=\"APN\"/>" + |
|
635 "</characteristic>" + |
|
636 "</wap-provisioningdoc>"; |
|
637 |
|
638 /** |
|
639 * CP in plain text |
|
640 * |
|
641 * Test case from OMA-TS-WAP_ProvCont-V1_1-20090421-C.pdf, clause 6.1 |
|
642 */ |
|
643 add_test(function test_cp_parse_plain_text() { |
|
644 test_parser(text_data_array, "text/vnd.wap.connectivity-xml", { |
|
645 contentType: "text/vnd.wap.connectivity-xml", |
|
646 content: xml_header + xml_body |
|
647 }); |
|
648 |
|
649 run_next_test(); |
|
650 }); |
|
651 |
|
652 /** |
|
653 * CP compressed by WBXML |
|
654 * |
|
655 * Test case from OMA-TS-WAP_ProvCont-V1_1-20090421-C.pdf, Appendix C |
|
656 */ |
|
657 add_test(function test_cp_parse_wbxml() { |
|
658 test_parser(wbxml_data_array, "application/vnd.wap.connectivity-wbxml", { |
|
659 contentType: "text/vnd.wap.connectivity-xml", |
|
660 content: xml_body |
|
661 }); |
|
662 |
|
663 run_next_test(); |
|
664 }); |
|
665 |
|
666 /** |
|
667 * CP compressed by WBXML with VENDORCONFIG |
|
668 */ |
|
669 add_test(function test_cp_parse_wbxml() { |
|
670 let wbxml_vendor_config_data_array = new Uint8Array([ |
|
671 0x03, 0x0b, 0x6a, 0x05, 0x4e, 0x41, 0x50, 0x31, |
|
672 0x00, 0xC5, 0x46, 0x01, 0xc6, 0x57, 0x01, 0x01 |
|
673 ]); |
|
674 |
|
675 test_parser(wbxml_vendor_config_data_array, "application/vnd.wap.connectivity-wbxml", { |
|
676 contentType: "application/vnd.wap.connectivity-wbxml", |
|
677 content: wbxml_vendor_config_data_array |
|
678 }); |
|
679 |
|
680 run_next_test(); |
|
681 }); |
|
682 |
|
683 /** |
|
684 * CP compressed by WBXML with code page switch |
|
685 */ |
|
686 add_test(function test_cp_parse_wbxml_code_page() { |
|
687 test_parser(wbxml_code_page_data_array, "application/vnd.wap.connectivity-wbxml", { |
|
688 contentType: "text/vnd.wap.connectivity-xml", |
|
689 content: wbxml_code_page_content |
|
690 }); |
|
691 |
|
692 run_next_test(); |
|
693 }); |
|
694 |
|
695 /** |
|
696 * HMAC test |
|
697 */ |
|
698 add_test(function test_cp_hmac_userpin() { |
|
699 test_hmac(wbxml_code_page_data_array, |
|
700 "AA2DC41FC48AEEF3FED7351B1EE704461A8894D4", |
|
701 "0000", |
|
702 { |
|
703 checked: true, |
|
704 pass: true |
|
705 }); |
|
706 |
|
707 run_next_test(); |
|
708 }); |
|
709 |
|
710 add_test(function test_cp_hmac_networkpin() { |
|
711 let wbxml_empty_data_array = new Uint8Array([ |
|
712 0x03, 0x0b, 0x6a, 0x00, 0x45, 0x01 |
|
713 ]); |
|
714 |
|
715 test_hmac(wbxml_empty_data_array, |
|
716 "1AF545FE2823DC9347064450F90FF1BBF957E146", |
|
717 CP.Authenticator.formatImsi("466923103145252"), |
|
718 { |
|
719 checked: true, |
|
720 pass: true |
|
721 }); |
|
722 |
|
723 run_next_test(); |
|
724 }); |