diff options
146 files changed, 4390 insertions, 2837 deletions
@@ -1,3 +1,1535 @@ | |||
1 | commit 7de4b03a6e4071d454b72927ffaf52949fa34545 | ||
2 | Author: djm@openbsd.org <djm@openbsd.org> | ||
3 | Date: Wed Jul 1 02:32:17 2015 +0000 | ||
4 | |||
5 | upstream commit | ||
6 | |||
7 | twiddle; (this commit marks the openssh-6.9 release) | ||
8 | |||
9 | Upstream-ID: 78500582819f61dd8adee36ec5cc9b9ac9351234 | ||
10 | |||
11 | commit 1bf477d3cdf1a864646d59820878783d42357a1d | ||
12 | Author: djm@openbsd.org <djm@openbsd.org> | ||
13 | Date: Wed Jul 1 02:26:31 2015 +0000 | ||
14 | |||
15 | upstream commit | ||
16 | |||
17 | better refuse ForwardX11Trusted=no connections attempted | ||
18 | after ForwardX11Timeout expires; reported by Jann Horn | ||
19 | |||
20 | Upstream-ID: bf0fddadc1b46a0334e26c080038313b4b6dea21 | ||
21 | |||
22 | commit 47aa7a0f8551b471fcae0447c1d78464f6dba869 | ||
23 | Author: djm@openbsd.org <djm@openbsd.org> | ||
24 | Date: Wed Jul 1 01:56:13 2015 +0000 | ||
25 | |||
26 | upstream commit | ||
27 | |||
28 | put back default PermitRootLogin=no | ||
29 | |||
30 | Upstream-ID: 7bdedd5cead99c57ed5571f3b6b7840922d5f728 | ||
31 | |||
32 | commit 984b064fe2a23733733262f88d2e1b2a1a501662 | ||
33 | Author: djm@openbsd.org <djm@openbsd.org> | ||
34 | Date: Wed Jul 1 01:55:13 2015 +0000 | ||
35 | |||
36 | upstream commit | ||
37 | |||
38 | openssh-6.9 | ||
39 | |||
40 | Upstream-ID: 6cfe8e1904812531080e6ab6e752d7001b5b2d45 | ||
41 | |||
42 | commit d921082ed670f516652eeba50705e1e9f6325346 | ||
43 | Author: djm@openbsd.org <djm@openbsd.org> | ||
44 | Date: Wed Jul 1 01:55:00 2015 +0000 | ||
45 | |||
46 | upstream commit | ||
47 | |||
48 | reset default PermitRootLogin to 'yes' (momentarily, for | ||
49 | release) | ||
50 | |||
51 | Upstream-ID: cad8513527066e65dd7a1c16363d6903e8cefa24 | ||
52 | |||
53 | commit 66295e0e1ba860e527f191b6325d2d77dec4dbce | ||
54 | Author: Damien Miller <djm@mindrot.org> | ||
55 | Date: Wed Jul 1 11:49:12 2015 +1000 | ||
56 | |||
57 | crank version numbers for release | ||
58 | |||
59 | commit 37035c07d4f26bb1fbe000d2acf78efdb008681d | ||
60 | Author: Damien Miller <djm@mindrot.org> | ||
61 | Date: Wed Jul 1 10:49:37 2015 +1000 | ||
62 | |||
63 | s/--with-ssh1/--without-ssh1/ | ||
64 | |||
65 | commit 629df770dbadc2accfbe1c81b3f31f876d0acd84 | ||
66 | Author: djm@openbsd.org <djm@openbsd.org> | ||
67 | Date: Tue Jun 30 05:25:07 2015 +0000 | ||
68 | |||
69 | upstream commit | ||
70 | |||
71 | fatal() when a remote window update causes the window | ||
72 | value to overflow. Reported by Georg Wicherski, ok markus@ | ||
73 | |||
74 | Upstream-ID: ead397a9aceb3bf74ebfa5fcaf259d72e569f351 | ||
75 | |||
76 | commit f715afebe735d61df3fd30ad72d9ac1c8bd3b5f2 | ||
77 | Author: djm@openbsd.org <djm@openbsd.org> | ||
78 | Date: Tue Jun 30 05:23:25 2015 +0000 | ||
79 | |||
80 | upstream commit | ||
81 | |||
82 | Fix math error in remote window calculations that causes | ||
83 | eventual stalls for datagram channels. Reported by Georg Wicherski, ok | ||
84 | markus@ | ||
85 | |||
86 | Upstream-ID: be54059d11bf64e0d85061f7257f53067842e2ab | ||
87 | |||
88 | commit 52fb6b9b034fcfd24bf88cc7be313e9c31de9889 | ||
89 | Author: Damien Miller <djm@mindrot.org> | ||
90 | Date: Tue Jun 30 16:05:40 2015 +1000 | ||
91 | |||
92 | skip IPv6-related portions on hosts without IPv6 | ||
93 | |||
94 | with Tim Rice | ||
95 | |||
96 | commit 512caddf590857af6aa12218461b5c0441028cf5 | ||
97 | Author: djm@openbsd.org <djm@openbsd.org> | ||
98 | Date: Mon Jun 29 22:35:12 2015 +0000 | ||
99 | |||
100 | upstream commit | ||
101 | |||
102 | add getpid to sandbox, reachable by grace_alarm_handler | ||
103 | |||
104 | reported by Jakub Jelen; bz#2419 | ||
105 | |||
106 | Upstream-ID: d0da1117c16d4c223954995d35b0f47c8f684cd8 | ||
107 | |||
108 | commit 78c2a4f883ea9aba866358e2acd9793a7f42ca93 | ||
109 | Author: djm@openbsd.org <djm@openbsd.org> | ||
110 | Date: Fri Jun 26 05:13:20 2015 +0000 | ||
111 | |||
112 | upstream commit | ||
113 | |||
114 | Fix \-escaping bug that caused forward path parsing to skip | ||
115 | two characters and skip past the end of the string. | ||
116 | |||
117 | Based on patch by Salvador Fandino; ok dtucker@ | ||
118 | |||
119 | Upstream-ID: 7b879dc446335677cbe4cb549495636a0535f3bd | ||
120 | |||
121 | commit bc20205c91c9920361d12b15d253d4997dba494a | ||
122 | Author: Damien Miller <djm@mindrot.org> | ||
123 | Date: Thu Jun 25 09:51:39 2015 +1000 | ||
124 | |||
125 | add missing pselect6 | ||
126 | |||
127 | patch from Jakub Jelen | ||
128 | |||
129 | commit 9d27fb73b4a4e5e99cb880af790d5b1ce44f720a | ||
130 | Author: djm@openbsd.org <djm@openbsd.org> | ||
131 | Date: Wed Jun 24 23:47:23 2015 +0000 | ||
132 | |||
133 | upstream commit | ||
134 | |||
135 | correct test to sshkey_sign(); spotted by Albert S. | ||
136 | |||
137 | Upstream-ID: 5f7347f40f0ca6abdaca2edb3bd62f4776518933 | ||
138 | |||
139 | commit 7ed01a96a1911d8b4a9ef4f3d064e1923bfad7e3 | ||
140 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
141 | Date: Wed Jun 24 01:49:19 2015 +0000 | ||
142 | |||
143 | upstream commit | ||
144 | |||
145 | Revert previous commit. We still want to call setgroups | ||
146 | in the case where there are zero groups to remove any that we might otherwise | ||
147 | inherit (as pointed out by grawity at gmail.com) and since the 2nd argument | ||
148 | to setgroups is always a static global it's always valid to dereference in | ||
149 | this case. ok deraadt@ djm@ | ||
150 | |||
151 | Upstream-ID: 895b5ac560a10befc6b82afa778641315725fd01 | ||
152 | |||
153 | commit 882f8bf94f79528caa65b0ba71c185d705bb7195 | ||
154 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
155 | Date: Wed Jun 24 01:49:19 2015 +0000 | ||
156 | |||
157 | upstream commit | ||
158 | |||
159 | Revert previous commit. We still want to call setgroups in | ||
160 | the case where there are zero groups to remove any that we might otherwise | ||
161 | inherit (as pointed out by grawity at gmail.com) and since the 2nd argument | ||
162 | to setgroups is always a static global it's always valid to dereference in | ||
163 | this case. ok deraadt@ djm@ | ||
164 | |||
165 | Upstream-ID: 895b5ac560a10befc6b82afa778641315725fd01 | ||
166 | |||
167 | commit 9488538a726951e82b3a4374f3c558d72c80a89b | ||
168 | Author: djm@openbsd.org <djm@openbsd.org> | ||
169 | Date: Mon Jun 22 23:42:16 2015 +0000 | ||
170 | |||
171 | upstream commit | ||
172 | |||
173 | Don't count successful partial authentication as failures | ||
174 | in monitor; this may have caused the monitor to refuse multiple | ||
175 | authentications that would otherwise have successfully completed; ok markus@ | ||
176 | |||
177 | Upstream-ID: eb74b8e506714d0f649bd5c300f762a527af04a3 | ||
178 | |||
179 | commit 63b78d003bd8ca111a736e6cea6333da50f5f09b | ||
180 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
181 | Date: Mon Jun 22 12:29:57 2015 +0000 | ||
182 | |||
183 | upstream commit | ||
184 | |||
185 | Don't call setgroups if we have zero groups; there's no | ||
186 | guarantee that it won't try to deref the pointer. Based on a patch from mail | ||
187 | at quitesimple.org, ok djm deraadt | ||
188 | |||
189 | Upstream-ID: 2fff85e11d7a9a387ef7fddf41fbfaf566708ab1 | ||
190 | |||
191 | commit 5c15e22c691c79a47747bcf5490126656f97cecd | ||
192 | Author: Damien Miller <djm@mindrot.org> | ||
193 | Date: Thu Jun 18 15:07:56 2015 +1000 | ||
194 | |||
195 | fix syntax error | ||
196 | |||
197 | commit 596dbca82f3f567fb3d2d69af4b4e1d3ba1e6403 | ||
198 | Author: jsing@openbsd.org <jsing@openbsd.org> | ||
199 | Date: Mon Jun 15 18:44:22 2015 +0000 | ||
200 | |||
201 | upstream commit | ||
202 | |||
203 | If AuthorizedPrincipalsCommand is specified, however | ||
204 | AuthorizedPrincipalsFile is not (or is set to "none"), authentication will | ||
205 | potentially fail due to key_cert_check_authority() failing to locate a | ||
206 | principal that matches the username, even though an authorized principal has | ||
207 | already been matched in the output of the subprocess. Fix this by using the | ||
208 | same logic to determine if pw->pw_name should be passed, as is used to | ||
209 | determine if a authorized principal must be matched earlier on. | ||
210 | |||
211 | ok djm@ | ||
212 | |||
213 | Upstream-ID: 43b42302ec846b0ea68aceb40677245391b9409d | ||
214 | |||
215 | commit aff3e94c0d75d0d0fa84ea392b50ab04f8c57905 | ||
216 | Author: jsing@openbsd.org <jsing@openbsd.org> | ||
217 | Date: Mon Jun 15 18:42:19 2015 +0000 | ||
218 | |||
219 | upstream commit | ||
220 | |||
221 | Make the arguments to match_principals_command() similar | ||
222 | to match_principals_file(), by changing the last argument a struct | ||
223 | sshkey_cert * and dereferencing key->cert in the caller. | ||
224 | |||
225 | No functional change. | ||
226 | |||
227 | ok djm@ | ||
228 | |||
229 | Upstream-ID: 533f99b844b21b47342b32b62e198dfffcf8651c | ||
230 | |||
231 | commit 97e2e1596c202a4693468378b16b2353fd2d6c5e | ||
232 | Author: Damien Miller <djm@mindrot.org> | ||
233 | Date: Wed Jun 17 14:36:54 2015 +1000 | ||
234 | |||
235 | trivial optimisation for seccomp-bpf | ||
236 | |||
237 | When doing arg inspection and the syscall doesn't match, skip | ||
238 | past the instruction that reloads the syscall into the accumulator, | ||
239 | since the accumulator hasn't been modified at this point. | ||
240 | |||
241 | commit 99f33d7304893bd9fa04d227cb6e870171cded19 | ||
242 | Author: Damien Miller <djm@mindrot.org> | ||
243 | Date: Wed Jun 17 10:50:51 2015 +1000 | ||
244 | |||
245 | aarch64 support for seccomp-bpf sandbox | ||
246 | |||
247 | Also resort and tidy syscall list. Based on patches by Jakub Jelen | ||
248 | bz#2361; ok dtucker@ | ||
249 | |||
250 | commit 4ef702e1244633c1025ec7cfe044b9ab267097bf | ||
251 | Author: djm@openbsd.org <djm@openbsd.org> | ||
252 | Date: Mon Jun 15 01:32:50 2015 +0000 | ||
253 | |||
254 | upstream commit | ||
255 | |||
256 | return failure on RSA signature error; reported by Albert S | ||
257 | |||
258 | Upstream-ID: e61bb93dbe0349625807b0810bc213a6822121fa | ||
259 | |||
260 | commit a170f22baf18af0b1acf2788b8b715605f41a1f9 | ||
261 | Author: Tim Rice <tim@multitalents.net> | ||
262 | Date: Tue Jun 9 22:41:13 2015 -0700 | ||
263 | |||
264 | Fix t12 rules for out of tree builds. | ||
265 | |||
266 | commit ec04dc4a5515c913121bc04ed261857e68fa5c18 | ||
267 | Author: millert@openbsd.org <millert@openbsd.org> | ||
268 | Date: Fri Jun 5 15:13:13 2015 +0000 | ||
269 | |||
270 | upstream commit | ||
271 | |||
272 | For "ssh -L 12345:/tmp/sock" don't fail with "No forward host | ||
273 | name." (we have a path, not a host name). Based on a diff from Jared | ||
274 | Yanovich. OK djm@ | ||
275 | |||
276 | Upstream-ID: 2846b0a8c7de037e33657f95afbd282837fc213f | ||
277 | |||
278 | commit 732d61f417a6aea0aa5308b59cb0f563bcd6edd6 | ||
279 | Author: djm@openbsd.org <djm@openbsd.org> | ||
280 | Date: Fri Jun 5 03:44:14 2015 +0000 | ||
281 | |||
282 | upstream commit | ||
283 | |||
284 | typo: accidental repetition; bz#2386 | ||
285 | |||
286 | Upstream-ID: 45e620d99f6bc301e5949d34a54027374991c88b | ||
287 | |||
288 | commit adfb24c69d1b6f5e758db200866c711e25a2ba73 | ||
289 | Author: Darren Tucker <dtucker@zip.com.au> | ||
290 | Date: Fri Jun 5 14:51:40 2015 +1000 | ||
291 | |||
292 | Add Linux powerpc64le and powerpcle entries. | ||
293 | |||
294 | Stopgap to resolve bz#2409 because we are so close to release and will | ||
295 | update config.guess and friends shortly after the release. ok djm@ | ||
296 | |||
297 | commit a1195a0fdc9eddddb04d3e9e44c4775431cb77da | ||
298 | Merge: 6397eed d2480bc | ||
299 | Author: Tim Rice <tim@multitalents.net> | ||
300 | Date: Wed Jun 3 21:43:13 2015 -0700 | ||
301 | |||
302 | Merge branch 'master' of git.mindrot.org:/var/git/openssh | ||
303 | |||
304 | commit 6397eedf953b2b973d2d7cbb504ab501a07f8ddc | ||
305 | Author: Tim Rice <tim@multitalents.net> | ||
306 | Date: Wed Jun 3 21:41:11 2015 -0700 | ||
307 | |||
308 | Remove unneeded backslashes. Patch from Ángel González | ||
309 | |||
310 | commit d2480bcac1caf31b03068de877a47d6e1027bf6d | ||
311 | Author: Darren Tucker <dtucker@zip.com.au> | ||
312 | Date: Thu Jun 4 14:10:55 2015 +1000 | ||
313 | |||
314 | Remove redundant include of stdarg.h. bz#2410 | ||
315 | |||
316 | commit 5e67859a623826ccdf2df284cbb37e2d8e2787eb | ||
317 | Author: djm@openbsd.org <djm@openbsd.org> | ||
318 | Date: Tue Jun 2 09:10:40 2015 +0000 | ||
319 | |||
320 | upstream commit | ||
321 | |||
322 | mention CheckHostIP adding addresses to known_hosts; | ||
323 | bz#1993; ok dtucker@ | ||
324 | |||
325 | Upstream-ID: fd44b68440fd0dc29abf9f2d3f703d74a2396cb7 | ||
326 | |||
327 | commit d7a58bbac6583e33fd5eca8e2c2cc70c57617818 | ||
328 | Author: Darren Tucker <dtucker@zip.com.au> | ||
329 | Date: Tue Jun 2 20:15:26 2015 +1000 | ||
330 | |||
331 | Replace strcpy with strlcpy. | ||
332 | |||
333 | ok djm, sanity check by Corinna Vinschen. | ||
334 | |||
335 | commit 51a1c2115265c6e80ede8a5c9dccada9aeed7143 | ||
336 | Author: Damien Miller <djm@mindrot.org> | ||
337 | Date: Fri May 29 18:27:21 2015 +1000 | ||
338 | |||
339 | skip, rather than fatal when run without SUDO set | ||
340 | |||
341 | commit 599f01142a376645b15cbc9349d7e8975e1cf245 | ||
342 | Author: Damien Miller <djm@mindrot.org> | ||
343 | Date: Fri May 29 18:03:15 2015 +1000 | ||
344 | |||
345 | fix merge botch that left ",," in KEX algs | ||
346 | |||
347 | commit 0c2a81dfc21822f2423edd30751e5ec53467b347 | ||
348 | Author: Damien Miller <djm@mindrot.org> | ||
349 | Date: Fri May 29 17:08:28 2015 +1000 | ||
350 | |||
351 | re-enable SSH protocol 1 at compile time | ||
352 | |||
353 | commit db438f9285d64282d3ac9e8c0944f59f037c0151 | ||
354 | Author: djm@openbsd.org <djm@openbsd.org> | ||
355 | Date: Fri May 29 03:05:13 2015 +0000 | ||
356 | |||
357 | upstream commit | ||
358 | |||
359 | make this work without SUDO set; ok dtucker@ | ||
360 | |||
361 | Upstream-Regress-ID: bca88217b70bce2fe52b23b8e06bdeb82d98c715 | ||
362 | |||
363 | commit 1d9a2e2849c9864fe75daabf433436341c968e14 | ||
364 | Author: djm@openbsd.org <djm@openbsd.org> | ||
365 | Date: Thu May 28 07:37:31 2015 +0000 | ||
366 | |||
367 | upstream commit | ||
368 | |||
369 | wrap all moduli-related code in #ifdef WITH_OPENSSL. | ||
370 | based on patch from Reuben Hawkins; bz#2388 feedback and ok dtucker@ | ||
371 | |||
372 | Upstream-ID: d80cfc8be3e6ec65b3fac9e87c4466533b31b7cf | ||
373 | |||
374 | commit 496aeb25bc2d6c434171292e4714771b594bd00e | ||
375 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
376 | Date: Thu May 28 05:41:29 2015 +0000 | ||
377 | |||
378 | upstream commit | ||
379 | |||
380 | Increase the allowed length of the known host file name | ||
381 | in the log message to be consistent with other cases. Part of bz#1993, ok | ||
382 | deraadt. | ||
383 | |||
384 | Upstream-ID: a9e97567be49f25daf286721450968251ff78397 | ||
385 | |||
386 | commit dd2cfeb586c646ff8d70eb93567b2e559ace5b14 | ||
387 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
388 | Date: Thu May 28 05:09:45 2015 +0000 | ||
389 | |||
390 | upstream commit | ||
391 | |||
392 | Fix typo (keywork->keyword) | ||
393 | |||
394 | Upstream-ID: 8aacd0f4089c0a244cf43417f4f9045dfaeab534 | ||
395 | |||
396 | commit 9cc6842493fbf23025ccc1edab064869640d3bec | ||
397 | Author: djm@openbsd.org <djm@openbsd.org> | ||
398 | Date: Thu May 28 04:50:53 2015 +0000 | ||
399 | |||
400 | upstream commit | ||
401 | |||
402 | add error message on ftruncate failure; bz#2176 | ||
403 | |||
404 | Upstream-ID: cbcc606e0b748520c74a210d8f3cc9718d3148cf | ||
405 | |||
406 | commit d1958793a0072c22be26d136dbda5ae263e717a0 | ||
407 | Author: djm@openbsd.org <djm@openbsd.org> | ||
408 | Date: Thu May 28 04:40:13 2015 +0000 | ||
409 | |||
410 | upstream commit | ||
411 | |||
412 | make ssh-keygen default to ed25519 keys when compiled | ||
413 | without OpenSSL; bz#2388, ok dtucker@ | ||
414 | |||
415 | Upstream-ID: 85a471fa6d3fa57a7b8e882d22cfbfc1d84cdc71 | ||
416 | |||
417 | commit 3ecde664c9fc5fb3667aedf9e6671462600f6496 | ||
418 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
419 | Date: Wed May 27 23:51:10 2015 +0000 | ||
420 | |||
421 | upstream commit | ||
422 | |||
423 | Reorder client proposal to prefer | ||
424 | diffie-hellman-group-exchange-sha1 over diffie-hellman-group14-sha1. ok djm@ | ||
425 | |||
426 | Upstream-ID: 552c08d47347c3ee1a9a57d88441ab50abe17058 | ||
427 | |||
428 | commit 40f64292b907afd0a674fdbf3e4c2356d17a7d68 | ||
429 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
430 | Date: Wed May 27 23:39:18 2015 +0000 | ||
431 | |||
432 | upstream commit | ||
433 | |||
434 | Add a stronger (4k bit) fallback group that sshd can use | ||
435 | when the moduli file is missing or broken, sourced from RFC3526. bz#2302, ok | ||
436 | markus@ (earlier version), djm@ | ||
437 | |||
438 | Upstream-ID: b635215746a25a829d117673d5e5a76d4baee7f4 | ||
439 | |||
440 | commit 5ab7d5fa03ad55bc438fab45dfb3aeb30a3c237a | ||
441 | Author: Darren Tucker <dtucker@zip.com.au> | ||
442 | Date: Thu May 28 10:03:40 2015 +1000 | ||
443 | |||
444 | New moduli file from OpenBSD, removing 1k groups. | ||
445 | |||
446 | Remove 1k bit groups. ok deraadt@, markus@ | ||
447 | |||
448 | commit a71ba58adf34e599f30cdda6e9b93ae6e3937eea | ||
449 | Author: djm@openbsd.org <djm@openbsd.org> | ||
450 | Date: Wed May 27 05:15:02 2015 +0000 | ||
451 | |||
452 | upstream commit | ||
453 | |||
454 | support PKCS#11 devices with external PIN entry devices | ||
455 | bz#2240, based on patch from Dirk-Willem van Gulik; feedback and ok dtucker@ | ||
456 | |||
457 | Upstream-ID: 504568992b55a8fc984375242b1bd505ced61b0d | ||
458 | |||
459 | commit b282fec1aa05246ed3482270eb70fc3ec5f39a00 | ||
460 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
461 | Date: Tue May 26 23:23:40 2015 +0000 | ||
462 | |||
463 | upstream commit | ||
464 | |||
465 | Cap DH-GEX group size at 4kbits for Cisco implementations. | ||
466 | Some of them will choke when asked for preferred sizes >4k instead of | ||
467 | returning the 4k group that they do have. bz#2209, ok djm@ | ||
468 | |||
469 | Upstream-ID: 54b863a19713446b7431f9d06ad0532b4fcfef8d | ||
470 | |||
471 | commit 3e91b4e8b0dc2b4b7e7d42cf6e8994a32e4cb55e | ||
472 | Author: djm@openbsd.org <djm@openbsd.org> | ||
473 | Date: Sun May 24 23:39:16 2015 +0000 | ||
474 | |||
475 | upstream commit | ||
476 | |||
477 | add missing 'c' option to getopt(), case statement was | ||
478 | already there; from Felix Bolte | ||
479 | |||
480 | Upstream-ID: 9b19b4e2e0b54d6fefa0dfac707c51cf4bae3081 | ||
481 | |||
482 | commit 64a89ec07660abba4d0da7c0095b7371c98bab62 | ||
483 | Author: jsg@openbsd.org <jsg@openbsd.org> | ||
484 | Date: Sat May 23 14:28:37 2015 +0000 | ||
485 | |||
486 | upstream commit | ||
487 | |||
488 | fix a memory leak in an error path ok markus@ dtucker@ | ||
489 | |||
490 | Upstream-ID: bc1da0f205494944918533d8780fde65dff6c598 | ||
491 | |||
492 | commit f948737449257d2cb83ffcfe7275eb79b677fd4a | ||
493 | Author: djm@openbsd.org <djm@openbsd.org> | ||
494 | Date: Fri May 22 05:28:45 2015 +0000 | ||
495 | |||
496 | upstream commit | ||
497 | |||
498 | mention ssh-keygen -E for comparing legacy MD5 | ||
499 | fingerprints; bz#2332 | ||
500 | |||
501 | Upstream-ID: 079a3669549041dbf10dbc072d9563f0dc3b2859 | ||
502 | |||
503 | commit 0882332616e4f0272c31cc47bf2018f9cb258a4e | ||
504 | Author: djm@openbsd.org <djm@openbsd.org> | ||
505 | Date: Fri May 22 04:45:52 2015 +0000 | ||
506 | |||
507 | upstream commit | ||
508 | |||
509 | Reorder EscapeChar option parsing to avoid a single-byte | ||
510 | out- of-bounds read. bz#2396 from Jaak Ristioja; ok dtucker@ | ||
511 | |||
512 | Upstream-ID: 1dc6b5b63d1c8d9a88619da0b27ade461d79b060 | ||
513 | |||
514 | commit d7c31da4d42c115843edee2074d7d501f8804420 | ||
515 | Author: djm@openbsd.org <djm@openbsd.org> | ||
516 | Date: Fri May 22 03:50:02 2015 +0000 | ||
517 | |||
518 | upstream commit | ||
519 | |||
520 | add knob to relax GSSAPI host credential check for | ||
521 | multihomed hosts bz#928, patch by Simon Wilkinson; ok dtucker | ||
522 | (kerberos/GSSAPI is not compiled by default on OpenBSD) | ||
523 | |||
524 | Upstream-ID: 15ddf1c6f7fd9d98eea9962f480079ae3637285d | ||
525 | |||
526 | commit aa72196a00be6e0b666215edcffbc10af234cb0e | ||
527 | Author: Darren Tucker <dtucker@zip.com.au> | ||
528 | Date: Fri May 22 17:49:46 2015 +1000 | ||
529 | |||
530 | Include signal.h for sig_atomic_t, used by kex.h. | ||
531 | |||
532 | bz#2402, from tomas.kuthan at oracle com. | ||
533 | |||
534 | commit 8b02481143d75e91c49d1bfae0876ac1fbf9511a | ||
535 | Author: Darren Tucker <dtucker@zip.com.au> | ||
536 | Date: Fri May 22 12:47:24 2015 +1000 | ||
537 | |||
538 | Import updated moduli file from OpenBSD. | ||
539 | |||
540 | commit 4739e8d5e1c0be49624082bd9f6b077e9e758db9 | ||
541 | Author: djm@openbsd.org <djm@openbsd.org> | ||
542 | Date: Thu May 21 12:01:19 2015 +0000 | ||
543 | |||
544 | upstream commit | ||
545 | |||
546 | Support "ssh-keygen -lF hostname" to find search known_hosts | ||
547 | and print key hashes. Already advertised by ssh-keygen(1), but not delivered | ||
548 | by code; ok dtucker@ | ||
549 | |||
550 | Upstream-ID: 459e0e2bf39825e41b0811c336db2d56a1c23387 | ||
551 | |||
552 | commit e97201feca10b5196da35819ae516d0b87cf3a50 | ||
553 | Author: Damien Miller <djm@mindrot.org> | ||
554 | Date: Thu May 21 17:55:15 2015 +1000 | ||
555 | |||
556 | conditionalise util.h inclusion | ||
557 | |||
558 | commit 13640798c7dd011ece0a7d02841fe48e94cfa0e0 | ||
559 | Author: djm@openbsd.org <djm@openbsd.org> | ||
560 | Date: Thu May 21 06:44:25 2015 +0000 | ||
561 | |||
562 | upstream commit | ||
563 | |||
564 | regress test for AuthorizedPrincipalsCommand | ||
565 | |||
566 | Upstream-Regress-ID: c658fbf1ab6b6011dc83b73402322e396f1e1219 | ||
567 | |||
568 | commit 84452c5d03c21f9bfb28c234e0dc1dc67dd817b1 | ||
569 | Author: djm@openbsd.org <djm@openbsd.org> | ||
570 | Date: Thu May 21 06:40:02 2015 +0000 | ||
571 | |||
572 | upstream commit | ||
573 | |||
574 | regress test for AuthorizedKeysCommand arguments | ||
575 | |||
576 | Upstream-Regress-ID: bbd65c13c6b3be9a442ec115800bff9625898f12 | ||
577 | |||
578 | commit bcc50d816187fa9a03907ac1f3a52f04a52e10d1 | ||
579 | Author: djm@openbsd.org <djm@openbsd.org> | ||
580 | Date: Thu May 21 06:43:30 2015 +0000 | ||
581 | |||
582 | upstream commit | ||
583 | |||
584 | add AuthorizedPrincipalsCommand that allows getting | ||
585 | authorized_principals from a subprocess rather than a file, which is quite | ||
586 | useful in deployments with large userbases | ||
587 | |||
588 | feedback and ok markus@ | ||
589 | |||
590 | Upstream-ID: aa1bdac7b16fc6d2fa3524ef08f04c7258d247f6 | ||
591 | |||
592 | commit 24232a3e5ab467678a86aa67968bbb915caffed4 | ||
593 | Author: djm@openbsd.org <djm@openbsd.org> | ||
594 | Date: Thu May 21 06:38:35 2015 +0000 | ||
595 | |||
596 | upstream commit | ||
597 | |||
598 | support arguments to AuthorizedKeysCommand | ||
599 | |||
600 | bz#2081 loosely based on patch by Sami Hartikainen | ||
601 | feedback and ok markus@ | ||
602 | |||
603 | Upstream-ID: b080387a14aa67dddd8ece67c00f268d626541f7 | ||
604 | |||
605 | commit d80fbe41a57c72420c87a628444da16d09d66ca7 | ||
606 | Author: djm@openbsd.org <djm@openbsd.org> | ||
607 | Date: Thu May 21 04:55:51 2015 +0000 | ||
608 | |||
609 | upstream commit | ||
610 | |||
611 | refactor: split base64 encoding of pubkey into its own | ||
612 | sshkey_to_base64() function and out of sshkey_write(); ok markus@ | ||
613 | |||
614 | Upstream-ID: 54fc38f5832e9b91028900819bda46c3959a0c1a | ||
615 | |||
616 | commit 7cc44ef74133a473734bbcbd3484f24d6a7328c5 | ||
617 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
618 | Date: Mon May 18 15:06:05 2015 +0000 | ||
619 | |||
620 | upstream commit | ||
621 | |||
622 | getentropy() and sendsyslog() have been around long | ||
623 | enough. openssh-portable may want the #ifdef's but not base. discussed with | ||
624 | djm few weeks back | ||
625 | |||
626 | Upstream-ID: 0506a4334de108e3fb6c66f8d6e0f9c112866926 | ||
627 | |||
628 | commit 9173d0fbe44de7ebcad8a15618e13a8b8d78902e | ||
629 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
630 | Date: Fri May 15 05:44:21 2015 +0000 | ||
631 | |||
632 | upstream commit | ||
633 | |||
634 | Use a salted hash of the lock passphrase instead of plain | ||
635 | text and do constant-time comparisons of it. Should prevent leaking any | ||
636 | information about it via timing, pointed out by Ryan Castellucci. Add a 0.1s | ||
637 | incrementing delay for each failed unlock attempt up to 10s. ok markus@ | ||
638 | (earlier version), djm@ | ||
639 | |||
640 | Upstream-ID: c599fcc325aa1cc65496b25220b622d22208c85f | ||
641 | |||
642 | commit d028d5d3a697c71b21e4066d8672cacab3caa0a8 | ||
643 | Author: Damien Miller <djm@mindrot.org> | ||
644 | Date: Tue May 5 19:10:58 2015 +1000 | ||
645 | |||
646 | upstream commit | ||
647 | |||
648 | - tedu@cvs.openbsd.org 2015/01/12 03:20:04 | ||
649 | [bcrypt_pbkdf.c] | ||
650 | rename blocks to words. bcrypt "blocks" are unrelated to blowfish blocks, | ||
651 | nor are they the same size. | ||
652 | |||
653 | commit f6391d4e59b058984163ab28f4e317e7a72478f1 | ||
654 | Author: Damien Miller <djm@mindrot.org> | ||
655 | Date: Tue May 5 19:10:23 2015 +1000 | ||
656 | |||
657 | upstream commit | ||
658 | |||
659 | - deraadt@cvs.openbsd.org 2015/01/08 00:30:07 | ||
660 | [bcrypt_pbkdf.c] | ||
661 | declare a local version of MIN(), call it MINIMUM() | ||
662 | |||
663 | commit 8ac6b13cc9113eb47cd9e86c97d7b26b4b71b77f | ||
664 | Author: Damien Miller <djm@mindrot.org> | ||
665 | Date: Tue May 5 19:09:46 2015 +1000 | ||
666 | |||
667 | upstream commit | ||
668 | |||
669 | - djm@cvs.openbsd.org 2014/12/30 01:41:43 | ||
670 | [bcrypt_pbkdf.c] | ||
671 | typo in comment: ouput => output | ||
672 | |||
673 | commit 1f792489d5cf86a4f4e3003e6e9177654033f0f2 | ||
674 | Author: djm@openbsd.org <djm@openbsd.org> | ||
675 | Date: Mon May 4 06:10:48 2015 +0000 | ||
676 | |||
677 | upstream commit | ||
678 | |||
679 | Remove pattern length argument from match_pattern_list(), we | ||
680 | only ever use it for strlen(pattern). | ||
681 | |||
682 | Prompted by hanno AT hboeck.de pointing an out-of-bound read | ||
683 | error caused by an incorrect pattern length found using AFL | ||
684 | and his own tools. | ||
685 | |||
686 | ok markus@ | ||
687 | |||
688 | commit 639d6bc57b1942393ed12fb48f00bc05d4e093e4 | ||
689 | Author: djm@openbsd.org <djm@openbsd.org> | ||
690 | Date: Fri May 1 07:10:01 2015 +0000 | ||
691 | |||
692 | upstream commit | ||
693 | |||
694 | refactor ssh_dispatch_run_fatal() to use sshpkt_fatal() | ||
695 | to better report error conditions. Teach sshpkt_fatal() about ECONNRESET. | ||
696 | |||
697 | Improves error messages on TCP connection resets. bz#2257 | ||
698 | |||
699 | ok dtucker@ | ||
700 | |||
701 | commit 9559d7de34c572d4d3fd990ca211f8ec99f62c4d | ||
702 | Author: djm@openbsd.org <djm@openbsd.org> | ||
703 | Date: Fri May 1 07:08:08 2015 +0000 | ||
704 | |||
705 | upstream commit | ||
706 | |||
707 | a couple of parse targets were missing activep checks, | ||
708 | causing them to be misapplied in match context; bz#2272 diagnosis and | ||
709 | original patch from Sami Hartikainen ok dtucker@ | ||
710 | |||
711 | commit 7e8528cad04b2775c3b7db08abf8fb42e47e6b2a | ||
712 | Author: djm@openbsd.org <djm@openbsd.org> | ||
713 | Date: Fri May 1 04:17:51 2015 +0000 | ||
714 | |||
715 | upstream commit | ||
716 | |||
717 | make handling of AuthorizedPrincipalsFile=none more | ||
718 | consistent with other =none options; bz#2288 from Jakub Jelen; ok dtucker@ | ||
719 | |||
720 | commit ca430d4d9cc0f62eca3b1fb1e2928395b7ce80f7 | ||
721 | Author: djm@openbsd.org <djm@openbsd.org> | ||
722 | Date: Fri May 1 04:03:20 2015 +0000 | ||
723 | |||
724 | upstream commit | ||
725 | |||
726 | remove failed remote forwards established by muliplexing | ||
727 | from the list of active forwards; bz#2363, patch mostly by Yoann Ricordel; ok | ||
728 | dtucker@ | ||
729 | |||
730 | commit 8312cfb8ad88657517b3e23ac8c56c8e38eb9792 | ||
731 | Author: djm@openbsd.org <djm@openbsd.org> | ||
732 | Date: Fri May 1 04:01:58 2015 +0000 | ||
733 | |||
734 | upstream commit | ||
735 | |||
736 | reduce stderr spam when using ssh -S /path/mux -O forward | ||
737 | -R 0:... ok dtucker@ | ||
738 | |||
739 | commit 179be0f5e62f1f492462571944e45a3da660d82b | ||
740 | Author: djm@openbsd.org <djm@openbsd.org> | ||
741 | Date: Fri May 1 03:23:51 2015 +0000 | ||
742 | |||
743 | upstream commit | ||
744 | |||
745 | prevent authorized_keys options picked up on public key | ||
746 | tests without a corresponding private key authentication being applied to | ||
747 | other authentication methods. Reported by halex@, ok markus@ | ||
748 | |||
749 | commit a42d67be65b719a430b7fcaba2a4e4118382723a | ||
750 | Author: djm@openbsd.org <djm@openbsd.org> | ||
751 | Date: Fri May 1 03:20:54 2015 +0000 | ||
752 | |||
753 | upstream commit | ||
754 | |||
755 | Don't make parsing of authorized_keys' environment= | ||
756 | option conditional on PermitUserEnv - always parse it, but only use the | ||
757 | result if the option is enabled. This prevents the syntax of authorized_keys | ||
758 | changing depending on which sshd_config options were enabled. | ||
759 | |||
760 | bz#2329; based on patch from coladict AT gmail.com, ok dtucker@ | ||
761 | |||
762 | commit e661a86353e11592c7ed6a847e19a83609f49e77 | ||
763 | Author: djm@openbsd.org <djm@openbsd.org> | ||
764 | Date: Mon May 4 06:10:48 2015 +0000 | ||
765 | |||
766 | upstream commit | ||
767 | |||
768 | Remove pattern length argument from match_pattern_list(), we | ||
769 | only ever use it for strlen(pattern). | ||
770 | |||
771 | Prompted by hanno AT hboeck.de pointing an out-of-bound read | ||
772 | error caused by an incorrect pattern length found using AFL | ||
773 | and his own tools. | ||
774 | |||
775 | ok markus@ | ||
776 | |||
777 | commit 0ef1de742be2ee4b10381193fe90730925b7f027 | ||
778 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
779 | Date: Thu Apr 23 05:01:19 2015 +0000 | ||
780 | |||
781 | upstream commit | ||
782 | |||
783 | Add a simple regression test for sshd's configuration | ||
784 | parser. Right now, all it does is run the output of sshd -T back through | ||
785 | itself and ensure the output is valid and invariant. | ||
786 | |||
787 | commit 368f83c793275faa2c52f60eaa9bdac155c4254b | ||
788 | Author: djm@openbsd.org <djm@openbsd.org> | ||
789 | Date: Wed Apr 22 01:38:36 2015 +0000 | ||
790 | |||
791 | upstream commit | ||
792 | |||
793 | use correct key for nested certificate test | ||
794 | |||
795 | commit 8d4d1bfddbbd7d21f545dc6997081d1ea1fbc99a | ||
796 | Author: djm@openbsd.org <djm@openbsd.org> | ||
797 | Date: Fri May 1 07:11:47 2015 +0000 | ||
798 | |||
799 | upstream commit | ||
800 | |||
801 | mention that the user's shell from /etc/passwd is used | ||
802 | for commands too; bz#1459 ok dtucker@ | ||
803 | |||
804 | commit 5ab283d0016bbc9d4d71e8e5284d011bc5a930cf | ||
805 | Author: djm@openbsd.org <djm@openbsd.org> | ||
806 | Date: Fri May 8 07:29:00 2015 +0000 | ||
807 | |||
808 | upstream commit | ||
809 | |||
810 | whitespace | ||
811 | |||
812 | Upstream-Regress-ID: 6b708a3e709d5b7fd37890f874bafdff1f597519 | ||
813 | |||
814 | commit 8377d5008ad260048192e1e56ad7d15a56d103dd | ||
815 | Author: djm@openbsd.org <djm@openbsd.org> | ||
816 | Date: Fri May 8 07:26:13 2015 +0000 | ||
817 | |||
818 | upstream commit | ||
819 | |||
820 | whitespace at EOL | ||
821 | |||
822 | Upstream-Regress-ID: 9c48911643d5b05173b36a012041bed4080b8554 | ||
823 | |||
824 | commit c28a3436fa8737709ea88e4437f8f23a6ab50359 | ||
825 | Author: djm@openbsd.org <djm@openbsd.org> | ||
826 | Date: Fri May 8 06:45:13 2015 +0000 | ||
827 | |||
828 | upstream commit | ||
829 | |||
830 | moar whitespace at eol | ||
831 | |||
832 | Upstream-ID: 64eaf872a3ba52ed41e494287e80d40aaba4b515 | ||
833 | |||
834 | commit 2b64c490468fd4ca35ac8d5cc31c0520dc1508bb | ||
835 | Author: djm@openbsd.org <djm@openbsd.org> | ||
836 | Date: Fri May 8 06:41:56 2015 +0000 | ||
837 | |||
838 | upstream commit | ||
839 | |||
840 | whitespace at EOL | ||
841 | |||
842 | Upstream-ID: 57bcf67d666c6fc1ad798aee448fdc3f70f7ec2c | ||
843 | |||
844 | commit 4e636cf201ce6e7e3b9088568218f9d4e2c51712 | ||
845 | Author: djm@openbsd.org <djm@openbsd.org> | ||
846 | Date: Fri May 8 03:56:51 2015 +0000 | ||
847 | |||
848 | upstream commit | ||
849 | |||
850 | whitespace at EOL | ||
851 | |||
852 | commit 38b8272f823dc1dd4e29dbcee83943ed48bb12fa | ||
853 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
854 | Date: Mon May 4 01:47:53 2015 +0000 | ||
855 | |||
856 | upstream commit | ||
857 | |||
858 | Use diff w/out -u for better portability | ||
859 | |||
860 | commit 297060f42d5189a4065ea1b6f0afdf6371fb0507 | ||
861 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
862 | Date: Fri May 8 03:25:07 2015 +0000 | ||
863 | |||
864 | upstream commit | ||
865 | |||
866 | Use xcalloc for permitted_adm_opens instead of xmalloc to | ||
867 | ensure it's zeroed. Fixes post-auth crash with permitopen=none. bz#2355, ok | ||
868 | djm@ | ||
869 | |||
870 | commit 63ebf019be863b2d90492a85e248cf55a6e87403 | ||
871 | Author: djm@openbsd.org <djm@openbsd.org> | ||
872 | Date: Fri May 8 03:17:49 2015 +0000 | ||
873 | |||
874 | upstream commit | ||
875 | |||
876 | don't choke on new-format private keys encrypted with an | ||
877 | AEAD cipher; bz#2366, patch from Ron Frederick; ok markus@ | ||
878 | |||
879 | commit f8484dac678ab3098ae522a5f03bb2530f822987 | ||
880 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
881 | Date: Wed May 6 05:45:17 2015 +0000 | ||
882 | |||
883 | upstream commit | ||
884 | |||
885 | Clarify pseudo-terminal request behaviour and use | ||
886 | "pseudo-terminal" consistently. bz#1716, ok jmc@ "I like it" deraadt@. | ||
887 | |||
888 | commit ea139507bef8bad26e86ed99a42c7233ad115c38 | ||
889 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
890 | Date: Wed May 6 04:07:18 2015 +0000 | ||
891 | |||
892 | upstream commit | ||
893 | |||
894 | Blacklist DH-GEX for specific PuTTY versions known to | ||
895 | send non-RFC4419 DH-GEX messages rather than all versions of PuTTY. | ||
896 | According to Simon Tatham, 0.65 and newer versions will send RFC4419 DH-GEX | ||
897 | messages. ok djm@ | ||
898 | |||
899 | commit b58234f00ee3872eb84f6e9e572a9a34e902e36e | ||
900 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
901 | Date: Tue May 5 10:17:49 2015 +0000 | ||
902 | |||
903 | upstream commit | ||
904 | |||
905 | WinSCP doesn't implement RFC4419 DH-GEX so flag it so we | ||
906 | don't offer that KEX method. ok markus@ | ||
907 | |||
908 | commit d5b1507a207253b39e810e91e68f9598691b7a29 | ||
909 | Author: jsg@openbsd.org <jsg@openbsd.org> | ||
910 | Date: Tue May 5 02:48:17 2015 +0000 | ||
911 | |||
912 | upstream commit | ||
913 | |||
914 | use the sizeof the struct not the sizeof a pointer to the | ||
915 | struct in ssh_digest_start() | ||
916 | |||
917 | This file is only used if ssh is built with OPENSSL=no | ||
918 | |||
919 | ok markus@ | ||
920 | |||
921 | commit a647b9b8e616c231594b2710c925d31b1b8afea3 | ||
922 | Author: Darren Tucker <dtucker@zip.com.au> | ||
923 | Date: Fri May 8 11:07:27 2015 +1000 | ||
924 | |||
925 | Put brackets around mblen() compat constant. | ||
926 | |||
927 | This might help with the reported problem cross compiling for Android | ||
928 | ("error: expected identifier or '(' before numeric constant") but | ||
929 | shouldn't hurt in any case. | ||
930 | |||
931 | commit d1680d36e17244d9af3843aeb5025cb8e40d6c07 | ||
932 | Author: Darren Tucker <dtucker@zip.com.au> | ||
933 | Date: Thu Apr 30 09:18:11 2015 +1000 | ||
934 | |||
935 | xrealloc -> xreallocarray in portable code too. | ||
936 | |||
937 | commit 531a57a3893f9fcd4aaaba8c312b612bbbcc021e | ||
938 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
939 | Date: Wed Apr 29 03:48:56 2015 +0000 | ||
940 | |||
941 | upstream commit | ||
942 | |||
943 | Allow ListenAddress, Port and AddressFamily in any | ||
944 | order. bz#68, ok djm@, jmc@ (for the man page bit). | ||
945 | |||
946 | commit c1d5bcf1aaf1209af02f79e48ba1cbc76a87b56f | ||
947 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
948 | Date: Tue Apr 28 13:47:38 2015 +0000 | ||
949 | |||
950 | upstream commit | ||
951 | |||
952 | enviroment -> environment: apologies to darren for not | ||
953 | spotting that first time round... | ||
954 | |||
955 | commit 43beea053db191cac47c2cd8d3dc1930158aff1a | ||
956 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
957 | Date: Tue Apr 28 10:25:15 2015 +0000 | ||
958 | |||
959 | upstream commit | ||
960 | |||
961 | Fix typo in previous | ||
962 | |||
963 | commit 85b96ef41374f3ddc9139581f87da09b2cd9199e | ||
964 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
965 | Date: Tue Apr 28 10:17:58 2015 +0000 | ||
966 | |||
967 | upstream commit | ||
968 | |||
969 | Document that the TERM environment variable is not | ||
970 | subject to SendEnv and AcceptEnv. bz#2386, based loosely on a patch from | ||
971 | jjelen at redhat, help and ok jmc@ | ||
972 | |||
973 | commit 88a7c598a94ff53f76df228eeaae238d2d467565 | ||
974 | Author: djm@openbsd.org <djm@openbsd.org> | ||
975 | Date: Mon Apr 27 21:42:48 2015 +0000 | ||
976 | |||
977 | upstream commit | ||
978 | |||
979 | Make sshd default to PermitRootLogin=no; ok deraadt@ | ||
980 | rpe@ | ||
981 | |||
982 | commit 734226b4480a6c736096c729fcf6f391400599c7 | ||
983 | Author: djm@openbsd.org <djm@openbsd.org> | ||
984 | Date: Mon Apr 27 01:52:30 2015 +0000 | ||
985 | |||
986 | upstream commit | ||
987 | |||
988 | fix compilation with OPENSSL=no; ok dtucker@ | ||
989 | |||
990 | commit a4b9d2ce1eb7703eaf0809b0c8a82ded8aa4f1c6 | ||
991 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
992 | Date: Mon Apr 27 00:37:53 2015 +0000 | ||
993 | |||
994 | upstream commit | ||
995 | |||
996 | Include stdio.h for FILE (used in sshkey.h) so it | ||
997 | compiles with OPENSSL=no. | ||
998 | |||
999 | commit dbcc652f4ca11fe04e5930c7ef18a219318c6cda | ||
1000 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1001 | Date: Mon Apr 27 00:21:21 2015 +0000 | ||
1002 | |||
1003 | upstream commit | ||
1004 | |||
1005 | allow "sshd -f none" to skip reading the config file, | ||
1006 | much like "ssh -F none" does. ok dtucker | ||
1007 | |||
1008 | commit b7ca276fca316c952f0b90f5adb1448c8481eedc | ||
1009 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
1010 | Date: Fri Apr 24 06:26:49 2015 +0000 | ||
1011 | |||
1012 | upstream commit | ||
1013 | |||
1014 | combine -Dd onto one line and update usage(); | ||
1015 | |||
1016 | commit 2ea974630d7017e4c7666d14d9dc939707613e96 | ||
1017 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1018 | Date: Fri Apr 24 05:26:44 2015 +0000 | ||
1019 | |||
1020 | upstream commit | ||
1021 | |||
1022 | add ssh-agent -D to leave ssh-agent in foreground | ||
1023 | without enabling debug mode; bz#2381 ok dtucker@ | ||
1024 | |||
1025 | commit 8ac2ffd7aa06042f6b924c87139f2fea5c5682f7 | ||
1026 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
1027 | Date: Fri Apr 24 01:36:24 2015 +0000 | ||
1028 | |||
1029 | upstream commit | ||
1030 | |||
1031 | 2*len -> use xreallocarray() ok djm | ||
1032 | |||
1033 | commit 657a5fbc0d0aff309079ff8fb386f17e964963c2 | ||
1034 | Author: deraadt@openbsd.org <deraadt@openbsd.org> | ||
1035 | Date: Fri Apr 24 01:36:00 2015 +0000 | ||
1036 | |||
1037 | upstream commit | ||
1038 | |||
1039 | rename xrealloc() to xreallocarray() since it follows | ||
1040 | that form. ok djm | ||
1041 | |||
1042 | commit 1108ae242fdd2c304307b68ddf46aebe43ebffaa | ||
1043 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1044 | Date: Thu Apr 23 04:59:10 2015 +0000 | ||
1045 | |||
1046 | upstream commit | ||
1047 | |||
1048 | Two small fixes for sshd -T: ListenAddress'es are added | ||
1049 | to a list head so reverse the order when printing them to ensure the | ||
1050 | behaviour remains the same, and print StreamLocalBindMask as octal with | ||
1051 | leading zero. ok deraadt@ | ||
1052 | |||
1053 | commit bd902b8473e1168f19378d5d0ae68d0c203525df | ||
1054 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1055 | Date: Thu Apr 23 04:53:53 2015 +0000 | ||
1056 | |||
1057 | upstream commit | ||
1058 | |||
1059 | Check for and reject missing arguments for | ||
1060 | VersionAddendum and ForceCommand. bz#2281, patch from plautrba at redhat com, | ||
1061 | ok djm@ | ||
1062 | |||
1063 | commit ca42c1758575e592239de1d5755140e054b91a0d | ||
1064 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1065 | Date: Wed Apr 22 01:24:01 2015 +0000 | ||
1066 | |||
1067 | upstream commit | ||
1068 | |||
1069 | unknown certificate extensions are non-fatal, so don't | ||
1070 | fatal when they are encountered; bz#2387 reported by Bob Van Zant; ok | ||
1071 | dtucker@ | ||
1072 | |||
1073 | commit 39bfbf7caad231cc4bda6909fb1af0705bca04d8 | ||
1074 | Author: jsg@openbsd.org <jsg@openbsd.org> | ||
1075 | Date: Tue Apr 21 07:01:00 2015 +0000 | ||
1076 | |||
1077 | upstream commit | ||
1078 | |||
1079 | Add back a backslash removed in rev 1.42 so | ||
1080 | KEX_SERVER_ENCRYPT will include aes again. | ||
1081 | |||
1082 | ok deraadt@ | ||
1083 | |||
1084 | commit 6b0d576bb87eca3efd2b309fcfe4edfefc289f9c | ||
1085 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1086 | Date: Fri Apr 17 13:32:09 2015 +0000 | ||
1087 | |||
1088 | upstream commit | ||
1089 | |||
1090 | s/recommended/required/ that private keys be og-r this | ||
1091 | wording change was made a while ago but got accidentally reverted | ||
1092 | |||
1093 | commit 44a8e7ce6f3ab4c2eb1ae49115c210b98e53c4df | ||
1094 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1095 | Date: Fri Apr 17 13:25:52 2015 +0000 | ||
1096 | |||
1097 | upstream commit | ||
1098 | |||
1099 | don't try to cleanup NULL KEX proposals in | ||
1100 | kex_prop_free(); found by Jukka Taimisto and Markus Hietava | ||
1101 | |||
1102 | commit 3038a191872d2882052306098c1810d14835e704 | ||
1103 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1104 | Date: Fri Apr 17 13:19:22 2015 +0000 | ||
1105 | |||
1106 | upstream commit | ||
1107 | |||
1108 | use error/logit/fatal instead of fprintf(stderr, ...) | ||
1109 | and exit(0), fix a few errors that were being printed to stdout instead of | ||
1110 | stderr and a few non-errors that were going to stderr instead of stdout | ||
1111 | bz#2325; ok dtucker | ||
1112 | |||
1113 | commit a58be33cb6cd24441fa7e634db0e5babdd56f07f | ||
1114 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1115 | Date: Fri Apr 17 13:16:48 2015 +0000 | ||
1116 | |||
1117 | upstream commit | ||
1118 | |||
1119 | debug log missing DISPLAY environment when X11 | ||
1120 | forwarding requested; bz#1682 ok dtucker@ | ||
1121 | |||
1122 | commit 17d4d9d9fbc8fb80e322f94d95eecc604588a474 | ||
1123 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1124 | Date: Fri Apr 17 04:32:31 2015 +0000 | ||
1125 | |||
1126 | upstream commit | ||
1127 | |||
1128 | don't call record_login() in monitor when UseLogin is | ||
1129 | enabled; bz#278 reported by drk AT sgi.com; ok dtucker | ||
1130 | |||
1131 | commit 40132ff87b6cbc3dc05fb5df2e9d8e3afa06aafd | ||
1132 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1133 | Date: Fri Apr 17 04:12:35 2015 +0000 | ||
1134 | |||
1135 | upstream commit | ||
1136 | |||
1137 | Add some missing options to sshd -T and fix the output | ||
1138 | of VersionAddendum HostCertificate. bz#2346, patch from jjelen at redhat | ||
1139 | com, ok djm. | ||
1140 | |||
1141 | commit 6cc7cfa936afde2d829e56ee6528c7ea47a42441 | ||
1142 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1143 | Date: Thu Apr 16 23:25:50 2015 +0000 | ||
1144 | |||
1145 | upstream commit | ||
1146 | |||
1147 | Document "none" for PidFile XAuthLocation | ||
1148 | TrustedUserCAKeys and RevokedKeys. bz#2382, feedback from jmc@, ok djm@ | ||
1149 | |||
1150 | commit 15fdfc9b1c6808b26bc54d4d61a38b54541763ed | ||
1151 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1152 | Date: Wed Apr 15 23:23:25 2015 +0000 | ||
1153 | |||
1154 | upstream commit | ||
1155 | |||
1156 | Plug leak of address passed to logging. bz#2373, patch | ||
1157 | from jjelen at redhat, ok markus@ | ||
1158 | |||
1159 | commit bb2289e2a47d465eaaaeff3dee2a6b7777b4c291 | ||
1160 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1161 | Date: Tue Apr 14 04:17:03 2015 +0000 | ||
1162 | |||
1163 | upstream commit | ||
1164 | |||
1165 | Output remote username in debug output since with Host | ||
1166 | and Match it's not always obvious what it will be. bz#2368, ok djm@ | ||
1167 | |||
1168 | commit 70860b6d07461906730632f9758ff1b7c98c695a | ||
1169 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1170 | Date: Fri Apr 17 10:56:13 2015 +1000 | ||
1171 | |||
1172 | Format UsePAM setting when using sshd -T. | ||
1173 | |||
1174 | Part of bz#2346, patch from jjelen at redhat com. | ||
1175 | |||
1176 | commit ee15d9c9f0720f5a8b0b34e4b10ecf21f9824814 | ||
1177 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1178 | Date: Fri Apr 17 10:40:23 2015 +1000 | ||
1179 | |||
1180 | Wrap endian.h include inside ifdef (bz#2370). | ||
1181 | |||
1182 | commit 408f4c2ad4a4c41baa7b9b2b7423d875abbfa70b | ||
1183 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1184 | Date: Fri Apr 17 09:39:58 2015 +1000 | ||
1185 | |||
1186 | Look for '${host}-ar' before 'ar'. | ||
1187 | |||
1188 | This changes configure.ac to look for '${host}-ar' as set by | ||
1189 | AC_CANONICAL_HOST before looking for the unprefixed 'ar'. | ||
1190 | Useful when cross-compiling when all your binutils are prefixed. | ||
1191 | |||
1192 | Patch from moben at exherbo org via astrand at lysator liu se and | ||
1193 | bz#2352. | ||
1194 | |||
1195 | commit 673a1c16ad078d41558247ce739fe812c960acc8 | ||
1196 | Author: Damien Miller <djm@google.com> | ||
1197 | Date: Thu Apr 16 11:40:20 2015 +1000 | ||
1198 | |||
1199 | remove dependency on arpa/telnet.h | ||
1200 | |||
1201 | commit 202d443eeda1829d336595a3cfc07827e49f45ed | ||
1202 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1203 | Date: Wed Apr 15 15:59:49 2015 +1000 | ||
1204 | |||
1205 | Remove duplicate include of pwd.h. bz#2337, patch from Mordy Ovits. | ||
1206 | |||
1207 | commit 597986493412c499f2bc2209420cb195f97b3668 | ||
1208 | Author: Damien Miller <djm@google.com> | ||
1209 | Date: Thu Apr 9 10:14:48 2015 +1000 | ||
1210 | |||
1211 | platform's with openpty don't need pty_release | ||
1212 | |||
1213 | commit 318be28cda1fd9108f2e6f2f86b0b7589ba2aed0 | ||
1214 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1215 | Date: Mon Apr 13 02:04:08 2015 +0000 | ||
1216 | |||
1217 | upstream commit | ||
1218 | |||
1219 | deprecate ancient, pre-RFC4419 and undocumented | ||
1220 | SSH2_MSG_KEX_DH_GEX_REQUEST_OLD message; ok markus@ deraadt@ "seems | ||
1221 | reasonable" dtucker@ | ||
1222 | |||
1223 | commit d8f391caef62378463a0e6b36f940170dadfe605 | ||
1224 | Author: dtucker@openbsd.org <dtucker@openbsd.org> | ||
1225 | Date: Fri Apr 10 05:16:50 2015 +0000 | ||
1226 | |||
1227 | upstream commit | ||
1228 | |||
1229 | Don't send hostkey advertisments | ||
1230 | (hostkeys-00@openssh.com) to current versions of Tera Term as they can't | ||
1231 | handle them. Newer versions should be OK. Patch from Bryan Drewery and | ||
1232 | IWAMOTO Kouichi, ok djm@ | ||
1233 | |||
1234 | commit 2c2cfe1a1c97eb9a08cc9817fd0678209680c636 | ||
1235 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1236 | Date: Fri Apr 10 00:08:55 2015 +0000 | ||
1237 | |||
1238 | upstream commit | ||
1239 | |||
1240 | include port number if a non-default one has been | ||
1241 | specified; based on patch from Michael Handler | ||
1242 | |||
1243 | commit 4492a4f222da4cf1e8eab12689196322e27b08c4 | ||
1244 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1245 | Date: Tue Apr 7 23:00:42 2015 +0000 | ||
1246 | |||
1247 | upstream commit | ||
1248 | |||
1249 | treat Protocol=1,2|2,1 as Protocol=2 when compiled | ||
1250 | without SSH1 support; ok dtucker@ millert@ | ||
1251 | |||
1252 | commit c265e2e6e932efc6d86f6cc885dea33637a67564 | ||
1253 | Author: miod@openbsd.org <miod@openbsd.org> | ||
1254 | Date: Sun Apr 5 15:43:43 2015 +0000 | ||
1255 | |||
1256 | upstream commit | ||
1257 | |||
1258 | Do not use int for sig_atomic_t; spotted by | ||
1259 | christos@netbsd; ok markus@ | ||
1260 | |||
1261 | commit e7bf3a5eda6a1b02bef6096fed78527ee11e54cc | ||
1262 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1263 | Date: Tue Apr 7 10:48:04 2015 +1000 | ||
1264 | |||
1265 | Use do{}while(0) for no-op functions. | ||
1266 | |||
1267 | From FreeBSD. | ||
1268 | |||
1269 | commit bb99844abae2b6447272f79e7fa84134802eb4df | ||
1270 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1271 | Date: Tue Apr 7 10:47:15 2015 +1000 | ||
1272 | |||
1273 | Wrap blf.h include in ifdef. From FreeBSD. | ||
1274 | |||
1275 | commit d9b9b43656091cf0ad55c122f08fadb07dad0abd | ||
1276 | Author: Darren Tucker <dtucker@zip.com.au> | ||
1277 | Date: Tue Apr 7 09:10:00 2015 +1000 | ||
1278 | |||
1279 | Fix misspellings of regress CONFOPTS env variables. | ||
1280 | |||
1281 | Patch from Bryan Drewery. | ||
1282 | |||
1283 | commit 3f4ea3c9ab1d32d43c9222c4351f58ca11144156 | ||
1284 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1285 | Date: Fri Apr 3 22:17:27 2015 +0000 | ||
1286 | |||
1287 | upstream commit | ||
1288 | |||
1289 | correct return value in pubkey parsing, spotted by Ben Hawkes | ||
1290 | ok markus@ | ||
1291 | |||
1292 | commit 7da2be0cb9601ed25460c83aa4d44052b967ba0f | ||
1293 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1294 | Date: Tue Mar 31 22:59:01 2015 +0000 | ||
1295 | |||
1296 | upstream commit | ||
1297 | |||
1298 | adapt to recent hostfile.c change: when parsing | ||
1299 | known_hosts without fully parsing the keys therein, hostkeys_foreach() will | ||
1300 | now correctly identify KEY_RSA1 keys; ok markus@ miod@ | ||
1301 | |||
1302 | commit 9e1777a0d1c706714b055811c12ab8cc21033e4a | ||
1303 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1304 | Date: Tue Mar 24 20:19:15 2015 +0000 | ||
1305 | |||
1306 | upstream commit | ||
1307 | |||
1308 | use ${SSH} for -Q instead of installed ssh | ||
1309 | |||
1310 | commit ce1b358ea414a2cc88e4430cd5a2ea7fecd9de57 | ||
1311 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1312 | Date: Mon Mar 16 22:46:14 2015 +0000 | ||
1313 | |||
1314 | upstream commit | ||
1315 | |||
1316 | make CLEANFILES clean up more of the tests' droppings | ||
1317 | |||
1318 | commit 398f9ef192d820b67beba01ec234d66faca65775 | ||
1319 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1320 | Date: Tue Mar 31 22:57:06 2015 +0000 | ||
1321 | |||
1322 | upstream commit | ||
1323 | |||
1324 | downgrade error() for known_hosts parse errors to debug() | ||
1325 | to quiet warnings from ssh1 keys present when compiled !ssh1. | ||
1326 | |||
1327 | also identify ssh1 keys when scanning, even when compiled !ssh1 | ||
1328 | |||
1329 | ok markus@ miod@ | ||
1330 | |||
1331 | commit 9a47ab80030a31f2d122b8fd95bd48c408b9fcd9 | ||
1332 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1333 | Date: Tue Mar 31 22:55:50 2015 +0000 | ||
1334 | |||
1335 | upstream commit | ||
1336 | |||
1337 | fd leak for !ssh1 case; found by unittests; ok markus@ | ||
1338 | |||
1339 | commit c9a0805a6280681901c270755a7cd630d7c5280e | ||
1340 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1341 | Date: Tue Mar 31 22:55:24 2015 +0000 | ||
1342 | |||
1343 | upstream commit | ||
1344 | |||
1345 | don't fatal when a !ssh1 sshd is reexeced from a w/ssh1 | ||
1346 | listener; reported by miod@; ok miod@ markus@ | ||
1347 | |||
1348 | commit 704d8c88988cae38fb755a6243b119731d223222 | ||
1349 | Author: tobias@openbsd.org <tobias@openbsd.org> | ||
1350 | Date: Tue Mar 31 11:06:49 2015 +0000 | ||
1351 | |||
1352 | upstream commit | ||
1353 | |||
1354 | Comments are only supported for RSA1 keys. If a user | ||
1355 | tried to add one and entered his passphrase, explicitly clear it before exit. | ||
1356 | This is done in all other error paths, too. | ||
1357 | |||
1358 | ok djm | ||
1359 | |||
1360 | commit 78de1673c05ea2c33e0d4a4b64ecb5186b6ea2e9 | ||
1361 | Author: jmc@openbsd.org <jmc@openbsd.org> | ||
1362 | Date: Mon Mar 30 18:28:37 2015 +0000 | ||
1363 | |||
1364 | upstream commit | ||
1365 | |||
1366 | ssh-askpass(1) is the default, overridden by SSH_ASKPASS; | ||
1367 | diff originally from jiri b; | ||
1368 | |||
1369 | commit 26e0bcf766fadb4a44fb6199386fb1dcab65ad00 | ||
1370 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1371 | Date: Mon Mar 30 00:00:29 2015 +0000 | ||
1372 | |||
1373 | upstream commit | ||
1374 | |||
1375 | fix uninitialised memory read when parsing a config file | ||
1376 | consisting of a single nul byte. Found by hanno AT hboeck.de using AFL; ok | ||
1377 | dtucker | ||
1378 | |||
1379 | commit fecede00a76fbb33a349f5121c0b2f9fbc04a777 | ||
1380 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1381 | Date: Thu Mar 26 19:32:19 2015 +0000 | ||
1382 | |||
1383 | upstream commit | ||
1384 | |||
1385 | sigp and lenp are not optional in ssh_agent_sign(); ok | ||
1386 | djm@ | ||
1387 | |||
1388 | commit 1b0ef3813244c78669e6d4d54c624f600945327d | ||
1389 | Author: naddy@openbsd.org <naddy@openbsd.org> | ||
1390 | Date: Thu Mar 26 12:32:38 2015 +0000 | ||
1391 | |||
1392 | upstream commit | ||
1393 | |||
1394 | don't try to load .ssh/identity by default if SSH1 is | ||
1395 | disabled; ok markus@ | ||
1396 | |||
1397 | commit f9b78852379b74a2d14e6fc94fe52af30b7e9c31 | ||
1398 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1399 | Date: Thu Mar 26 07:00:04 2015 +0000 | ||
1400 | |||
1401 | upstream commit | ||
1402 | |||
1403 | ban all-zero curve25519 keys as recommended by latest | ||
1404 | CFRG curves draft; ok markus | ||
1405 | |||
1406 | commit b8afbe2c1aaf573565e4da775261dfafc8b1ba9c | ||
1407 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1408 | Date: Thu Mar 26 06:59:28 2015 +0000 | ||
1409 | |||
1410 | upstream commit | ||
1411 | |||
1412 | relax bits needed check to allow | ||
1413 | diffie-hellman-group1-sha1 key exchange to complete for chacha20-poly1305 was | ||
1414 | selected as symmetric cipher; ok markus | ||
1415 | |||
1416 | commit 47842f71e31da130555353c1d57a1e5a8937f1c0 | ||
1417 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1418 | Date: Wed Mar 25 19:29:58 2015 +0000 | ||
1419 | |||
1420 | upstream commit | ||
1421 | |||
1422 | ignore v1 errors on ssh-add -D; only try v2 keys on | ||
1423 | -l/-L (unless WITH_SSH1) ok djm@ | ||
1424 | |||
1425 | commit 5f57e77f91bf2230c09eca96eb5ecec39e5f2da6 | ||
1426 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1427 | Date: Wed Mar 25 19:21:48 2015 +0000 | ||
1428 | |||
1429 | upstream commit | ||
1430 | |||
1431 | unbreak ssh_agent_sign (lenp vs *lenp) | ||
1432 | |||
1433 | commit 4daeb67181054f2a377677fac919ee8f9ed3490e | ||
1434 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1435 | Date: Tue Mar 24 20:10:08 2015 +0000 | ||
1436 | |||
1437 | upstream commit | ||
1438 | |||
1439 | don't leak 'setp' on error; noted by Nicholas Lemonias; | ||
1440 | ok djm@ | ||
1441 | |||
1442 | commit 7d4f96f9de2a18af0d9fa75ea89a4990de0344f5 | ||
1443 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1444 | Date: Tue Mar 24 20:09:11 2015 +0000 | ||
1445 | |||
1446 | upstream commit | ||
1447 | |||
1448 | consistent check for NULL as noted by Nicholas | ||
1449 | Lemonias; ok djm@ | ||
1450 | |||
1451 | commit df100be51354e447d9345cf1ec22e6013c0eed50 | ||
1452 | Author: markus@openbsd.org <markus@openbsd.org> | ||
1453 | Date: Tue Mar 24 20:03:44 2015 +0000 | ||
1454 | |||
1455 | upstream commit | ||
1456 | |||
1457 | correct fmt-string for size_t as noted by Nicholas | ||
1458 | Lemonias; ok djm@ | ||
1459 | |||
1460 | commit a22b9ef21285e81775732436f7c84a27bd3f71e0 | ||
1461 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1462 | Date: Tue Mar 24 09:17:21 2015 +0000 | ||
1463 | |||
1464 | upstream commit | ||
1465 | |||
1466 | promote chacha20-poly1305@openssh.com to be the default | ||
1467 | cipher; ok markus | ||
1468 | |||
1469 | commit 2aa9da1a3b360cf7b13e96fe1521534b91501fb5 | ||
1470 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1471 | Date: Tue Mar 24 01:29:19 2015 +0000 | ||
1472 | |||
1473 | upstream commit | ||
1474 | |||
1475 | Compile-time disable SSH protocol 1. You can turn it | ||
1476 | back on using the Makefile.inc knob if you need it to talk to ancient | ||
1477 | devices. | ||
1478 | |||
1479 | commit 53097b2022154edf96b4e8526af5666f979503f7 | ||
1480 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1481 | Date: Tue Mar 24 01:11:12 2015 +0000 | ||
1482 | |||
1483 | upstream commit | ||
1484 | |||
1485 | fix double-negative error message "ssh1 is not | ||
1486 | unsupported" | ||
1487 | |||
1488 | commit 5c27e3b6ec2db711dfcd40e6359c0bcdd0b62ea9 | ||
1489 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1490 | Date: Mon Mar 23 06:06:38 2015 +0000 | ||
1491 | |||
1492 | upstream commit | ||
1493 | |||
1494 | for ssh-keygen -A, don't try (and fail) to generate ssh | ||
1495 | v.1 keys when compiled without SSH1 support RSA/DSA/ECDSA keys when compiled | ||
1496 | without OpenSSL based on patch by Mike Frysinger; bz#2369 | ||
1497 | |||
1498 | commit 725fd22a8c41db7de73a638539a5157b7e4424ae | ||
1499 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1500 | Date: Wed Mar 18 01:44:21 2015 +0000 | ||
1501 | |||
1502 | upstream commit | ||
1503 | |||
1504 | KRL support doesn't need OpenSSL anymore, remove #ifdefs | ||
1505 | from around call | ||
1506 | |||
1507 | commit b07011c18e0b2e172c5fd09d21fb159a0bf5fcc7 | ||
1508 | Author: djm@openbsd.org <djm@openbsd.org> | ||
1509 | Date: Mon Mar 16 11:09:52 2015 +0000 | ||
1510 | |||
1511 | upstream commit | ||
1512 | |||
1513 | #if 0 some more arrays used only for decrypting (we don't | ||
1514 | use since we only need encrypt for AES-CTR) | ||
1515 | |||
1516 | commit 1cb3016635898d287e9d58b50c430995652d5358 | ||
1517 | Author: jsg@openbsd.org <jsg@openbsd.org> | ||
1518 | Date: Wed Mar 11 00:48:39 2015 +0000 | ||
1519 | |||
1520 | upstream commit | ||
1521 | |||
1522 | add back the changes from rev 1.206, djm reverted this by | ||
1523 | mistake in rev 1.207 | ||
1524 | |||
1525 | commit 4d24b3b6a4a6383e05e7da26d183b79fa8663697 | ||
1526 | Author: Damien Miller <djm@mindrot.org> | ||
1527 | Date: Fri Mar 20 09:11:59 2015 +1100 | ||
1528 | |||
1529 | remove error() accidentally inserted for debugging | ||
1530 | |||
1531 | pointed out by Christian Hesse | ||
1532 | |||
1 | commit 9f82e5a9042f2d872e98f48a876fcab3e25dd9bb | 1533 | commit 9f82e5a9042f2d872e98f48a876fcab3e25dd9bb |
2 | Author: Tim Rice <tim@multitalents.net> | 1534 | Author: Tim Rice <tim@multitalents.net> |
3 | Date: Mon Mar 16 22:49:20 2015 -0700 | 1535 | Date: Mon Mar 16 22:49:20 2015 -0700 |
@@ -7401,1184 +8933,3 @@ Date: Tue Jul 2 20:06:46 2013 +1000 | |||
7401 | the Cygwin README file (which hasn't been updated for ages), drop | 8933 | the Cygwin README file (which hasn't been updated for ages), drop |
7402 | unsupported OSes from the ssh-host-config help text, and drop an | 8934 | unsupported OSes from the ssh-host-config help text, and drop an |
7403 | unneeded option from ssh-user-config. Patch from vinschen at redhat com. | 8935 | unneeded option from ssh-user-config. Patch from vinschen at redhat com. |
7404 | |||
7405 | commit b8ae92d08b91beaef34232c6ef34b9941473fdd6 | ||
7406 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7407 | Date: Tue Jun 11 12:10:02 2013 +1000 | ||
7408 | |||
7409 | - (dtucker) [myproposal.h] Make the conditional algorithm support consistent | ||
7410 | and add some comments so it's clear what goes where. | ||
7411 | |||
7412 | commit 97b62f41adcb0dcbeff142d0540793a7ea17c910 | ||
7413 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7414 | Date: Tue Jun 11 11:47:24 2013 +1000 | ||
7415 | |||
7416 | - (dtucker) [myproposal.h] Do not advertise AES GSM ciphers if we don't have | ||
7417 | the required OpenSSL support. Patch from naddy at freebsd. | ||
7418 | |||
7419 | commit 6d8bd57448b45b42809da32857d7804444349ee7 | ||
7420 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7421 | Date: Tue Jun 11 11:26:10 2013 +1000 | ||
7422 | |||
7423 | - (dtucker) [Makefile.in configure.ac fixalgorithms] Remove unsupported | ||
7424 | algorithms (Ciphers, MACs and HostKeyAlgorithms) from man pages. | ||
7425 | |||
7426 | commit 36187093ea0b2d2240c043417b8949611687e105 | ||
7427 | Author: Damien Miller <djm@mindrot.org> | ||
7428 | Date: Mon Jun 10 13:07:11 2013 +1000 | ||
7429 | |||
7430 | - dtucker@cvs.openbsd.org 2013/06/07 15:37:52 | ||
7431 | [channels.c channels.h clientloop.c] | ||
7432 | Add an "ABANDONED" channel state and use for mux sessions that are | ||
7433 | disconnected via the ~. escape sequence. Channels in this state will | ||
7434 | be able to close if the server responds, but do not count as active channels. | ||
7435 | This means that if you ~. all of the mux clients when using ControlPersist | ||
7436 | on a broken network, the backgrounded mux master will exit when the | ||
7437 | Control Persist time expires rather than hanging around indefinitely. | ||
7438 | bz#1917, also reported and tested by tedu@. ok djm@ markus@. | ||
7439 | |||
7440 | commit ae133d4b31af05bb232d797419f498f3ae7e9f2d | ||
7441 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7442 | Date: Thu Jun 6 08:30:20 2013 +1000 | ||
7443 | |||
7444 | - (dtucker) [configure.ac sftp.c openbsd-compat/openbsd-compat.h] Cater for | ||
7445 | platforms that don't have multibyte character support (specifically, | ||
7446 | mblen). | ||
7447 | |||
7448 | commit 408eaf3ab716096f8faf30f091bd54a2c7a17a09 | ||
7449 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7450 | Date: Thu Jun 6 08:22:46 2013 +1000 | ||
7451 | |||
7452 | - dtucker@cvs.openbsd.org 2013/06/05 22:00:28 | ||
7453 | [readconf.c] | ||
7454 | plug another memleak. bz#1967, from Zhenbo Xu, detected by Melton, ok djm | ||
7455 | |||
7456 | commit e52a260f16888ca75390f97de4606943e61785e8 | ||
7457 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7458 | Date: Thu Jun 6 08:22:05 2013 +1000 | ||
7459 | |||
7460 | - dtucker@cvs.openbsd.org 2013/06/05 12:52:38 | ||
7461 | [sshconnect2.c] | ||
7462 | Fix memory leaks found by Zhenbo Xu and the Melton tool. bz#1967, ok djm | ||
7463 | |||
7464 | commit 0cca17fa1819d3a0ba06a6db41ab3eaa8d769587 | ||
7465 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7466 | Date: Thu Jun 6 08:21:14 2013 +1000 | ||
7467 | |||
7468 | - dtucker@cvs.openbsd.org 2013/06/05 02:27:50 | ||
7469 | [sshd.c] | ||
7470 | When running sshd -D, close stderr unless we have explicitly requesting | ||
7471 | logging to stderr. From james.hunt at ubuntu.com via bz#1976, djm's patch | ||
7472 | so, err, ok dtucker. | ||
7473 | |||
7474 | commit 746e9067bd9b3501876e1c86f38f3c510a12f895 | ||
7475 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7476 | Date: Thu Jun 6 08:20:13 2013 +1000 | ||
7477 | |||
7478 | - dtucker@cvs.openbsd.org 2013/06/05 02:07:29 | ||
7479 | [mux.c] | ||
7480 | fix leaks in mux error paths, from Zhenbo Xu, found by Melton. bz#1967, | ||
7481 | ok djm | ||
7482 | |||
7483 | commit ea64721275a81c4788af36294d94bf4f74012e06 | ||
7484 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7485 | Date: Thu Jun 6 08:19:09 2013 +1000 | ||
7486 | |||
7487 | - dtucker@cvs.openbsd.org 2013/06/04 20:42:36 | ||
7488 | [sftp.c] | ||
7489 | Make sftp's libedit interface marginally multibyte aware by building up | ||
7490 | the quoted string by character instead of by byte. Prevents failures | ||
7491 | when linked against a libedit built with wide character support (bz#1990). | ||
7492 | "looks ok" djm | ||
7493 | |||
7494 | commit 194454d7a8f8cb8ac55f2b9d0199ef9445788bee | ||
7495 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7496 | Date: Thu Jun 6 08:16:04 2013 +1000 | ||
7497 | |||
7498 | - dtucker@cvs.openbsd.org 2013/06/04 19:12:23 | ||
7499 | [scp.c] | ||
7500 | use MAXPATHLEN for buffer size instead of fixed value. ok markus | ||
7501 | |||
7502 | commit 4ac66af091cf6db5a42c18e43738ca9c41e338e5 | ||
7503 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7504 | Date: Thu Jun 6 08:12:37 2013 +1000 | ||
7505 | |||
7506 | - dtucker@cvs.openbsd.org 2013/06/03 00:03:18 | ||
7507 | [mac.c] | ||
7508 | force the MAC output to be 64-bit aligned so umac won't see unaligned | ||
7509 | accesses on strict-alignment architectures. bz#2101, patch from | ||
7510 | tomas.kuthan at oracle.com, ok djm@ | ||
7511 | |||
7512 | commit ea8342c248ad6c0a4fe1a70de133f954973bd2b2 | ||
7513 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7514 | Date: Thu Jun 6 08:11:40 2013 +1000 | ||
7515 | |||
7516 | - dtucker@cvs.openbsd.org 2013/06/02 23:36:29 | ||
7517 | [clientloop.h clientloop.c mux.c] | ||
7518 | No need for the mux cleanup callback to be visible so restore it to static | ||
7519 | and call it through the detach_user function pointer. ok djm@ | ||
7520 | |||
7521 | commit 5d12b8f05d79ba89d0807910a664fa80f6f3bf8c | ||
7522 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7523 | Date: Thu Jun 6 08:09:10 2013 +1000 | ||
7524 | |||
7525 | - dtucker@cvs.openbsd.org 2013/06/02 21:01:51 | ||
7526 | [channels.h] | ||
7527 | typo in comment | ||
7528 | |||
7529 | commit dc62edbf121c41e8b5270904091039450206d98a | ||
7530 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7531 | Date: Thu Jun 6 05:12:35 2013 +1000 | ||
7532 | |||
7533 | - (dtucker) [Makefile.in] append $CFLAGS to compiler options when building | ||
7534 | modpipe in case there's anything in there we need. | ||
7535 | |||
7536 | commit 2a22873cd869679415104bc9f6bb154811ee604c | ||
7537 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7538 | Date: Thu Jun 6 01:59:13 2013 +1000 | ||
7539 | |||
7540 | - (dtucker) [regress/forwarding.sh] For (as yet unknown) reason, the | ||
7541 | forwarding test is extremely slow copying data on some machines so switch | ||
7542 | back to copying the much smaller ls binary until we can figure out why | ||
7543 | this is. | ||
7544 | |||
7545 | commit b4e00949f01176cd4fae3e0cef5ffa8dea379042 | ||
7546 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7547 | Date: Wed Jun 5 22:48:44 2013 +1000 | ||
7548 | |||
7549 | - (dtucker) [contrib/ssh-copy-id] bz#2117: Use portable operator in test. | ||
7550 | Patch from cjwatson at debian. | ||
7551 | |||
7552 | commit 2ea9eb77a7fcab3190564ef5a6a5377a600aa391 | ||
7553 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7554 | Date: Wed Jun 5 15:04:00 2013 +1000 | ||
7555 | |||
7556 | - (dtucker) Enable sha256 kex methods based on the presence of the necessary | ||
7557 | functions, not from the openssl version. | ||
7558 | |||
7559 | commit 16cac190ebb9b5612cccea63a7c22ac33bc9a07a | ||
7560 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7561 | Date: Tue Jun 4 12:55:24 2013 +1000 | ||
7562 | |||
7563 | - (dtucker) [configure.ac] Some other platforms need sys/types.h before | ||
7564 | sys/socket.h. | ||
7565 | |||
7566 | commit 0b43ffe143a5843703c3755fa040b8684fb04134 | ||
7567 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7568 | Date: Mon Jun 3 09:30:44 2013 +1000 | ||
7569 | |||
7570 | - (dtucker) [configure.ac] Some platforms need sys/types.h before sys/un.h. | ||
7571 | |||
7572 | commit 3f3064c82238c486706471d300217d73dd0f125e | ||
7573 | Author: Tim Rice <tim@multitalents.net> | ||
7574 | Date: Sun Jun 2 15:13:09 2013 -0700 | ||
7575 | |||
7576 | - (tim) [regress/sftp-chroot.sh] skip if no sudo. ok dtucker | ||
7577 | |||
7578 | commit 01ec0af301f60fefdd0079647f13ef9abadd2db5 | ||
7579 | Author: Tim Rice <tim@multitalents.net> | ||
7580 | Date: Sun Jun 2 14:31:27 2013 -0700 | ||
7581 | |||
7582 | - (tim) [aclocal.m4] Enhance OSSH_CHECK_CFLAG_COMPILE to check stderr. | ||
7583 | feedback and ok dtucker | ||
7584 | |||
7585 | commit 5ab9b63468100757479534edeb53f788a61fe08b | ||
7586 | Author: Tim Rice <tim@multitalents.net> | ||
7587 | Date: Sun Jun 2 14:05:48 2013 -0700 | ||
7588 | |||
7589 | - (tim) [configure.ac regress/Makefile] With rev 1.47 of test-exec.sh we | ||
7590 | need a shell that can handle "[ file1 -nt file2 ]". Rather than keep | ||
7591 | dealing with shell portability issues in regression tests, we let | ||
7592 | configure find us a capable shell on those platforms with an old /bin/sh. | ||
7593 | |||
7594 | commit 898ac935e56a7ac5d8b686c590fdb8b7aca27e59 | ||
7595 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7596 | Date: Mon Jun 3 02:03:25 2013 +1000 | ||
7597 | |||
7598 | - (dtucker) [configure.ac] bz#2111: don't try to use lastlog on Android. | ||
7599 | Patch from Nathan Osman. | ||
7600 | |||
7601 | commit ef4901c3eb98c7ab1342c3cd8f2638da1f4b0678 | ||
7602 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7603 | Date: Mon Jun 3 01:59:13 2013 +1000 | ||
7604 | |||
7605 | - (dtucker) [configure.ac] sys/un.h needs sys/socket.h on some platforms | ||
7606 | to prevent noise from configure. Patch from Nathan Osman. | ||
7607 | |||
7608 | commit 073f795bc1c7728c320e5982c0d417376b0907f5 | ||
7609 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7610 | Date: Sun Jun 2 23:47:11 2013 +1000 | ||
7611 | |||
7612 | - dtucker@cvs.openbsd.org 2013/06/02 13:35:58 | ||
7613 | [ssh-agent.c] | ||
7614 | Make parent_alive_interval time_t to avoid signed/unsigned comparison | ||
7615 | |||
7616 | commit 00e1abb1ebe13ab24e812f68715f46e65e7c5271 | ||
7617 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7618 | Date: Sun Jun 2 23:46:24 2013 +1000 | ||
7619 | |||
7620 | - dtucker@cvs.openbsd.org 2013/06/02 13:33:05 | ||
7621 | [progressmeter.c] | ||
7622 | Add misc.h for monotime prototype. (id sync only) | ||
7623 | |||
7624 | commit 86211d1738695e63b2a68f0c3a4f60e1a9d9bda3 | ||
7625 | Author: Tim Rice <tim@multitalents.net> | ||
7626 | Date: Sat Jun 1 18:38:23 2013 -0700 | ||
7627 | |||
7628 | 20130602 | ||
7629 | - (tim) [Makefile.in] Make Solaris, UnixWare, & OpenServer linkers happy | ||
7630 | linking regress/modpipe. | ||
7631 | |||
7632 | commit e9887d1c37940b9d6c72d55cfad7a40de4c6e28d | ||
7633 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7634 | Date: Sun Jun 2 09:17:09 2013 +1000 | ||
7635 | |||
7636 | - (dtucker) [sandbox-seccomp-filter.c] Allow clock_gettimeofday. | ||
7637 | |||
7638 | commit 65cf74079a2d563c4ede649116a13ca78c8cc2a4 | ||
7639 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7640 | Date: Sun Jun 2 09:11:19 2013 +1000 | ||
7641 | |||
7642 | fix typo | ||
7643 | |||
7644 | commit c9a1991b95a4c9f04f9dcef299a8110d2ec80d3e | ||
7645 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7646 | Date: Sun Jun 2 08:37:05 2013 +1000 | ||
7647 | |||
7648 | - dtucker@cvs.openbsd.org 2013/06/01 22:34:50 | ||
7649 | [sftp-client.c] | ||
7650 | Update progressmeter when data is acked, not when it's sent. bz#2108, from | ||
7651 | Debian via Colin Watson, ok djm@ | ||
7652 | |||
7653 | commit a710891659202c82545e84725d4e5cd77aef567c | ||
7654 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7655 | Date: Sun Jun 2 08:18:31 2013 +1000 | ||
7656 | |||
7657 | - (dtucker) [configure.ac misc.c] Look for clock_gettime in librt and fall | ||
7658 | back to time(NULL) if we can't find it anywhere. | ||
7659 | |||
7660 | commit f60845fde29cead9d75e812db1c04916b4c58ffd | ||
7661 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7662 | Date: Sun Jun 2 08:07:31 2013 +1000 | ||
7663 | |||
7664 | - (dtucker) [M auth-chall.c auth-krb5.c auth-pam.c cipher-aes.c cipher-ctr.c | ||
7665 | groupaccess.c loginrec.c monitor.c monitor_wrap.c session.c sshd.c | ||
7666 | sshlogin.c uidswap.c openbsd-compat/bsd-cygwin_util.c | ||
7667 | openbsd-compat/getrrsetbyname-ldns.c openbsd-compat/port-aix.c | ||
7668 | openbsd-compat/port-linux.c] Replace portable-specific instances of xfree | ||
7669 | with the equivalent calls to free. | ||
7670 | |||
7671 | commit 12f6533215c0a36ab29d11ff52a853fce45573b4 | ||
7672 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7673 | Date: Sun Jun 2 08:01:24 2013 +1000 | ||
7674 | |||
7675 | Remove stray '+' accidentally introduced in sync | ||
7676 | |||
7677 | commit 3750fce6ac6b287f62584ac55a4406df95c71b92 | ||
7678 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7679 | Date: Sun Jun 2 07:52:21 2013 +1000 | ||
7680 | |||
7681 | - dtucker@cvs.openbsd.org 2013/06/01 20:59:25 | ||
7682 | [scp.c sftp-client.c] | ||
7683 | Replace S_IWRITE, which isn't standardized, with S_IWUSR, which is. Patch | ||
7684 | from Nathan Osman via bz#2113. ok deraadt. | ||
7685 | |||
7686 | (note: corrected bug number from 2085) | ||
7687 | |||
7688 | commit b759c9c2efebe7b416ab81093ca8eb17836b6933 | ||
7689 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7690 | Date: Sun Jun 2 07:46:16 2013 +1000 | ||
7691 | |||
7692 | - dtucker@cvs.openbsd.org 2013/06/01 13:15:52 | ||
7693 | [ssh-agent.c clientloop.c misc.h packet.c progressmeter.c misc.c | ||
7694 | channels.c sandbox-systrace.c] | ||
7695 | Use clock_gettime(CLOCK_MONOTONIC ...) for ssh timers so that things like | ||
7696 | keepalives and rekeying will work properly over clock steps. Suggested by | ||
7697 | markus@, "looks good" djm@. | ||
7698 | |||
7699 | commit 55119253c64808b0d3b2ab5d2bc67ee9dac3430b | ||
7700 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7701 | Date: Sun Jun 2 07:43:59 2013 +1000 | ||
7702 | |||
7703 | - dtucker@cvs.openbsd.org 2013/05/31 12:28:10 | ||
7704 | [ssh-agent.c] | ||
7705 | Use time_t where appropriate. ok djm | ||
7706 | |||
7707 | commit 0acca3797d53d958d240c69a5f222f2aa8444858 | ||
7708 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7709 | Date: Sun Jun 2 07:41:51 2013 +1000 | ||
7710 | |||
7711 | - djm@cvs.openbsd.org 2013/05/19 02:42:42 | ||
7712 | [auth.h auth.c key.c monitor.c auth-rsa.c auth2.c auth1.c key.h] | ||
7713 | Standardise logging of supplemental information during userauth. Keys | ||
7714 | and ruser is now logged in the auth success/failure message alongside | ||
7715 | the local username, remote host/port and protocol in use. Certificates | ||
7716 | contents and CA are logged too. | ||
7717 | Pushing all logging onto a single line simplifies log analysis as it is | ||
7718 | no longer necessary to relate information scattered across multiple log | ||
7719 | entries. "I like it" markus@ | ||
7720 | |||
7721 | commit 74836ae0fabcc1a76b9d9eacd1629c88a054b2d0 | ||
7722 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7723 | Date: Sun Jun 2 07:32:00 2013 +1000 | ||
7724 | |||
7725 | - djm@cvs.openbsd.org 2013/05/19 02:38:28 | ||
7726 | [auth2-pubkey.c] | ||
7727 | fix failure to recognise cert-authority keys if a key of a different type | ||
7728 | appeared in authorized_keys before it; ok markus@ | ||
7729 | |||
7730 | commit a627d42e51ffa71e014d7b2d2c07118122fd3ec3 | ||
7731 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7732 | Date: Sun Jun 2 07:31:17 2013 +1000 | ||
7733 | |||
7734 | - djm@cvs.openbsd.org 2013/05/17 00:13:13 | ||
7735 | [xmalloc.h cipher.c sftp-glob.c ssh-keyscan.c ssh.c sftp-common.c | ||
7736 | ssh-ecdsa.c auth2-chall.c compat.c readconf.c kexgexs.c monitor.c | ||
7737 | gss-genr.c cipher-3des1.c kex.c monitor_wrap.c ssh-pkcs11-client.c | ||
7738 | auth-options.c rsa.c auth2-pubkey.c sftp.c hostfile.c auth2.c | ||
7739 | servconf.c auth.c authfile.c xmalloc.c uuencode.c sftp-client.c | ||
7740 | auth2-gss.c sftp-server.c bufaux.c mac.c session.c jpake.c kexgexc.c | ||
7741 | sshconnect.c auth-chall.c auth2-passwd.c sshconnect1.c buffer.c | ||
7742 | kexecdhs.c kexdhs.c ssh-rsa.c auth1.c ssh-pkcs11.c auth2-kbdint.c | ||
7743 | kexdhc.c sshd.c umac.c ssh-dss.c auth2-jpake.c bufbn.c clientloop.c | ||
7744 | monitor_mm.c scp.c roaming_client.c serverloop.c key.c auth-rsa.c | ||
7745 | ssh-pkcs11-helper.c ssh-keysign.c ssh-keygen.c match.c channels.c | ||
7746 | sshconnect2.c addrmatch.c mux.c canohost.c kexecdhc.c schnorr.c | ||
7747 | ssh-add.c misc.c auth2-hostbased.c ssh-agent.c bufec.c groupaccess.c | ||
7748 | dns.c packet.c readpass.c authfd.c moduli.c] | ||
7749 | bye, bye xfree(); ok markus@ | ||
7750 | |||
7751 | commit c7aad0058c957afeb26a3f703e8cb0eddeb62365 | ||
7752 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7753 | Date: Sun Jun 2 07:18:47 2013 +1000 | ||
7754 | |||
7755 | - (dtucker) [configure.ac defines.h] Test for fd_mask, howmany and NFDBITS | ||
7756 | rather than trying to enumerate the plaforms that don't have them. | ||
7757 | Based on a patch from Nathan Osman, with help from tim@. | ||
7758 | |||
7759 | commit c0c3373216801797053e123b5f62d35bf41b3611 | ||
7760 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7761 | Date: Sun Jun 2 06:28:03 2013 +1000 | ||
7762 | |||
7763 | - (dtucker) [configure.ac openbsd-compat/xcrypt.c] bz#2112: fall back to | ||
7764 | using openssl's DES_crpyt function on platorms that don't have a native | ||
7765 | one, eg Android. Based on a patch from Nathan Osman. | ||
7766 | |||
7767 | commit efdf5342143a887013a1daae583167dadf6752a7 | ||
7768 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7769 | Date: Thu May 30 08:29:08 2013 +1000 | ||
7770 | |||
7771 | - (dtucker) [configure.ac openbsd-compat/bsd-misc.h] bz#2087: Add a null | ||
7772 | implementation of endgrent for platforms that don't have it (eg Android). | ||
7773 | Loosely based on a patch from Nathan Osman, ok djm | ||
7774 | |||
7775 | commit 9b42d327380e5cd04efde6fb70e1535fecedf0d7 | ||
7776 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7777 | Date: Fri May 17 20:48:59 2013 +1000 | ||
7778 | |||
7779 | - dtucker@cvs.openbsd.org 2013/05/17 10:35:43 | ||
7780 | [regress/scp.sh] | ||
7781 | use a file extention that's not special on some platforms. from portable | ||
7782 | (id sync only) | ||
7783 | |||
7784 | commit 0a404b0ed79ba45ccaf7ed5528a8f5004c3698cb | ||
7785 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7786 | Date: Fri May 17 20:47:29 2013 +1000 | ||
7787 | |||
7788 | - dtucker@cvs.openbsd.org 2013/05/17 10:34:30 | ||
7789 | [regress/portnum.sh] | ||
7790 | use a more portable negated if structure. from portable (id sync only) | ||
7791 | |||
7792 | commit 62ee222e6f3f5ee288434f58b5136ae3d56f5164 | ||
7793 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7794 | Date: Fri May 17 20:46:00 2013 +1000 | ||
7795 | |||
7796 | - dtucker@cvs.openbsd.org 2013/05/17 10:33:09 | ||
7797 | [regress/agent-getpeereid.sh] | ||
7798 | don't redirect stdout from sudo. from portable (id sync only) | ||
7799 | |||
7800 | commit 00478d30cb4bcc18dc1ced8144d16b03cdf790f6 | ||
7801 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7802 | Date: Fri May 17 20:45:06 2013 +1000 | ||
7803 | |||
7804 | - dtucker@cvs.openbsd.org 2013/05/17 10:30:07 | ||
7805 | [regress/test-exec.sh] | ||
7806 | wait a bit longer for startup and use case for absolute path. | ||
7807 | from portable (id sync only) | ||
7808 | |||
7809 | commit 98989eb95eef0aefed7e9fb4e65c2f625be946f6 | ||
7810 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7811 | Date: Fri May 17 20:44:09 2013 +1000 | ||
7812 | |||
7813 | - dtucker@cvs.openbsd.org 2013/05/17 10:28:11 | ||
7814 | [regress/sftp.sh] | ||
7815 | only compare copied data if sftp succeeds. from portable (id sync only) | ||
7816 | |||
7817 | commit 438f60eb9a5f7cd40bb242cfec865e4fde71b07c | ||
7818 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7819 | Date: Fri May 17 20:43:13 2013 +1000 | ||
7820 | |||
7821 | - dtucker@cvs.openbsd.org 2013/05/17 10:26:26 | ||
7822 | [regress/sftp-badcmds.sh] | ||
7823 | remove unused BATCH variable. (id sync only) | ||
7824 | |||
7825 | commit 1466bd25a8d1ff7ae455a795d2d7d52dc17d2938 | ||
7826 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7827 | Date: Fri May 17 20:42:05 2013 +1000 | ||
7828 | |||
7829 | - dtucker@cvs.openbsd.org 2013/05/17 10:24:48 | ||
7830 | [localcommand.sh] | ||
7831 | use backticks for portability. (id sync only) | ||
7832 | |||
7833 | commit 05b5e518c9969d63471f2ccfd85b1de6e724d30b | ||
7834 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7835 | Date: Fri May 17 20:41:07 2013 +1000 | ||
7836 | |||
7837 | - dtucker@cvs.openbsd.org 2013/05/17 10:23:52 | ||
7838 | [regress/login-timeout.sh regress/reexec.sh regress/test-exec.sh] | ||
7839 | Use SUDO when cat'ing pid files and running the sshd log wrapper so that | ||
7840 | it works with a restrictive umask and the pid files are not world readable. | ||
7841 | Changes from -portable. (id sync only) | ||
7842 | |||
7843 | commit dd669173f93ea8c8397e0af758eaf13ab4f1c591 | ||
7844 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7845 | Date: Fri May 17 20:39:57 2013 +1000 | ||
7846 | |||
7847 | - dtucker@cvs.openbsd.org 2013/05/17 10:16:26 | ||
7848 | [regress/try-ciphers.sh] | ||
7849 | use expr for math to keep diffs vs portable down | ||
7850 | (id sync only) | ||
7851 | |||
7852 | commit 044f32f4c6fd342f9f5949bb0ca77624c0db4494 | ||
7853 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7854 | Date: Fri May 17 20:12:57 2013 +1000 | ||
7855 | |||
7856 | - (dtucker) [regress/cfgmatch.sh] Remove unneeded sleep renderd obsolete by | ||
7857 | rev 1.6 which calls wait. | ||
7858 | |||
7859 | commit 9cc8ff7b63f175661c8807006f6d2649d56ac402 | ||
7860 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7861 | Date: Fri May 17 20:01:52 2013 +1000 | ||
7862 | |||
7863 | - (dtucker) [regress/runtests.sh] Remove obsolete test driver script. | ||
7864 | |||
7865 | commit f8d5b3451726530a864b172c556c311370c244e1 | ||
7866 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7867 | Date: Fri May 17 19:53:25 2013 +1000 | ||
7868 | |||
7869 | - (dtucker) [regress/stderr-after-eof.sh regress/test-exec.sh] Move the md5 | ||
7870 | helper function to the portable part of test-exec.sh. | ||
7871 | |||
7872 | commit 6f66981ed3c6bb83b937959f329323975e356c33 | ||
7873 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7874 | Date: Fri May 17 19:28:51 2013 +1000 | ||
7875 | |||
7876 | - (dtucker) [regress/test-exec.sh] Move the portable-specific functions | ||
7877 | together and add a couple of missing lines from openbsd. | ||
7878 | |||
7879 | commit 5f1a89a3b67264f4aa83e057cd4f74fd60b9ffa4 | ||
7880 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7881 | Date: Fri May 17 19:17:58 2013 +1000 | ||
7882 | |||
7883 | - (dtucker) [regress/integrity.sh regress/krl.sh regress/test-exec.sh] | ||
7884 | Move the jot helper function to portable-specific part of test-exec.sh. | ||
7885 | |||
7886 | commit 96457a54d05dea81f34ecb4e059d2f8b98382b85 | ||
7887 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7888 | Date: Fri May 17 19:03:38 2013 +1000 | ||
7889 | |||
7890 | - (dtucker) [regress/agent-getpeereid.sh] Resync spaces with openbsd. | ||
7891 | |||
7892 | commit 7f193236594e8328ad133ea05eded31f837b45b5 | ||
7893 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7894 | Date: Fri May 17 19:02:28 2013 +1000 | ||
7895 | |||
7896 | - (dtucker) [regress/cfgmatch.sh] Resync config file setup with openbsd. | ||
7897 | |||
7898 | commit 8654dd2d737800d09e7730b3dfc2a54411f4cf90 | ||
7899 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7900 | Date: Fri May 17 16:03:48 2013 +1000 | ||
7901 | |||
7902 | - (dtucker) [openbsd-compat/getopt.h] Remove unneeded bits. | ||
7903 | |||
7904 | commit 59d928d3b47e8298f4a8b4b3fb37fb8c8ce1b098 | ||
7905 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7906 | Date: Fri May 17 15:32:29 2013 +1000 | ||
7907 | |||
7908 | - dtucker@cvs.openbsd.org 2013/05/17 04:29:14 | ||
7909 | [regress/sftp.sh regress/putty-ciphers.sh regress/cipher-speed.sh | ||
7910 | regress/test-exec.sh regress/sftp-batch.sh regress/dynamic-forward.sh | ||
7911 | regress/putty-transfer.sh regress/conch-ciphers.sh regress/sftp-cmds.sh | ||
7912 | regress/scp.sh regress/ssh-com-sftp.sh regress/rekey.sh | ||
7913 | regress/putty-kex.sh regress/stderr-data.sh regress/stderr-after-eof.sh | ||
7914 | regress/sftp-badcmds.sh regress/reexec.sh regress/ssh-com-client.sh | ||
7915 | regress/sftp-chroot.sh regress/forwarding.sh regress/transfer.sh | ||
7916 | regress/multiplex.sh] | ||
7917 | Move the setting of DATA and COPY into test-exec.sh | ||
7918 | |||
7919 | commit 34035be27b7ddd84706fe95c39d37cba7d5c9572 | ||
7920 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7921 | Date: Fri May 17 14:47:51 2013 +1000 | ||
7922 | |||
7923 | - dtucker@cvs.openbsd.org 2013/05/17 01:32:11 | ||
7924 | [regress/integrity.sh] | ||
7925 | don't print output from ssh before getting it (it's available in ssh.log) | ||
7926 | |||
7927 | commit b8b96b0aa634d440feba4331c80ae4de9dda2081 | ||
7928 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7929 | Date: Fri May 17 14:46:20 2013 +1000 | ||
7930 | |||
7931 | - dtucker@cvs.openbsd.org 2013/05/17 01:16:09 | ||
7932 | [regress/agent-timeout.sh] | ||
7933 | Pull back some portability changes from -portable: | ||
7934 | - TIMEOUT is a read-only variable in some shells | ||
7935 | - not all greps have -q so redirect to /dev/null instead. | ||
7936 | (ID sync only) | ||
7937 | |||
7938 | commit a40d97ff46831c9081a6a4472036689360847fb1 | ||
7939 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7940 | Date: Fri May 17 14:44:53 2013 +1000 | ||
7941 | |||
7942 | sync missing ID | ||
7943 | |||
7944 | commit 56347efe796a0506e846621ae65562b978e45f1d | ||
7945 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7946 | Date: Fri May 17 13:28:36 2013 +1000 | ||
7947 | |||
7948 | - dtucker@cvs.openbsd.org 2013/05/17 00:37:40 | ||
7949 | [regress/agent.sh regress/keytype.sh regress/cfgmatch.sh | ||
7950 | regress/forcecommand.sh regress/proto-version.sh regress/test-exec.sh | ||
7951 | regress/cipher-speed.sh regress/cert-hostkey.sh regress/cert-userkey.sh | ||
7952 | regress/ssh-com.sh] | ||
7953 | replace 'echo -n' with 'printf' since it's more portable | ||
7954 | also remove "echon" hack. | ||
7955 | |||
7956 | commit 91af05c5167fe0aa5bd41d2e4a83757d9f627c18 | ||
7957 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7958 | Date: Fri May 17 13:16:59 2013 +1000 | ||
7959 | |||
7960 | - (dtucker) [regress/integrity.sh]. Force fixed Diffie-Hellman key exchange | ||
7961 | methods. When the openssl version doesn't support ECDH then next one on | ||
7962 | the list is DH group exchange, but that causes a bit more traffic which can | ||
7963 | mean that the tests flip bits in the initial exchange rather than the MACed | ||
7964 | traffic and we get different errors to what the tests look for. | ||
7965 | |||
7966 | commit 6e1e60c3c2e16c32bb7ca0876caaa6182a4e4b2c | ||
7967 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7968 | Date: Fri May 17 11:23:41 2013 +1000 | ||
7969 | |||
7970 | - (dtucker) [regress/bsd.regress.mk] Remove unused file. We've never used it | ||
7971 | in portable and it's long gone in openbsd. | ||
7972 | |||
7973 | commit 982b0cbc4c2b5ea14725f4b339393cdf343dd0fe | ||
7974 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7975 | Date: Fri May 17 09:45:12 2013 +1000 | ||
7976 | |||
7977 | - dtucker@cvs.openbsd.org 2013/05/16 05:48:31 | ||
7978 | [regress/rekey.sh] | ||
7979 | add tests for RekeyLimit parsing | ||
7980 | |||
7981 | commit 14490fe7b0f45b1b19f8a3dc10eb3d214f27f5bd | ||
7982 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7983 | Date: Fri May 17 09:44:20 2013 +1000 | ||
7984 | |||
7985 | - dtucker@cvs.openbsd.org 2013/05/16 04:26:10 | ||
7986 | [regress/rekey.sh] | ||
7987 | add server-side rekey test | ||
7988 | |||
7989 | commit c31c8729c15f83fba14ef9da0d66bda6215ff69a | ||
7990 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7991 | Date: Fri May 17 09:43:33 2013 +1000 | ||
7992 | |||
7993 | - dtucker@cvs.openbsd.org 2013/05/16 03:33:30 | ||
7994 | [regress/rekey.sh] | ||
7995 | test rekeying when there's no data being transferred | ||
7996 | |||
7997 | commit a8a62fcc46c19997797846197a6256ed9a777a47 | ||
7998 | Author: Darren Tucker <dtucker@zip.com.au> | ||
7999 | Date: Fri May 17 09:42:34 2013 +1000 | ||
8000 | |||
8001 | - dtucker@cvs.openbsd.org 2013/05/16 02:10:35 | ||
8002 | [rekey.sh] | ||
8003 | Add test for time-based rekeying | ||
8004 | |||
8005 | commit 5e95173715d516e6014485e2b6def1fb3db84036 | ||
8006 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8007 | Date: Fri May 17 09:41:33 2013 +1000 | ||
8008 | |||
8009 | - djm@cvs.openbsd.org 2013/05/10 03:46:14 | ||
8010 | [modpipe.c] | ||
8011 | sync some portability changes from portable OpenSSH (id sync only) | ||
8012 | |||
8013 | commit a4df65b9fc68a555a7d8781700475fb03ed6e694 | ||
8014 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8015 | Date: Fri May 17 09:37:31 2013 +1000 | ||
8016 | |||
8017 | - dtucker@cvs.openbsd.org 2013/04/22 07:28:53 | ||
8018 | [multiplex.sh] | ||
8019 | Add tests for -Oforward and -Ocancel for local and remote forwards | ||
8020 | |||
8021 | commit 40aaff7e4bcb05b05e3d24938b6d34885be817da | ||
8022 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8023 | Date: Fri May 17 09:36:20 2013 +1000 | ||
8024 | |||
8025 | - dtucker@cvs.openbsd.org 2013/04/22 07:23:08 | ||
8026 | [multiplex.sh] | ||
8027 | Write mux master logs to regress.log instead of ssh.log to keep separate | ||
8028 | |||
8029 | commit f3568fc62b73b50a0a3c8447e4a00f4892cab25e | ||
8030 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8031 | Date: Fri May 17 09:35:26 2013 +1000 | ||
8032 | |||
8033 | - djm@cvs.openbsd.org 2013/04/18 02:46:12 | ||
8034 | [Makefile regress/sftp-chroot.sh] | ||
8035 | test sshd ChrootDirectory+internal-sftp; feedback & ok dtucker@ | ||
8036 | |||
8037 | commit dfea3bcdd7c980c2335402464b7dd8d8721e426d | ||
8038 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8039 | Date: Fri May 17 09:31:39 2013 +1000 | ||
8040 | |||
8041 | - dtucker@cvs.openbsd.org 2013/04/07 02:16:03 | ||
8042 | [regress/Makefile regress/rekey.sh regress/integrity.sh | ||
8043 | regress/sshd-log-wrapper.sh regress/forwarding.sh regress/test-exec.sh] | ||
8044 | use -E option for ssh and sshd to write debuging logs to ssh{,d}.log and | ||
8045 | save the output from any failing tests. If a test fails the debug output | ||
8046 | from ssh and sshd for the failing tests (and only the failing tests) should | ||
8047 | be available in failed-ssh{,d}.log. | ||
8048 | |||
8049 | commit 75129025a2d504b630d1718fef0da002f5662f63 | ||
8050 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8051 | Date: Fri May 17 09:19:10 2013 +1000 | ||
8052 | |||
8053 | - dtucker@cvs.openbsd.org 2013/04/06 06:00:22 | ||
8054 | [regress/rekey.sh regress/test-exec.sh regress/integrity.sh | ||
8055 | regress/multiplex.sh Makefile regress/cfgmatch.sh] | ||
8056 | Split the regress log into 3 parts: the debug output from ssh, the debug | ||
8057 | log from sshd and the output from the client command (ssh, scp or sftp). | ||
8058 | Somewhat functional now, will become more useful when ssh/sshd -E is added. | ||
8059 | |||
8060 | commit 7c8b1e72331293b4707dc6f7f68a69e975a3fa70 | ||
8061 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8062 | Date: Fri May 17 09:10:20 2013 +1000 | ||
8063 | |||
8064 | - dtucker@cvs.openbsd.org 2013/03/23 11:09:43 | ||
8065 | [test-exec.sh] | ||
8066 | Only regenerate host keys if they don't exist or if ssh-keygen has changed | ||
8067 | since they were. Reduces test runtime by 5-30% depending on machine | ||
8068 | speed. | ||
8069 | |||
8070 | commit 712de4d1100963b11bc618472f95ce36bf7e2ae3 | ||
8071 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8072 | Date: Fri May 17 09:07:12 2013 +1000 | ||
8073 | |||
8074 | - djm@cvs.openbsd.org 2013/03/07 00:20:34 | ||
8075 | [regress/proxy-connect.sh] | ||
8076 | repeat test with a style appended to the username | ||
8077 | |||
8078 | commit 09c0f0325b2f538de9a1073e03b8ef26dece4c16 | ||
8079 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8080 | Date: Thu May 16 20:48:57 2013 +1000 | ||
8081 | |||
8082 | - dtucker@cvs.openbsd.org 2013/05/16 10:44:06 | ||
8083 | [servconf.c] | ||
8084 | remove another now-unused variable | ||
8085 | |||
8086 | commit 9113d0c2381202412c912a20c8083ab7d6824ec9 | ||
8087 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8088 | Date: Thu May 16 20:48:14 2013 +1000 | ||
8089 | |||
8090 | - dtucker@cvs.openbsd.org 2013/05/16 10:43:34 | ||
8091 | [servconf.c readconf.c] | ||
8092 | remove now-unused variables | ||
8093 | |||
8094 | commit e194ba4111ffd47cd1f4c8be1ddc8a4cb673d005 | ||
8095 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8096 | Date: Thu May 16 20:47:31 2013 +1000 | ||
8097 | |||
8098 | - (dtucker) [configure.ac readconf.c servconf.c | ||
8099 | openbsd-compat/openbsd-compat.h] Add compat bits for scan_scaled. | ||
8100 | |||
8101 | commit b7ee8521448100e5b268111ff90feb017e657e44 | ||
8102 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8103 | Date: Thu May 16 20:33:10 2013 +1000 | ||
8104 | |||
8105 | - dtucker@cvs.openbsd.org 2013/05/16 09:12:31 | ||
8106 | [readconf.c servconf.c] | ||
8107 | switch RekeyLimit traffic volume parsing to scan_scaled. ok djm@ | ||
8108 | |||
8109 | commit dbee308253931f8c1aeebf781d7e7730ff6a0dc1 | ||
8110 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8111 | Date: Thu May 16 20:32:29 2013 +1000 | ||
8112 | |||
8113 | - dtucker@cvs.openbsd.org 2013/05/16 09:08:41 | ||
8114 | [log.c scp.c sshd.c serverloop.c schnorr.c sftp.c] | ||
8115 | Fix some "unused result" warnings found via clang and -portable. | ||
8116 | ok markus@ | ||
8117 | |||
8118 | commit 64d22946d664dad8165f1fae9e78b53831ed728d | ||
8119 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8120 | Date: Thu May 16 20:31:29 2013 +1000 | ||
8121 | |||
8122 | - jmc@cvs.openbsd.org 2013/05/16 06:30:06 | ||
8123 | [sshd_config.5] | ||
8124 | oops! avoid Xr to self; | ||
8125 | |||
8126 | commit 63e0df2b936770baadc8844617b99e5174b476d0 | ||
8127 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8128 | Date: Thu May 16 20:30:31 2013 +1000 | ||
8129 | |||
8130 | - jmc@cvs.openbsd.org 2013/05/16 06:28:45 | ||
8131 | [ssh_config.5] | ||
8132 | put IgnoreUnknown in the right place; | ||
8133 | |||
8134 | commit 0763698f71efef8b3f8460c5700758359219eb7c | ||
8135 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8136 | Date: Thu May 16 20:30:03 2013 +1000 | ||
8137 | |||
8138 | - djm@cvs.openbsd.org 2013/05/16 04:27:50 | ||
8139 | [ssh_config.5 readconf.h readconf.c] | ||
8140 | add the ability to ignore specific unrecognised ssh_config options; | ||
8141 | bz#866; ok markus@ | ||
8142 | |||
8143 | commit 5f96f3b4bee11ae2b9b32ff9b881c3693e210f96 | ||
8144 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8145 | Date: Thu May 16 20:29:28 2013 +1000 | ||
8146 | |||
8147 | - dtucker@cvs.openbsd.org 2013/05/16 04:09:14 | ||
8148 | [sshd_config.5 servconf.c servconf.h packet.c serverloop.c monitor.c sshd_config | ||
8149 | sshd.c] Add RekeyLimit to sshd with the same syntax as the client allowing | ||
8150 | rekeying based on traffic volume or time. ok djm@, help & ok jmc@ for the man | ||
8151 | page. | ||
8152 | |||
8153 | commit c53c2af173cf67fd1c26f98e7900299b1b65b6ec | ||
8154 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8155 | Date: Thu May 16 20:28:16 2013 +1000 | ||
8156 | |||
8157 | - dtucker@cvs.openbsd.org 2013/05/16 02:00:34 | ||
8158 | [ssh_config sshconnect2.c packet.c readconf.h readconf.c clientloop.c | ||
8159 | ssh_config.5 packet.h] | ||
8160 | Add an optional second argument to RekeyLimit in the client to allow | ||
8161 | rekeying based on elapsed time in addition to amount of traffic. | ||
8162 | with djm@ jmc@, ok djm | ||
8163 | |||
8164 | commit 64c6fceecd27e1739040b42de8f3759454260b39 | ||
8165 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8166 | Date: Thu May 16 20:27:14 2013 +1000 | ||
8167 | |||
8168 | - dtucker@cvs.openbsd.org 2013/05/10 10:13:50 | ||
8169 | [ssh-pkcs11-helper.c] | ||
8170 | remove unused extern optarg. ok markus@ | ||
8171 | |||
8172 | commit caf00109346e4ab6bb495b0e22bc5b1e7ee22f26 | ||
8173 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8174 | Date: Thu May 16 20:26:18 2013 +1000 | ||
8175 | |||
8176 | - djm@cvs.openbsd.org 2013/05/10 04:08:01 | ||
8177 | [key.c] | ||
8178 | memleak in cert_free(), wasn't actually freeing the struct; | ||
8179 | bz#2096 from shm AT digitalsun.pl | ||
8180 | |||
8181 | commit 7e831edbf7a1b0b9aeeb08328b9fceafaad1bf22 | ||
8182 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8183 | Date: Thu May 16 20:25:40 2013 +1000 | ||
8184 | |||
8185 | add missing attribution | ||
8186 | |||
8187 | commit 54da6be320495604ddf65d10ac4cc8cf7849c533 | ||
8188 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8189 | Date: Thu May 16 20:25:04 2013 +1000 | ||
8190 | |||
8191 | - djm@cvs.openbsd.org 2013/05/10 03:40:07 | ||
8192 | [sshconnect2.c] | ||
8193 | fix bzero(ptr_to_struct, sizeof(ptr_to_struct)); bz#2100 from | ||
8194 | |||
8195 | commit 5d8b702d95c0dfc338726fecfbb709695afd1377 | ||
8196 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8197 | Date: Thu May 16 20:24:23 2013 +1000 | ||
8198 | |||
8199 | - dtucker@cvs.openbsd.org 2013/05/06 07:35:12 | ||
8200 | [sftp-server.8] | ||
8201 | Reference the version of the sftp draft we actually implement. ok djm@ | ||
8202 | |||
8203 | commit 026d9db3fbe311b5a7e98d62472cb666aa559648 | ||
8204 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8205 | Date: Thu May 16 20:23:52 2013 +1000 | ||
8206 | |||
8207 | - tedu@cvs.openbsd.org 2013/04/24 16:01:46 | ||
8208 | [misc.c] | ||
8209 | remove extra parens noticed by nicm | ||
8210 | |||
8211 | commit 2ca51bf140ef2c2409fd220778529dc17c11d8fa | ||
8212 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8213 | Date: Thu May 16 20:22:46 2013 +1000 | ||
8214 | |||
8215 | - tedu@cvs.openbsd.org 2013/04/23 17:49:45 | ||
8216 | [misc.c] | ||
8217 | use xasprintf instead of a series of strlcats and strdup. ok djm | ||
8218 | |||
8219 | commit 6aa3eacc5e5f39702b6dd5b27970d9fd97bc2383 | ||
8220 | Author: Damien Miller <djm@mindrot.org> | ||
8221 | Date: Thu May 16 11:10:17 2013 +1000 | ||
8222 | |||
8223 | - (djm) [contrib/ssh-copy-id] Fix bug that could cause "rm *" to be | ||
8224 | executed if mktemp failed; bz#2105 ok dtucker@ | ||
8225 | |||
8226 | commit c54e3e0741a27119b3badd8ff92b1988b7e9bd50 | ||
8227 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8228 | Date: Fri May 10 18:53:14 2013 +1000 | ||
8229 | |||
8230 | - (dtucker) [configure.ac] Add -Werror to the -Qunused-arguments test so | ||
8231 | we don't get a warning on compilers that *don't* support it. Add | ||
8232 | -Wno-unknown-warning-option. Move both to the start of the list for | ||
8233 | maximum noise suppression. Tested with gcc 4.6.3, gcc 2.95.4 and clang 2.9. | ||
8234 | |||
8235 | commit a75d247a18a5099c60226395354eb252c097ac86 | ||
8236 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8237 | Date: Fri May 10 18:11:55 2013 +1000 | ||
8238 | |||
8239 | - (dtucker) [kex.c] Only include sha256 and ECC key exchange methods when the | ||
8240 | underlying libraries support them. | ||
8241 | |||
8242 | commit 0abfb559e3f79d1f217773510d7626c3722aa3c1 | ||
8243 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8244 | Date: Fri May 10 18:08:49 2013 +1000 | ||
8245 | |||
8246 | - (dtucker) [openbsd-compat/getopt.h openbsd-compat/getopt_long.c | ||
8247 | openbsd-compat/openbsd-compat.h] pull in getopt.h from openbsd and plumb | ||
8248 | in to use it when we're using our own getopt. | ||
8249 | |||
8250 | commit ccfdfceacb7e23d1479ed4cc91976c5ac6e23c56 | ||
8251 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8252 | Date: Fri May 10 16:28:55 2013 +1000 | ||
8253 | |||
8254 | - (dtucker) [openbsd-compat/Makefile.in openbsd-compat/getopt.c | ||
8255 | openbsd-compat/getopt_long.c regress/modpipe.c] Remove getopt.c, add | ||
8256 | portability code to getopt_long.c and switch over Makefile and the ugly | ||
8257 | hack in modpipe.c. Fixes bz#1448. | ||
8258 | |||
8259 | commit 39332020078aa8fd4fc28e00b336438dc64b0f5a | ||
8260 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8261 | Date: Fri May 10 15:38:11 2013 +1000 | ||
8262 | |||
8263 | - (dtucker) [openbsd-compat/getopt_long.c] Import from OpenBSD. No | ||
8264 | portability changes yet. | ||
8265 | |||
8266 | commit 35b2fe99bee4f332d1c1efa49107cdb3c67da07a | ||
8267 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8268 | Date: Fri May 10 15:35:26 2013 +1000 | ||
8269 | |||
8270 | - (dtucker) [openbsd-compat/getopt.c] Factor out portibility changes to | ||
8271 | getopt.c. Preprocessed source is identical other than line numbers. | ||
8272 | |||
8273 | commit abbc7a7c02e45787d023f50a30f62d7a3e14fe9e | ||
8274 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8275 | Date: Fri May 10 13:54:23 2013 +1000 | ||
8276 | |||
8277 | - (dtucker) [configure.ac] Enable -Wsizeof-pointer-memaccess if the compiler | ||
8278 | supports it. Mentioned by Colin Watson in bz#2100, ok djm. | ||
8279 | |||
8280 | commit bc02f163f6e882d390abfb925b47b41e13ae523b | ||
8281 | Author: Damien Miller <djm@mindrot.org> | ||
8282 | Date: Tue Apr 23 19:25:49 2013 +1000 | ||
8283 | |||
8284 | - dtucker@cvs.openbsd.org 2013/04/22 01:17:18 | ||
8285 | [mux.c] | ||
8286 | typo in debug output: evitval->exitval | ||
8287 | |||
8288 | commit f8b894e31dc3530c7eb6d0a378848260d54f74c4 | ||
8289 | Author: Damien Miller <djm@mindrot.org> | ||
8290 | Date: Tue Apr 23 19:25:29 2013 +1000 | ||
8291 | |||
8292 | - djm@cvs.openbsd.org 2013/04/19 12:07:08 | ||
8293 | [kex.c] | ||
8294 | remove duplicated list entry pointed out by naddy@ | ||
8295 | |||
8296 | commit 34bd20a1e53b63ceb01f06c1654d9112e6784b0a | ||
8297 | Author: Damien Miller <djm@mindrot.org> | ||
8298 | Date: Tue Apr 23 19:25:00 2013 +1000 | ||
8299 | |||
8300 | - djm@cvs.openbsd.org 2013/04/19 11:10:18 | ||
8301 | [ssh.c] | ||
8302 | add -Q to usage; reminded by jmc@ | ||
8303 | |||
8304 | commit ea11119eee3c5e2429b1f5f8688b25b028fa991a | ||
8305 | Author: Damien Miller <djm@mindrot.org> | ||
8306 | Date: Tue Apr 23 19:24:32 2013 +1000 | ||
8307 | |||
8308 | - djm@cvs.openbsd.org 2013/04/19 01:06:50 | ||
8309 | [authfile.c cipher.c cipher.h kex.c kex.h kexecdh.c kexecdhc.c kexecdhs.c] | ||
8310 | [key.c key.h mac.c mac.h packet.c ssh.1 ssh.c] | ||
8311 | add the ability to query supported ciphers, MACs, key type and KEX | ||
8312 | algorithms to ssh. Includes some refactoring of KEX and key type handling | ||
8313 | to be table-driven; ok markus@ | ||
8314 | |||
8315 | commit a56086b9903b62c1c4fdedf01b68338fe4dc90e4 | ||
8316 | Author: Damien Miller <djm@mindrot.org> | ||
8317 | Date: Tue Apr 23 15:24:18 2013 +1000 | ||
8318 | |||
8319 | - djm@cvs.openbsd.org 2013/04/19 01:03:01 | ||
8320 | [session.c] | ||
8321 | reintroduce 1.262 without the connection-killing bug: | ||
8322 | fatal() when ChrootDirectory specified by running without root privileges; | ||
8323 | ok markus@ | ||
8324 | |||
8325 | commit 0d6771b4648889ae5bc4235f9e3fc6cd82b710bd | ||
8326 | Author: Damien Miller <djm@mindrot.org> | ||
8327 | Date: Tue Apr 23 15:23:24 2013 +1000 | ||
8328 | |||
8329 | - djm@cvs.openbsd.org 2013/04/19 01:01:00 | ||
8330 | [ssh-keygen.c] | ||
8331 | fix some memory leaks; bz#2088 ok dtucker@ | ||
8332 | |||
8333 | commit 467b00c38ba244f9966466e57a89d003f3afb159 | ||
8334 | Author: Damien Miller <djm@mindrot.org> | ||
8335 | Date: Tue Apr 23 15:23:07 2013 +1000 | ||
8336 | |||
8337 | - djm@cvs.openbsd.org 2013/04/19 01:00:10 | ||
8338 | [sshd_config.5] | ||
8339 | document the requirment that the AuthorizedKeysCommand be owned by root; | ||
8340 | ok dtucker@ markus@ | ||
8341 | |||
8342 | commit 9303e6527bb5ca7630c765f28624702c212bfd6c | ||
8343 | Author: Damien Miller <djm@mindrot.org> | ||
8344 | Date: Tue Apr 23 15:22:40 2013 +1000 | ||
8345 | |||
8346 | - djm@cvs.openbsd.org 2013/04/18 02:16:07 | ||
8347 | [sftp.c] | ||
8348 | make "sftp -q" do what it says on the sticker: hush everything but errors; | ||
8349 | |||
8350 | commit f1a02aea35504e8bef2ed9eef6f9ddeab12bacb3 | ||
8351 | Author: Damien Miller <djm@mindrot.org> | ||
8352 | Date: Tue Apr 23 15:22:13 2013 +1000 | ||
8353 | |||
8354 | - dtucker@cvs.openbsd.org 2013/04/17 09:04:09 | ||
8355 | [session.c] | ||
8356 | revert rev 1.262; it fails because uid is already set here. ok djm@ | ||
8357 | |||
8358 | commit d5edefd27a30768cc7a4817302e964b6cb2f9be7 | ||
8359 | Author: Damien Miller <djm@mindrot.org> | ||
8360 | Date: Tue Apr 23 15:21:39 2013 +1000 | ||
8361 | |||
8362 | - djm@cvs.openbsd.org 2013/04/11 02:27:50 | ||
8363 | [packet.c] | ||
8364 | quiet disconnect notifications on the server from error() back to logit() | ||
8365 | if it is a normal client closure; bz#2057 ok+feedback dtucker@ | ||
8366 | |||
8367 | commit 6901032b05291fc5d2bd4067fc47904de3506fda | ||
8368 | Author: Damien Miller <djm@mindrot.org> | ||
8369 | Date: Tue Apr 23 15:21:24 2013 +1000 | ||
8370 | |||
8371 | - dtucker@cvs.openbsd.org 2013/04/07 09:40:27 | ||
8372 | [sshd.8] | ||
8373 | clarify -e text. suggested by & ok jmc@ | ||
8374 | |||
8375 | commit 03d4d7e60b16f913c75382e32e136ddfa8d6485f | ||
8376 | Author: Damien Miller <djm@mindrot.org> | ||
8377 | Date: Tue Apr 23 15:21:06 2013 +1000 | ||
8378 | |||
8379 | - dtucker@cvs.openbsd.org 2013/04/07 02:10:33 | ||
8380 | [log.c log.h ssh.1 ssh.c sshd.8 sshd.c] | ||
8381 | Add -E option to ssh and sshd to append debugging logs to a specified file | ||
8382 | instead of stderr or syslog. ok markus@, man page help jmc@ | ||
8383 | |||
8384 | commit 37f1c08473b1ef2a188ee178ce2e11e841f88563 | ||
8385 | Author: Damien Miller <djm@mindrot.org> | ||
8386 | Date: Tue Apr 23 15:20:43 2013 +1000 | ||
8387 | |||
8388 | - markus@cvs.openbsd.org 2013/04/06 16:07:00 | ||
8389 | [channels.c sshd.c] | ||
8390 | handle ECONNABORTED for accept(); ok deraadt some time ago... | ||
8391 | |||
8392 | commit 172859cff7df9fd8a29a1f0a4de568f644bbda50 | ||
8393 | Author: Damien Miller <djm@mindrot.org> | ||
8394 | Date: Tue Apr 23 15:19:27 2013 +1000 | ||
8395 | |||
8396 | - djm@cvs.openbsd.org 2013/04/05 00:58:51 | ||
8397 | [mux.c] | ||
8398 | cleanup mux-created channels that are in SSH_CHANNEL_OPENING state too | ||
8399 | (in addition to ones already in OPEN); bz#2079, ok dtucker@ | ||
8400 | |||
8401 | commit 9f12b5dcd5f7772e633fb2786c63bfcbea1f1aea | ||
8402 | Author: Damien Miller <djm@mindrot.org> | ||
8403 | Date: Tue Apr 23 15:19:11 2013 +1000 | ||
8404 | |||
8405 | - djm@cvs.openbsd.org 2013/04/05 00:31:49 | ||
8406 | [pathnames.h] | ||
8407 | use the existing _PATH_SSH_USER_RC define to construct the other | ||
8408 | pathnames; bz#2077, ok dtucker@ (no binary change) | ||
8409 | |||
8410 | commit d677ad14ff7efedf21745ee1694058350e758e18 | ||
8411 | Author: Damien Miller <djm@mindrot.org> | ||
8412 | Date: Tue Apr 23 15:18:51 2013 +1000 | ||
8413 | |||
8414 | - djm@cvs.openbsd.org 2013/04/05 00:14:00 | ||
8415 | [auth2-gss.c krl.c sshconnect2.c] | ||
8416 | hush some {unused, printf type} warnings | ||
8417 | |||
8418 | commit 508b6c3d3b95c8ec078fd4801368597ab29b2db9 | ||
8419 | Author: Damien Miller <djm@mindrot.org> | ||
8420 | Date: Tue Apr 23 15:18:28 2013 +1000 | ||
8421 | |||
8422 | - djm@cvs.openbsd.org 2013/03/08 06:32:58 | ||
8423 | [ssh.c] | ||
8424 | allow "ssh -f none ..." ok markus@ | ||
8425 | |||
8426 | commit 91a55f28f35431f9000b95815c343b5a18fda712 | ||
8427 | Author: Damien Miller <djm@mindrot.org> | ||
8428 | Date: Tue Apr 23 15:18:10 2013 +1000 | ||
8429 | |||
8430 | - markus@cvs.openbsd.org 2013/03/07 19:27:25 | ||
8431 | [auth.h auth2-chall.c auth2.c monitor.c sshd_config.5] | ||
8432 | add submethod support to AuthenticationMethods; ok and freedback djm@ | ||
8433 | |||
8434 | commit 4ce189d9108c62090a0dd5dea973d175328440db | ||
8435 | Author: Damien Miller <djm@mindrot.org> | ||
8436 | Date: Tue Apr 23 15:17:52 2013 +1000 | ||
8437 | |||
8438 | - djm@cvs.openbsd.org 2013/03/07 00:19:59 | ||
8439 | [auth2-pubkey.c monitor.c] | ||
8440 | reconstruct the original username that was sent by the client, which may | ||
8441 | have included a style (e.g. "root:skey") when checking public key | ||
8442 | signatures. Fixes public key and hostbased auth when the client specified | ||
8443 | a style; ok markus@ | ||
8444 | |||
8445 | commit 5cbec4c25954b184e43bf3d3ac09e65eb474f5f9 | ||
8446 | Author: Damien Miller <djm@mindrot.org> | ||
8447 | Date: Tue Apr 23 15:17:12 2013 +1000 | ||
8448 | |||
8449 | - djm@cvs.openbsd.org 2013/03/06 23:36:53 | ||
8450 | [readconf.c] | ||
8451 | g/c unused variable (-Wunused) | ||
8452 | |||
8453 | commit 998cc56b65682d490c9bbf5977dceb1aa84a0233 | ||
8454 | Author: Damien Miller <djm@mindrot.org> | ||
8455 | Date: Tue Apr 23 15:16:43 2013 +1000 | ||
8456 | |||
8457 | - djm@cvs.openbsd.org 2013/03/06 23:35:23 | ||
8458 | [session.c] | ||
8459 | fatal() when ChrootDirectory specified by running without root privileges; | ||
8460 | ok markus@ | ||
8461 | |||
8462 | commit 62e9c4f9b6027620f9091a2f43328e057bdb33f1 | ||
8463 | Author: Damien Miller <djm@mindrot.org> | ||
8464 | Date: Tue Apr 23 15:15:49 2013 +1000 | ||
8465 | |||
8466 | - (djm) OpenBSD CVS Sync | ||
8467 | - markus@cvs.openbsd.org 2013/03/05 20:16:09 | ||
8468 | [sshconnect2.c] | ||
8469 | reset pubkey order on partial success; ok djm@ | ||
8470 | |||
8471 | commit 6332da2ae88db623d7da8070dd807efa26d9dfe8 | ||
8472 | Author: Damien Miller <djm@mindrot.org> | ||
8473 | Date: Tue Apr 23 14:25:52 2013 +1000 | ||
8474 | |||
8475 | - (djm) [auth.c configure.ac misc.c monitor.c monitor_wrap.c] Support | ||
8476 | platforms, such as Android, that lack struct passwd.pw_gecos. Report | ||
8477 | and initial patch from Nathan Osman bz#2086; feedback tim@ ok dtucker@ | ||
8478 | |||
8479 | commit ce1c9574fcfaf753a062276867335c1e237f725c | ||
8480 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8481 | Date: Thu Apr 18 21:36:19 2013 +1000 | ||
8482 | |||
8483 | - (dtucker) [configure.ac] Use -Qunused-arguments to suppress warnings from | ||
8484 | unused argument warnings (in particular, -fno-builtin-memset) from clang. | ||
8485 | |||
8486 | commit bc68f2451b836e6a3fa65df8774a8b1f10049ded | ||
8487 | Author: Damien Miller <djm@mindrot.org> | ||
8488 | Date: Thu Apr 18 11:26:25 2013 +1000 | ||
8489 | |||
8490 | - (djm) [config.guess config.sub] Update to last versions before they switch | ||
8491 | to GPL3. ok dtucker@ | ||
8492 | |||
8493 | commit 15fd19c4c9943cf02bc6f462d52c86ee6a8f422e | ||
8494 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8495 | Date: Fri Apr 5 11:22:26 2013 +1100 | ||
8496 | |||
8497 | - djm@cvs.openbsd.org 2013/02/22 22:09:01 | ||
8498 | [ssh.c] | ||
8499 | Allow IdenityFile=none; ok markus deraadt (and dtucker for an earlier | ||
8500 | version) | ||
8501 | |||
8502 | commit 5d1d9541a7c83963cd887b6b36e25b46463a05d4 | ||
8503 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8504 | Date: Fri Apr 5 11:20:00 2013 +1100 | ||
8505 | |||
8506 | - markus@cvs.openbsd.org 2013/02/22 19:13:56 | ||
8507 | [sshconnect.c] | ||
8508 | support ProxyCommand=- (stdin/out already point to the proxy); ok djm@ | ||
8509 | |||
8510 | commit aefa3682431f59cf1ad9a0f624114b135135aa44 | ||
8511 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8512 | Date: Fri Apr 5 11:18:35 2013 +1100 | ||
8513 | |||
8514 | - dtucker@cvs.openbsd.org 2013/02/22 04:45:09 | ||
8515 | [ssh.c readconf.c readconf.h] | ||
8516 | Don't complain if IdentityFiles specified in system-wide configs are | ||
8517 | missing. ok djm, deraadt | ||
8518 | |||
8519 | commit f3c38142435622d056582e851579d8647a233c7f | ||
8520 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8521 | Date: Fri Apr 5 11:16:52 2013 +1100 | ||
8522 | |||
8523 | - dtucker@cvs.openbsd.org 2013/02/19 02:12:47 | ||
8524 | [krl.c] | ||
8525 | Remove bogus include. ok djm | ||
8526 | (id sync only) | ||
8527 | |||
8528 | commit 1910478c2d2c3d0e1edacaeff21ed388d70759e9 | ||
8529 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8530 | Date: Fri Apr 5 11:13:08 2013 +1100 | ||
8531 | |||
8532 | - dtucker@cvs.openbsd.org 2013/02/17 23:16:57 | ||
8533 | [readconf.c ssh.c readconf.h sshconnect2.c] | ||
8534 | Keep track of which IndentityFile options were manually supplied and which | ||
8535 | were default options, and don't warn if the latter are missing. | ||
8536 | ok markus@ | ||
8537 | |||
8538 | commit c9627cdbc65b25da943f24e6a953da899f08eefc | ||
8539 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8540 | Date: Mon Apr 1 12:40:48 2013 +1100 | ||
8541 | |||
8542 | - (dtucker) [openbsd-compat/bsd-cygwin_util.{c,h}] Don't include windows.h | ||
8543 | to avoid conflicting definitions of __int64, adding the required bits. | ||
8544 | Patch from Corinna Vinschen. | ||
8545 | |||
8546 | commit 75db01d2ce29a85f8e5a2aff2011446896cf3f8a | ||
8547 | Author: Tim Rice <tim@multitalents.net> | ||
8548 | Date: Fri Mar 22 10:14:32 2013 -0700 | ||
8549 | |||
8550 | - (tim) [Makefile.in] remove some duplication introduced in 20130220 commit. | ||
8551 | |||
8552 | commit 221b4b2436ac78a65c3b775c25ccd396a1fed208 | ||
8553 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8554 | Date: Fri Mar 22 12:51:09 2013 +1100 | ||
8555 | |||
8556 | - (dtucker) [includes.h] Check if _GNU_SOURCE is already defined before | ||
8557 | defining it again. Prevents warnings if someone, eg, sets it in CFLAGS. | ||
8558 | |||
8559 | commit c8a0f27c6d761d1335d13ed84d773e9ddf1d95c8 | ||
8560 | Author: Darren Tucker <dtucker@zip.com.au> | ||
8561 | Date: Fri Mar 22 12:49:14 2013 +1100 | ||
8562 | |||
8563 | - (dtucker) [configure.ac] Add stdlib.h to zlib check for exit() prototype. | ||
8564 | |||
8565 | commit eed8dc261018aea4d6b8606ca3addc9f8cf9ed1e | ||
8566 | Author: Damien Miller <djm@mindrot.org> | ||
8567 | Date: Fri Mar 22 10:25:22 2013 +1100 | ||
8568 | |||
8569 | - (djm) Release 6.2p1 | ||
8570 | |||
8571 | commit 83efe7c86168cc07b8e6cc6df6b54f7ace3b64a3 | ||
8572 | Author: Damien Miller <djm@mindrot.org> | ||
8573 | Date: Fri Mar 22 10:17:36 2013 +1100 | ||
8574 | |||
8575 | - (djm) [contrib/ssh-copy-id contrib/ssh-copy-id.1] Updated to Phil | ||
8576 | Hands' greatly revised version. | ||
8577 | |||
8578 | commit 63b4bcd04e1c57b77eabb4e4d359508a4b2af685 | ||
8579 | Author: Damien Miller <djm@mindrot.org> | ||
8580 | Date: Wed Mar 20 12:55:14 2013 +1100 | ||
8581 | |||
8582 | - (djm) [configure.ac log.c scp.c sshconnect2.c openbsd-compat/vis.c] | ||
8583 | [openbsd-compat/vis.h] FreeBSD's strnvis isn't compatible with OpenBSD's | ||
8584 | so mark it as broken. Patch from des AT des.no | ||
@@ -175,7 +175,7 @@ whitelisted to receive this message upon request. | |||
175 | 175 | ||
176 | OpenSSH supports layer 2 and layer 3 tunnelling via the "tun@openssh.com" | 176 | OpenSSH supports layer 2 and layer 3 tunnelling via the "tun@openssh.com" |
177 | channel type. This channel type supports forwarding of network packets | 177 | channel type. This channel type supports forwarding of network packets |
178 | with datagram boundaries intact between endpoints equipped with | 178 | with datagram boundaries intact between endpoints equipped with |
179 | interfaces like the BSD tun(4) device. Tunnel forwarding channels are | 179 | interfaces like the BSD tun(4) device. Tunnel forwarding channels are |
180 | requested by the client with the following packet: | 180 | requested by the client with the following packet: |
181 | 181 | ||
@@ -453,4 +453,4 @@ respond with a SSH_FXP_STATUS message. | |||
453 | This extension is advertised in the SSH_FXP_VERSION hello with version | 453 | This extension is advertised in the SSH_FXP_VERSION hello with version |
454 | "1". | 454 | "1". |
455 | 455 | ||
456 | $OpenBSD: PROTOCOL,v 1.27 2015/02/20 22:17:21 djm Exp $ | 456 | $OpenBSD: PROTOCOL,v 1.28 2015/05/08 03:56:51 djm Exp $ |
diff --git a/PROTOCOL.agent b/PROTOCOL.agent index 3fcaa14d4..27ec0c1de 100644 --- a/PROTOCOL.agent +++ b/PROTOCOL.agent | |||
@@ -413,7 +413,7 @@ It may be requested using this message: | |||
413 | 413 | ||
414 | "rsa_e" and "rsa_n" are used to identify which private key to use. | 414 | "rsa_e" and "rsa_n" are used to identify which private key to use. |
415 | "encrypted_challenge" is a challenge blob that has (presumably) | 415 | "encrypted_challenge" is a challenge blob that has (presumably) |
416 | been encrypted with the public key and must be in the range | 416 | been encrypted with the public key and must be in the range |
417 | 1 <= encrypted_challenge < 2^256. "session_id" is the SSH protocol 1 | 417 | 1 <= encrypted_challenge < 2^256. "session_id" is the SSH protocol 1 |
418 | session ID (computed from the server host key, the server semi-ephemeral | 418 | session ID (computed from the server host key, the server semi-ephemeral |
419 | key and the session cookie). | 419 | key and the session cookie). |
@@ -557,4 +557,4 @@ Locking and unlocking affects both protocol 1 and protocol 2 keys. | |||
557 | SSH_AGENT_CONSTRAIN_LIFETIME 1 | 557 | SSH_AGENT_CONSTRAIN_LIFETIME 1 |
558 | SSH_AGENT_CONSTRAIN_CONFIRM 2 | 558 | SSH_AGENT_CONSTRAIN_CONFIRM 2 |
559 | 559 | ||
560 | $OpenBSD: PROTOCOL.agent,v 1.7 2013/01/02 00:33:49 djm Exp $ | 560 | $OpenBSD: PROTOCOL.agent,v 1.8 2015/05/08 03:56:51 djm Exp $ |
@@ -1,4 +1,4 @@ | |||
1 | See http://www.openssh.com/txt/release-6.8 for the release notes. | 1 | See http://www.openssh.com/txt/release-6.9 for the release notes. |
2 | 2 | ||
3 | - A Japanese translation of this document and of the OpenSSH FAQ is | 3 | - A Japanese translation of this document and of the OpenSSH FAQ is |
4 | - available at http://www.unixuser.org/~haruyama/security/openssh/index.html | 4 | - available at http://www.unixuser.org/~haruyama/security/openssh/index.html |
diff --git a/auth-chall.c b/auth-chall.c index 5c26a403d..60c9f14ca 100644 --- a/auth-chall.c +++ b/auth-chall.c | |||
@@ -30,8 +30,6 @@ | |||
30 | #include <stdlib.h> | 30 | #include <stdlib.h> |
31 | #include <stdio.h> | 31 | #include <stdio.h> |
32 | 32 | ||
33 | #include <stdarg.h> | ||
34 | |||
35 | #include "xmalloc.h" | 33 | #include "xmalloc.h" |
36 | #include "key.h" | 34 | #include "key.h" |
37 | #include "hostfile.h" | 35 | #include "hostfile.h" |
diff --git a/auth-options.c b/auth-options.c index 3fa236eb8..9ab1880d9 100644 --- a/auth-options.c +++ b/auth-options.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: auth-options.c,v 1.65 2015/01/14 10:30:34 markus Exp $ */ | 1 | /* $OpenBSD: auth-options.c,v 1.67 2015/05/01 03:20:54 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -220,8 +220,7 @@ auth_parse_options(struct passwd *pw, char *opts, char *file, u_long linenum) | |||
220 | goto next_option; | 220 | goto next_option; |
221 | } | 221 | } |
222 | cp = "environment=\""; | 222 | cp = "environment=\""; |
223 | if (options.permit_user_env && | 223 | if (strncasecmp(opts, cp, strlen(cp)) == 0) { |
224 | strncasecmp(opts, cp, strlen(cp)) == 0) { | ||
225 | char *s; | 224 | char *s; |
226 | struct envstring *new_envstring; | 225 | struct envstring *new_envstring; |
227 | 226 | ||
@@ -247,13 +246,19 @@ auth_parse_options(struct passwd *pw, char *opts, char *file, u_long linenum) | |||
247 | goto bad_option; | 246 | goto bad_option; |
248 | } | 247 | } |
249 | s[i] = '\0'; | 248 | s[i] = '\0'; |
250 | auth_debug_add("Adding to environment: %.900s", s); | ||
251 | debug("Adding to environment: %.900s", s); | ||
252 | opts++; | 249 | opts++; |
253 | new_envstring = xcalloc(1, sizeof(struct envstring)); | 250 | if (options.permit_user_env) { |
254 | new_envstring->s = s; | 251 | auth_debug_add("Adding to environment: " |
255 | new_envstring->next = custom_environment; | 252 | "%.900s", s); |
256 | custom_environment = new_envstring; | 253 | debug("Adding to environment: %.900s", s); |
254 | new_envstring = xcalloc(1, | ||
255 | sizeof(*new_envstring)); | ||
256 | new_envstring->s = s; | ||
257 | new_envstring->next = custom_environment; | ||
258 | custom_environment = new_envstring; | ||
259 | s = NULL; | ||
260 | } | ||
261 | free(s); | ||
257 | goto next_option; | 262 | goto next_option; |
258 | } | 263 | } |
259 | cp = "from=\""; | 264 | cp = "from=\""; |
@@ -620,7 +625,7 @@ auth_cert_options(struct sshkey *k, struct passwd *pw) | |||
620 | &cert_source_address_done) == -1) | 625 | &cert_source_address_done) == -1) |
621 | return -1; | 626 | return -1; |
622 | if (parse_option_list(k->cert->extensions, pw, | 627 | if (parse_option_list(k->cert->extensions, pw, |
623 | OPTIONS_EXTENSIONS, 1, | 628 | OPTIONS_EXTENSIONS, 0, |
624 | &cert_no_port_forwarding_flag, | 629 | &cert_no_port_forwarding_flag, |
625 | &cert_no_agent_forwarding_flag, | 630 | &cert_no_agent_forwarding_flag, |
626 | &cert_no_x11_forwarding_flag, | 631 | &cert_no_x11_forwarding_flag, |
diff --git a/auth-pam.c b/auth-pam.c index d789bad7b..d94c8285b 100644 --- a/auth-pam.c +++ b/auth-pam.c | |||
@@ -738,7 +738,7 @@ sshpam_query(void *ctx, char **name, char **info, | |||
738 | case PAM_PROMPT_ECHO_OFF: | 738 | case PAM_PROMPT_ECHO_OFF: |
739 | *num = 1; | 739 | *num = 1; |
740 | len = plen + mlen + 1; | 740 | len = plen + mlen + 1; |
741 | **prompts = xrealloc(**prompts, 1, len); | 741 | **prompts = xreallocarray(**prompts, 1, len); |
742 | strlcpy(**prompts + plen, msg, len - plen); | 742 | strlcpy(**prompts + plen, msg, len - plen); |
743 | plen += mlen; | 743 | plen += mlen; |
744 | **echo_on = (type == PAM_PROMPT_ECHO_ON); | 744 | **echo_on = (type == PAM_PROMPT_ECHO_ON); |
@@ -748,7 +748,7 @@ sshpam_query(void *ctx, char **name, char **info, | |||
748 | case PAM_TEXT_INFO: | 748 | case PAM_TEXT_INFO: |
749 | /* accumulate messages */ | 749 | /* accumulate messages */ |
750 | len = plen + mlen + 2; | 750 | len = plen + mlen + 2; |
751 | **prompts = xrealloc(**prompts, 1, len); | 751 | **prompts = xreallocarray(**prompts, 1, len); |
752 | strlcpy(**prompts + plen, msg, len - plen); | 752 | strlcpy(**prompts + plen, msg, len - plen); |
753 | plen += mlen; | 753 | plen += mlen; |
754 | strlcat(**prompts + plen, "\n", len - plen); | 754 | strlcat(**prompts + plen, "\n", len - plen); |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: auth.c,v 1.110 2015/02/25 17:29:38 djm Exp $ */ | 1 | /* $OpenBSD: auth.c,v 1.111 2015/05/01 04:17:51 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -400,8 +400,7 @@ expand_authorized_keys(const char *filename, struct passwd *pw) | |||
400 | char * | 400 | char * |
401 | authorized_principals_file(struct passwd *pw) | 401 | authorized_principals_file(struct passwd *pw) |
402 | { | 402 | { |
403 | if (options.authorized_principals_file == NULL || | 403 | if (options.authorized_principals_file == NULL) |
404 | strcasecmp(options.authorized_principals_file, "none") == 0) | ||
405 | return NULL; | 404 | return NULL; |
406 | return expand_authorized_keys(options.authorized_principals_file, pw); | 405 | return expand_authorized_keys(options.authorized_principals_file, pw); |
407 | } | 406 | } |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: auth.h,v 1.82 2015/02/16 22:13:32 djm Exp $ */ | 1 | /* $OpenBSD: auth.h,v 1.84 2015/05/08 06:41:56 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
@@ -56,7 +56,7 @@ struct Authctxt { | |||
56 | int valid; /* user exists and is allowed to login */ | 56 | int valid; /* user exists and is allowed to login */ |
57 | int attempt; | 57 | int attempt; |
58 | int failures; | 58 | int failures; |
59 | int server_caused_failure; | 59 | int server_caused_failure; |
60 | int force_pwchange; | 60 | int force_pwchange; |
61 | char *user; /* username sent by the client */ | 61 | char *user; /* username sent by the client */ |
62 | char *service; | 62 | char *service; |
@@ -127,7 +127,7 @@ int auth_rsa_key_allowed(struct passwd *, BIGNUM *, Key **); | |||
127 | 127 | ||
128 | int auth_rhosts_rsa_key_allowed(struct passwd *, char *, char *, Key *); | 128 | int auth_rhosts_rsa_key_allowed(struct passwd *, char *, char *, Key *); |
129 | int hostbased_key_allowed(struct passwd *, const char *, char *, Key *); | 129 | int hostbased_key_allowed(struct passwd *, const char *, char *, Key *); |
130 | int user_key_allowed(struct passwd *, Key *); | 130 | int user_key_allowed(struct passwd *, Key *, int); |
131 | void pubkey_auth_info(Authctxt *, const Key *, const char *, ...) | 131 | void pubkey_auth_info(Authctxt *, const Key *, const char *, ...) |
132 | __attribute__((__format__ (printf, 3, 4))); | 132 | __attribute__((__format__ (printf, 3, 4))); |
133 | void auth2_record_userkey(Authctxt *, struct sshkey *); | 133 | void auth2_record_userkey(Authctxt *, struct sshkey *); |
diff --git a/auth2-hostbased.c b/auth2-hostbased.c index eebfe8fc3..e2327cf77 100644 --- a/auth2-hostbased.c +++ b/auth2-hostbased.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: auth2-hostbased.c,v 1.24 2015/01/28 22:36:00 djm Exp $ */ | 1 | /* $OpenBSD: auth2-hostbased.c,v 1.25 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -109,8 +109,7 @@ userauth_hostbased(Authctxt *authctxt) | |||
109 | goto done; | 109 | goto done; |
110 | } | 110 | } |
111 | if (match_pattern_list(sshkey_ssh_name(key), | 111 | if (match_pattern_list(sshkey_ssh_name(key), |
112 | options.hostbased_key_types, | 112 | options.hostbased_key_types, 0) != 1) { |
113 | strlen(options.hostbased_key_types), 0) != 1) { | ||
114 | logit("%s: key type %s not in HostbasedAcceptedKeyTypes", | 113 | logit("%s: key type %s not in HostbasedAcceptedKeyTypes", |
115 | __func__, sshkey_type(key)); | 114 | __func__, sshkey_type(key)); |
116 | goto done; | 115 | goto done; |
diff --git a/auth2-pubkey.c b/auth2-pubkey.c index 0bda5c9dd..1eee16168 100644 --- a/auth2-pubkey.c +++ b/auth2-pubkey.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: auth2-pubkey.c,v 1.47 2015/02/17 00:14:05 djm Exp $ */ | 1 | /* $OpenBSD: auth2-pubkey.c,v 1.53 2015/06/15 18:44:22 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -65,6 +65,9 @@ | |||
65 | #include "monitor_wrap.h" | 65 | #include "monitor_wrap.h" |
66 | #include "authfile.h" | 66 | #include "authfile.h" |
67 | #include "match.h" | 67 | #include "match.h" |
68 | #include "ssherr.h" | ||
69 | #include "channels.h" /* XXX for session.h */ | ||
70 | #include "session.h" /* XXX for child_set_env(); refactor? */ | ||
68 | 71 | ||
69 | /* import */ | 72 | /* import */ |
70 | extern ServerOptions options; | 73 | extern ServerOptions options; |
@@ -127,8 +130,8 @@ userauth_pubkey(Authctxt *authctxt) | |||
127 | logit("refusing previously-used %s key", key_type(key)); | 130 | logit("refusing previously-used %s key", key_type(key)); |
128 | goto done; | 131 | goto done; |
129 | } | 132 | } |
130 | if (match_pattern_list(sshkey_ssh_name(key), options.pubkey_key_types, | 133 | if (match_pattern_list(sshkey_ssh_name(key), |
131 | strlen(options.pubkey_key_types), 0) != 1) { | 134 | options.pubkey_key_types, 0) != 1) { |
132 | logit("%s: key type %s not in PubkeyAcceptedKeyTypes", | 135 | logit("%s: key type %s not in PubkeyAcceptedKeyTypes", |
133 | __func__, sshkey_ssh_name(key)); | 136 | __func__, sshkey_ssh_name(key)); |
134 | goto done; | 137 | goto done; |
@@ -169,7 +172,7 @@ userauth_pubkey(Authctxt *authctxt) | |||
169 | 172 | ||
170 | /* test for correct signature */ | 173 | /* test for correct signature */ |
171 | authenticated = 0; | 174 | authenticated = 0; |
172 | if (PRIVSEP(user_key_allowed(authctxt->pw, key)) && | 175 | if (PRIVSEP(user_key_allowed(authctxt->pw, key, 1)) && |
173 | PRIVSEP(key_verify(key, sig, slen, buffer_ptr(&b), | 176 | PRIVSEP(key_verify(key, sig, slen, buffer_ptr(&b), |
174 | buffer_len(&b))) == 1) { | 177 | buffer_len(&b))) == 1) { |
175 | authenticated = 1; | 178 | authenticated = 1; |
@@ -191,7 +194,7 @@ userauth_pubkey(Authctxt *authctxt) | |||
191 | * if a user is not allowed to login. is this an | 194 | * if a user is not allowed to login. is this an |
192 | * issue? -markus | 195 | * issue? -markus |
193 | */ | 196 | */ |
194 | if (PRIVSEP(user_key_allowed(authctxt->pw, key))) { | 197 | if (PRIVSEP(user_key_allowed(authctxt->pw, key, 0))) { |
195 | packet_start(SSH2_MSG_USERAUTH_PK_OK); | 198 | packet_start(SSH2_MSG_USERAUTH_PK_OK); |
196 | packet_put_string(pkalg, alen); | 199 | packet_put_string(pkalg, alen); |
197 | packet_put_string(pkblob, blen); | 200 | packet_put_string(pkblob, blen); |
@@ -248,6 +251,288 @@ pubkey_auth_info(Authctxt *authctxt, const Key *key, const char *fmt, ...) | |||
248 | free(extra); | 251 | free(extra); |
249 | } | 252 | } |
250 | 253 | ||
254 | /* | ||
255 | * Splits 's' into an argument vector. Handles quoted string and basic | ||
256 | * escape characters (\\, \", \'). Caller must free the argument vector | ||
257 | * and its members. | ||
258 | */ | ||
259 | static int | ||
260 | split_argv(const char *s, int *argcp, char ***argvp) | ||
261 | { | ||
262 | int r = SSH_ERR_INTERNAL_ERROR; | ||
263 | int argc = 0, quote, i, j; | ||
264 | char *arg, **argv = xcalloc(1, sizeof(*argv)); | ||
265 | |||
266 | *argvp = NULL; | ||
267 | *argcp = 0; | ||
268 | |||
269 | for (i = 0; s[i] != '\0'; i++) { | ||
270 | /* Skip leading whitespace */ | ||
271 | if (s[i] == ' ' || s[i] == '\t') | ||
272 | continue; | ||
273 | |||
274 | /* Start of a token */ | ||
275 | quote = 0; | ||
276 | if (s[i] == '\\' && | ||
277 | (s[i + 1] == '\'' || s[i + 1] == '\"' || s[i + 1] == '\\')) | ||
278 | i++; | ||
279 | else if (s[i] == '\'' || s[i] == '"') | ||
280 | quote = s[i++]; | ||
281 | |||
282 | argv = xreallocarray(argv, (argc + 2), sizeof(*argv)); | ||
283 | arg = argv[argc++] = xcalloc(1, strlen(s + i) + 1); | ||
284 | argv[argc] = NULL; | ||
285 | |||
286 | /* Copy the token in, removing escapes */ | ||
287 | for (j = 0; s[i] != '\0'; i++) { | ||
288 | if (s[i] == '\\') { | ||
289 | if (s[i + 1] == '\'' || | ||
290 | s[i + 1] == '\"' || | ||
291 | s[i + 1] == '\\') { | ||
292 | i++; /* Skip '\' */ | ||
293 | arg[j++] = s[i]; | ||
294 | } else { | ||
295 | /* Unrecognised escape */ | ||
296 | arg[j++] = s[i]; | ||
297 | } | ||
298 | } else if (quote == 0 && (s[i] == ' ' || s[i] == '\t')) | ||
299 | break; /* done */ | ||
300 | else if (quote != 0 && s[i] == quote) | ||
301 | break; /* done */ | ||
302 | else | ||
303 | arg[j++] = s[i]; | ||
304 | } | ||
305 | if (s[i] == '\0') { | ||
306 | if (quote != 0) { | ||
307 | /* Ran out of string looking for close quote */ | ||
308 | r = SSH_ERR_INVALID_FORMAT; | ||
309 | goto out; | ||
310 | } | ||
311 | break; | ||
312 | } | ||
313 | } | ||
314 | /* Success */ | ||
315 | *argcp = argc; | ||
316 | *argvp = argv; | ||
317 | argc = 0; | ||
318 | argv = NULL; | ||
319 | r = 0; | ||
320 | out: | ||
321 | if (argc != 0 && argv != NULL) { | ||
322 | for (i = 0; i < argc; i++) | ||
323 | free(argv[i]); | ||
324 | free(argv); | ||
325 | } | ||
326 | return r; | ||
327 | } | ||
328 | |||
329 | /* | ||
330 | * Reassemble an argument vector into a string, quoting and escaping as | ||
331 | * necessary. Caller must free returned string. | ||
332 | */ | ||
333 | static char * | ||
334 | assemble_argv(int argc, char **argv) | ||
335 | { | ||
336 | int i, j, ws, r; | ||
337 | char c, *ret; | ||
338 | struct sshbuf *buf, *arg; | ||
339 | |||
340 | if ((buf = sshbuf_new()) == NULL || (arg = sshbuf_new()) == NULL) | ||
341 | fatal("%s: sshbuf_new failed", __func__); | ||
342 | |||
343 | for (i = 0; i < argc; i++) { | ||
344 | ws = 0; | ||
345 | sshbuf_reset(arg); | ||
346 | for (j = 0; argv[i][j] != '\0'; j++) { | ||
347 | r = 0; | ||
348 | c = argv[i][j]; | ||
349 | switch (c) { | ||
350 | case ' ': | ||
351 | case '\t': | ||
352 | ws = 1; | ||
353 | r = sshbuf_put_u8(arg, c); | ||
354 | break; | ||
355 | case '\\': | ||
356 | case '\'': | ||
357 | case '"': | ||
358 | if ((r = sshbuf_put_u8(arg, '\\')) != 0) | ||
359 | break; | ||
360 | /* FALLTHROUGH */ | ||
361 | default: | ||
362 | r = sshbuf_put_u8(arg, c); | ||
363 | break; | ||
364 | } | ||
365 | if (r != 0) | ||
366 | fatal("%s: sshbuf_put_u8: %s", | ||
367 | __func__, ssh_err(r)); | ||
368 | } | ||
369 | if ((i != 0 && (r = sshbuf_put_u8(buf, ' ')) != 0) || | ||
370 | (ws != 0 && (r = sshbuf_put_u8(buf, '"')) != 0) || | ||
371 | (r = sshbuf_putb(buf, arg)) != 0 || | ||
372 | (ws != 0 && (r = sshbuf_put_u8(buf, '"')) != 0)) | ||
373 | fatal("%s: buffer error: %s", __func__, ssh_err(r)); | ||
374 | } | ||
375 | if ((ret = malloc(sshbuf_len(buf) + 1)) == NULL) | ||
376 | fatal("%s: malloc failed", __func__); | ||
377 | memcpy(ret, sshbuf_ptr(buf), sshbuf_len(buf)); | ||
378 | ret[sshbuf_len(buf)] = '\0'; | ||
379 | sshbuf_free(buf); | ||
380 | sshbuf_free(arg); | ||
381 | return ret; | ||
382 | } | ||
383 | |||
384 | /* | ||
385 | * Runs command in a subprocess. Returns pid on success and a FILE* to the | ||
386 | * subprocess' stdout or 0 on failure. | ||
387 | * NB. "command" is only used for logging. | ||
388 | */ | ||
389 | static pid_t | ||
390 | subprocess(const char *tag, struct passwd *pw, const char *command, | ||
391 | int ac, char **av, FILE **child) | ||
392 | { | ||
393 | FILE *f; | ||
394 | struct stat st; | ||
395 | int devnull, p[2], i; | ||
396 | pid_t pid; | ||
397 | char *cp, errmsg[512]; | ||
398 | u_int envsize; | ||
399 | char **child_env; | ||
400 | |||
401 | *child = NULL; | ||
402 | |||
403 | debug3("%s: %s command \"%s\" running as %s", __func__, | ||
404 | tag, command, pw->pw_name); | ||
405 | |||
406 | /* Verify the path exists and is safe-ish to execute */ | ||
407 | if (*av[0] != '/') { | ||
408 | error("%s path is not absolute", tag); | ||
409 | return 0; | ||
410 | } | ||
411 | temporarily_use_uid(pw); | ||
412 | if (stat(av[0], &st) < 0) { | ||
413 | error("Could not stat %s \"%s\": %s", tag, | ||
414 | av[0], strerror(errno)); | ||
415 | restore_uid(); | ||
416 | return 0; | ||
417 | } | ||
418 | if (auth_secure_path(av[0], &st, NULL, 0, | ||
419 | errmsg, sizeof(errmsg)) != 0) { | ||
420 | error("Unsafe %s \"%s\": %s", tag, av[0], errmsg); | ||
421 | restore_uid(); | ||
422 | return 0; | ||
423 | } | ||
424 | |||
425 | /* | ||
426 | * Run the command; stderr is left in place, stdout is the | ||
427 | * authorized_keys output. | ||
428 | */ | ||
429 | if (pipe(p) != 0) { | ||
430 | error("%s: pipe: %s", tag, strerror(errno)); | ||
431 | restore_uid(); | ||
432 | return 0; | ||
433 | } | ||
434 | |||
435 | /* | ||
436 | * Don't want to call this in the child, where it can fatal() and | ||
437 | * run cleanup_exit() code. | ||
438 | */ | ||
439 | restore_uid(); | ||
440 | |||
441 | switch ((pid = fork())) { | ||
442 | case -1: /* error */ | ||
443 | error("%s: fork: %s", tag, strerror(errno)); | ||
444 | close(p[0]); | ||
445 | close(p[1]); | ||
446 | return 0; | ||
447 | case 0: /* child */ | ||
448 | /* Prepare a minimal environment for the child. */ | ||
449 | envsize = 5; | ||
450 | child_env = xcalloc(sizeof(*child_env), envsize); | ||
451 | child_set_env(&child_env, &envsize, "PATH", _PATH_STDPATH); | ||
452 | child_set_env(&child_env, &envsize, "USER", pw->pw_name); | ||
453 | child_set_env(&child_env, &envsize, "LOGNAME", pw->pw_name); | ||
454 | child_set_env(&child_env, &envsize, "HOME", pw->pw_dir); | ||
455 | if ((cp = getenv("LANG")) != NULL) | ||
456 | child_set_env(&child_env, &envsize, "LANG", cp); | ||
457 | |||
458 | for (i = 0; i < NSIG; i++) | ||
459 | signal(i, SIG_DFL); | ||
460 | |||
461 | if ((devnull = open(_PATH_DEVNULL, O_RDWR)) == -1) { | ||
462 | error("%s: open %s: %s", tag, _PATH_DEVNULL, | ||
463 | strerror(errno)); | ||
464 | _exit(1); | ||
465 | } | ||
466 | /* Keep stderr around a while longer to catch errors */ | ||
467 | if (dup2(devnull, STDIN_FILENO) == -1 || | ||
468 | dup2(p[1], STDOUT_FILENO) == -1) { | ||
469 | error("%s: dup2: %s", tag, strerror(errno)); | ||
470 | _exit(1); | ||
471 | } | ||
472 | closefrom(STDERR_FILENO + 1); | ||
473 | |||
474 | /* Don't use permanently_set_uid() here to avoid fatal() */ | ||
475 | if (setresgid(pw->pw_gid, pw->pw_gid, pw->pw_gid) != 0) { | ||
476 | error("%s: setresgid %u: %s", tag, (u_int)pw->pw_gid, | ||
477 | strerror(errno)); | ||
478 | _exit(1); | ||
479 | } | ||
480 | if (setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid) != 0) { | ||
481 | error("%s: setresuid %u: %s", tag, (u_int)pw->pw_uid, | ||
482 | strerror(errno)); | ||
483 | _exit(1); | ||
484 | } | ||
485 | /* stdin is pointed to /dev/null at this point */ | ||
486 | if (dup2(STDIN_FILENO, STDERR_FILENO) == -1) { | ||
487 | error("%s: dup2: %s", tag, strerror(errno)); | ||
488 | _exit(1); | ||
489 | } | ||
490 | |||
491 | execve(av[0], av, child_env); | ||
492 | error("%s exec \"%s\": %s", tag, command, strerror(errno)); | ||
493 | _exit(127); | ||
494 | default: /* parent */ | ||
495 | break; | ||
496 | } | ||
497 | |||
498 | close(p[1]); | ||
499 | if ((f = fdopen(p[0], "r")) == NULL) { | ||
500 | error("%s: fdopen: %s", tag, strerror(errno)); | ||
501 | close(p[0]); | ||
502 | /* Don't leave zombie child */ | ||
503 | kill(pid, SIGTERM); | ||
504 | while (waitpid(pid, NULL, 0) == -1 && errno == EINTR) | ||
505 | ; | ||
506 | return 0; | ||
507 | } | ||
508 | /* Success */ | ||
509 | debug3("%s: %s pid %ld", __func__, tag, (long)pid); | ||
510 | *child = f; | ||
511 | return pid; | ||
512 | } | ||
513 | |||
514 | /* Returns 0 if pid exited cleanly, non-zero otherwise */ | ||
515 | static int | ||
516 | exited_cleanly(pid_t pid, const char *tag, const char *cmd) | ||
517 | { | ||
518 | int status; | ||
519 | |||
520 | while (waitpid(pid, &status, 0) == -1) { | ||
521 | if (errno != EINTR) { | ||
522 | error("%s: waitpid: %s", tag, strerror(errno)); | ||
523 | return -1; | ||
524 | } | ||
525 | } | ||
526 | if (WIFSIGNALED(status)) { | ||
527 | error("%s %s exited on signal %d", tag, cmd, WTERMSIG(status)); | ||
528 | return -1; | ||
529 | } else if (WEXITSTATUS(status) != 0) { | ||
530 | error("%s %s failed, status %d", tag, cmd, WEXITSTATUS(status)); | ||
531 | return -1; | ||
532 | } | ||
533 | return 0; | ||
534 | } | ||
535 | |||
251 | static int | 536 | static int |
252 | match_principals_option(const char *principal_list, struct sshkey_cert *cert) | 537 | match_principals_option(const char *principal_list, struct sshkey_cert *cert) |
253 | { | 538 | { |
@@ -269,19 +554,13 @@ match_principals_option(const char *principal_list, struct sshkey_cert *cert) | |||
269 | } | 554 | } |
270 | 555 | ||
271 | static int | 556 | static int |
272 | match_principals_file(char *file, struct passwd *pw, struct sshkey_cert *cert) | 557 | process_principals(FILE *f, char *file, struct passwd *pw, |
558 | struct sshkey_cert *cert) | ||
273 | { | 559 | { |
274 | FILE *f; | ||
275 | char line[SSH_MAX_PUBKEY_BYTES], *cp, *ep, *line_opts; | 560 | char line[SSH_MAX_PUBKEY_BYTES], *cp, *ep, *line_opts; |
276 | u_long linenum = 0; | 561 | u_long linenum = 0; |
277 | u_int i; | 562 | u_int i; |
278 | 563 | ||
279 | temporarily_use_uid(pw); | ||
280 | debug("trying authorized principals file %s", file); | ||
281 | if ((f = auth_openprincipals(file, pw, options.strict_modes)) == NULL) { | ||
282 | restore_uid(); | ||
283 | return 0; | ||
284 | } | ||
285 | auth_start_parse_options(); | 564 | auth_start_parse_options(); |
286 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { | 565 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { |
287 | /* Skip leading whitespace. */ | 566 | /* Skip leading whitespace. */ |
@@ -310,24 +589,128 @@ match_principals_file(char *file, struct passwd *pw, struct sshkey_cert *cert) | |||
310 | } | 589 | } |
311 | for (i = 0; i < cert->nprincipals; i++) { | 590 | for (i = 0; i < cert->nprincipals; i++) { |
312 | if (strcmp(cp, cert->principals[i]) == 0) { | 591 | if (strcmp(cp, cert->principals[i]) == 0) { |
313 | debug3("matched principal \"%.100s\" " | 592 | debug3("%s:%lu: matched principal \"%.100s\"", |
314 | "from file \"%s\" on line %lu", | 593 | file == NULL ? "(command)" : file, |
315 | cert->principals[i], file, linenum); | 594 | linenum, cert->principals[i]); |
316 | if (auth_parse_options(pw, line_opts, | 595 | if (auth_parse_options(pw, line_opts, |
317 | file, linenum) != 1) | 596 | file, linenum) != 1) |
318 | continue; | 597 | continue; |
319 | fclose(f); | ||
320 | restore_uid(); | ||
321 | return 1; | 598 | return 1; |
322 | } | 599 | } |
323 | } | 600 | } |
324 | } | 601 | } |
602 | return 0; | ||
603 | } | ||
604 | |||
605 | static int | ||
606 | match_principals_file(char *file, struct passwd *pw, struct sshkey_cert *cert) | ||
607 | { | ||
608 | FILE *f; | ||
609 | int success; | ||
610 | |||
611 | temporarily_use_uid(pw); | ||
612 | debug("trying authorized principals file %s", file); | ||
613 | if ((f = auth_openprincipals(file, pw, options.strict_modes)) == NULL) { | ||
614 | restore_uid(); | ||
615 | return 0; | ||
616 | } | ||
617 | success = process_principals(f, file, pw, cert); | ||
325 | fclose(f); | 618 | fclose(f); |
326 | restore_uid(); | 619 | restore_uid(); |
327 | return 0; | 620 | return success; |
328 | } | 621 | } |
329 | 622 | ||
330 | /* | 623 | /* |
624 | * Checks whether principal is allowed in output of command. | ||
625 | * returns 1 if the principal is allowed or 0 otherwise. | ||
626 | */ | ||
627 | static int | ||
628 | match_principals_command(struct passwd *user_pw, struct sshkey_cert *cert) | ||
629 | { | ||
630 | FILE *f = NULL; | ||
631 | int ok, found_principal = 0; | ||
632 | struct passwd *pw; | ||
633 | int i, ac = 0, uid_swapped = 0; | ||
634 | pid_t pid; | ||
635 | char *tmp, *username = NULL, *command = NULL, **av = NULL; | ||
636 | void (*osigchld)(int); | ||
637 | |||
638 | if (options.authorized_principals_command == NULL) | ||
639 | return 0; | ||
640 | if (options.authorized_principals_command_user == NULL) { | ||
641 | error("No user for AuthorizedPrincipalsCommand specified, " | ||
642 | "skipping"); | ||
643 | return 0; | ||
644 | } | ||
645 | |||
646 | /* | ||
647 | * NB. all returns later this function should go via "out" to | ||
648 | * ensure the original SIGCHLD handler is restored properly. | ||
649 | */ | ||
650 | osigchld = signal(SIGCHLD, SIG_DFL); | ||
651 | |||
652 | /* Prepare and verify the user for the command */ | ||
653 | username = percent_expand(options.authorized_principals_command_user, | ||
654 | "u", user_pw->pw_name, (char *)NULL); | ||
655 | pw = getpwnam(username); | ||
656 | if (pw == NULL) { | ||
657 | error("AuthorizedPrincipalsCommandUser \"%s\" not found: %s", | ||
658 | username, strerror(errno)); | ||
659 | goto out; | ||
660 | } | ||
661 | |||
662 | /* Turn the command into an argument vector */ | ||
663 | if (split_argv(options.authorized_principals_command, &ac, &av) != 0) { | ||
664 | error("AuthorizedPrincipalsCommand \"%s\" contains " | ||
665 | "invalid quotes", command); | ||
666 | goto out; | ||
667 | } | ||
668 | if (ac == 0) { | ||
669 | error("AuthorizedPrincipalsCommand \"%s\" yielded no arguments", | ||
670 | command); | ||
671 | goto out; | ||
672 | } | ||
673 | for (i = 1; i < ac; i++) { | ||
674 | tmp = percent_expand(av[i], | ||
675 | "u", user_pw->pw_name, | ||
676 | "h", user_pw->pw_dir, | ||
677 | (char *)NULL); | ||
678 | if (tmp == NULL) | ||
679 | fatal("%s: percent_expand failed", __func__); | ||
680 | free(av[i]); | ||
681 | av[i] = tmp; | ||
682 | } | ||
683 | /* Prepare a printable command for logs, etc. */ | ||
684 | command = assemble_argv(ac, av); | ||
685 | |||
686 | if ((pid = subprocess("AuthorizedPrincipalsCommand", pw, command, | ||
687 | ac, av, &f)) == 0) | ||
688 | goto out; | ||
689 | |||
690 | uid_swapped = 1; | ||
691 | temporarily_use_uid(pw); | ||
692 | |||
693 | ok = process_principals(f, NULL, pw, cert); | ||
694 | |||
695 | if (exited_cleanly(pid, "AuthorizedPrincipalsCommand", command) != 0) | ||
696 | goto out; | ||
697 | |||
698 | /* Read completed successfully */ | ||
699 | found_principal = ok; | ||
700 | out: | ||
701 | if (f != NULL) | ||
702 | fclose(f); | ||
703 | signal(SIGCHLD, osigchld); | ||
704 | for (i = 0; i < ac; i++) | ||
705 | free(av[i]); | ||
706 | free(av); | ||
707 | if (uid_swapped) | ||
708 | restore_uid(); | ||
709 | free(command); | ||
710 | free(username); | ||
711 | return found_principal; | ||
712 | } | ||
713 | /* | ||
331 | * Checks whether key is allowed in authorized_keys-format file, | 714 | * Checks whether key is allowed in authorized_keys-format file, |
332 | * returns 1 if the key is allowed or 0 otherwise. | 715 | * returns 1 if the key is allowed or 0 otherwise. |
333 | */ | 716 | */ |
@@ -450,7 +833,7 @@ user_cert_trusted_ca(struct passwd *pw, Key *key) | |||
450 | { | 833 | { |
451 | char *ca_fp, *principals_file = NULL; | 834 | char *ca_fp, *principals_file = NULL; |
452 | const char *reason; | 835 | const char *reason; |
453 | int ret = 0; | 836 | int ret = 0, found_principal = 0, use_authorized_principals; |
454 | 837 | ||
455 | if (!key_is_cert(key) || options.trusted_user_ca_keys == NULL) | 838 | if (!key_is_cert(key) || options.trusted_user_ca_keys == NULL) |
456 | return 0; | 839 | return 0; |
@@ -472,17 +855,24 @@ user_cert_trusted_ca(struct passwd *pw, Key *key) | |||
472 | * against the username. | 855 | * against the username. |
473 | */ | 856 | */ |
474 | if ((principals_file = authorized_principals_file(pw)) != NULL) { | 857 | if ((principals_file = authorized_principals_file(pw)) != NULL) { |
475 | if (!match_principals_file(principals_file, pw, key->cert)) { | 858 | if (match_principals_file(principals_file, pw, key->cert)) |
476 | reason = "Certificate does not contain an " | 859 | found_principal = 1; |
477 | "authorized principal"; | 860 | } |
861 | /* Try querying command if specified */ | ||
862 | if (!found_principal && match_principals_command(pw, key->cert)) | ||
863 | found_principal = 1; | ||
864 | /* If principals file or command is specified, then require a match */ | ||
865 | use_authorized_principals = principals_file != NULL || | ||
866 | options.authorized_principals_command != NULL; | ||
867 | if (!found_principal && use_authorized_principals) { | ||
868 | reason = "Certificate does not contain an authorized principal"; | ||
478 | fail_reason: | 869 | fail_reason: |
479 | error("%s", reason); | 870 | error("%s", reason); |
480 | auth_debug_add("%s", reason); | 871 | auth_debug_add("%s", reason); |
481 | goto out; | 872 | goto out; |
482 | } | ||
483 | } | 873 | } |
484 | if (key_cert_check_authority(key, 0, 1, | 874 | if (key_cert_check_authority(key, 0, 1, |
485 | principals_file == NULL ? pw->pw_name : NULL, &reason) != 0) | 875 | use_authorized_principals ? NULL : pw->pw_name, &reason) != 0) |
486 | goto fail_reason; | 876 | goto fail_reason; |
487 | auth_start_parse_options(); | 877 | auth_start_parse_options(); |
488 | if (auth_cert_options(key, pw) != 0) | 878 | if (auth_cert_options(key, pw) != 0) |
@@ -529,144 +919,117 @@ user_key_allowed2(struct passwd *pw, Key *key, char *file) | |||
529 | static int | 919 | static int |
530 | user_key_command_allowed2(struct passwd *user_pw, Key *key) | 920 | user_key_command_allowed2(struct passwd *user_pw, Key *key) |
531 | { | 921 | { |
532 | FILE *f; | 922 | FILE *f = NULL; |
533 | int ok, found_key = 0; | 923 | int r, ok, found_key = 0; |
534 | struct passwd *pw; | 924 | struct passwd *pw; |
535 | struct stat st; | 925 | int i, uid_swapped = 0, ac = 0; |
536 | int status, devnull, p[2], i; | ||
537 | pid_t pid; | 926 | pid_t pid; |
538 | char *username, errmsg[512]; | 927 | char *username = NULL, *key_fp = NULL, *keytext = NULL; |
928 | char *tmp, *command = NULL, **av = NULL; | ||
929 | void (*osigchld)(int); | ||
539 | 930 | ||
540 | if (options.authorized_keys_command == NULL || | 931 | if (options.authorized_keys_command == NULL) |
541 | options.authorized_keys_command[0] != '/') | ||
542 | return 0; | 932 | return 0; |
543 | |||
544 | if (options.authorized_keys_command_user == NULL) { | 933 | if (options.authorized_keys_command_user == NULL) { |
545 | error("No user for AuthorizedKeysCommand specified, skipping"); | 934 | error("No user for AuthorizedKeysCommand specified, skipping"); |
546 | return 0; | 935 | return 0; |
547 | } | 936 | } |
548 | 937 | ||
938 | /* | ||
939 | * NB. all returns later this function should go via "out" to | ||
940 | * ensure the original SIGCHLD handler is restored properly. | ||
941 | */ | ||
942 | osigchld = signal(SIGCHLD, SIG_DFL); | ||
943 | |||
944 | /* Prepare and verify the user for the command */ | ||
549 | username = percent_expand(options.authorized_keys_command_user, | 945 | username = percent_expand(options.authorized_keys_command_user, |
550 | "u", user_pw->pw_name, (char *)NULL); | 946 | "u", user_pw->pw_name, (char *)NULL); |
551 | pw = getpwnam(username); | 947 | pw = getpwnam(username); |
552 | if (pw == NULL) { | 948 | if (pw == NULL) { |
553 | error("AuthorizedKeysCommandUser \"%s\" not found: %s", | 949 | error("AuthorizedKeysCommandUser \"%s\" not found: %s", |
554 | username, strerror(errno)); | 950 | username, strerror(errno)); |
555 | free(username); | 951 | goto out; |
556 | return 0; | ||
557 | } | 952 | } |
558 | free(username); | ||
559 | |||
560 | temporarily_use_uid(pw); | ||
561 | 953 | ||
562 | if (stat(options.authorized_keys_command, &st) < 0) { | 954 | /* Prepare AuthorizedKeysCommand */ |
563 | error("Could not stat AuthorizedKeysCommand \"%s\": %s", | 955 | if ((key_fp = sshkey_fingerprint(key, options.fingerprint_hash, |
564 | options.authorized_keys_command, strerror(errno)); | 956 | SSH_FP_DEFAULT)) == NULL) { |
957 | error("%s: sshkey_fingerprint failed", __func__); | ||
565 | goto out; | 958 | goto out; |
566 | } | 959 | } |
567 | if (auth_secure_path(options.authorized_keys_command, &st, NULL, 0, | 960 | if ((r = sshkey_to_base64(key, &keytext)) != 0) { |
568 | errmsg, sizeof(errmsg)) != 0) { | 961 | error("%s: sshkey_to_base64 failed: %s", __func__, ssh_err(r)); |
569 | error("Unsafe AuthorizedKeysCommand: %s", errmsg); | ||
570 | goto out; | 962 | goto out; |
571 | } | 963 | } |
572 | 964 | ||
573 | if (pipe(p) != 0) { | 965 | /* Turn the command into an argument vector */ |
574 | error("%s: pipe: %s", __func__, strerror(errno)); | 966 | if (split_argv(options.authorized_keys_command, &ac, &av) != 0) { |
967 | error("AuthorizedKeysCommand \"%s\" contains invalid quotes", | ||
968 | command); | ||
575 | goto out; | 969 | goto out; |
576 | } | 970 | } |
577 | 971 | if (ac == 0) { | |
578 | debug3("Running AuthorizedKeysCommand: \"%s %s\" as \"%s\"", | 972 | error("AuthorizedKeysCommand \"%s\" yielded no arguments", |
579 | options.authorized_keys_command, user_pw->pw_name, pw->pw_name); | 973 | command); |
974 | goto out; | ||
975 | } | ||
976 | for (i = 1; i < ac; i++) { | ||
977 | tmp = percent_expand(av[i], | ||
978 | "u", user_pw->pw_name, | ||
979 | "h", user_pw->pw_dir, | ||
980 | "t", sshkey_ssh_name(key), | ||
981 | "f", key_fp, | ||
982 | "k", keytext, | ||
983 | (char *)NULL); | ||
984 | if (tmp == NULL) | ||
985 | fatal("%s: percent_expand failed", __func__); | ||
986 | free(av[i]); | ||
987 | av[i] = tmp; | ||
988 | } | ||
989 | /* Prepare a printable command for logs, etc. */ | ||
990 | command = assemble_argv(ac, av); | ||
580 | 991 | ||
581 | /* | 992 | /* |
582 | * Don't want to call this in the child, where it can fatal() and | 993 | * If AuthorizedKeysCommand was run without arguments |
583 | * run cleanup_exit() code. | 994 | * then fall back to the old behaviour of passing the |
995 | * target username as a single argument. | ||
584 | */ | 996 | */ |
585 | restore_uid(); | 997 | if (ac == 1) { |
586 | 998 | av = xreallocarray(av, ac + 2, sizeof(*av)); | |
587 | switch ((pid = fork())) { | 999 | av[1] = xstrdup(user_pw->pw_name); |
588 | case -1: /* error */ | 1000 | av[2] = NULL; |
589 | error("%s: fork: %s", __func__, strerror(errno)); | 1001 | /* Fix up command too, since it is used in log messages */ |
590 | close(p[0]); | 1002 | free(command); |
591 | close(p[1]); | 1003 | xasprintf(&command, "%s %s", av[0], av[1]); |
592 | return 0; | ||
593 | case 0: /* child */ | ||
594 | for (i = 0; i < NSIG; i++) | ||
595 | signal(i, SIG_DFL); | ||
596 | |||
597 | if ((devnull = open(_PATH_DEVNULL, O_RDWR)) == -1) { | ||
598 | error("%s: open %s: %s", __func__, _PATH_DEVNULL, | ||
599 | strerror(errno)); | ||
600 | _exit(1); | ||
601 | } | ||
602 | /* Keep stderr around a while longer to catch errors */ | ||
603 | if (dup2(devnull, STDIN_FILENO) == -1 || | ||
604 | dup2(p[1], STDOUT_FILENO) == -1) { | ||
605 | error("%s: dup2: %s", __func__, strerror(errno)); | ||
606 | _exit(1); | ||
607 | } | ||
608 | closefrom(STDERR_FILENO + 1); | ||
609 | |||
610 | /* Don't use permanently_set_uid() here to avoid fatal() */ | ||
611 | if (setresgid(pw->pw_gid, pw->pw_gid, pw->pw_gid) != 0) { | ||
612 | error("setresgid %u: %s", (u_int)pw->pw_gid, | ||
613 | strerror(errno)); | ||
614 | _exit(1); | ||
615 | } | ||
616 | if (setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid) != 0) { | ||
617 | error("setresuid %u: %s", (u_int)pw->pw_uid, | ||
618 | strerror(errno)); | ||
619 | _exit(1); | ||
620 | } | ||
621 | /* stdin is pointed to /dev/null at this point */ | ||
622 | if (dup2(STDIN_FILENO, STDERR_FILENO) == -1) { | ||
623 | error("%s: dup2: %s", __func__, strerror(errno)); | ||
624 | _exit(1); | ||
625 | } | ||
626 | |||
627 | execl(options.authorized_keys_command, | ||
628 | options.authorized_keys_command, user_pw->pw_name, NULL); | ||
629 | |||
630 | error("AuthorizedKeysCommand %s exec failed: %s", | ||
631 | options.authorized_keys_command, strerror(errno)); | ||
632 | _exit(127); | ||
633 | default: /* parent */ | ||
634 | break; | ||
635 | } | 1004 | } |
636 | 1005 | ||
1006 | if ((pid = subprocess("AuthorizedKeysCommand", pw, command, | ||
1007 | ac, av, &f)) == 0) | ||
1008 | goto out; | ||
1009 | |||
1010 | uid_swapped = 1; | ||
637 | temporarily_use_uid(pw); | 1011 | temporarily_use_uid(pw); |
638 | 1012 | ||
639 | close(p[1]); | ||
640 | if ((f = fdopen(p[0], "r")) == NULL) { | ||
641 | error("%s: fdopen: %s", __func__, strerror(errno)); | ||
642 | close(p[0]); | ||
643 | /* Don't leave zombie child */ | ||
644 | kill(pid, SIGTERM); | ||
645 | while (waitpid(pid, NULL, 0) == -1 && errno == EINTR) | ||
646 | ; | ||
647 | goto out; | ||
648 | } | ||
649 | ok = check_authkeys_file(f, options.authorized_keys_command, key, pw); | 1013 | ok = check_authkeys_file(f, options.authorized_keys_command, key, pw); |
650 | fclose(f); | ||
651 | 1014 | ||
652 | while (waitpid(pid, &status, 0) == -1) { | 1015 | if (exited_cleanly(pid, "AuthorizedKeysCommand", command) != 0) |
653 | if (errno != EINTR) { | ||
654 | error("%s: waitpid: %s", __func__, strerror(errno)); | ||
655 | goto out; | ||
656 | } | ||
657 | } | ||
658 | if (WIFSIGNALED(status)) { | ||
659 | error("AuthorizedKeysCommand %s exited on signal %d", | ||
660 | options.authorized_keys_command, WTERMSIG(status)); | ||
661 | goto out; | 1016 | goto out; |
662 | } else if (WEXITSTATUS(status) != 0) { | 1017 | |
663 | error("AuthorizedKeysCommand %s returned status %d", | 1018 | /* Read completed successfully */ |
664 | options.authorized_keys_command, WEXITSTATUS(status)); | ||
665 | goto out; | ||
666 | } | ||
667 | found_key = ok; | 1019 | found_key = ok; |
668 | out: | 1020 | out: |
669 | restore_uid(); | 1021 | if (f != NULL) |
1022 | fclose(f); | ||
1023 | signal(SIGCHLD, osigchld); | ||
1024 | for (i = 0; i < ac; i++) | ||
1025 | free(av[i]); | ||
1026 | free(av); | ||
1027 | if (uid_swapped) | ||
1028 | restore_uid(); | ||
1029 | free(command); | ||
1030 | free(username); | ||
1031 | free(key_fp); | ||
1032 | free(keytext); | ||
670 | return found_key; | 1033 | return found_key; |
671 | } | 1034 | } |
672 | 1035 | ||
@@ -674,7 +1037,7 @@ user_key_command_allowed2(struct passwd *user_pw, Key *key) | |||
674 | * Check whether key authenticates and authorises the user. | 1037 | * Check whether key authenticates and authorises the user. |
675 | */ | 1038 | */ |
676 | int | 1039 | int |
677 | user_key_allowed(struct passwd *pw, Key *key) | 1040 | user_key_allowed(struct passwd *pw, Key *key, int auth_attempt) |
678 | { | 1041 | { |
679 | u_int success, i; | 1042 | u_int success, i; |
680 | char *file; | 1043 | char *file; |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: authfd.c,v 1.94 2015/01/14 20:05:27 djm Exp $ */ | 1 | /* $OpenBSD: authfd.c,v 1.97 2015/03/26 19:32:19 markus Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -438,10 +438,8 @@ ssh_agent_sign(int sock, struct sshkey *key, | |||
438 | u_int flags = 0; | 438 | u_int flags = 0; |
439 | int r = SSH_ERR_INTERNAL_ERROR; | 439 | int r = SSH_ERR_INTERNAL_ERROR; |
440 | 440 | ||
441 | if (sigp != NULL) | 441 | *sigp = NULL; |
442 | *sigp = NULL; | 442 | *lenp = 0; |
443 | if (lenp != NULL) | ||
444 | *lenp = 0; | ||
445 | 443 | ||
446 | if (datalen > SSH_KEY_MAX_SIGN_DATA_SIZE) | 444 | if (datalen > SSH_KEY_MAX_SIGN_DATA_SIZE) |
447 | return SSH_ERR_INVALID_ARGUMENT; | 445 | return SSH_ERR_INVALID_ARGUMENT; |
diff --git a/authfile.c b/authfile.c index 3a81786c7..728b136a7 100644 --- a/authfile.c +++ b/authfile.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: authfile.c,v 1.111 2015/02/23 16:55:51 djm Exp $ */ | 1 | /* $OpenBSD: authfile.c,v 1.114 2015/04/17 13:32:09 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000, 2013 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000, 2013 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -186,7 +186,7 @@ sshkey_perm_ok(int fd, const char *filename) | |||
186 | error("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"); | 186 | error("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"); |
187 | error("Permissions 0%3.3o for '%s' are too open.", | 187 | error("Permissions 0%3.3o for '%s' are too open.", |
188 | (u_int)st.st_mode & 0777, filename); | 188 | (u_int)st.st_mode & 0777, filename); |
189 | error("It is recommended that your private key files are NOT accessible by others."); | 189 | error("It is required that your private key files are NOT accessible by others."); |
190 | error("This private key will be ignored."); | 190 | error("This private key will be ignored."); |
191 | return SSH_ERR_KEY_BAD_PERMISSIONS; | 191 | return SSH_ERR_KEY_BAD_PERMISSIONS; |
192 | } | 192 | } |
@@ -359,6 +359,8 @@ sshkey_load_public(const char *filename, struct sshkey **keyp, char **commentp) | |||
359 | case 0: | 359 | case 0: |
360 | return r; | 360 | return r; |
361 | } | 361 | } |
362 | #else /* WITH_SSH1 */ | ||
363 | close(fd); | ||
362 | #endif /* WITH_SSH1 */ | 364 | #endif /* WITH_SSH1 */ |
363 | 365 | ||
364 | /* try ssh2 public key */ | 366 | /* try ssh2 public key */ |
diff --git a/channels.c b/channels.c index 9486c1cff..a84b487e5 100644 --- a/channels.c +++ b/channels.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: channels.c,v 1.341 2015/02/06 23:21:59 millert Exp $ */ | 1 | /* $OpenBSD: channels.c,v 1.347 2015/07/01 02:26:31 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -161,6 +161,9 @@ static char *x11_saved_proto = NULL; | |||
161 | static char *x11_saved_data = NULL; | 161 | static char *x11_saved_data = NULL; |
162 | static u_int x11_saved_data_len = 0; | 162 | static u_int x11_saved_data_len = 0; |
163 | 163 | ||
164 | /* Deadline after which all X11 connections are refused */ | ||
165 | static u_int x11_refuse_time; | ||
166 | |||
164 | /* | 167 | /* |
165 | * Fake X11 authentication data. This is what the server will be sending us; | 168 | * Fake X11 authentication data. This is what the server will be sending us; |
166 | * we should replace any occurrences of this by the real data. | 169 | * we should replace any occurrences of this by the real data. |
@@ -306,7 +309,7 @@ channel_new(char *ctype, int type, int rfd, int wfd, int efd, | |||
306 | if (channels_alloc > 10000) | 309 | if (channels_alloc > 10000) |
307 | fatal("channel_new: internal error: channels_alloc %d " | 310 | fatal("channel_new: internal error: channels_alloc %d " |
308 | "too big.", channels_alloc); | 311 | "too big.", channels_alloc); |
309 | channels = xrealloc(channels, channels_alloc + 10, | 312 | channels = xreallocarray(channels, channels_alloc + 10, |
310 | sizeof(Channel *)); | 313 | sizeof(Channel *)); |
311 | channels_alloc += 10; | 314 | channels_alloc += 10; |
312 | debug2("channel: expanding %d", channels_alloc); | 315 | debug2("channel: expanding %d", channels_alloc); |
@@ -912,6 +915,13 @@ x11_open_helper(Buffer *b) | |||
912 | u_char *ucp; | 915 | u_char *ucp; |
913 | u_int proto_len, data_len; | 916 | u_int proto_len, data_len; |
914 | 917 | ||
918 | /* Is this being called after the refusal deadline? */ | ||
919 | if (x11_refuse_time != 0 && (u_int)monotime() >= x11_refuse_time) { | ||
920 | verbose("Rejected X11 connection after ForwardX11Timeout " | ||
921 | "expired"); | ||
922 | return -1; | ||
923 | } | ||
924 | |||
915 | /* Check if the fixed size part of the packet is in buffer. */ | 925 | /* Check if the fixed size part of the packet is in buffer. */ |
916 | if (buffer_len(b) < 12) | 926 | if (buffer_len(b) < 12) |
917 | return 0; | 927 | return 0; |
@@ -1483,6 +1493,12 @@ channel_set_reuseaddr(int fd) | |||
1483 | error("setsockopt SO_REUSEADDR fd %d: %s", fd, strerror(errno)); | 1493 | error("setsockopt SO_REUSEADDR fd %d: %s", fd, strerror(errno)); |
1484 | } | 1494 | } |
1485 | 1495 | ||
1496 | void | ||
1497 | channel_set_x11_refuse_time(u_int refuse_time) | ||
1498 | { | ||
1499 | x11_refuse_time = refuse_time; | ||
1500 | } | ||
1501 | |||
1486 | /* | 1502 | /* |
1487 | * This socket is listening for connections to a forwarded TCP/IP port. | 1503 | * This socket is listening for connections to a forwarded TCP/IP port. |
1488 | */ | 1504 | */ |
@@ -2192,8 +2208,8 @@ channel_prepare_select(fd_set **readsetp, fd_set **writesetp, int *maxfdp, | |||
2192 | 2208 | ||
2193 | /* perhaps check sz < nalloc/2 and shrink? */ | 2209 | /* perhaps check sz < nalloc/2 and shrink? */ |
2194 | if (*readsetp == NULL || sz > *nallocp) { | 2210 | if (*readsetp == NULL || sz > *nallocp) { |
2195 | *readsetp = xrealloc(*readsetp, nfdset, sizeof(fd_mask)); | 2211 | *readsetp = xreallocarray(*readsetp, nfdset, sizeof(fd_mask)); |
2196 | *writesetp = xrealloc(*writesetp, nfdset, sizeof(fd_mask)); | 2212 | *writesetp = xreallocarray(*writesetp, nfdset, sizeof(fd_mask)); |
2197 | *nallocp = sz; | 2213 | *nallocp = sz; |
2198 | } | 2214 | } |
2199 | *maxfdp = n; | 2215 | *maxfdp = n; |
@@ -2270,7 +2286,7 @@ channel_output_poll(void) | |||
2270 | packet_put_int(c->remote_id); | 2286 | packet_put_int(c->remote_id); |
2271 | packet_put_string(data, dlen); | 2287 | packet_put_string(data, dlen); |
2272 | packet_send(); | 2288 | packet_send(); |
2273 | c->remote_window -= dlen + 4; | 2289 | c->remote_window -= dlen; |
2274 | free(data); | 2290 | free(data); |
2275 | } | 2291 | } |
2276 | continue; | 2292 | continue; |
@@ -2641,7 +2657,7 @@ channel_input_window_adjust(int type, u_int32_t seq, void *ctxt) | |||
2641 | { | 2657 | { |
2642 | Channel *c; | 2658 | Channel *c; |
2643 | int id; | 2659 | int id; |
2644 | u_int adjust; | 2660 | u_int adjust, tmp; |
2645 | 2661 | ||
2646 | if (!compat20) | 2662 | if (!compat20) |
2647 | return 0; | 2663 | return 0; |
@@ -2657,7 +2673,10 @@ channel_input_window_adjust(int type, u_int32_t seq, void *ctxt) | |||
2657 | adjust = packet_get_int(); | 2673 | adjust = packet_get_int(); |
2658 | packet_check_eom(); | 2674 | packet_check_eom(); |
2659 | debug2("channel %d: rcvd adjust %u", id, adjust); | 2675 | debug2("channel %d: rcvd adjust %u", id, adjust); |
2660 | c->remote_window += adjust; | 2676 | if ((tmp = c->remote_window + adjust) < c->remote_window) |
2677 | fatal("channel %d: adjust %u overflows remote window %u", | ||
2678 | id, adjust, c->remote_window); | ||
2679 | c->remote_window = tmp; | ||
2661 | return 0; | 2680 | return 0; |
2662 | } | 2681 | } |
2663 | 2682 | ||
@@ -2805,17 +2824,21 @@ channel_setup_fwd_listener_tcpip(int type, struct Forward *fwd, | |||
2805 | char ntop[NI_MAXHOST], strport[NI_MAXSERV]; | 2824 | char ntop[NI_MAXHOST], strport[NI_MAXSERV]; |
2806 | in_port_t *lport_p; | 2825 | in_port_t *lport_p; |
2807 | 2826 | ||
2808 | host = (type == SSH_CHANNEL_RPORT_LISTENER) ? | ||
2809 | fwd->listen_host : fwd->connect_host; | ||
2810 | is_client = (type == SSH_CHANNEL_PORT_LISTENER); | 2827 | is_client = (type == SSH_CHANNEL_PORT_LISTENER); |
2811 | 2828 | ||
2812 | if (host == NULL) { | 2829 | if (is_client && fwd->connect_path != NULL) { |
2813 | error("No forward host name."); | 2830 | host = fwd->connect_path; |
2814 | return 0; | 2831 | } else { |
2815 | } | 2832 | host = (type == SSH_CHANNEL_RPORT_LISTENER) ? |
2816 | if (strlen(host) >= NI_MAXHOST) { | 2833 | fwd->listen_host : fwd->connect_host; |
2817 | error("Forward host name too long."); | 2834 | if (host == NULL) { |
2818 | return 0; | 2835 | error("No forward host name."); |
2836 | return 0; | ||
2837 | } | ||
2838 | if (strlen(host) >= NI_MAXHOST) { | ||
2839 | error("Forward host name too long."); | ||
2840 | return 0; | ||
2841 | } | ||
2819 | } | 2842 | } |
2820 | 2843 | ||
2821 | /* Determine the bind address, cf. channel_fwd_bind_addr() comment */ | 2844 | /* Determine the bind address, cf. channel_fwd_bind_addr() comment */ |
@@ -3237,7 +3260,7 @@ channel_request_remote_forwarding(struct Forward *fwd) | |||
3237 | } | 3260 | } |
3238 | if (success) { | 3261 | if (success) { |
3239 | /* Record that connection to this host/port is permitted. */ | 3262 | /* Record that connection to this host/port is permitted. */ |
3240 | permitted_opens = xrealloc(permitted_opens, | 3263 | permitted_opens = xreallocarray(permitted_opens, |
3241 | num_permitted_opens + 1, sizeof(*permitted_opens)); | 3264 | num_permitted_opens + 1, sizeof(*permitted_opens)); |
3242 | idx = num_permitted_opens++; | 3265 | idx = num_permitted_opens++; |
3243 | if (fwd->connect_path != NULL) { | 3266 | if (fwd->connect_path != NULL) { |
@@ -3468,7 +3491,7 @@ channel_add_permitted_opens(char *host, int port) | |||
3468 | { | 3491 | { |
3469 | debug("allow port forwarding to host %s port %d", host, port); | 3492 | debug("allow port forwarding to host %s port %d", host, port); |
3470 | 3493 | ||
3471 | permitted_opens = xrealloc(permitted_opens, | 3494 | permitted_opens = xreallocarray(permitted_opens, |
3472 | num_permitted_opens + 1, sizeof(*permitted_opens)); | 3495 | num_permitted_opens + 1, sizeof(*permitted_opens)); |
3473 | permitted_opens[num_permitted_opens].host_to_connect = xstrdup(host); | 3496 | permitted_opens[num_permitted_opens].host_to_connect = xstrdup(host); |
3474 | permitted_opens[num_permitted_opens].port_to_connect = port; | 3497 | permitted_opens[num_permitted_opens].port_to_connect = port; |
@@ -3518,7 +3541,7 @@ channel_add_adm_permitted_opens(char *host, int port) | |||
3518 | { | 3541 | { |
3519 | debug("config allows port forwarding to host %s port %d", host, port); | 3542 | debug("config allows port forwarding to host %s port %d", host, port); |
3520 | 3543 | ||
3521 | permitted_adm_opens = xrealloc(permitted_adm_opens, | 3544 | permitted_adm_opens = xreallocarray(permitted_adm_opens, |
3522 | num_adm_permitted_opens + 1, sizeof(*permitted_adm_opens)); | 3545 | num_adm_permitted_opens + 1, sizeof(*permitted_adm_opens)); |
3523 | permitted_adm_opens[num_adm_permitted_opens].host_to_connect | 3546 | permitted_adm_opens[num_adm_permitted_opens].host_to_connect |
3524 | = xstrdup(host); | 3547 | = xstrdup(host); |
@@ -3533,7 +3556,7 @@ void | |||
3533 | channel_disable_adm_local_opens(void) | 3556 | channel_disable_adm_local_opens(void) |
3534 | { | 3557 | { |
3535 | channel_clear_adm_permitted_opens(); | 3558 | channel_clear_adm_permitted_opens(); |
3536 | permitted_adm_opens = xmalloc(sizeof(*permitted_adm_opens)); | 3559 | permitted_adm_opens = xcalloc(sizeof(*permitted_adm_opens), 1); |
3537 | permitted_adm_opens[num_adm_permitted_opens].host_to_connect = NULL; | 3560 | permitted_adm_opens[num_adm_permitted_opens].host_to_connect = NULL; |
3538 | num_adm_permitted_opens = 1; | 3561 | num_adm_permitted_opens = 1; |
3539 | } | 3562 | } |
diff --git a/channels.h b/channels.h index 5a672f22e..9d76c9d2a 100644 --- a/channels.h +++ b/channels.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: channels.h,v 1.116 2015/01/19 20:07:45 markus Exp $ */ | 1 | /* $OpenBSD: channels.h,v 1.118 2015/07/01 02:26:31 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
@@ -113,7 +113,7 @@ struct Channel { | |||
113 | time_t notbefore; /* Pause IO until deadline (time_t) */ | 113 | time_t notbefore; /* Pause IO until deadline (time_t) */ |
114 | int delayed; /* post-select handlers for newly created | 114 | int delayed; /* post-select handlers for newly created |
115 | * channels are delayed until the first call | 115 | * channels are delayed until the first call |
116 | * to a matching pre-select handler. | 116 | * to a matching pre-select handler. |
117 | * this way post-select handlers are not | 117 | * this way post-select handlers are not |
118 | * accidentally called if a FD gets reused */ | 118 | * accidentally called if a FD gets reused */ |
119 | Buffer input; /* data read from socket, to be sent over | 119 | Buffer input; /* data read from socket, to be sent over |
@@ -284,6 +284,7 @@ int permitopen_port(const char *); | |||
284 | 284 | ||
285 | /* x11 forwarding */ | 285 | /* x11 forwarding */ |
286 | 286 | ||
287 | void channel_set_x11_refuse_time(u_int); | ||
287 | int x11_connect_display(void); | 288 | int x11_connect_display(void); |
288 | int x11_create_display_inet(int, int, int, u_int *, int **); | 289 | int x11_create_display_inet(int, int, int, u_int *, int **); |
289 | int x11_input_open(int, u_int32_t, void *); | 290 | int x11_input_open(int, u_int32_t, void *); |
diff --git a/clientloop.c b/clientloop.c index 45cef8829..65f90b8b4 100644 --- a/clientloop.c +++ b/clientloop.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: clientloop.c,v 1.272 2015/02/25 19:54:02 djm Exp $ */ | 1 | /* $OpenBSD: clientloop.c,v 1.274 2015/07/01 02:26:31 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -167,7 +167,7 @@ static int connection_in; /* Connection to server (input). */ | |||
167 | static int connection_out; /* Connection to server (output). */ | 167 | static int connection_out; /* Connection to server (output). */ |
168 | static int need_rekeying; /* Set to non-zero if rekeying is requested. */ | 168 | static int need_rekeying; /* Set to non-zero if rekeying is requested. */ |
169 | static int session_closed; /* In SSH2: login session closed. */ | 169 | static int session_closed; /* In SSH2: login session closed. */ |
170 | static int x11_refuse_time; /* If >0, refuse x11 opens after this time. */ | 170 | static u_int x11_refuse_time; /* If >0, refuse x11 opens after this time. */ |
171 | 171 | ||
172 | static void client_init_dispatch(void); | 172 | static void client_init_dispatch(void); |
173 | int session_ident = -1; | 173 | int session_ident = -1; |
@@ -302,7 +302,8 @@ client_x11_display_valid(const char *display) | |||
302 | return 1; | 302 | return 1; |
303 | } | 303 | } |
304 | 304 | ||
305 | #define SSH_X11_PROTO "MIT-MAGIC-COOKIE-1" | 305 | #define SSH_X11_PROTO "MIT-MAGIC-COOKIE-1" |
306 | #define X11_TIMEOUT_SLACK 60 | ||
306 | void | 307 | void |
307 | client_x11_get_proto(const char *display, const char *xauth_path, | 308 | client_x11_get_proto(const char *display, const char *xauth_path, |
308 | u_int trusted, u_int timeout, char **_proto, char **_data) | 309 | u_int trusted, u_int timeout, char **_proto, char **_data) |
@@ -315,7 +316,7 @@ client_x11_get_proto(const char *display, const char *xauth_path, | |||
315 | int got_data = 0, generated = 0, do_unlink = 0, i; | 316 | int got_data = 0, generated = 0, do_unlink = 0, i; |
316 | char *xauthdir, *xauthfile; | 317 | char *xauthdir, *xauthfile; |
317 | struct stat st; | 318 | struct stat st; |
318 | u_int now; | 319 | u_int now, x11_timeout_real; |
319 | 320 | ||
320 | xauthdir = xauthfile = NULL; | 321 | xauthdir = xauthfile = NULL; |
321 | *_proto = proto; | 322 | *_proto = proto; |
@@ -348,6 +349,15 @@ client_x11_get_proto(const char *display, const char *xauth_path, | |||
348 | xauthdir = xmalloc(PATH_MAX); | 349 | xauthdir = xmalloc(PATH_MAX); |
349 | xauthfile = xmalloc(PATH_MAX); | 350 | xauthfile = xmalloc(PATH_MAX); |
350 | mktemp_proto(xauthdir, PATH_MAX); | 351 | mktemp_proto(xauthdir, PATH_MAX); |
352 | /* | ||
353 | * The authentication cookie should briefly outlive | ||
354 | * ssh's willingness to forward X11 connections to | ||
355 | * avoid nasty fail-open behaviour in the X server. | ||
356 | */ | ||
357 | if (timeout >= UINT_MAX - X11_TIMEOUT_SLACK) | ||
358 | x11_timeout_real = UINT_MAX; | ||
359 | else | ||
360 | x11_timeout_real = timeout + X11_TIMEOUT_SLACK; | ||
351 | if (mkdtemp(xauthdir) != NULL) { | 361 | if (mkdtemp(xauthdir) != NULL) { |
352 | do_unlink = 1; | 362 | do_unlink = 1; |
353 | snprintf(xauthfile, PATH_MAX, "%s/xauthfile", | 363 | snprintf(xauthfile, PATH_MAX, "%s/xauthfile", |
@@ -355,17 +365,20 @@ client_x11_get_proto(const char *display, const char *xauth_path, | |||
355 | snprintf(cmd, sizeof(cmd), | 365 | snprintf(cmd, sizeof(cmd), |
356 | "%s -f %s generate %s " SSH_X11_PROTO | 366 | "%s -f %s generate %s " SSH_X11_PROTO |
357 | " untrusted timeout %u 2>" _PATH_DEVNULL, | 367 | " untrusted timeout %u 2>" _PATH_DEVNULL, |
358 | xauth_path, xauthfile, display, timeout); | 368 | xauth_path, xauthfile, display, |
369 | x11_timeout_real); | ||
359 | debug2("x11_get_proto: %s", cmd); | 370 | debug2("x11_get_proto: %s", cmd); |
360 | if (system(cmd) == 0) | ||
361 | generated = 1; | ||
362 | if (x11_refuse_time == 0) { | 371 | if (x11_refuse_time == 0) { |
363 | now = monotime() + 1; | 372 | now = monotime() + 1; |
364 | if (UINT_MAX - timeout < now) | 373 | if (UINT_MAX - timeout < now) |
365 | x11_refuse_time = UINT_MAX; | 374 | x11_refuse_time = UINT_MAX; |
366 | else | 375 | else |
367 | x11_refuse_time = now + timeout; | 376 | x11_refuse_time = now + timeout; |
377 | channel_set_x11_refuse_time( | ||
378 | x11_refuse_time); | ||
368 | } | 379 | } |
380 | if (system(cmd) == 0) | ||
381 | generated = 1; | ||
369 | } | 382 | } |
370 | } | 383 | } |
371 | 384 | ||
@@ -1909,7 +1922,7 @@ client_request_x11(const char *request_type, int rchan) | |||
1909 | "malicious server."); | 1922 | "malicious server."); |
1910 | return NULL; | 1923 | return NULL; |
1911 | } | 1924 | } |
1912 | if (x11_refuse_time != 0 && monotime() >= x11_refuse_time) { | 1925 | if (x11_refuse_time != 0 && (u_int)monotime() >= x11_refuse_time) { |
1913 | verbose("Rejected X11 connection after ForwardX11Timeout " | 1926 | verbose("Rejected X11 connection after ForwardX11Timeout " |
1914 | "expired"); | 1927 | "expired"); |
1915 | return NULL; | 1928 | return NULL; |
@@ -2372,8 +2385,7 @@ client_input_hostkeys(void) | |||
2372 | /* Check that the key is accepted in HostkeyAlgorithms */ | 2385 | /* Check that the key is accepted in HostkeyAlgorithms */ |
2373 | if (options.hostkeyalgorithms != NULL && | 2386 | if (options.hostkeyalgorithms != NULL && |
2374 | match_pattern_list(sshkey_ssh_name(key), | 2387 | match_pattern_list(sshkey_ssh_name(key), |
2375 | options.hostkeyalgorithms, | 2388 | options.hostkeyalgorithms, 0) != 1) { |
2376 | strlen(options.hostkeyalgorithms), 0) != 1) { | ||
2377 | debug3("%s: %s key not permitted by HostkeyAlgorithms", | 2389 | debug3("%s: %s key not permitted by HostkeyAlgorithms", |
2378 | __func__, sshkey_ssh_name(key)); | 2390 | __func__, sshkey_ssh_name(key)); |
2379 | continue; | 2391 | continue; |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: compat.c,v 1.87 2015/01/19 20:20:20 markus Exp $ */ | 1 | /* $OpenBSD: compat.c,v 1.94 2015/05/26 23:23:40 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -152,6 +152,7 @@ compat_datafellows(const char *version) | |||
152 | "1.2.22*", SSH_BUG_IGNOREMSG }, | 152 | "1.2.22*", SSH_BUG_IGNOREMSG }, |
153 | { "1.3.2*", /* F-Secure */ | 153 | { "1.3.2*", /* F-Secure */ |
154 | SSH_BUG_IGNOREMSG }, | 154 | SSH_BUG_IGNOREMSG }, |
155 | { "Cisco-1.*", SSH_BUG_DHGEX_LARGE }, | ||
155 | { "*SSH Compatible Server*", /* Netscreen */ | 156 | { "*SSH Compatible Server*", /* Netscreen */ |
156 | SSH_BUG_PASSWORDPAD }, | 157 | SSH_BUG_PASSWORDPAD }, |
157 | { "*OSU_0*," | 158 | { "*OSU_0*," |
@@ -165,15 +166,34 @@ compat_datafellows(const char *version) | |||
165 | "OSU_1.5alpha3*", SSH_BUG_PASSWORDPAD }, | 166 | "OSU_1.5alpha3*", SSH_BUG_PASSWORDPAD }, |
166 | { "*SSH_Version_Mapper*", | 167 | { "*SSH_Version_Mapper*", |
167 | SSH_BUG_SCANNER }, | 168 | SSH_BUG_SCANNER }, |
169 | { "PuTTY-Release-0.5*," /* 0.50-0.57, DH-GEX in >=0.52 */ | ||
170 | "PuTTY_Release_0.5*," /* 0.58-0.59 */ | ||
171 | "PuTTY_Release_0.60*," | ||
172 | "PuTTY_Release_0.61*," | ||
173 | "PuTTY_Release_0.62*," | ||
174 | "PuTTY_Release_0.63*," | ||
175 | "PuTTY_Release_0.64*", | ||
176 | SSH_OLD_DHGEX }, | ||
168 | { "Probe-*", | 177 | { "Probe-*", |
169 | SSH_BUG_PROBE }, | 178 | SSH_BUG_PROBE }, |
179 | { "TeraTerm SSH*," | ||
180 | "TTSSH/1.5.*," | ||
181 | "TTSSH/2.1*," | ||
182 | "TTSSH/2.2*," | ||
183 | "TTSSH/2.3*," | ||
184 | "TTSSH/2.4*," | ||
185 | "TTSSH/2.5*," | ||
186 | "TTSSH/2.6*," | ||
187 | "TTSSH/2.70*," | ||
188 | "TTSSH/2.71*," | ||
189 | "TTSSH/2.72*", SSH_BUG_HOSTKEYS }, | ||
190 | { "WinSCP*", SSH_OLD_DHGEX }, | ||
170 | { NULL, 0 } | 191 | { NULL, 0 } |
171 | }; | 192 | }; |
172 | 193 | ||
173 | /* process table, return first match */ | 194 | /* process table, return first match */ |
174 | for (i = 0; check[i].pat; i++) { | 195 | for (i = 0; check[i].pat; i++) { |
175 | if (match_pattern_list(version, check[i].pat, | 196 | if (match_pattern_list(version, check[i].pat, 0) == 1) { |
176 | strlen(check[i].pat), 0) == 1) { | ||
177 | debug("match: %s pat %s compat 0x%08x", | 197 | debug("match: %s pat %s compat 0x%08x", |
178 | version, check[i].pat, check[i].bugs); | 198 | version, check[i].pat, check[i].bugs); |
179 | datafellows = check[i].bugs; /* XXX for now */ | 199 | datafellows = check[i].bugs; /* XXX for now */ |
@@ -199,9 +219,11 @@ proto_spec(const char *spec) | |||
199 | for ((p = strsep(&q, SEP)); p && *p != '\0'; (p = strsep(&q, SEP))) { | 219 | for ((p = strsep(&q, SEP)); p && *p != '\0'; (p = strsep(&q, SEP))) { |
200 | switch (atoi(p)) { | 220 | switch (atoi(p)) { |
201 | case 1: | 221 | case 1: |
222 | #ifdef WITH_SSH1 | ||
202 | if (ret == SSH_PROTO_UNKNOWN) | 223 | if (ret == SSH_PROTO_UNKNOWN) |
203 | ret |= SSH_PROTO_1_PREFERRED; | 224 | ret |= SSH_PROTO_1_PREFERRED; |
204 | ret |= SSH_PROTO_1; | 225 | ret |= SSH_PROTO_1; |
226 | #endif | ||
205 | break; | 227 | break; |
206 | case 2: | 228 | case 2: |
207 | ret |= SSH_PROTO_2; | 229 | ret |= SSH_PROTO_2; |
@@ -229,7 +251,7 @@ filter_proposal(char *proposal, const char *filter) | |||
229 | buffer_init(&b); | 251 | buffer_init(&b); |
230 | tmp = orig_prop = xstrdup(proposal); | 252 | tmp = orig_prop = xstrdup(proposal); |
231 | while ((cp = strsep(&tmp, ",")) != NULL) { | 253 | while ((cp = strsep(&tmp, ",")) != NULL) { |
232 | if (match_pattern_list(cp, filter, strlen(cp), 0) != 1) { | 254 | if (match_pattern_list(cp, filter, 0) != 1) { |
233 | if (buffer_len(&b) > 0) | 255 | if (buffer_len(&b) > 0) |
234 | buffer_append(&b, ",", 1); | 256 | buffer_append(&b, ",", 1); |
235 | buffer_append(&b, cp, strlen(cp)); | 257 | buffer_append(&b, cp, strlen(cp)); |
@@ -271,15 +293,20 @@ compat_pkalg_proposal(char *pkalg_prop) | |||
271 | } | 293 | } |
272 | 294 | ||
273 | char * | 295 | char * |
274 | compat_kex_proposal(char *kex_prop) | 296 | compat_kex_proposal(char *p) |
275 | { | 297 | { |
276 | if (!(datafellows & SSH_BUG_CURVE25519PAD)) | 298 | if ((datafellows & (SSH_BUG_CURVE25519PAD|SSH_OLD_DHGEX)) == 0) |
277 | return kex_prop; | 299 | return p; |
278 | debug2("%s: original KEX proposal: %s", __func__, kex_prop); | 300 | debug2("%s: original KEX proposal: %s", __func__, p); |
279 | kex_prop = filter_proposal(kex_prop, "curve25519-sha256@libssh.org"); | 301 | if ((datafellows & SSH_BUG_CURVE25519PAD) != 0) |
280 | debug2("%s: compat KEX proposal: %s", __func__, kex_prop); | 302 | p = filter_proposal(p, "curve25519-sha256@libssh.org"); |
281 | if (*kex_prop == '\0') | 303 | if ((datafellows & SSH_OLD_DHGEX) != 0) { |
304 | p = filter_proposal(p, "diffie-hellman-group-exchange-sha256"); | ||
305 | p = filter_proposal(p, "diffie-hellman-group-exchange-sha1"); | ||
306 | } | ||
307 | debug2("%s: compat KEX proposal: %s", __func__, p); | ||
308 | if (*p == '\0') | ||
282 | fatal("No supported key exchange algorithms found"); | 309 | fatal("No supported key exchange algorithms found"); |
283 | return kex_prop; | 310 | return p; |
284 | } | 311 | } |
285 | 312 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: compat.h,v 1.46 2015/01/19 20:20:20 markus Exp $ */ | 1 | /* $OpenBSD: compat.h,v 1.48 2015/05/26 23:23:40 dtucker Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. |
@@ -60,6 +60,8 @@ | |||
60 | #define SSH_NEW_OPENSSH 0x04000000 | 60 | #define SSH_NEW_OPENSSH 0x04000000 |
61 | #define SSH_BUG_DYNAMIC_RPORT 0x08000000 | 61 | #define SSH_BUG_DYNAMIC_RPORT 0x08000000 |
62 | #define SSH_BUG_CURVE25519PAD 0x10000000 | 62 | #define SSH_BUG_CURVE25519PAD 0x10000000 |
63 | #define SSH_BUG_HOSTKEYS 0x20000000 | ||
64 | #define SSH_BUG_DHGEX_LARGE 0x40000000 | ||
63 | 65 | ||
64 | void enable_compat13(void); | 66 | void enable_compat13(void); |
65 | void enable_compat20(void); | 67 | void enable_compat20(void); |
diff --git a/config.guess b/config.guess index b94cde8ef..c5636280d 100755 --- a/config.guess +++ b/config.guess | |||
@@ -982,6 +982,12 @@ EOF | |||
982 | ppc:Linux:*:*) | 982 | ppc:Linux:*:*) |
983 | echo powerpc-unknown-linux-gnu | 983 | echo powerpc-unknown-linux-gnu |
984 | exit ;; | 984 | exit ;; |
985 | ppc64le:Linux:*:*) | ||
986 | echo powerpc64le-unknown-linux-gnu | ||
987 | exit ;; | ||
988 | ppcle:Linux:*:*) | ||
989 | echo powerpcle-unknown-linux-gnu | ||
990 | exit ;; | ||
985 | s390:Linux:*:* | s390x:Linux:*:*) | 991 | s390:Linux:*:* | s390x:Linux:*:*) |
986 | echo ${UNAME_MACHINE}-ibm-linux | 992 | echo ${UNAME_MACHINE}-ibm-linux |
987 | exit ;; | 993 | exit ;; |
@@ -677,6 +677,7 @@ INSTALL_PROGRAM | |||
677 | INSTALL_SCRIPT | 677 | INSTALL_SCRIPT |
678 | INSTALL_DATA | 678 | INSTALL_DATA |
679 | AR | 679 | AR |
680 | ac_ct_AR | ||
680 | CAT | 681 | CAT |
681 | KILL | 682 | KILL |
682 | PERL | 683 | PERL |
@@ -1319,7 +1320,7 @@ Optional Packages: | |||
1319 | --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] | 1320 | --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] |
1320 | --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) | 1321 | --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) |
1321 | --without-openssl Disable use of OpenSSL; use only limited internal crypto **EXPERIMENTAL** | 1322 | --without-openssl Disable use of OpenSSL; use only limited internal crypto **EXPERIMENTAL** |
1322 | --without-ssh1 Disable support for SSH protocol 1 | 1323 | --without-ssh1 Enable support for SSH protocol 1 |
1323 | --without-stackprotect Don't use compiler's stack protection | 1324 | --without-stackprotect Don't use compiler's stack protection |
1324 | --without-hardening Don't use toolchain hardening flags | 1325 | --without-hardening Don't use toolchain hardening flags |
1325 | --without-rpath Disable auto-added -R linker paths | 1326 | --without-rpath Disable auto-added -R linker paths |
@@ -1354,8 +1355,8 @@ Optional Packages: | |||
1354 | --with-mantype=man|cat|doc Set man page type | 1355 | --with-mantype=man|cat|doc Set man page type |
1355 | --with-md5-passwords Enable use of MD5 passwords | 1356 | --with-md5-passwords Enable use of MD5 passwords |
1356 | --without-shadow Disable shadow password support | 1357 | --without-shadow Disable shadow password support |
1357 | --with-ipaddr-display Use ip address instead of hostname in \$DISPLAY | 1358 | --with-ipaddr-display Use ip address instead of hostname in $DISPLAY |
1358 | --with-default-path= Specify default \$PATH environment for server | 1359 | --with-default-path= Specify default $PATH environment for server |
1359 | --with-superuser-path= Specify different path for super-user | 1360 | --with-superuser-path= Specify different path for super-user |
1360 | --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses | 1361 | --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses |
1361 | --with-bsd-auth Enable BSD auth support | 1362 | --with-bsd-auth Enable BSD auth support |
@@ -4253,26 +4254,27 @@ echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } | |||
4253 | EGREP="$ac_cv_path_EGREP" | 4254 | EGREP="$ac_cv_path_EGREP" |
4254 | 4255 | ||
4255 | 4256 | ||
4256 | # Extract the first word of "ar", so it can be a program name with args. | 4257 | if test -n "$ac_tool_prefix"; then |
4257 | set dummy ar; ac_word=$2 | 4258 | for ac_prog in ar |
4259 | do | ||
4260 | # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. | ||
4261 | set dummy $ac_tool_prefix$ac_prog; ac_word=$2 | ||
4258 | { echo "$as_me:$LINENO: checking for $ac_word" >&5 | 4262 | { echo "$as_me:$LINENO: checking for $ac_word" >&5 |
4259 | echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } | 4263 | echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } |
4260 | if test "${ac_cv_path_AR+set}" = set; then | 4264 | if test "${ac_cv_prog_AR+set}" = set; then |
4261 | echo $ECHO_N "(cached) $ECHO_C" >&6 | 4265 | echo $ECHO_N "(cached) $ECHO_C" >&6 |
4262 | else | 4266 | else |
4263 | case $AR in | 4267 | if test -n "$AR"; then |
4264 | [\\/]* | ?:[\\/]*) | 4268 | ac_cv_prog_AR="$AR" # Let the user override the test. |
4265 | ac_cv_path_AR="$AR" # Let the user override the test with a path. | 4269 | else |
4266 | ;; | 4270 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR |
4267 | *) | ||
4268 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4269 | for as_dir in $PATH | 4271 | for as_dir in $PATH |
4270 | do | 4272 | do |
4271 | IFS=$as_save_IFS | 4273 | IFS=$as_save_IFS |
4272 | test -z "$as_dir" && as_dir=. | 4274 | test -z "$as_dir" && as_dir=. |
4273 | for ac_exec_ext in '' $ac_executable_extensions; do | 4275 | for ac_exec_ext in '' $ac_executable_extensions; do |
4274 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | 4276 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then |
4275 | ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext" | 4277 | ac_cv_prog_AR="$ac_tool_prefix$ac_prog" |
4276 | echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 | 4278 | echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 |
4277 | break 2 | 4279 | break 2 |
4278 | fi | 4280 | fi |
@@ -4280,10 +4282,9 @@ done | |||
4280 | done | 4282 | done |
4281 | IFS=$as_save_IFS | 4283 | IFS=$as_save_IFS |
4282 | 4284 | ||
4283 | ;; | ||
4284 | esac | ||
4285 | fi | 4285 | fi |
4286 | AR=$ac_cv_path_AR | 4286 | fi |
4287 | AR=$ac_cv_prog_AR | ||
4287 | if test -n "$AR"; then | 4288 | if test -n "$AR"; then |
4288 | { echo "$as_me:$LINENO: result: $AR" >&5 | 4289 | { echo "$as_me:$LINENO: result: $AR" >&5 |
4289 | echo "${ECHO_T}$AR" >&6; } | 4290 | echo "${ECHO_T}$AR" >&6; } |
@@ -4293,6 +4294,70 @@ echo "${ECHO_T}no" >&6; } | |||
4293 | fi | 4294 | fi |
4294 | 4295 | ||
4295 | 4296 | ||
4297 | test -n "$AR" && break | ||
4298 | done | ||
4299 | fi | ||
4300 | if test -z "$AR"; then | ||
4301 | ac_ct_AR=$AR | ||
4302 | for ac_prog in ar | ||
4303 | do | ||
4304 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
4305 | set dummy $ac_prog; ac_word=$2 | ||
4306 | { echo "$as_me:$LINENO: checking for $ac_word" >&5 | ||
4307 | echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } | ||
4308 | if test "${ac_cv_prog_ac_ct_AR+set}" = set; then | ||
4309 | echo $ECHO_N "(cached) $ECHO_C" >&6 | ||
4310 | else | ||
4311 | if test -n "$ac_ct_AR"; then | ||
4312 | ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. | ||
4313 | else | ||
4314 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
4315 | for as_dir in $PATH | ||
4316 | do | ||
4317 | IFS=$as_save_IFS | ||
4318 | test -z "$as_dir" && as_dir=. | ||
4319 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
4320 | if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then | ||
4321 | ac_cv_prog_ac_ct_AR="$ac_prog" | ||
4322 | echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 | ||
4323 | break 2 | ||
4324 | fi | ||
4325 | done | ||
4326 | done | ||
4327 | IFS=$as_save_IFS | ||
4328 | |||
4329 | fi | ||
4330 | fi | ||
4331 | ac_ct_AR=$ac_cv_prog_ac_ct_AR | ||
4332 | if test -n "$ac_ct_AR"; then | ||
4333 | { echo "$as_me:$LINENO: result: $ac_ct_AR" >&5 | ||
4334 | echo "${ECHO_T}$ac_ct_AR" >&6; } | ||
4335 | else | ||
4336 | { echo "$as_me:$LINENO: result: no" >&5 | ||
4337 | echo "${ECHO_T}no" >&6; } | ||
4338 | fi | ||
4339 | |||
4340 | |||
4341 | test -n "$ac_ct_AR" && break | ||
4342 | done | ||
4343 | |||
4344 | if test "x$ac_ct_AR" = x; then | ||
4345 | AR="" | ||
4346 | else | ||
4347 | case $cross_compiling:$ac_tool_warned in | ||
4348 | yes:) | ||
4349 | { echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools | ||
4350 | whose name does not start with the host triplet. If you think this | ||
4351 | configuration is useful to you, please write to autoconf@gnu.org." >&5 | ||
4352 | echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools | ||
4353 | whose name does not start with the host triplet. If you think this | ||
4354 | configuration is useful to you, please write to autoconf@gnu.org." >&2;} | ||
4355 | ac_tool_warned=yes ;; | ||
4356 | esac | ||
4357 | AR=$ac_ct_AR | ||
4358 | fi | ||
4359 | fi | ||
4360 | |||
4296 | # Extract the first word of "cat", so it can be a program name with args. | 4361 | # Extract the first word of "cat", so it can be a program name with args. |
4297 | set dummy cat; ac_word=$2 | 4362 | set dummy cat; ac_word=$2 |
4298 | { echo "$as_me:$LINENO: checking for $ac_word" >&5 | 4363 | { echo "$as_me:$LINENO: checking for $ac_word" >&5 |
@@ -5737,12 +5802,19 @@ fi | |||
5737 | # Check whether --with-ssh1 was given. | 5802 | # Check whether --with-ssh1 was given. |
5738 | if test "${with_ssh1+set}" = set; then | 5803 | if test "${with_ssh1+set}" = set; then |
5739 | withval=$with_ssh1; | 5804 | withval=$with_ssh1; |
5740 | if test "x$withval" = "xno" ; then | 5805 | if test "x$withval" = "xyes" ; then |
5741 | ssh1=no | 5806 | if test "x$openssl" = "xno" ; then |
5742 | elif test "x$openssl" = "xno" ; then | 5807 | { { echo "$as_me:$LINENO: error: Cannot enable SSH protocol 1 with OpenSSL disabled" >&5 |
5743 | { { echo "$as_me:$LINENO: error: Cannot enable SSH protocol 1 with OpenSSL disabled" >&5 | ||
5744 | echo "$as_me: error: Cannot enable SSH protocol 1 with OpenSSL disabled" >&2;} | 5808 | echo "$as_me: error: Cannot enable SSH protocol 1 with OpenSSL disabled" >&2;} |
5745 | { (exit 1); exit 1; }; } | 5809 | { (exit 1); exit 1; }; } |
5810 | fi | ||
5811 | ssh1=yes | ||
5812 | elif test "x$withval" = "xno" ; then | ||
5813 | ssh1=no | ||
5814 | else | ||
5815 | { { echo "$as_me:$LINENO: error: unknown --with-ssh1 argument" >&5 | ||
5816 | echo "$as_me: error: unknown --with-ssh1 argument" >&2;} | ||
5817 | { (exit 1); exit 1; }; } | ||
5746 | fi | 5818 | fi |
5747 | 5819 | ||
5748 | 5820 | ||
@@ -10218,9 +10290,12 @@ echo $ECHO_N "checking for seccomp architecture... $ECHO_C" >&6; } | |||
10218 | i*86-*) | 10290 | i*86-*) |
10219 | seccomp_audit_arch=AUDIT_ARCH_I386 | 10291 | seccomp_audit_arch=AUDIT_ARCH_I386 |
10220 | ;; | 10292 | ;; |
10221 | arm*-*) | 10293 | arm*-*) |
10222 | seccomp_audit_arch=AUDIT_ARCH_ARM | 10294 | seccomp_audit_arch=AUDIT_ARCH_ARM |
10223 | ;; | 10295 | ;; |
10296 | aarch64*-*) | ||
10297 | seccomp_audit_arch=AUDIT_ARCH_AARCH64 | ||
10298 | ;; | ||
10224 | esac | 10299 | esac |
10225 | if test "x$seccomp_audit_arch" != "x" ; then | 10300 | if test "x$seccomp_audit_arch" != "x" ; then |
10226 | { echo "$as_me:$LINENO: result: \"$seccomp_audit_arch\"" >&5 | 10301 | { echo "$as_me:$LINENO: result: \"$seccomp_audit_arch\"" >&5 |
@@ -36007,6 +36082,7 @@ INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim | |||
36007 | INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim | 36082 | INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim |
36008 | INSTALL_DATA!$INSTALL_DATA$ac_delim | 36083 | INSTALL_DATA!$INSTALL_DATA$ac_delim |
36009 | AR!$AR$ac_delim | 36084 | AR!$AR$ac_delim |
36085 | ac_ct_AR!$ac_ct_AR$ac_delim | ||
36010 | CAT!$CAT$ac_delim | 36086 | CAT!$CAT$ac_delim |
36011 | KILL!$KILL$ac_delim | 36087 | KILL!$KILL$ac_delim |
36012 | PERL!$PERL$ac_delim | 36088 | PERL!$PERL$ac_delim |
@@ -36042,7 +36118,6 @@ STRIP_OPT!$STRIP_OPT$ac_delim | |||
36042 | XAUTH_PATH!$XAUTH_PATH$ac_delim | 36118 | XAUTH_PATH!$XAUTH_PATH$ac_delim |
36043 | MANTYPE!$MANTYPE$ac_delim | 36119 | MANTYPE!$MANTYPE$ac_delim |
36044 | mansubdir!$mansubdir$ac_delim | 36120 | mansubdir!$mansubdir$ac_delim |
36045 | user_path!$user_path$ac_delim | ||
36046 | _ACEOF | 36121 | _ACEOF |
36047 | 36122 | ||
36048 | if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then | 36123 | if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then |
@@ -36084,6 +36159,7 @@ _ACEOF | |||
36084 | ac_delim='%!_!# ' | 36159 | ac_delim='%!_!# ' |
36085 | for ac_last_try in false false false false false :; do | 36160 | for ac_last_try in false false false false false :; do |
36086 | cat >conf$$subs.sed <<_ACEOF | 36161 | cat >conf$$subs.sed <<_ACEOF |
36162 | user_path!$user_path$ac_delim | ||
36087 | piddir!$piddir$ac_delim | 36163 | piddir!$piddir$ac_delim |
36088 | TEST_SSH_IPV6!$TEST_SSH_IPV6$ac_delim | 36164 | TEST_SSH_IPV6!$TEST_SSH_IPV6$ac_delim |
36089 | TEST_MALLOC_OPTIONS!$TEST_MALLOC_OPTIONS$ac_delim | 36165 | TEST_MALLOC_OPTIONS!$TEST_MALLOC_OPTIONS$ac_delim |
@@ -36092,7 +36168,7 @@ LIBOBJS!$LIBOBJS$ac_delim | |||
36092 | LTLIBOBJS!$LTLIBOBJS$ac_delim | 36168 | LTLIBOBJS!$LTLIBOBJS$ac_delim |
36093 | _ACEOF | 36169 | _ACEOF |
36094 | 36170 | ||
36095 | if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 6; then | 36171 | if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 7; then |
36096 | break | 36172 | break |
36097 | elif $ac_last_try; then | 36173 | elif $ac_last_try; then |
36098 | { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 | 36174 | { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 |
diff --git a/configure.ac b/configure.ac index f7ce777a5..cd6acaf9f 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -30,7 +30,7 @@ AC_PROG_CPP | |||
30 | AC_PROG_RANLIB | 30 | AC_PROG_RANLIB |
31 | AC_PROG_INSTALL | 31 | AC_PROG_INSTALL |
32 | AC_PROG_EGREP | 32 | AC_PROG_EGREP |
33 | AC_PATH_PROG([AR], [ar]) | 33 | AC_CHECK_TOOLS([AR], [ar]) |
34 | AC_PATH_PROG([CAT], [cat]) | 34 | AC_PATH_PROG([CAT], [cat]) |
35 | AC_PATH_PROG([KILL], [kill]) | 35 | AC_PATH_PROG([KILL], [kill]) |
36 | AC_PATH_PROGS([PERL], [perl5 perl]) | 36 | AC_PATH_PROGS([PERL], [perl5 perl]) |
@@ -140,12 +140,17 @@ else | |||
140 | fi | 140 | fi |
141 | 141 | ||
142 | AC_ARG_WITH([ssh1], | 142 | AC_ARG_WITH([ssh1], |
143 | [ --without-ssh1 Disable support for SSH protocol 1], | 143 | [ --without-ssh1 Enable support for SSH protocol 1], |
144 | [ | 144 | [ |
145 | if test "x$withval" = "xno" ; then | 145 | if test "x$withval" = "xyes" ; then |
146 | if test "x$openssl" = "xno" ; then | ||
147 | AC_MSG_ERROR([Cannot enable SSH protocol 1 with OpenSSL disabled]) | ||
148 | fi | ||
149 | ssh1=yes | ||
150 | elif test "x$withval" = "xno" ; then | ||
146 | ssh1=no | 151 | ssh1=no |
147 | elif test "x$openssl" = "xno" ; then | 152 | else |
148 | AC_MSG_ERROR([Cannot enable SSH protocol 1 with OpenSSL disabled]) | 153 | AC_MSG_ERROR([unknown --with-ssh1 argument]) |
149 | fi | 154 | fi |
150 | ] | 155 | ] |
151 | ) | 156 | ) |
@@ -800,14 +805,17 @@ main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) | |||
800 | i*86-*) | 805 | i*86-*) |
801 | seccomp_audit_arch=AUDIT_ARCH_I386 | 806 | seccomp_audit_arch=AUDIT_ARCH_I386 |
802 | ;; | 807 | ;; |
803 | arm*-*) | 808 | arm*-*) |
804 | seccomp_audit_arch=AUDIT_ARCH_ARM | 809 | seccomp_audit_arch=AUDIT_ARCH_ARM |
805 | ;; | 810 | ;; |
811 | aarch64*-*) | ||
812 | seccomp_audit_arch=AUDIT_ARCH_AARCH64 | ||
813 | ;; | ||
806 | esac | 814 | esac |
807 | if test "x$seccomp_audit_arch" != "x" ; then | 815 | if test "x$seccomp_audit_arch" != "x" ; then |
808 | AC_MSG_RESULT(["$seccomp_audit_arch"]) | 816 | AC_MSG_RESULT(["$seccomp_audit_arch"]) |
809 | AC_DEFINE_UNQUOTED([SECCOMP_AUDIT_ARCH], [$seccomp_audit_arch], | 817 | AC_DEFINE_UNQUOTED([SECCOMP_AUDIT_ARCH], [$seccomp_audit_arch], |
810 | [Specify the system call convention in use]) | 818 | [Specify the system call convention in use]) |
811 | else | 819 | else |
812 | AC_MSG_RESULT([architecture not supported]) | 820 | AC_MSG_RESULT([architecture not supported]) |
813 | fi | 821 | fi |
@@ -4455,7 +4463,7 @@ if test ! -z "$IPADDR_IN_DISPLAY" ; then | |||
4455 | else | 4463 | else |
4456 | DISPLAY_HACK_MSG="no" | 4464 | DISPLAY_HACK_MSG="no" |
4457 | AC_ARG_WITH([ipaddr-display], | 4465 | AC_ARG_WITH([ipaddr-display], |
4458 | [ --with-ipaddr-display Use ip address instead of hostname in \$DISPLAY], | 4466 | [ --with-ipaddr-display Use ip address instead of hostname in $DISPLAY], |
4459 | [ | 4467 | [ |
4460 | if test "x$withval" != "xno" ; then | 4468 | if test "x$withval" != "xno" ; then |
4461 | AC_DEFINE([IPADDR_IN_DISPLAY]) | 4469 | AC_DEFINE([IPADDR_IN_DISPLAY]) |
@@ -4501,7 +4509,7 @@ fi | |||
4501 | # Whether to mess with the default path | 4509 | # Whether to mess with the default path |
4502 | SERVER_PATH_MSG="(default)" | 4510 | SERVER_PATH_MSG="(default)" |
4503 | AC_ARG_WITH([default-path], | 4511 | AC_ARG_WITH([default-path], |
4504 | [ --with-default-path= Specify default \$PATH environment for server], | 4512 | [ --with-default-path= Specify default $PATH environment for server], |
4505 | [ | 4513 | [ |
4506 | if test "x$external_path_file" = "x/etc/login.conf" ; then | 4514 | if test "x$external_path_file" = "x/etc/login.conf" ; then |
4507 | AC_MSG_WARN([ | 4515 | AC_MSG_WARN([ |
diff --git a/contrib/redhat/openssh.spec b/contrib/redhat/openssh.spec index 7ac4ed0a5..b9aaca5b6 100644 --- a/contrib/redhat/openssh.spec +++ b/contrib/redhat/openssh.spec | |||
@@ -1,4 +1,4 @@ | |||
1 | %define ver 6.8p1 | 1 | %define ver 6.9p1 |
2 | %define rel 1 | 2 | %define rel 1 |
3 | 3 | ||
4 | # OpenSSH privilege separation requires a user & group ID | 4 | # OpenSSH privilege separation requires a user & group ID |
diff --git a/contrib/suse/openssh.spec b/contrib/suse/openssh.spec index 0eb779c9b..c29c3f71b 100644 --- a/contrib/suse/openssh.spec +++ b/contrib/suse/openssh.spec | |||
@@ -13,7 +13,7 @@ | |||
13 | 13 | ||
14 | Summary: OpenSSH, a free Secure Shell (SSH) protocol implementation | 14 | Summary: OpenSSH, a free Secure Shell (SSH) protocol implementation |
15 | Name: openssh | 15 | Name: openssh |
16 | Version: 6.8p1 | 16 | Version: 6.9p1 |
17 | URL: http://www.openssh.com/ | 17 | URL: http://www.openssh.com/ |
18 | Release: 1 | 18 | Release: 1 |
19 | Source0: openssh-%{version}.tar.gz | 19 | Source0: openssh-%{version}.tar.gz |
diff --git a/debian/.git-dpm b/debian/.git-dpm index c476ca7ec..cc2aee698 100644 --- a/debian/.git-dpm +++ b/debian/.git-dpm | |||
@@ -1,8 +1,8 @@ | |||
1 | # see git-dpm(1) from git-dpm package | 1 | # see git-dpm(1) from git-dpm package |
2 | 8698446b972003b63dfe5dcbdb86acfe986afb85 | 2 | 810eecd6b2e03770f21e46b5cb8ce8c7fcd46da8 |
3 | 8698446b972003b63dfe5dcbdb86acfe986afb85 | 3 | 810eecd6b2e03770f21e46b5cb8ce8c7fcd46da8 |
4 | baccdb349b31c47cd76fb63211f754ed33a9707e | 4 | 544df7a04ae5b5c1fc30be7c445ad685d7a02dc9 |
5 | baccdb349b31c47cd76fb63211f754ed33a9707e | 5 | 544df7a04ae5b5c1fc30be7c445ad685d7a02dc9 |
6 | openssh_6.8p1.orig.tar.gz | 6 | openssh_6.9p1.orig.tar.gz |
7 | cdbc51e46a902b30d263b05fdc71340920e91c92 | 7 | 86ab57f00d0fd9bf302760f2f6deac1b6e9df265 |
8 | 1475953 | 8 | 1487617 |
diff --git a/debian/changelog b/debian/changelog index 60049cd71..06ec4ab09 100644 --- a/debian/changelog +++ b/debian/changelog | |||
@@ -1,4 +1,4 @@ | |||
1 | openssh (1:6.8p1-1) UNRELEASED; urgency=medium | 1 | openssh (1:6.9p1-1) UNRELEASED; urgency=medium |
2 | 2 | ||
3 | * New upstream release (http://www.openssh.com/txt/release-6.8): | 3 | * New upstream release (http://www.openssh.com/txt/release-6.8): |
4 | - sshd(8): UseDNS now defaults to 'no'. Configurations that match | 4 | - sshd(8): UseDNS now defaults to 'no'. Configurations that match |
@@ -63,6 +63,72 @@ openssh (1:6.8p1-1) UNRELEASED; urgency=medium | |||
63 | - ssh-keygen(1): Fix broken private key conversion from non-OpenSSH | 63 | - ssh-keygen(1): Fix broken private key conversion from non-OpenSSH |
64 | formats. | 64 | formats. |
65 | - ssh-keygen(1): Fix KRL generation bug when multiple CAs are in use. | 65 | - ssh-keygen(1): Fix KRL generation bug when multiple CAs are in use. |
66 | * New upstream release (http://www.openssh.com/txt/release-6.9): | ||
67 | - SECURITY: ssh(1): When forwarding X11 connections with | ||
68 | ForwardX11Trusted=no, connections made after ForwardX11Timeout expired | ||
69 | could be permitted and no longer subject to XSECURITY restrictions | ||
70 | because of an ineffective timeout check in ssh(1) coupled with "fail | ||
71 | open" behaviour in the X11 server when clients attempted connections | ||
72 | with expired credentials. This problem was reported by Jann Horn. | ||
73 | - SECURITY: ssh-agent(1): Fix weakness of agent locking (ssh-add -x) to | ||
74 | password guessing by implementing an increasing failure delay, storing | ||
75 | a salted hash of the password rather than the password itself and | ||
76 | using a timing-safe comparison function for verifying unlock attempts. | ||
77 | This problem was reported by Ryan Castellucci. | ||
78 | - sshd(8): Support admin-specified arguments to AuthorizedKeysCommand | ||
79 | (closes: #740494). | ||
80 | - sshd(8): Add AuthorizedPrincipalsCommand that allows retrieving | ||
81 | authorized principals information from a subprocess rather than a | ||
82 | file. | ||
83 | - ssh(1), ssh-add(1): Support PKCS#11 devices with external PIN entry | ||
84 | devices. | ||
85 | - ssh-keygen(1): Support "ssh-keygen -lF hostname" to search known_hosts | ||
86 | and print key hashes rather than full keys. | ||
87 | - ssh-agent(1): Add -D flag to leave ssh-agent in foreground without | ||
88 | enabling debug mode. | ||
89 | - ssh(1), sshd(8): Deprecate legacy SSH2_MSG_KEX_DH_GEX_REQUEST_OLD | ||
90 | message and do not try to use it against some 3rd-party SSH | ||
91 | implementations that use it (older PuTTY, WinSCP). | ||
92 | - ssh(1), sshd(8): Cap DH-GEX group size at 4Kbits for Cisco | ||
93 | implementations as some would fail when attempting to use group sizes | ||
94 | >4K (closes: #740307, LP: #1287222). | ||
95 | - ssh(1): Fix out-of-bound read in EscapeChar configuration option | ||
96 | parsing. | ||
97 | - sshd(8): Fix application of PermitTunnel, LoginGraceTime, | ||
98 | AuthenticationMethods and StreamLocalBindMask options in Match blocks. | ||
99 | - ssh(1), sshd(8): Improve disconnection message on TCP reset. | ||
100 | - ssh(1): Remove failed remote forwards established by multiplexing from | ||
101 | the list of active forwards. | ||
102 | - sshd(8): Make parsing of authorized_keys "environment=" options | ||
103 | independent of PermitUserEnv being enabled. | ||
104 | - sshd(8): Fix post-auth crash with permitopen=none (closes: #778807). | ||
105 | - ssh(1), ssh-add(1), ssh-keygen(1): Allow new-format private keys to be | ||
106 | encrypted with AEAD ciphers. | ||
107 | - ssh(1): Allow ListenAddress, Port and AddressFamily configuration | ||
108 | options to appear in any order. | ||
109 | - sshd(8): Check for and reject missing arguments for VersionAddendum | ||
110 | and ForceCommand. | ||
111 | - ssh(1), sshd(8): Don't treat unknown certificate extensions as fatal. | ||
112 | - ssh-keygen(1): Make stdout and stderr output consistent. | ||
113 | - ssh(1): Mention missing DISPLAY environment in debug log when X11 | ||
114 | forwarding requested. | ||
115 | - sshd(8): Correctly record login when UseLogin is set. | ||
116 | - sshd(8): Add some missing options to sshd -T output and fix output of | ||
117 | VersionAddendum and HostCertificate. | ||
118 | - Document and improve consistency of options that accept a "none" | ||
119 | argument: TrustedUserCAKeys, RevokedKeys, AuthorizedPrincipalsFile. | ||
120 | - ssh(1): Include remote username in debug output. | ||
121 | - sshd(8): Avoid compatibility problem with some versions of Tera Term, | ||
122 | which would crash when they received the hostkeys notification message | ||
123 | (hostkeys-00@openssh.com). | ||
124 | - sshd(8): Mention ssh-keygen -E as useful when comparing legacy MD5 | ||
125 | host key fingerprints. | ||
126 | - ssh(1): Clarify pseudo-terminal request behaviour and make manual | ||
127 | language consistent. | ||
128 | - ssh(1): Document that the TERM environment variable is not subject to | ||
129 | SendEnv and AcceptEnv; bz#2386 | ||
130 | - sshd(8): Format UsePAM setting when using sshd -T (closes: #767648). | ||
131 | - moduli(5): Update DH-GEX moduli (closes: #787037). | ||
66 | * Thanks to Jakub Jelen of Red Hat for Fedora's rebased version of the | 132 | * Thanks to Jakub Jelen of Red Hat for Fedora's rebased version of the |
67 | GSSAPI key exchange patch. | 133 | GSSAPI key exchange patch. |
68 | 134 | ||
diff --git a/debian/patches/auth-log-verbosity.patch b/debian/patches/auth-log-verbosity.patch index 491656be2..1b52fd4cc 100644 --- a/debian/patches/auth-log-verbosity.patch +++ b/debian/patches/auth-log-verbosity.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From c9c2ebb4680ea6872218b1e4519fe31a2043a27a Mon Sep 17 00:00:00 2001 | 1 | From ee78b163ac7fe57b819e8ddf84b32e67b6a950a3 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:02 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:02 +0000 |
4 | Subject: Quieten logs when multiple from= restrictions are used | 4 | Subject: Quieten logs when multiple from= restrictions are used |
@@ -16,7 +16,7 @@ Patch-Name: auth-log-verbosity.patch | |||
16 | 4 files changed, 32 insertions(+), 9 deletions(-) | 16 | 4 files changed, 32 insertions(+), 9 deletions(-) |
17 | 17 | ||
18 | diff --git a/auth-options.c b/auth-options.c | 18 | diff --git a/auth-options.c b/auth-options.c |
19 | index 4f0da9c..3fa236e 100644 | 19 | index facfc02..9ab1880 100644 |
20 | --- a/auth-options.c | 20 | --- a/auth-options.c |
21 | +++ b/auth-options.c | 21 | +++ b/auth-options.c |
22 | @@ -58,9 +58,20 @@ int forced_tun_device = -1; | 22 | @@ -58,9 +58,20 @@ int forced_tun_device = -1; |
@@ -40,7 +40,7 @@ index 4f0da9c..3fa236e 100644 | |||
40 | auth_clear_options(void) | 40 | auth_clear_options(void) |
41 | { | 41 | { |
42 | no_agent_forwarding_flag = 0; | 42 | no_agent_forwarding_flag = 0; |
43 | @@ -288,10 +299,13 @@ auth_parse_options(struct passwd *pw, char *opts, char *file, u_long linenum) | 43 | @@ -293,10 +304,13 @@ auth_parse_options(struct passwd *pw, char *opts, char *file, u_long linenum) |
44 | /* FALLTHROUGH */ | 44 | /* FALLTHROUGH */ |
45 | case 0: | 45 | case 0: |
46 | free(patterns); | 46 | free(patterns); |
@@ -58,7 +58,7 @@ index 4f0da9c..3fa236e 100644 | |||
58 | auth_debug_add("Your host '%.200s' is not " | 58 | auth_debug_add("Your host '%.200s' is not " |
59 | "permitted to use this key for login.", | 59 | "permitted to use this key for login.", |
60 | remote_host); | 60 | remote_host); |
61 | @@ -514,11 +528,14 @@ parse_option_list(struct sshbuf *oblob, struct passwd *pw, | 61 | @@ -519,11 +533,14 @@ parse_option_list(struct sshbuf *oblob, struct passwd *pw, |
62 | break; | 62 | break; |
63 | case 0: | 63 | case 0: |
64 | /* no match */ | 64 | /* no match */ |
@@ -104,18 +104,18 @@ index cbd971b..4cf2163 100644 | |||
104 | * Go though the accepted keys, looking for the current key. If | 104 | * Go though the accepted keys, looking for the current key. If |
105 | * found, perform a challenge-response dialog to verify that the | 105 | * found, perform a challenge-response dialog to verify that the |
106 | diff --git a/auth2-pubkey.c b/auth2-pubkey.c | 106 | diff --git a/auth2-pubkey.c b/auth2-pubkey.c |
107 | index d943efa..0bda5c9 100644 | 107 | index 5aa319c..1eee161 100644 |
108 | --- a/auth2-pubkey.c | 108 | --- a/auth2-pubkey.c |
109 | +++ b/auth2-pubkey.c | 109 | +++ b/auth2-pubkey.c |
110 | @@ -282,6 +282,7 @@ match_principals_file(char *file, struct passwd *pw, struct sshkey_cert *cert) | 110 | @@ -561,6 +561,7 @@ process_principals(FILE *f, char *file, struct passwd *pw, |
111 | restore_uid(); | 111 | u_long linenum = 0; |
112 | return 0; | 112 | u_int i; |
113 | } | 113 | |
114 | + auth_start_parse_options(); | 114 | + auth_start_parse_options(); |
115 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { | 115 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { |
116 | /* Skip leading whitespace. */ | 116 | /* Skip leading whitespace. */ |
117 | for (cp = line; *cp == ' ' || *cp == '\t'; cp++) | 117 | for (cp = line; *cp == ' ' || *cp == '\t'; cp++) |
118 | @@ -343,6 +344,7 @@ check_authkeys_file(FILE *f, char *file, Key* key, struct passwd *pw) | 118 | @@ -726,6 +727,7 @@ check_authkeys_file(FILE *f, char *file, Key* key, struct passwd *pw) |
119 | found_key = 0; | 119 | found_key = 0; |
120 | 120 | ||
121 | found = NULL; | 121 | found = NULL; |
@@ -123,9 +123,9 @@ index d943efa..0bda5c9 100644 | |||
123 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { | 123 | while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { |
124 | char *cp, *key_options = NULL; | 124 | char *cp, *key_options = NULL; |
125 | if (found != NULL) | 125 | if (found != NULL) |
126 | @@ -482,6 +484,7 @@ user_cert_trusted_ca(struct passwd *pw, Key *key) | 126 | @@ -872,6 +874,7 @@ user_cert_trusted_ca(struct passwd *pw, Key *key) |
127 | if (key_cert_check_authority(key, 0, 1, | 127 | if (key_cert_check_authority(key, 0, 1, |
128 | principals_file == NULL ? pw->pw_name : NULL, &reason) != 0) | 128 | use_authorized_principals ? NULL : pw->pw_name, &reason) != 0) |
129 | goto fail_reason; | 129 | goto fail_reason; |
130 | + auth_start_parse_options(); | 130 | + auth_start_parse_options(); |
131 | if (auth_cert_options(key, pw) != 0) | 131 | if (auth_cert_options(key, pw) != 0) |
diff --git a/debian/patches/authorized-keys-man-symlink.patch b/debian/patches/authorized-keys-man-symlink.patch index eb398f6a4..e2f08085e 100644 --- a/debian/patches/authorized-keys-man-symlink.patch +++ b/debian/patches/authorized-keys-man-symlink.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 8a1a563ee326222155c74454e11e6ed62297c403 Mon Sep 17 00:00:00 2001 | 1 | From 4a7ce48c3db45ebb9cb76fe21fc9e8811a43d840 Mon Sep 17 00:00:00 2001 |
2 | From: Tomas Pospisek <tpo_deb@sourcepole.ch> | 2 | From: Tomas Pospisek <tpo_deb@sourcepole.ch> |
3 | Date: Sun, 9 Feb 2014 16:10:07 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:07 +0000 |
4 | Subject: Install authorized_keys(5) as a symlink to sshd(8) | 4 | Subject: Install authorized_keys(5) as a symlink to sshd(8) |
diff --git a/debian/patches/consolekit.patch b/debian/patches/consolekit.patch index 0438b8f74..5ab47c0ca 100644 --- a/debian/patches/consolekit.patch +++ b/debian/patches/consolekit.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 8b3111d597316954caaf8ddf2e7746491976c248 Mon Sep 17 00:00:00 2001 | 1 | From 1197fd975ab8fd11b1ac83557ef750129b16c0d8 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@ubuntu.com> | 2 | From: Colin Watson <cjwatson@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:09:57 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:57 +0000 |
4 | Subject: Add support for registering ConsoleKit sessions on login | 4 | Subject: Add support for registering ConsoleKit sessions on login |
@@ -37,10 +37,10 @@ index 3d2a328..c406aec 100644 | |||
37 | MANPAGES = moduli.5.out scp.1.out ssh-add.1.out ssh-agent.1.out ssh-keygen.1.out ssh-keyscan.1.out ssh.1.out sshd.8.out sftp-server.8.out sftp.1.out ssh-keysign.8.out ssh-pkcs11-helper.8.out sshd_config.5.out ssh_config.5.out | 37 | MANPAGES = moduli.5.out scp.1.out ssh-add.1.out ssh-agent.1.out ssh-keygen.1.out ssh-keyscan.1.out ssh.1.out sshd.8.out sftp-server.8.out sftp.1.out ssh-keysign.8.out ssh-pkcs11-helper.8.out sshd_config.5.out ssh_config.5.out |
38 | MANPAGES_IN = moduli.5 scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1 ssh-keysign.8 ssh-pkcs11-helper.8 sshd_config.5 ssh_config.5 | 38 | MANPAGES_IN = moduli.5 scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1 ssh-keysign.8 ssh-pkcs11-helper.8 sshd_config.5 ssh_config.5 |
39 | diff --git a/configure.ac b/configure.ac | 39 | diff --git a/configure.ac b/configure.ac |
40 | index 5f606ea..f7ce777 100644 | 40 | index 4d55c46..cd6acaf 100644 |
41 | --- a/configure.ac | 41 | --- a/configure.ac |
42 | +++ b/configure.ac | 42 | +++ b/configure.ac |
43 | @@ -4180,6 +4180,30 @@ AC_ARG_WITH([kerberos5], | 43 | @@ -4188,6 +4188,30 @@ AC_ARG_WITH([kerberos5], |
44 | AC_SUBST([GSSLIBS]) | 44 | AC_SUBST([GSSLIBS]) |
45 | AC_SUBST([K5LIBS]) | 45 | AC_SUBST([K5LIBS]) |
46 | 46 | ||
@@ -71,7 +71,7 @@ index 5f606ea..f7ce777 100644 | |||
71 | # Looking for programs, paths and files | 71 | # Looking for programs, paths and files |
72 | 72 | ||
73 | PRIVSEP_PATH=/var/empty | 73 | PRIVSEP_PATH=/var/empty |
74 | @@ -4981,6 +5005,7 @@ echo " MD5 password support: $MD5_MSG" | 74 | @@ -4989,6 +5013,7 @@ echo " MD5 password support: $MD5_MSG" |
75 | echo " libedit support: $LIBEDIT_MSG" | 75 | echo " libedit support: $LIBEDIT_MSG" |
76 | echo " Solaris process contract support: $SPC_MSG" | 76 | echo " Solaris process contract support: $SPC_MSG" |
77 | echo " Solaris project support: $SP_MSG" | 77 | echo " Solaris project support: $SP_MSG" |
@@ -357,7 +357,7 @@ index 0000000..8ce3716 | |||
357 | + | 357 | + |
358 | +#endif /* USE_CONSOLEKIT */ | 358 | +#endif /* USE_CONSOLEKIT */ |
359 | diff --git a/monitor.c b/monitor.c | 359 | diff --git a/monitor.c b/monitor.c |
360 | index 6ff05e4..ce7ba07 100644 | 360 | index 3a3d2f0..12ed6fd 100644 |
361 | --- a/monitor.c | 361 | --- a/monitor.c |
362 | +++ b/monitor.c | 362 | +++ b/monitor.c |
363 | @@ -104,6 +104,9 @@ | 363 | @@ -104,6 +104,9 @@ |
@@ -411,7 +411,7 @@ index 6ff05e4..ce7ba07 100644 | |||
411 | 411 | ||
412 | for (;;) | 412 | for (;;) |
413 | monitor_read(pmonitor, mon_dispatch, NULL); | 413 | monitor_read(pmonitor, mon_dispatch, NULL); |
414 | @@ -2187,3 +2203,29 @@ mm_answer_gss_updatecreds(int socket, Buffer *m) { | 414 | @@ -2191,3 +2207,29 @@ mm_answer_gss_updatecreds(int socket, Buffer *m) { |
415 | 415 | ||
416 | #endif /* GSSAPI */ | 416 | #endif /* GSSAPI */ |
417 | 417 | ||
@@ -455,10 +455,10 @@ index 2d82b8b..fd8d92c 100644 | |||
455 | 455 | ||
456 | struct mm_master; | 456 | struct mm_master; |
457 | diff --git a/monitor_wrap.c b/monitor_wrap.c | 457 | diff --git a/monitor_wrap.c b/monitor_wrap.c |
458 | index 5aa9c47..a5f4e9d 100644 | 458 | index 6ae72a0..2a0fe9b 100644 |
459 | --- a/monitor_wrap.c | 459 | --- a/monitor_wrap.c |
460 | +++ b/monitor_wrap.c | 460 | +++ b/monitor_wrap.c |
461 | @@ -1150,3 +1150,33 @@ mm_ssh_gssapi_update_creds(ssh_gssapi_ccache *store) | 461 | @@ -1151,3 +1151,33 @@ mm_ssh_gssapi_update_creds(ssh_gssapi_ccache *store) |
462 | 462 | ||
463 | #endif /* GSSAPI */ | 463 | #endif /* GSSAPI */ |
464 | 464 | ||
@@ -493,7 +493,7 @@ index 5aa9c47..a5f4e9d 100644 | |||
493 | +} | 493 | +} |
494 | +#endif /* USE_CONSOLEKIT */ | 494 | +#endif /* USE_CONSOLEKIT */ |
495 | diff --git a/monitor_wrap.h b/monitor_wrap.h | 495 | diff --git a/monitor_wrap.h b/monitor_wrap.h |
496 | index 4d1e899..f99c31c 100644 | 496 | index 57e740f..6829392 100644 |
497 | --- a/monitor_wrap.h | 497 | --- a/monitor_wrap.h |
498 | +++ b/monitor_wrap.h | 498 | +++ b/monitor_wrap.h |
499 | @@ -108,4 +108,8 @@ int mm_skey_respond(void *, u_int, char **); | 499 | @@ -108,4 +108,8 @@ int mm_skey_respond(void *, u_int, char **); |
@@ -506,7 +506,7 @@ index 4d1e899..f99c31c 100644 | |||
506 | + | 506 | + |
507 | #endif /* _MM_WRAP_H_ */ | 507 | #endif /* _MM_WRAP_H_ */ |
508 | diff --git a/session.c b/session.c | 508 | diff --git a/session.c b/session.c |
509 | index d4b7725..785833f 100644 | 509 | index afac4a5..c6bd728 100644 |
510 | --- a/session.c | 510 | --- a/session.c |
511 | +++ b/session.c | 511 | +++ b/session.c |
512 | @@ -94,6 +94,7 @@ | 512 | @@ -94,6 +94,7 @@ |
diff --git a/debian/patches/debian-banner.patch b/debian/patches/debian-banner.patch index 5bc70a566..42fc5be76 100644 --- a/debian/patches/debian-banner.patch +++ b/debian/patches/debian-banner.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 2c31a85436f1eac46e185382c2aa15406ae6c0ac Mon Sep 17 00:00:00 2001 | 1 | From 91729e3501d53d11fcc7a364b36994305c495945 Mon Sep 17 00:00:00 2001 |
2 | From: Kees Cook <kees@debian.org> | 2 | From: Kees Cook <kees@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:06 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:06 +0000 |
4 | Subject: Add DebianBanner server configuration option | 4 | Subject: Add DebianBanner server configuration option |
@@ -19,10 +19,10 @@ Patch-Name: debian-banner.patch | |||
19 | 4 files changed, 18 insertions(+), 1 deletion(-) | 19 | 4 files changed, 18 insertions(+), 1 deletion(-) |
20 | 20 | ||
21 | diff --git a/servconf.c b/servconf.c | 21 | diff --git a/servconf.c b/servconf.c |
22 | index b3a2841..bec53e0 100644 | 22 | index 8a5bd7b..fe3e311 100644 |
23 | --- a/servconf.c | 23 | --- a/servconf.c |
24 | +++ b/servconf.c | 24 | +++ b/servconf.c |
25 | @@ -166,6 +166,7 @@ initialize_server_options(ServerOptions *options) | 25 | @@ -169,6 +169,7 @@ initialize_server_options(ServerOptions *options) |
26 | options->ip_qos_bulk = -1; | 26 | options->ip_qos_bulk = -1; |
27 | options->version_addendum = NULL; | 27 | options->version_addendum = NULL; |
28 | options->fingerprint_hash = -1; | 28 | options->fingerprint_hash = -1; |
@@ -30,7 +30,7 @@ index b3a2841..bec53e0 100644 | |||
30 | } | 30 | } |
31 | 31 | ||
32 | /* Returns 1 if a string option is unset or set to "none" or 0 otherwise. */ | 32 | /* Returns 1 if a string option is unset or set to "none" or 0 otherwise. */ |
33 | @@ -342,6 +343,8 @@ fill_default_server_options(ServerOptions *options) | 33 | @@ -347,6 +348,8 @@ fill_default_server_options(ServerOptions *options) |
34 | options->fwd_opts.streamlocal_bind_unlink = 0; | 34 | options->fwd_opts.streamlocal_bind_unlink = 0; |
35 | if (options->fingerprint_hash == -1) | 35 | if (options->fingerprint_hash == -1) |
36 | options->fingerprint_hash = SSH_FP_HASH_DEFAULT; | 36 | options->fingerprint_hash = SSH_FP_HASH_DEFAULT; |
@@ -39,7 +39,7 @@ index b3a2841..bec53e0 100644 | |||
39 | /* Turn privilege separation on by default */ | 39 | /* Turn privilege separation on by default */ |
40 | if (use_privsep == -1) | 40 | if (use_privsep == -1) |
41 | use_privsep = PRIVSEP_NOSANDBOX; | 41 | use_privsep = PRIVSEP_NOSANDBOX; |
42 | @@ -412,6 +415,7 @@ typedef enum { | 42 | @@ -419,6 +422,7 @@ typedef enum { |
43 | sAuthenticationMethods, sHostKeyAgent, sPermitUserRC, | 43 | sAuthenticationMethods, sHostKeyAgent, sPermitUserRC, |
44 | sStreamLocalBindMask, sStreamLocalBindUnlink, | 44 | sStreamLocalBindMask, sStreamLocalBindUnlink, |
45 | sAllowStreamLocalForwarding, sFingerprintHash, | 45 | sAllowStreamLocalForwarding, sFingerprintHash, |
@@ -47,7 +47,7 @@ index b3a2841..bec53e0 100644 | |||
47 | sDeprecated, sUnsupported | 47 | sDeprecated, sUnsupported |
48 | } ServerOpCodes; | 48 | } ServerOpCodes; |
49 | 49 | ||
50 | @@ -556,6 +560,7 @@ static struct { | 50 | @@ -565,6 +569,7 @@ static struct { |
51 | { "streamlocalbindunlink", sStreamLocalBindUnlink, SSHCFG_ALL }, | 51 | { "streamlocalbindunlink", sStreamLocalBindUnlink, SSHCFG_ALL }, |
52 | { "allowstreamlocalforwarding", sAllowStreamLocalForwarding, SSHCFG_ALL }, | 52 | { "allowstreamlocalforwarding", sAllowStreamLocalForwarding, SSHCFG_ALL }, |
53 | { "fingerprinthash", sFingerprintHash, SSHCFG_GLOBAL }, | 53 | { "fingerprinthash", sFingerprintHash, SSHCFG_GLOBAL }, |
@@ -55,7 +55,7 @@ index b3a2841..bec53e0 100644 | |||
55 | { NULL, sBadOption, 0 } | 55 | { NULL, sBadOption, 0 } |
56 | }; | 56 | }; |
57 | 57 | ||
58 | @@ -1777,6 +1782,10 @@ process_server_config_line(ServerOptions *options, char *line, | 58 | @@ -1850,6 +1855,10 @@ process_server_config_line(ServerOptions *options, char *line, |
59 | options->fingerprint_hash = value; | 59 | options->fingerprint_hash = value; |
60 | break; | 60 | break; |
61 | 61 | ||
@@ -67,10 +67,10 @@ index b3a2841..bec53e0 100644 | |||
67 | logit("%s line %d: Deprecated option %s", | 67 | logit("%s line %d: Deprecated option %s", |
68 | filename, linenum, arg); | 68 | filename, linenum, arg); |
69 | diff --git a/servconf.h b/servconf.h | 69 | diff --git a/servconf.h b/servconf.h |
70 | index d2ed4d7..ed0f171 100644 | 70 | index b99b270..ba7b739 100644 |
71 | --- a/servconf.h | 71 | --- a/servconf.h |
72 | +++ b/servconf.h | 72 | +++ b/servconf.h |
73 | @@ -192,6 +192,8 @@ typedef struct { | 73 | @@ -196,6 +196,8 @@ typedef struct { |
74 | char *auth_methods[MAX_AUTH_METHODS]; | 74 | char *auth_methods[MAX_AUTH_METHODS]; |
75 | 75 | ||
76 | int fingerprint_hash; | 76 | int fingerprint_hash; |
@@ -80,7 +80,7 @@ index d2ed4d7..ed0f171 100644 | |||
80 | 80 | ||
81 | /* Information about the incoming connection as used by Match */ | 81 | /* Information about the incoming connection as used by Match */ |
82 | diff --git a/sshd.c b/sshd.c | 82 | diff --git a/sshd.c b/sshd.c |
83 | index c362209..5435968 100644 | 83 | index 96e75c6..7886d0e 100644 |
84 | --- a/sshd.c | 84 | --- a/sshd.c |
85 | +++ b/sshd.c | 85 | +++ b/sshd.c |
86 | @@ -442,7 +442,8 @@ sshd_exchange_identification(int sock_in, int sock_out) | 86 | @@ -442,7 +442,8 @@ sshd_exchange_identification(int sock_in, int sock_out) |
@@ -94,10 +94,10 @@ index c362209..5435968 100644 | |||
94 | options.version_addendum, newline); | 94 | options.version_addendum, newline); |
95 | 95 | ||
96 | diff --git a/sshd_config.5 b/sshd_config.5 | 96 | diff --git a/sshd_config.5 b/sshd_config.5 |
97 | index d14576e..ec58635 100644 | 97 | index 1269bbd..a5afbc3 100644 |
98 | --- a/sshd_config.5 | 98 | --- a/sshd_config.5 |
99 | +++ b/sshd_config.5 | 99 | +++ b/sshd_config.5 |
100 | @@ -476,6 +476,11 @@ or | 100 | @@ -528,6 +528,11 @@ or |
101 | .Dq no . | 101 | .Dq no . |
102 | The default is | 102 | The default is |
103 | .Dq delayed . | 103 | .Dq delayed . |
diff --git a/debian/patches/debian-config.patch b/debian/patches/debian-config.patch index a346ba678..4f5db8a91 100644 --- a/debian/patches/debian-config.patch +++ b/debian/patches/debian-config.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 8698446b972003b63dfe5dcbdb86acfe986afb85 Mon Sep 17 00:00:00 2001 | 1 | From 810eecd6b2e03770f21e46b5cb8ce8c7fcd46da8 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:18 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:18 +0000 |
4 | Subject: Various Debian-specific configuration changes | 4 | Subject: Various Debian-specific configuration changes |
@@ -29,12 +29,12 @@ Patch-Name: debian-config.patch | |||
29 | readconf.c | 2 +- | 29 | readconf.c | 2 +- |
30 | ssh_config | 7 ++++++- | 30 | ssh_config | 7 ++++++- |
31 | ssh_config.5 | 19 ++++++++++++++++++- | 31 | ssh_config.5 | 19 ++++++++++++++++++- |
32 | sshd_config | 1 + | 32 | sshd_config | 3 ++- |
33 | sshd_config.5 | 25 +++++++++++++++++++++++++ | 33 | sshd_config.5 | 25 +++++++++++++++++++++++++ |
34 | 5 files changed, 51 insertions(+), 3 deletions(-) | 34 | 5 files changed, 52 insertions(+), 4 deletions(-) |
35 | 35 | ||
36 | diff --git a/readconf.c b/readconf.c | 36 | diff --git a/readconf.c b/readconf.c |
37 | index 2ef8d7b..66a62f2 100644 | 37 | index 5f6c37f..f0769b5 100644 |
38 | --- a/readconf.c | 38 | --- a/readconf.c |
39 | +++ b/readconf.c | 39 | +++ b/readconf.c |
40 | @@ -1748,7 +1748,7 @@ fill_default_options(Options * options) | 40 | @@ -1748,7 +1748,7 @@ fill_default_options(Options * options) |
@@ -71,7 +71,7 @@ index 228e5ab..c9386aa 100644 | |||
71 | + GSSAPIAuthentication yes | 71 | + GSSAPIAuthentication yes |
72 | + GSSAPIDelegateCredentials no | 72 | + GSSAPIDelegateCredentials no |
73 | diff --git a/ssh_config.5 b/ssh_config.5 | 73 | diff --git a/ssh_config.5 b/ssh_config.5 |
74 | index 3bd80fd..da8e544 100644 | 74 | index acd581b..844d1a0 100644 |
75 | --- a/ssh_config.5 | 75 | --- a/ssh_config.5 |
76 | +++ b/ssh_config.5 | 76 | +++ b/ssh_config.5 |
77 | @@ -74,6 +74,22 @@ Since the first obtained value for each parameter is used, more | 77 | @@ -74,6 +74,22 @@ Since the first obtained value for each parameter is used, more |
@@ -97,7 +97,7 @@ index 3bd80fd..da8e544 100644 | |||
97 | The configuration file has the following format: | 97 | The configuration file has the following format: |
98 | .Pp | 98 | .Pp |
99 | Empty lines and lines starting with | 99 | Empty lines and lines starting with |
100 | @@ -715,7 +731,8 @@ token used for the session will be set to expire after 20 minutes. | 100 | @@ -716,7 +732,8 @@ token used for the session will be set to expire after 20 minutes. |
101 | Remote clients will be refused access after this time. | 101 | Remote clients will be refused access after this time. |
102 | .Pp | 102 | .Pp |
103 | The default is | 103 | The default is |
@@ -108,19 +108,21 @@ index 3bd80fd..da8e544 100644 | |||
108 | See the X11 SECURITY extension specification for full details on | 108 | See the X11 SECURITY extension specification for full details on |
109 | the restrictions imposed on untrusted clients. | 109 | the restrictions imposed on untrusted clients. |
110 | diff --git a/sshd_config b/sshd_config | 110 | diff --git a/sshd_config b/sshd_config |
111 | index a71ad19..3391233 100644 | 111 | index 1dfd0f1..23a338f 100644 |
112 | --- a/sshd_config | 112 | --- a/sshd_config |
113 | +++ b/sshd_config | 113 | +++ b/sshd_config |
114 | @@ -41,6 +41,7 @@ | 114 | @@ -41,7 +41,8 @@ |
115 | # Authentication: | 115 | # Authentication: |
116 | 116 | ||
117 | #LoginGraceTime 2m | 117 | #LoginGraceTime 2m |
118 | -#PermitRootLogin no | ||
118 | +# See /usr/share/doc/openssh-server/README.Debian.gz. | 119 | +# See /usr/share/doc/openssh-server/README.Debian.gz. |
119 | #PermitRootLogin yes | 120 | +#PermitRootLogin without-password |
120 | #StrictModes yes | 121 | #StrictModes yes |
121 | #MaxAuthTries 6 | 122 | #MaxAuthTries 6 |
123 | #MaxSessions 10 | ||
122 | diff --git a/sshd_config.5 b/sshd_config.5 | 124 | diff --git a/sshd_config.5 b/sshd_config.5 |
123 | index 453d741..db1f2fd 100644 | 125 | index 355b445..eb6bff8 100644 |
124 | --- a/sshd_config.5 | 126 | --- a/sshd_config.5 |
125 | +++ b/sshd_config.5 | 127 | +++ b/sshd_config.5 |
126 | @@ -57,6 +57,31 @@ Arguments may optionally be enclosed in double quotes | 128 | @@ -57,6 +57,31 @@ Arguments may optionally be enclosed in double quotes |
diff --git a/debian/patches/dnssec-sshfp.patch b/debian/patches/dnssec-sshfp.patch index 97fe79aef..57bd567e4 100644 --- a/debian/patches/dnssec-sshfp.patch +++ b/debian/patches/dnssec-sshfp.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 5cbcc7353649b84b5a7528e583458ee9473fd527 Mon Sep 17 00:00:00 2001 | 1 | From dbde51cd7abb931b2d8635230bd77c9ec3b75074 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:01 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:01 +0000 |
4 | Subject: Force use of DNSSEC even if "options edns0" isn't in resolv.conf | 4 | Subject: Force use of DNSSEC even if "options edns0" isn't in resolv.conf |
diff --git a/debian/patches/doc-hash-tab-completion.patch b/debian/patches/doc-hash-tab-completion.patch index 35d589353..b80cc4e25 100644 --- a/debian/patches/doc-hash-tab-completion.patch +++ b/debian/patches/doc-hash-tab-completion.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From b0146d5a8c1b9d87f4255cbee40b31c938fea2f8 Mon Sep 17 00:00:00 2001 | 1 | From 9e2f66b771364d835a5308218b777b08935596b8 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:11 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:11 +0000 |
4 | Subject: Document that HashKnownHosts may break tab-completion | 4 | Subject: Document that HashKnownHosts may break tab-completion |
@@ -13,10 +13,10 @@ Patch-Name: doc-hash-tab-completion.patch | |||
13 | 1 file changed, 3 insertions(+) | 13 | 1 file changed, 3 insertions(+) |
14 | 14 | ||
15 | diff --git a/ssh_config.5 b/ssh_config.5 | 15 | diff --git a/ssh_config.5 b/ssh_config.5 |
16 | index 8abcf40..3bd80fd 100644 | 16 | index 1d0c52b..acd581b 100644 |
17 | --- a/ssh_config.5 | 17 | --- a/ssh_config.5 |
18 | +++ b/ssh_config.5 | 18 | +++ b/ssh_config.5 |
19 | @@ -801,6 +801,9 @@ Note that existing names and addresses in known hosts files | 19 | @@ -802,6 +802,9 @@ Note that existing names and addresses in known hosts files |
20 | will not be converted automatically, | 20 | will not be converted automatically, |
21 | but may be manually hashed using | 21 | but may be manually hashed using |
22 | .Xr ssh-keygen 1 . | 22 | .Xr ssh-keygen 1 . |
diff --git a/debian/patches/doc-upstart.patch b/debian/patches/doc-upstart.patch index 8002929ab..151c57eb1 100644 --- a/debian/patches/doc-upstart.patch +++ b/debian/patches/doc-upstart.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From c679bacbff13edaa44255c4f4c32ef5bc0f4ccbc Mon Sep 17 00:00:00 2001 | 1 | From 64f36a889a1afd364636c1ded6b6a694675fca67 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@ubuntu.com> | 2 | From: Colin Watson <cjwatson@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:10:12 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:12 +0000 |
4 | Subject: Refer to ssh's Upstart job as well as its init script | 4 | Subject: Refer to ssh's Upstart job as well as its init script |
@@ -12,7 +12,7 @@ Patch-Name: doc-upstart.patch | |||
12 | 1 file changed, 4 insertions(+), 1 deletion(-) | 12 | 1 file changed, 4 insertions(+), 1 deletion(-) |
13 | 13 | ||
14 | diff --git a/sshd.8 b/sshd.8 | 14 | diff --git a/sshd.8 b/sshd.8 |
15 | index 8dba6cf..e198017 100644 | 15 | index 2f4d4f3..42f1520 100644 |
16 | --- a/sshd.8 | 16 | --- a/sshd.8 |
17 | +++ b/sshd.8 | 17 | +++ b/sshd.8 |
18 | @@ -67,7 +67,10 @@ over an insecure network. | 18 | @@ -67,7 +67,10 @@ over an insecure network. |
diff --git a/debian/patches/gnome-ssh-askpass2-icon.patch b/debian/patches/gnome-ssh-askpass2-icon.patch index 79efb8971..cdb3fc7f0 100644 --- a/debian/patches/gnome-ssh-askpass2-icon.patch +++ b/debian/patches/gnome-ssh-askpass2-icon.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 02662744e60e6bbe532ff22c7f563026a7424b6c Mon Sep 17 00:00:00 2001 | 1 | From f3e58419e41e29f5d03c2d91f4576febac922112 Mon Sep 17 00:00:00 2001 |
2 | From: Vincent Untz <vuntz@ubuntu.com> | 2 | From: Vincent Untz <vuntz@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:10:16 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:16 +0000 |
4 | Subject: Give the ssh-askpass-gnome window a default icon | 4 | Subject: Give the ssh-askpass-gnome window a default icon |
diff --git a/debian/patches/gssapi.patch b/debian/patches/gssapi.patch index b3c437194..3f616af7d 100644 --- a/debian/patches/gssapi.patch +++ b/debian/patches/gssapi.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 06879e71614170580ffa7568ec5c009f60a9d084 Mon Sep 17 00:00:00 2001 | 1 | From 5d3dc7ea4c96cab9483d5389a3b04163771fdee2 Mon Sep 17 00:00:00 2001 |
2 | From: Simon Wilkinson <simon@sxw.org.uk> | 2 | From: Simon Wilkinson <simon@sxw.org.uk> |
3 | Date: Sun, 9 Feb 2014 16:09:48 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:48 +0000 |
4 | Subject: GSSAPI key exchange support | 4 | Subject: GSSAPI key exchange support |
@@ -31,7 +31,7 @@ Patch-Name: gssapi.patch | |||
31 | configure.ac | 24 ++++ | 31 | configure.ac | 24 ++++ |
32 | gss-genr.c | 275 ++++++++++++++++++++++++++++++++++++++++++++- | 32 | gss-genr.c | 275 ++++++++++++++++++++++++++++++++++++++++++++- |
33 | gss-serv-krb5.c | 85 ++++++++++++-- | 33 | gss-serv-krb5.c | 85 ++++++++++++-- |
34 | gss-serv.c | 221 +++++++++++++++++++++++++++++++----- | 34 | gss-serv.c | 185 +++++++++++++++++++++++++++--- |
35 | kex.c | 16 +++ | 35 | kex.c | 16 +++ |
36 | kex.h | 14 +++ | 36 | kex.h | 14 +++ |
37 | kexgssc.c | 336 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ | 37 | kexgssc.c | 336 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
@@ -42,18 +42,18 @@ Patch-Name: gssapi.patch | |||
42 | monitor_wrap.h | 4 +- | 42 | monitor_wrap.h | 4 +- |
43 | readconf.c | 42 +++++++ | 43 | readconf.c | 42 +++++++ |
44 | readconf.h | 5 + | 44 | readconf.h | 5 + |
45 | servconf.c | 38 ++++++- | 45 | servconf.c | 28 ++++- |
46 | servconf.h | 3 + | 46 | servconf.h | 2 + |
47 | ssh-gss.h | 41 ++++++- | 47 | ssh-gss.h | 41 ++++++- |
48 | ssh_config | 2 + | 48 | ssh_config | 2 + |
49 | ssh_config.5 | 34 +++++- | 49 | ssh_config.5 | 34 +++++- |
50 | sshconnect2.c | 124 +++++++++++++++++++- | 50 | sshconnect2.c | 124 +++++++++++++++++++- |
51 | sshd.c | 110 ++++++++++++++++++ | 51 | sshd.c | 110 ++++++++++++++++++ |
52 | sshd_config | 2 + | 52 | sshd_config | 2 + |
53 | sshd_config.5 | 28 +++++ | 53 | sshd_config.5 | 11 ++ |
54 | sshkey.c | 3 +- | 54 | sshkey.c | 3 +- |
55 | sshkey.h | 1 + | 55 | sshkey.h | 1 + |
56 | 32 files changed, 2005 insertions(+), 60 deletions(-) | 56 | 32 files changed, 1955 insertions(+), 46 deletions(-) |
57 | create mode 100644 ChangeLog.gssapi | 57 | create mode 100644 ChangeLog.gssapi |
58 | create mode 100644 kexgssc.c | 58 | create mode 100644 kexgssc.c |
59 | create mode 100644 kexgsss.c | 59 | create mode 100644 kexgsss.c |
@@ -359,7 +359,7 @@ index 7177962..3f49bdc 100644 | |||
359 | #endif | 359 | #endif |
360 | &method_passwd, | 360 | &method_passwd, |
361 | diff --git a/clientloop.c b/clientloop.c | 361 | diff --git a/clientloop.c b/clientloop.c |
362 | index a9c8a90..7df9413 100644 | 362 | index dc0e557..77d5498 100644 |
363 | --- a/clientloop.c | 363 | --- a/clientloop.c |
364 | +++ b/clientloop.c | 364 | +++ b/clientloop.c |
365 | @@ -114,6 +114,10 @@ | 365 | @@ -114,6 +114,10 @@ |
@@ -373,7 +373,7 @@ index a9c8a90..7df9413 100644 | |||
373 | /* import options */ | 373 | /* import options */ |
374 | extern Options options; | 374 | extern Options options; |
375 | 375 | ||
376 | @@ -1596,6 +1600,15 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id) | 376 | @@ -1609,6 +1613,15 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id) |
377 | /* Do channel operations unless rekeying in progress. */ | 377 | /* Do channel operations unless rekeying in progress. */ |
378 | if (!rekeying) { | 378 | if (!rekeying) { |
379 | channel_after_select(readset, writeset); | 379 | channel_after_select(readset, writeset); |
@@ -414,10 +414,10 @@ index 7e7e38e..6c7de98 100644 | |||
414 | #undef USE_SOLARIS_PROCESS_CONTRACTS | 414 | #undef USE_SOLARIS_PROCESS_CONTRACTS |
415 | 415 | ||
416 | diff --git a/configure.ac b/configure.ac | 416 | diff --git a/configure.ac b/configure.ac |
417 | index b4d6598..216a9fd 100644 | 417 | index bb0095f..df21693 100644 |
418 | --- a/configure.ac | 418 | --- a/configure.ac |
419 | +++ b/configure.ac | 419 | +++ b/configure.ac |
420 | @@ -620,6 +620,30 @@ main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) | 420 | @@ -625,6 +625,30 @@ main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) |
421 | [Use tunnel device compatibility to OpenBSD]) | 421 | [Use tunnel device compatibility to OpenBSD]) |
422 | AC_DEFINE([SSH_TUN_PREPEND_AF], [1], | 422 | AC_DEFINE([SSH_TUN_PREPEND_AF], [1], |
423 | [Prepend the address family to IP tunnel traffic]) | 423 | [Prepend the address family to IP tunnel traffic]) |
@@ -449,7 +449,7 @@ index b4d6598..216a9fd 100644 | |||
449 | AC_CHECK_DECL([AU_IPv4], [], | 449 | AC_CHECK_DECL([AU_IPv4], [], |
450 | AC_DEFINE([AU_IPv4], [0], [System only supports IPv4 audit records]) | 450 | AC_DEFINE([AU_IPv4], [0], [System only supports IPv4 audit records]) |
451 | diff --git a/gss-genr.c b/gss-genr.c | 451 | diff --git a/gss-genr.c b/gss-genr.c |
452 | index 60ac65f..5610f0b 100644 | 452 | index d617d60..b4eca3f 100644 |
453 | --- a/gss-genr.c | 453 | --- a/gss-genr.c |
454 | +++ b/gss-genr.c | 454 | +++ b/gss-genr.c |
455 | @@ -1,7 +1,7 @@ | 455 | @@ -1,7 +1,7 @@ |
@@ -461,7 +461,7 @@ index 60ac65f..5610f0b 100644 | |||
461 | * | 461 | * |
462 | * Redistribution and use in source and binary forms, with or without | 462 | * Redistribution and use in source and binary forms, with or without |
463 | * modification, are permitted provided that the following conditions | 463 | * modification, are permitted provided that the following conditions |
464 | @@ -40,12 +40,167 @@ | 464 | @@ -41,12 +41,167 @@ |
465 | #include "buffer.h" | 465 | #include "buffer.h" |
466 | #include "log.h" | 466 | #include "log.h" |
467 | #include "ssh2.h" | 467 | #include "ssh2.h" |
@@ -629,7 +629,7 @@ index 60ac65f..5610f0b 100644 | |||
629 | /* Check that the OID in a data stream matches that in the context */ | 629 | /* Check that the OID in a data stream matches that in the context */ |
630 | int | 630 | int |
631 | ssh_gssapi_check_oid(Gssctxt *ctx, void *data, size_t len) | 631 | ssh_gssapi_check_oid(Gssctxt *ctx, void *data, size_t len) |
632 | @@ -198,7 +353,7 @@ ssh_gssapi_init_ctx(Gssctxt *ctx, int deleg_creds, gss_buffer_desc *recv_tok, | 632 | @@ -199,7 +354,7 @@ ssh_gssapi_init_ctx(Gssctxt *ctx, int deleg_creds, gss_buffer_desc *recv_tok, |
633 | } | 633 | } |
634 | 634 | ||
635 | ctx->major = gss_init_sec_context(&ctx->minor, | 635 | ctx->major = gss_init_sec_context(&ctx->minor, |
@@ -638,7 +638,7 @@ index 60ac65f..5610f0b 100644 | |||
638 | GSS_C_MUTUAL_FLAG | GSS_C_INTEG_FLAG | deleg_flag, | 638 | GSS_C_MUTUAL_FLAG | GSS_C_INTEG_FLAG | deleg_flag, |
639 | 0, NULL, recv_tok, NULL, send_tok, flags, NULL); | 639 | 0, NULL, recv_tok, NULL, send_tok, flags, NULL); |
640 | 640 | ||
641 | @@ -228,8 +383,42 @@ ssh_gssapi_import_name(Gssctxt *ctx, const char *host) | 641 | @@ -229,8 +384,42 @@ ssh_gssapi_import_name(Gssctxt *ctx, const char *host) |
642 | } | 642 | } |
643 | 643 | ||
644 | OM_uint32 | 644 | OM_uint32 |
@@ -681,7 +681,7 @@ index 60ac65f..5610f0b 100644 | |||
681 | if ((ctx->major = gss_get_mic(&ctx->minor, ctx->context, | 681 | if ((ctx->major = gss_get_mic(&ctx->minor, ctx->context, |
682 | GSS_C_QOP_DEFAULT, buffer, hash))) | 682 | GSS_C_QOP_DEFAULT, buffer, hash))) |
683 | ssh_gssapi_error(ctx); | 683 | ssh_gssapi_error(ctx); |
684 | @@ -237,6 +426,19 @@ ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_t buffer, gss_buffer_t hash) | 684 | @@ -238,6 +427,19 @@ ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_t buffer, gss_buffer_t hash) |
685 | return (ctx->major); | 685 | return (ctx->major); |
686 | } | 686 | } |
687 | 687 | ||
@@ -701,7 +701,7 @@ index 60ac65f..5610f0b 100644 | |||
701 | void | 701 | void |
702 | ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, | 702 | ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, |
703 | const char *context) | 703 | const char *context) |
704 | @@ -250,11 +452,16 @@ ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, | 704 | @@ -251,11 +453,16 @@ ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, |
705 | } | 705 | } |
706 | 706 | ||
707 | int | 707 | int |
@@ -719,7 +719,7 @@ index 60ac65f..5610f0b 100644 | |||
719 | 719 | ||
720 | /* RFC 4462 says we MUST NOT do SPNEGO */ | 720 | /* RFC 4462 says we MUST NOT do SPNEGO */ |
721 | if (oid->length == spnego_oid.length && | 721 | if (oid->length == spnego_oid.length && |
722 | @@ -264,6 +471,10 @@ ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) | 722 | @@ -265,6 +472,10 @@ ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) |
723 | ssh_gssapi_build_ctx(ctx); | 723 | ssh_gssapi_build_ctx(ctx); |
724 | ssh_gssapi_set_oid(*ctx, oid); | 724 | ssh_gssapi_set_oid(*ctx, oid); |
725 | major = ssh_gssapi_import_name(*ctx, host); | 725 | major = ssh_gssapi_import_name(*ctx, host); |
@@ -730,7 +730,7 @@ index 60ac65f..5610f0b 100644 | |||
730 | if (!GSS_ERROR(major)) { | 730 | if (!GSS_ERROR(major)) { |
731 | major = ssh_gssapi_init_ctx(*ctx, 0, GSS_C_NO_BUFFER, &token, | 731 | major = ssh_gssapi_init_ctx(*ctx, 0, GSS_C_NO_BUFFER, &token, |
732 | NULL); | 732 | NULL); |
733 | @@ -273,10 +484,66 @@ ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) | 733 | @@ -274,10 +485,66 @@ ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) |
734 | GSS_C_NO_BUFFER); | 734 | GSS_C_NO_BUFFER); |
735 | } | 735 | } |
736 | 736 | ||
@@ -925,11 +925,11 @@ index 795992d..fd8b371 100644 | |||
925 | 925 | ||
926 | #endif /* KRB5 */ | 926 | #endif /* KRB5 */ |
927 | diff --git a/gss-serv.c b/gss-serv.c | 927 | diff --git a/gss-serv.c b/gss-serv.c |
928 | index e7b8c52..539862d 100644 | 928 | index 53993d6..2f6baf7 100644 |
929 | --- a/gss-serv.c | 929 | --- a/gss-serv.c |
930 | +++ b/gss-serv.c | 930 | +++ b/gss-serv.c |
931 | @@ -1,7 +1,7 @@ | 931 | @@ -1,7 +1,7 @@ |
932 | /* $OpenBSD: gss-serv.c,v 1.28 2015/01/20 23:14:00 deraadt Exp $ */ | 932 | /* $OpenBSD: gss-serv.c,v 1.29 2015/05/22 03:50:02 djm Exp $ */ |
933 | 933 | ||
934 | /* | 934 | /* |
935 | - * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. | 935 | - * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. |
@@ -937,11 +937,10 @@ index e7b8c52..539862d 100644 | |||
937 | * | 937 | * |
938 | * Redistribution and use in source and binary forms, with or without | 938 | * Redistribution and use in source and binary forms, with or without |
939 | * modification, are permitted provided that the following conditions | 939 | * modification, are permitted provided that the following conditions |
940 | @@ -44,15 +44,21 @@ | 940 | @@ -45,17 +45,22 @@ |
941 | #include "channels.h" | ||
942 | #include "session.h" | 941 | #include "session.h" |
943 | #include "misc.h" | 942 | #include "misc.h" |
944 | +#include "servconf.h" | 943 | #include "servconf.h" |
945 | +#include "uidswap.h" | 944 | +#include "uidswap.h" |
946 | 945 | ||
947 | #include "ssh-gss.h" | 946 | #include "ssh-gss.h" |
@@ -949,6 +948,8 @@ index e7b8c52..539862d 100644 | |||
949 | + | 948 | + |
950 | +extern ServerOptions options; | 949 | +extern ServerOptions options; |
951 | 950 | ||
951 | extern ServerOptions options; | ||
952 | |||
952 | static ssh_gssapi_client gssapi_client = | 953 | static ssh_gssapi_client gssapi_client = |
953 | { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, | 954 | { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, |
954 | - GSS_C_NO_CREDENTIAL, NULL, {NULL, NULL, NULL, NULL}}; | 955 | - GSS_C_NO_CREDENTIAL, NULL, {NULL, NULL, NULL, NULL}}; |
@@ -961,54 +962,7 @@ index e7b8c52..539862d 100644 | |||
961 | 962 | ||
962 | #ifdef KRB5 | 963 | #ifdef KRB5 |
963 | extern ssh_gssapi_mech gssapi_kerberos_mech; | 964 | extern ssh_gssapi_mech gssapi_kerberos_mech; |
964 | @@ -99,25 +105,32 @@ ssh_gssapi_acquire_cred(Gssctxt *ctx) | 965 | @@ -142,6 +147,29 @@ ssh_gssapi_server_ctx(Gssctxt **ctx, gss_OID oid) |
965 | char lname[NI_MAXHOST]; | ||
966 | gss_OID_set oidset; | ||
967 | |||
968 | - gss_create_empty_oid_set(&status, &oidset); | ||
969 | - gss_add_oid_set_member(&status, ctx->oid, &oidset); | ||
970 | + if (options.gss_strict_acceptor) { | ||
971 | + gss_create_empty_oid_set(&status, &oidset); | ||
972 | + gss_add_oid_set_member(&status, ctx->oid, &oidset); | ||
973 | |||
974 | - if (gethostname(lname, sizeof(lname))) { | ||
975 | - gss_release_oid_set(&status, &oidset); | ||
976 | - return (-1); | ||
977 | - } | ||
978 | + if (gethostname(lname, sizeof(lname))) { | ||
979 | + gss_release_oid_set(&status, &oidset); | ||
980 | + return (-1); | ||
981 | + } | ||
982 | + | ||
983 | + if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { | ||
984 | + gss_release_oid_set(&status, &oidset); | ||
985 | + return (ctx->major); | ||
986 | + } | ||
987 | + | ||
988 | + if ((ctx->major = gss_acquire_cred(&ctx->minor, | ||
989 | + ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, | ||
990 | + NULL, NULL))) | ||
991 | + ssh_gssapi_error(ctx); | ||
992 | |||
993 | - if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { | ||
994 | gss_release_oid_set(&status, &oidset); | ||
995 | return (ctx->major); | ||
996 | + } else { | ||
997 | + ctx->name = GSS_C_NO_NAME; | ||
998 | + ctx->creds = GSS_C_NO_CREDENTIAL; | ||
999 | } | ||
1000 | - | ||
1001 | - if ((ctx->major = gss_acquire_cred(&ctx->minor, | ||
1002 | - ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, NULL, NULL))) | ||
1003 | - ssh_gssapi_error(ctx); | ||
1004 | - | ||
1005 | - gss_release_oid_set(&status, &oidset); | ||
1006 | - return (ctx->major); | ||
1007 | + return GSS_S_COMPLETE; | ||
1008 | } | ||
1009 | |||
1010 | /* Privileged */ | ||
1011 | @@ -132,6 +145,29 @@ ssh_gssapi_server_ctx(Gssctxt **ctx, gss_OID oid) | ||
1012 | } | 966 | } |
1013 | 967 | ||
1014 | /* Unprivileged */ | 968 | /* Unprivileged */ |
@@ -1038,7 +992,7 @@ index e7b8c52..539862d 100644 | |||
1038 | void | 992 | void |
1039 | ssh_gssapi_supported_oids(gss_OID_set *oidset) | 993 | ssh_gssapi_supported_oids(gss_OID_set *oidset) |
1040 | { | 994 | { |
1041 | @@ -141,7 +177,9 @@ ssh_gssapi_supported_oids(gss_OID_set *oidset) | 995 | @@ -151,7 +179,9 @@ ssh_gssapi_supported_oids(gss_OID_set *oidset) |
1042 | gss_OID_set supported; | 996 | gss_OID_set supported; |
1043 | 997 | ||
1044 | gss_create_empty_oid_set(&min_status, oidset); | 998 | gss_create_empty_oid_set(&min_status, oidset); |
@@ -1049,7 +1003,7 @@ index e7b8c52..539862d 100644 | |||
1049 | 1003 | ||
1050 | while (supported_mechs[i]->name != NULL) { | 1004 | while (supported_mechs[i]->name != NULL) { |
1051 | if (GSS_ERROR(gss_test_oid_set_member(&min_status, | 1005 | if (GSS_ERROR(gss_test_oid_set_member(&min_status, |
1052 | @@ -267,8 +305,48 @@ OM_uint32 | 1006 | @@ -277,8 +307,48 @@ OM_uint32 |
1053 | ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) | 1007 | ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) |
1054 | { | 1008 | { |
1055 | int i = 0; | 1009 | int i = 0; |
@@ -1074,8 +1028,7 @@ index e7b8c52..539862d 100644 | |||
1074 | + | 1028 | + |
1075 | + ctx->major = gss_compare_name(&ctx->minor, client->name, | 1029 | + ctx->major = gss_compare_name(&ctx->minor, client->name, |
1076 | + new_name, &equal); | 1030 | + new_name, &equal); |
1077 | 1031 | + | |
1078 | - gss_buffer_desc ename; | ||
1079 | + if (GSS_ERROR(ctx->major)) { | 1032 | + if (GSS_ERROR(ctx->major)) { |
1080 | + ssh_gssapi_error(ctx); | 1033 | + ssh_gssapi_error(ctx); |
1081 | + return (ctx->major); | 1034 | + return (ctx->major); |
@@ -1085,7 +1038,8 @@ index e7b8c52..539862d 100644 | |||
1085 | + debug("Rekeyed credentials have different name"); | 1038 | + debug("Rekeyed credentials have different name"); |
1086 | + return GSS_S_COMPLETE; | 1039 | + return GSS_S_COMPLETE; |
1087 | + } | 1040 | + } |
1088 | + | 1041 | |
1042 | - gss_buffer_desc ename; | ||
1089 | + debug("Marking rekeyed credentials for export"); | 1043 | + debug("Marking rekeyed credentials for export"); |
1090 | + | 1044 | + |
1091 | + gss_release_name(&ctx->minor, &client->name); | 1045 | + gss_release_name(&ctx->minor, &client->name); |
@@ -1099,7 +1053,7 @@ index e7b8c52..539862d 100644 | |||
1099 | 1053 | ||
1100 | client->mech = NULL; | 1054 | client->mech = NULL; |
1101 | 1055 | ||
1102 | @@ -283,6 +361,13 @@ ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) | 1056 | @@ -293,6 +363,13 @@ ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) |
1103 | if (client->mech == NULL) | 1057 | if (client->mech == NULL) |
1104 | return GSS_S_FAILURE; | 1058 | return GSS_S_FAILURE; |
1105 | 1059 | ||
@@ -1113,7 +1067,7 @@ index e7b8c52..539862d 100644 | |||
1113 | if ((ctx->major = gss_display_name(&ctx->minor, ctx->client, | 1067 | if ((ctx->major = gss_display_name(&ctx->minor, ctx->client, |
1114 | &client->displayname, NULL))) { | 1068 | &client->displayname, NULL))) { |
1115 | ssh_gssapi_error(ctx); | 1069 | ssh_gssapi_error(ctx); |
1116 | @@ -300,6 +385,8 @@ ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) | 1070 | @@ -310,6 +387,8 @@ ssh_gssapi_getclient(Gssctxt *ctx, ssh_gssapi_client *client) |
1117 | return (ctx->major); | 1071 | return (ctx->major); |
1118 | } | 1072 | } |
1119 | 1073 | ||
@@ -1122,7 +1076,7 @@ index e7b8c52..539862d 100644 | |||
1122 | /* We can't copy this structure, so we just move the pointer to it */ | 1076 | /* We can't copy this structure, so we just move the pointer to it */ |
1123 | client->creds = ctx->client_creds; | 1077 | client->creds = ctx->client_creds; |
1124 | ctx->client_creds = GSS_C_NO_CREDENTIAL; | 1078 | ctx->client_creds = GSS_C_NO_CREDENTIAL; |
1125 | @@ -347,7 +434,7 @@ ssh_gssapi_do_child(char ***envp, u_int *envsizep) | 1079 | @@ -357,7 +436,7 @@ ssh_gssapi_do_child(char ***envp, u_int *envsizep) |
1126 | 1080 | ||
1127 | /* Privileged */ | 1081 | /* Privileged */ |
1128 | int | 1082 | int |
@@ -1131,7 +1085,7 @@ index e7b8c52..539862d 100644 | |||
1131 | { | 1085 | { |
1132 | OM_uint32 lmin; | 1086 | OM_uint32 lmin; |
1133 | 1087 | ||
1134 | @@ -357,9 +444,11 @@ ssh_gssapi_userok(char *user) | 1088 | @@ -367,9 +446,11 @@ ssh_gssapi_userok(char *user) |
1135 | return 0; | 1089 | return 0; |
1136 | } | 1090 | } |
1137 | if (gssapi_client.mech && gssapi_client.mech->userok) | 1091 | if (gssapi_client.mech && gssapi_client.mech->userok) |
@@ -1145,7 +1099,7 @@ index e7b8c52..539862d 100644 | |||
1145 | /* Destroy delegated credentials if userok fails */ | 1099 | /* Destroy delegated credentials if userok fails */ |
1146 | gss_release_buffer(&lmin, &gssapi_client.displayname); | 1100 | gss_release_buffer(&lmin, &gssapi_client.displayname); |
1147 | gss_release_buffer(&lmin, &gssapi_client.exportedname); | 1101 | gss_release_buffer(&lmin, &gssapi_client.exportedname); |
1148 | @@ -373,14 +462,90 @@ ssh_gssapi_userok(char *user) | 1102 | @@ -383,14 +464,90 @@ ssh_gssapi_userok(char *user) |
1149 | return (0); | 1103 | return (0); |
1150 | } | 1104 | } |
1151 | 1105 | ||
@@ -1243,7 +1197,7 @@ index e7b8c52..539862d 100644 | |||
1243 | 1197 | ||
1244 | #endif | 1198 | #endif |
1245 | diff --git a/kex.c b/kex.c | 1199 | diff --git a/kex.c b/kex.c |
1246 | index 8c2b001..be938ad 100644 | 1200 | index dbc55ef..4d8e6f5 100644 |
1247 | --- a/kex.c | 1201 | --- a/kex.c |
1248 | +++ b/kex.c | 1202 | +++ b/kex.c |
1249 | @@ -55,6 +55,10 @@ | 1203 | @@ -55,6 +55,10 @@ |
@@ -1966,7 +1920,7 @@ index 0000000..0847469 | |||
1966 | +} | 1920 | +} |
1967 | +#endif /* GSSAPI */ | 1921 | +#endif /* GSSAPI */ |
1968 | diff --git a/monitor.c b/monitor.c | 1922 | diff --git a/monitor.c b/monitor.c |
1969 | index bab6ce8..a2027e5 100644 | 1923 | index b410965..bdc2972 100644 |
1970 | --- a/monitor.c | 1924 | --- a/monitor.c |
1971 | +++ b/monitor.c | 1925 | +++ b/monitor.c |
1972 | @@ -157,6 +157,8 @@ int mm_answer_gss_setup_ctx(int, Buffer *); | 1926 | @@ -157,6 +157,8 @@ int mm_answer_gss_setup_ctx(int, Buffer *); |
@@ -2019,7 +1973,7 @@ index bab6ce8..a2027e5 100644 | |||
2019 | } else { | 1973 | } else { |
2020 | mon_dispatch = mon_dispatch_postauth15; | 1974 | mon_dispatch = mon_dispatch_postauth15; |
2021 | monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); | 1975 | monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); |
2022 | @@ -1860,6 +1877,13 @@ monitor_apply_keystate(struct monitor *pmonitor) | 1976 | @@ -1864,6 +1881,13 @@ monitor_apply_keystate(struct monitor *pmonitor) |
2023 | # endif | 1977 | # endif |
2024 | #endif /* WITH_OPENSSL */ | 1978 | #endif /* WITH_OPENSSL */ |
2025 | kex->kex[KEX_C25519_SHA256] = kexc25519_server; | 1979 | kex->kex[KEX_C25519_SHA256] = kexc25519_server; |
@@ -2033,7 +1987,7 @@ index bab6ce8..a2027e5 100644 | |||
2033 | kex->load_host_public_key=&get_hostkey_public_by_type; | 1987 | kex->load_host_public_key=&get_hostkey_public_by_type; |
2034 | kex->load_host_private_key=&get_hostkey_private_by_type; | 1988 | kex->load_host_private_key=&get_hostkey_private_by_type; |
2035 | kex->host_key_index=&get_hostkey_index; | 1989 | kex->host_key_index=&get_hostkey_index; |
2036 | @@ -1959,6 +1983,9 @@ mm_answer_gss_setup_ctx(int sock, Buffer *m) | 1990 | @@ -1963,6 +1987,9 @@ mm_answer_gss_setup_ctx(int sock, Buffer *m) |
2037 | OM_uint32 major; | 1991 | OM_uint32 major; |
2038 | u_int len; | 1992 | u_int len; |
2039 | 1993 | ||
@@ -2043,7 +1997,7 @@ index bab6ce8..a2027e5 100644 | |||
2043 | goid.elements = buffer_get_string(m, &len); | 1997 | goid.elements = buffer_get_string(m, &len); |
2044 | goid.length = len; | 1998 | goid.length = len; |
2045 | 1999 | ||
2046 | @@ -1986,6 +2013,9 @@ mm_answer_gss_accept_ctx(int sock, Buffer *m) | 2000 | @@ -1990,6 +2017,9 @@ mm_answer_gss_accept_ctx(int sock, Buffer *m) |
2047 | OM_uint32 flags = 0; /* GSI needs this */ | 2001 | OM_uint32 flags = 0; /* GSI needs this */ |
2048 | u_int len; | 2002 | u_int len; |
2049 | 2003 | ||
@@ -2053,7 +2007,7 @@ index bab6ce8..a2027e5 100644 | |||
2053 | in.value = buffer_get_string(m, &len); | 2007 | in.value = buffer_get_string(m, &len); |
2054 | in.length = len; | 2008 | in.length = len; |
2055 | major = ssh_gssapi_accept_ctx(gsscontext, &in, &out, &flags); | 2009 | major = ssh_gssapi_accept_ctx(gsscontext, &in, &out, &flags); |
2056 | @@ -2003,6 +2033,7 @@ mm_answer_gss_accept_ctx(int sock, Buffer *m) | 2010 | @@ -2007,6 +2037,7 @@ mm_answer_gss_accept_ctx(int sock, Buffer *m) |
2057 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSSTEP, 0); | 2011 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSSTEP, 0); |
2058 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSUSEROK, 1); | 2012 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSUSEROK, 1); |
2059 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSCHECKMIC, 1); | 2013 | monitor_permit(mon_dispatch, MONITOR_REQ_GSSCHECKMIC, 1); |
@@ -2061,7 +2015,7 @@ index bab6ce8..a2027e5 100644 | |||
2061 | } | 2015 | } |
2062 | return (0); | 2016 | return (0); |
2063 | } | 2017 | } |
2064 | @@ -2014,6 +2045,9 @@ mm_answer_gss_checkmic(int sock, Buffer *m) | 2018 | @@ -2018,6 +2049,9 @@ mm_answer_gss_checkmic(int sock, Buffer *m) |
2065 | OM_uint32 ret; | 2019 | OM_uint32 ret; |
2066 | u_int len; | 2020 | u_int len; |
2067 | 2021 | ||
@@ -2071,7 +2025,7 @@ index bab6ce8..a2027e5 100644 | |||
2071 | gssbuf.value = buffer_get_string(m, &len); | 2025 | gssbuf.value = buffer_get_string(m, &len); |
2072 | gssbuf.length = len; | 2026 | gssbuf.length = len; |
2073 | mic.value = buffer_get_string(m, &len); | 2027 | mic.value = buffer_get_string(m, &len); |
2074 | @@ -2040,7 +2074,11 @@ mm_answer_gss_userok(int sock, Buffer *m) | 2028 | @@ -2044,7 +2078,11 @@ mm_answer_gss_userok(int sock, Buffer *m) |
2075 | { | 2029 | { |
2076 | int authenticated; | 2030 | int authenticated; |
2077 | 2031 | ||
@@ -2084,7 +2038,7 @@ index bab6ce8..a2027e5 100644 | |||
2084 | 2038 | ||
2085 | buffer_clear(m); | 2039 | buffer_clear(m); |
2086 | buffer_put_int(m, authenticated); | 2040 | buffer_put_int(m, authenticated); |
2087 | @@ -2053,5 +2091,73 @@ mm_answer_gss_userok(int sock, Buffer *m) | 2041 | @@ -2057,5 +2095,73 @@ mm_answer_gss_userok(int sock, Buffer *m) |
2088 | /* Monitor loop will terminate if authenticated */ | 2042 | /* Monitor loop will terminate if authenticated */ |
2089 | return (authenticated); | 2043 | return (authenticated); |
2090 | } | 2044 | } |
@@ -2173,10 +2127,10 @@ index 93b8b66..bc50ade 100644 | |||
2173 | 2127 | ||
2174 | struct mm_master; | 2128 | struct mm_master; |
2175 | diff --git a/monitor_wrap.c b/monitor_wrap.c | 2129 | diff --git a/monitor_wrap.c b/monitor_wrap.c |
2176 | index b379f05..b667218 100644 | 2130 | index e6217b3..71e7c08 100644 |
2177 | --- a/monitor_wrap.c | 2131 | --- a/monitor_wrap.c |
2178 | +++ b/monitor_wrap.c | 2132 | +++ b/monitor_wrap.c |
2179 | @@ -1068,7 +1068,7 @@ mm_ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) | 2133 | @@ -1069,7 +1069,7 @@ mm_ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) |
2180 | } | 2134 | } |
2181 | 2135 | ||
2182 | int | 2136 | int |
@@ -2185,7 +2139,7 @@ index b379f05..b667218 100644 | |||
2185 | { | 2139 | { |
2186 | Buffer m; | 2140 | Buffer m; |
2187 | int authenticated = 0; | 2141 | int authenticated = 0; |
2188 | @@ -1085,5 +1085,50 @@ mm_ssh_gssapi_userok(char *user) | 2142 | @@ -1086,5 +1086,50 @@ mm_ssh_gssapi_userok(char *user) |
2189 | debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); | 2143 | debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); |
2190 | return (authenticated); | 2144 | return (authenticated); |
2191 | } | 2145 | } |
@@ -2237,7 +2191,7 @@ index b379f05..b667218 100644 | |||
2237 | #endif /* GSSAPI */ | 2191 | #endif /* GSSAPI */ |
2238 | 2192 | ||
2239 | diff --git a/monitor_wrap.h b/monitor_wrap.h | 2193 | diff --git a/monitor_wrap.h b/monitor_wrap.h |
2240 | index e18784a..0c770e8 100644 | 2194 | index de4a08f..9758290 100644 |
2241 | --- a/monitor_wrap.h | 2195 | --- a/monitor_wrap.h |
2242 | +++ b/monitor_wrap.h | 2196 | +++ b/monitor_wrap.h |
2243 | @@ -58,8 +58,10 @@ BIGNUM *mm_auth_rsa_generate_challenge(Key *); | 2197 | @@ -58,8 +58,10 @@ BIGNUM *mm_auth_rsa_generate_challenge(Key *); |
@@ -2253,7 +2207,7 @@ index e18784a..0c770e8 100644 | |||
2253 | 2207 | ||
2254 | #ifdef USE_PAM | 2208 | #ifdef USE_PAM |
2255 | diff --git a/readconf.c b/readconf.c | 2209 | diff --git a/readconf.c b/readconf.c |
2256 | index 42a2961..254dbce 100644 | 2210 | index db7d0bb..68dac76 100644 |
2257 | --- a/readconf.c | 2211 | --- a/readconf.c |
2258 | +++ b/readconf.c | 2212 | +++ b/readconf.c |
2259 | @@ -147,6 +147,8 @@ typedef enum { | 2213 | @@ -147,6 +147,8 @@ typedef enum { |
@@ -2362,21 +2316,21 @@ index 576b9e3..ef39c4c 100644 | |||
2362 | * authentication. */ | 2316 | * authentication. */ |
2363 | int kbd_interactive_authentication; /* Try keyboard-interactive auth. */ | 2317 | int kbd_interactive_authentication; /* Try keyboard-interactive auth. */ |
2364 | diff --git a/servconf.c b/servconf.c | 2318 | diff --git a/servconf.c b/servconf.c |
2365 | index 3185462..f68c0d0 100644 | 2319 | index df93fc4..2f7f41e 100644 |
2366 | --- a/servconf.c | 2320 | --- a/servconf.c |
2367 | +++ b/servconf.c | 2321 | +++ b/servconf.c |
2368 | @@ -114,7 +114,10 @@ initialize_server_options(ServerOptions *options) | 2322 | @@ -115,8 +115,10 @@ initialize_server_options(ServerOptions *options) |
2369 | options->kerberos_ticket_cleanup = -1; | 2323 | options->kerberos_ticket_cleanup = -1; |
2370 | options->kerberos_get_afs_token = -1; | 2324 | options->kerberos_get_afs_token = -1; |
2371 | options->gss_authentication=-1; | 2325 | options->gss_authentication=-1; |
2372 | + options->gss_keyex = -1; | 2326 | + options->gss_keyex = -1; |
2373 | options->gss_cleanup_creds = -1; | 2327 | options->gss_cleanup_creds = -1; |
2374 | + options->gss_strict_acceptor = -1; | 2328 | options->gss_strict_acceptor = -1; |
2375 | + options->gss_store_rekey = -1; | 2329 | + options->gss_store_rekey = -1; |
2376 | options->password_authentication = -1; | 2330 | options->password_authentication = -1; |
2377 | options->kbd_interactive_authentication = -1; | 2331 | options->kbd_interactive_authentication = -1; |
2378 | options->challenge_response_authentication = -1; | 2332 | options->challenge_response_authentication = -1; |
2379 | @@ -269,8 +272,14 @@ fill_default_server_options(ServerOptions *options) | 2333 | @@ -275,10 +277,14 @@ fill_default_server_options(ServerOptions *options) |
2380 | options->kerberos_get_afs_token = 0; | 2334 | options->kerberos_get_afs_token = 0; |
2381 | if (options->gss_authentication == -1) | 2335 | if (options->gss_authentication == -1) |
2382 | options->gss_authentication = 0; | 2336 | options->gss_authentication = 0; |
@@ -2384,37 +2338,35 @@ index 3185462..f68c0d0 100644 | |||
2384 | + options->gss_keyex = 0; | 2338 | + options->gss_keyex = 0; |
2385 | if (options->gss_cleanup_creds == -1) | 2339 | if (options->gss_cleanup_creds == -1) |
2386 | options->gss_cleanup_creds = 1; | 2340 | options->gss_cleanup_creds = 1; |
2387 | + if (options->gss_strict_acceptor == -1) | 2341 | if (options->gss_strict_acceptor == -1) |
2342 | - options->gss_strict_acceptor = 0; | ||
2388 | + options->gss_strict_acceptor = 1; | 2343 | + options->gss_strict_acceptor = 1; |
2389 | + if (options->gss_store_rekey == -1) | 2344 | + if (options->gss_store_rekey == -1) |
2390 | + options->gss_store_rekey = 0; | 2345 | + options->gss_store_rekey = 0; |
2391 | if (options->password_authentication == -1) | 2346 | if (options->password_authentication == -1) |
2392 | options->password_authentication = 1; | 2347 | options->password_authentication = 1; |
2393 | if (options->kbd_interactive_authentication == -1) | 2348 | if (options->kbd_interactive_authentication == -1) |
2394 | @@ -391,7 +400,9 @@ typedef enum { | 2349 | @@ -401,6 +407,7 @@ typedef enum { |
2395 | sBanner, sUseDNS, sHostbasedAuthentication, | ||
2396 | sHostbasedUsesNameFromPacketOnly, sHostbasedAcceptedKeyTypes, | 2350 | sHostbasedUsesNameFromPacketOnly, sHostbasedAcceptedKeyTypes, |
2397 | sClientAliveInterval, sClientAliveCountMax, sAuthorizedKeysFile, | 2351 | sClientAliveInterval, sClientAliveCountMax, sAuthorizedKeysFile, |
2398 | - sGssAuthentication, sGssCleanupCreds, sAcceptEnv, sPermitTunnel, | 2352 | sGssAuthentication, sGssCleanupCreds, sGssStrictAcceptor, |
2399 | + sGssAuthentication, sGssCleanupCreds, sGssStrictAcceptor, | ||
2400 | + sGssKeyEx, sGssStoreRekey, | 2353 | + sGssKeyEx, sGssStoreRekey, |
2401 | + sAcceptEnv, sPermitTunnel, | 2354 | sAcceptEnv, sPermitTunnel, |
2402 | sMatch, sPermitOpen, sForceCommand, sChrootDirectory, | 2355 | sMatch, sPermitOpen, sForceCommand, sChrootDirectory, |
2403 | sUsePrivilegeSeparation, sAllowAgentForwarding, | 2356 | sUsePrivilegeSeparation, sAllowAgentForwarding, |
2404 | sHostCertificate, | 2357 | @@ -473,12 +480,20 @@ static struct { |
2405 | @@ -462,10 +473,20 @@ static struct { | ||
2406 | #ifdef GSSAPI | 2358 | #ifdef GSSAPI |
2407 | { "gssapiauthentication", sGssAuthentication, SSHCFG_ALL }, | 2359 | { "gssapiauthentication", sGssAuthentication, SSHCFG_ALL }, |
2408 | { "gssapicleanupcredentials", sGssCleanupCreds, SSHCFG_GLOBAL }, | 2360 | { "gssapicleanupcredentials", sGssCleanupCreds, SSHCFG_GLOBAL }, |
2409 | + { "gssapicleanupcreds", sGssCleanupCreds, SSHCFG_GLOBAL }, | 2361 | + { "gssapicleanupcreds", sGssCleanupCreds, SSHCFG_GLOBAL }, |
2410 | + { "gssapistrictacceptorcheck", sGssStrictAcceptor, SSHCFG_GLOBAL }, | 2362 | { "gssapistrictacceptorcheck", sGssStrictAcceptor, SSHCFG_GLOBAL }, |
2411 | + { "gssapikeyexchange", sGssKeyEx, SSHCFG_GLOBAL }, | 2363 | + { "gssapikeyexchange", sGssKeyEx, SSHCFG_GLOBAL }, |
2412 | + { "gssapistorecredentialsonrekey", sGssStoreRekey, SSHCFG_GLOBAL }, | 2364 | + { "gssapistorecredentialsonrekey", sGssStoreRekey, SSHCFG_GLOBAL }, |
2413 | #else | 2365 | #else |
2414 | { "gssapiauthentication", sUnsupported, SSHCFG_ALL }, | 2366 | { "gssapiauthentication", sUnsupported, SSHCFG_ALL }, |
2415 | { "gssapicleanupcredentials", sUnsupported, SSHCFG_GLOBAL }, | 2367 | { "gssapicleanupcredentials", sUnsupported, SSHCFG_GLOBAL }, |
2416 | + { "gssapicleanupcreds", sUnsupported, SSHCFG_GLOBAL }, | 2368 | + { "gssapicleanupcreds", sUnsupported, SSHCFG_GLOBAL }, |
2417 | + { "gssapistrictacceptorcheck", sUnsupported, SSHCFG_GLOBAL }, | 2369 | { "gssapistrictacceptorcheck", sUnsupported, SSHCFG_GLOBAL }, |
2418 | + { "gssapikeyexchange", sUnsupported, SSHCFG_GLOBAL }, | 2370 | + { "gssapikeyexchange", sUnsupported, SSHCFG_GLOBAL }, |
2419 | + { "gssapistorecredentialsonrekey", sUnsupported, SSHCFG_GLOBAL }, | 2371 | + { "gssapistorecredentialsonrekey", sUnsupported, SSHCFG_GLOBAL }, |
2420 | #endif | 2372 | #endif |
@@ -2423,7 +2375,7 @@ index 3185462..f68c0d0 100644 | |||
2423 | { "passwordauthentication", sPasswordAuthentication, SSHCFG_ALL }, | 2375 | { "passwordauthentication", sPasswordAuthentication, SSHCFG_ALL }, |
2424 | { "kbdinteractiveauthentication", sKbdInteractiveAuthentication, SSHCFG_ALL }, | 2376 | { "kbdinteractiveauthentication", sKbdInteractiveAuthentication, SSHCFG_ALL }, |
2425 | { "challengeresponseauthentication", sChallengeResponseAuthentication, SSHCFG_GLOBAL }, | 2377 | { "challengeresponseauthentication", sChallengeResponseAuthentication, SSHCFG_GLOBAL }, |
2426 | @@ -1166,10 +1187,22 @@ process_server_config_line(ServerOptions *options, char *line, | 2378 | @@ -1214,6 +1229,10 @@ process_server_config_line(ServerOptions *options, char *line, |
2427 | intptr = &options->gss_authentication; | 2379 | intptr = &options->gss_authentication; |
2428 | goto parse_flag; | 2380 | goto parse_flag; |
2429 | 2381 | ||
@@ -2434,11 +2386,10 @@ index 3185462..f68c0d0 100644 | |||
2434 | case sGssCleanupCreds: | 2386 | case sGssCleanupCreds: |
2435 | intptr = &options->gss_cleanup_creds; | 2387 | intptr = &options->gss_cleanup_creds; |
2436 | goto parse_flag; | 2388 | goto parse_flag; |
2389 | @@ -1222,6 +1241,10 @@ process_server_config_line(ServerOptions *options, char *line, | ||
2390 | intptr = &options->gss_strict_acceptor; | ||
2391 | goto parse_flag; | ||
2437 | 2392 | ||
2438 | + case sGssStrictAcceptor: | ||
2439 | + intptr = &options->gss_strict_acceptor; | ||
2440 | + goto parse_flag; | ||
2441 | + | ||
2442 | + case sGssStoreRekey: | 2393 | + case sGssStoreRekey: |
2443 | + intptr = &options->gss_store_rekey; | 2394 | + intptr = &options->gss_store_rekey; |
2444 | + goto parse_flag; | 2395 | + goto parse_flag; |
@@ -2446,7 +2397,7 @@ index 3185462..f68c0d0 100644 | |||
2446 | case sPasswordAuthentication: | 2397 | case sPasswordAuthentication: |
2447 | intptr = &options->password_authentication; | 2398 | intptr = &options->password_authentication; |
2448 | goto parse_flag; | 2399 | goto parse_flag; |
2449 | @@ -2125,7 +2158,10 @@ dump_config(ServerOptions *o) | 2400 | @@ -2229,7 +2252,10 @@ dump_config(ServerOptions *o) |
2450 | #endif | 2401 | #endif |
2451 | #ifdef GSSAPI | 2402 | #ifdef GSSAPI |
2452 | dump_cfg_fmtint(sGssAuthentication, o->gss_authentication); | 2403 | dump_cfg_fmtint(sGssAuthentication, o->gss_authentication); |
@@ -2458,16 +2409,16 @@ index 3185462..f68c0d0 100644 | |||
2458 | dump_cfg_fmtint(sPasswordAuthentication, o->password_authentication); | 2409 | dump_cfg_fmtint(sPasswordAuthentication, o->password_authentication); |
2459 | dump_cfg_fmtint(sKbdInteractiveAuthentication, | 2410 | dump_cfg_fmtint(sKbdInteractiveAuthentication, |
2460 | diff --git a/servconf.h b/servconf.h | 2411 | diff --git a/servconf.h b/servconf.h |
2461 | index 9922f0c..d2ed4d7 100644 | 2412 | index 606d80c..b99b270 100644 |
2462 | --- a/servconf.h | 2413 | --- a/servconf.h |
2463 | +++ b/servconf.h | 2414 | +++ b/servconf.h |
2464 | @@ -115,7 +115,10 @@ typedef struct { | 2415 | @@ -117,8 +117,10 @@ typedef struct { |
2465 | int kerberos_get_afs_token; /* If true, try to get AFS token if | 2416 | int kerberos_get_afs_token; /* If true, try to get AFS token if |
2466 | * authenticated with Kerberos. */ | 2417 | * authenticated with Kerberos. */ |
2467 | int gss_authentication; /* If true, permit GSSAPI authentication */ | 2418 | int gss_authentication; /* If true, permit GSSAPI authentication */ |
2468 | + int gss_keyex; /* If true, permit GSSAPI key exchange */ | 2419 | + int gss_keyex; /* If true, permit GSSAPI key exchange */ |
2469 | int gss_cleanup_creds; /* If true, destroy cred cache on logout */ | 2420 | int gss_cleanup_creds; /* If true, destroy cred cache on logout */ |
2470 | + int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ | 2421 | int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ |
2471 | + int gss_store_rekey; | 2422 | + int gss_store_rekey; |
2472 | int password_authentication; /* If true, permit password | 2423 | int password_authentication; /* If true, permit password |
2473 | * authentication. */ | 2424 | * authentication. */ |
@@ -2589,10 +2540,10 @@ index 03a228f..228e5ab 100644 | |||
2589 | # CheckHostIP yes | 2540 | # CheckHostIP yes |
2590 | # AddressFamily any | 2541 | # AddressFamily any |
2591 | diff --git a/ssh_config.5 b/ssh_config.5 | 2542 | diff --git a/ssh_config.5 b/ssh_config.5 |
2592 | index 140d0ba..4476171 100644 | 2543 | index 268a627..b840261 100644 |
2593 | --- a/ssh_config.5 | 2544 | --- a/ssh_config.5 |
2594 | +++ b/ssh_config.5 | 2545 | +++ b/ssh_config.5 |
2595 | @@ -743,11 +743,43 @@ Specifies whether user authentication based on GSSAPI is allowed. | 2546 | @@ -744,11 +744,43 @@ Specifies whether user authentication based on GSSAPI is allowed. |
2596 | The default is | 2547 | The default is |
2597 | .Dq no . | 2548 | .Dq no . |
2598 | Note that this option applies to protocol version 2 only. | 2549 | Note that this option applies to protocol version 2 only. |
@@ -2638,7 +2589,7 @@ index 140d0ba..4476171 100644 | |||
2638 | Indicates that | 2589 | Indicates that |
2639 | .Xr ssh 1 | 2590 | .Xr ssh 1 |
2640 | diff --git a/sshconnect2.c b/sshconnect2.c | 2591 | diff --git a/sshconnect2.c b/sshconnect2.c |
2641 | index ba56f64..faa8ec5 100644 | 2592 | index fcaed6b..44c89e6 100644 |
2642 | --- a/sshconnect2.c | 2593 | --- a/sshconnect2.c |
2643 | +++ b/sshconnect2.c | 2594 | +++ b/sshconnect2.c |
2644 | @@ -160,9 +160,34 @@ ssh_kex2(char *host, struct sockaddr *hostaddr, u_short port) | 2595 | @@ -160,9 +160,34 @@ ssh_kex2(char *host, struct sockaddr *hostaddr, u_short port) |
@@ -2840,7 +2791,7 @@ index ba56f64..faa8ec5 100644 | |||
2840 | 2791 | ||
2841 | int | 2792 | int |
2842 | diff --git a/sshd.c b/sshd.c | 2793 | diff --git a/sshd.c b/sshd.c |
2843 | index e1c767c..cf38bae 100644 | 2794 | index 6f8c6f2..6b85e6c 100644 |
2844 | --- a/sshd.c | 2795 | --- a/sshd.c |
2845 | +++ b/sshd.c | 2796 | +++ b/sshd.c |
2846 | @@ -125,6 +125,10 @@ | 2797 | @@ -125,6 +125,10 @@ |
@@ -2854,7 +2805,7 @@ index e1c767c..cf38bae 100644 | |||
2854 | #ifndef O_NOCTTY | 2805 | #ifndef O_NOCTTY |
2855 | #define O_NOCTTY 0 | 2806 | #define O_NOCTTY 0 |
2856 | #endif | 2807 | #endif |
2857 | @@ -1815,10 +1819,13 @@ main(int ac, char **av) | 2808 | @@ -1823,10 +1827,13 @@ main(int ac, char **av) |
2858 | logit("Disabling protocol version 1. Could not load host key"); | 2809 | logit("Disabling protocol version 1. Could not load host key"); |
2859 | options.protocol &= ~SSH_PROTO_1; | 2810 | options.protocol &= ~SSH_PROTO_1; |
2860 | } | 2811 | } |
@@ -2868,9 +2819,9 @@ index e1c767c..cf38bae 100644 | |||
2868 | if (!(options.protocol & (SSH_PROTO_1|SSH_PROTO_2))) { | 2819 | if (!(options.protocol & (SSH_PROTO_1|SSH_PROTO_2))) { |
2869 | logit("sshd: no hostkeys available -- exiting."); | 2820 | logit("sshd: no hostkeys available -- exiting."); |
2870 | exit(1); | 2821 | exit(1); |
2871 | @@ -2132,6 +2139,60 @@ main(int ac, char **av) | 2822 | @@ -2141,6 +2148,60 @@ main(int ac, char **av) |
2872 | remote_ip, remote_port, | 2823 | remote_ip, remote_port, laddr, get_local_port()); |
2873 | get_local_ipaddr(sock_in), get_local_port()); | 2824 | free(laddr); |
2874 | 2825 | ||
2875 | +#ifdef USE_SECURITY_SESSION_API | 2826 | +#ifdef USE_SECURITY_SESSION_API |
2876 | + /* | 2827 | + /* |
@@ -2929,7 +2880,7 @@ index e1c767c..cf38bae 100644 | |||
2929 | /* | 2880 | /* |
2930 | * We don't want to listen forever unless the other side | 2881 | * We don't want to listen forever unless the other side |
2931 | * successfully authenticates itself. So we set up an alarm which is | 2882 | * successfully authenticates itself. So we set up an alarm which is |
2932 | @@ -2561,6 +2622,48 @@ do_ssh2_kex(void) | 2883 | @@ -2570,6 +2631,48 @@ do_ssh2_kex(void) |
2933 | myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS] = compat_pkalg_proposal( | 2884 | myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS] = compat_pkalg_proposal( |
2934 | list_hostkey_types()); | 2885 | list_hostkey_types()); |
2935 | 2886 | ||
@@ -2978,7 +2929,7 @@ index e1c767c..cf38bae 100644 | |||
2978 | /* start key exchange */ | 2929 | /* start key exchange */ |
2979 | if ((r = kex_setup(active_state, myproposal)) != 0) | 2930 | if ((r = kex_setup(active_state, myproposal)) != 0) |
2980 | fatal("kex_setup: %s", ssh_err(r)); | 2931 | fatal("kex_setup: %s", ssh_err(r)); |
2981 | @@ -2575,6 +2678,13 @@ do_ssh2_kex(void) | 2932 | @@ -2584,6 +2687,13 @@ do_ssh2_kex(void) |
2982 | # endif | 2933 | # endif |
2983 | #endif | 2934 | #endif |
2984 | kex->kex[KEX_C25519_SHA256] = kexc25519_server; | 2935 | kex->kex[KEX_C25519_SHA256] = kexc25519_server; |
@@ -2993,7 +2944,7 @@ index e1c767c..cf38bae 100644 | |||
2993 | kex->client_version_string=client_version_string; | 2944 | kex->client_version_string=client_version_string; |
2994 | kex->server_version_string=server_version_string; | 2945 | kex->server_version_string=server_version_string; |
2995 | diff --git a/sshd_config b/sshd_config | 2946 | diff --git a/sshd_config b/sshd_config |
2996 | index c9042ac..a71ad19 100644 | 2947 | index cf7d8e1..1dfd0f1 100644 |
2997 | --- a/sshd_config | 2948 | --- a/sshd_config |
2998 | +++ b/sshd_config | 2949 | +++ b/sshd_config |
2999 | @@ -84,6 +84,8 @@ AuthorizedKeysFile .ssh/authorized_keys | 2950 | @@ -84,6 +84,8 @@ AuthorizedKeysFile .ssh/authorized_keys |
@@ -3006,10 +2957,10 @@ index c9042ac..a71ad19 100644 | |||
3006 | # Set this to 'yes' to enable PAM authentication, account processing, | 2957 | # Set this to 'yes' to enable PAM authentication, account processing, |
3007 | # and session processing. If this is enabled, PAM authentication will | 2958 | # and session processing. If this is enabled, PAM authentication will |
3008 | diff --git a/sshd_config.5 b/sshd_config.5 | 2959 | diff --git a/sshd_config.5 b/sshd_config.5 |
3009 | index 6dce0c7..0331496 100644 | 2960 | index 5ab4318..68424f1 100644 |
3010 | --- a/sshd_config.5 | 2961 | --- a/sshd_config.5 |
3011 | +++ b/sshd_config.5 | 2962 | +++ b/sshd_config.5 |
3012 | @@ -564,12 +564,40 @@ Specifies whether user authentication based on GSSAPI is allowed. | 2963 | @@ -616,6 +616,12 @@ Specifies whether user authentication based on GSSAPI is allowed. |
3013 | The default is | 2964 | The default is |
3014 | .Dq no . | 2965 | .Dq no . |
3015 | Note that this option applies to protocol version 2 only. | 2966 | Note that this option applies to protocol version 2 only. |
@@ -3022,26 +2973,10 @@ index 6dce0c7..0331496 100644 | |||
3022 | .It Cm GSSAPICleanupCredentials | 2973 | .It Cm GSSAPICleanupCredentials |
3023 | Specifies whether to automatically destroy the user's credentials cache | 2974 | Specifies whether to automatically destroy the user's credentials cache |
3024 | on logout. | 2975 | on logout. |
2976 | @@ -637,6 +643,11 @@ machine's default store. | ||
2977 | This facility is provided to assist with operation on multi homed machines. | ||
3025 | The default is | 2978 | The default is |
3026 | .Dq yes . | 2979 | .Dq yes . |
3027 | Note that this option applies to protocol version 2 only. | ||
3028 | +.It Cm GSSAPIStrictAcceptorCheck | ||
3029 | +Determines whether to be strict about the identity of the GSSAPI acceptor | ||
3030 | +a client authenticates against. If | ||
3031 | +.Dq yes | ||
3032 | +then the client must authenticate against the | ||
3033 | +.Pa host | ||
3034 | +service on the current hostname. If | ||
3035 | +.Dq no | ||
3036 | +then the client may authenticate against any service key stored in the | ||
3037 | +machine's default store. This facility is provided to assist with operation | ||
3038 | +on multi homed machines. | ||
3039 | +The default is | ||
3040 | +.Dq yes . | ||
3041 | +Note that this option applies only to protocol version 2 GSSAPI connections, | ||
3042 | +and setting it to | ||
3043 | +.Dq no | ||
3044 | +may only work with recent Kerberos GSSAPI libraries. | ||
3045 | +.It Cm GSSAPIStoreCredentialsOnRekey | 2980 | +.It Cm GSSAPIStoreCredentialsOnRekey |
3046 | +Controls whether the user's GSSAPI credentials should be updated following a | 2981 | +Controls whether the user's GSSAPI credentials should be updated following a |
3047 | +successful connection rekeying. This option can be used to accepted renewed | 2982 | +successful connection rekeying. This option can be used to accepted renewed |
@@ -3051,7 +2986,7 @@ index 6dce0c7..0331496 100644 | |||
3051 | Specifies the key types that will be accepted for hostbased authentication | 2986 | Specifies the key types that will be accepted for hostbased authentication |
3052 | as a comma-separated pattern list. | 2987 | as a comma-separated pattern list. |
3053 | diff --git a/sshkey.c b/sshkey.c | 2988 | diff --git a/sshkey.c b/sshkey.c |
3054 | index 4768790..cd5992e 100644 | 2989 | index cfe5980..2c87d80 100644 |
3055 | --- a/sshkey.c | 2990 | --- a/sshkey.c |
3056 | +++ b/sshkey.c | 2991 | +++ b/sshkey.c |
3057 | @@ -116,6 +116,7 @@ static const struct keytype keytypes[] = { | 2992 | @@ -116,6 +116,7 @@ static const struct keytype keytypes[] = { |
@@ -3072,7 +3007,7 @@ index 4768790..cd5992e 100644 | |||
3072 | if ((certs_only && !kt->cert) || (plain_only && kt->cert)) | 3007 | if ((certs_only && !kt->cert) || (plain_only && kt->cert)) |
3073 | continue; | 3008 | continue; |
3074 | diff --git a/sshkey.h b/sshkey.h | 3009 | diff --git a/sshkey.h b/sshkey.h |
3075 | index 62c1c3e..9314e85 100644 | 3010 | index cdac0e2..b010b8e 100644 |
3076 | --- a/sshkey.h | 3011 | --- a/sshkey.h |
3077 | +++ b/sshkey.h | 3012 | +++ b/sshkey.h |
3078 | @@ -64,6 +64,7 @@ enum sshkey_types { | 3013 | @@ -64,6 +64,7 @@ enum sshkey_types { |
diff --git a/debian/patches/helpful-wait-terminate.patch b/debian/patches/helpful-wait-terminate.patch index 6ea643210..ac8630b4c 100644 --- a/debian/patches/helpful-wait-terminate.patch +++ b/debian/patches/helpful-wait-terminate.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 9a440da8025dbc120803ee09c2a7ac8c638d31c2 Mon Sep 17 00:00:00 2001 | 1 | From 5496170cd67abb653e385277bd83b69f1b10905d Mon Sep 17 00:00:00 2001 |
2 | From: Matthew Vernon <matthew@debian.org> | 2 | From: Matthew Vernon <matthew@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:09:56 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:56 +0000 |
4 | Subject: Mention ~& when waiting for forwarded connections to terminate | 4 | Subject: Mention ~& when waiting for forwarded connections to terminate |
diff --git a/debian/patches/keepalive-extensions.patch b/debian/patches/keepalive-extensions.patch index 0adfbd2b5..09c178db4 100644 --- a/debian/patches/keepalive-extensions.patch +++ b/debian/patches/keepalive-extensions.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 7efad61f1e562f504a5ff3fb0ae90ac05a208e66 Mon Sep 17 00:00:00 2001 | 1 | From 02a61bcb045503a5f3f7e274ac1f4524e30f87c8 Mon Sep 17 00:00:00 2001 |
2 | From: Richard Kettlewell <rjk@greenend.org.uk> | 2 | From: Richard Kettlewell <rjk@greenend.org.uk> |
3 | Date: Sun, 9 Feb 2014 16:09:52 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:52 +0000 |
4 | Subject: Various keepalive extensions | 4 | Subject: Various keepalive extensions |
@@ -26,7 +26,7 @@ Patch-Name: keepalive-extensions.patch | |||
26 | 3 files changed, 34 insertions(+), 4 deletions(-) | 26 | 3 files changed, 34 insertions(+), 4 deletions(-) |
27 | 27 | ||
28 | diff --git a/readconf.c b/readconf.c | 28 | diff --git a/readconf.c b/readconf.c |
29 | index 278fe15..1d2d596 100644 | 29 | index 85eea48..5c5890c 100644 |
30 | --- a/readconf.c | 30 | --- a/readconf.c |
31 | +++ b/readconf.c | 31 | +++ b/readconf.c |
32 | @@ -159,6 +159,7 @@ typedef enum { | 32 | @@ -159,6 +159,7 @@ typedef enum { |
@@ -72,7 +72,7 @@ index 278fe15..1d2d596 100644 | |||
72 | options->server_alive_count_max = 3; | 72 | options->server_alive_count_max = 3; |
73 | if (options->control_master == -1) | 73 | if (options->control_master == -1) |
74 | diff --git a/ssh_config.5 b/ssh_config.5 | 74 | diff --git a/ssh_config.5 b/ssh_config.5 |
75 | index dd35dd8..250c0d1 100644 | 75 | index f7510b6..21d3e94 100644 |
76 | --- a/ssh_config.5 | 76 | --- a/ssh_config.5 |
77 | +++ b/ssh_config.5 | 77 | +++ b/ssh_config.5 |
78 | @@ -233,8 +233,12 @@ Valid arguments are | 78 | @@ -233,8 +233,12 @@ Valid arguments are |
@@ -89,7 +89,7 @@ index dd35dd8..250c0d1 100644 | |||
89 | The argument must be | 89 | The argument must be |
90 | .Dq yes | 90 | .Dq yes |
91 | or | 91 | or |
92 | @@ -1420,8 +1424,15 @@ from the server, | 92 | @@ -1425,8 +1429,15 @@ from the server, |
93 | will send a message through the encrypted | 93 | will send a message through the encrypted |
94 | channel to request a response from the server. | 94 | channel to request a response from the server. |
95 | The default | 95 | The default |
@@ -106,7 +106,7 @@ index dd35dd8..250c0d1 100644 | |||
106 | .It Cm StreamLocalBindMask | 106 | .It Cm StreamLocalBindMask |
107 | Sets the octal file creation mode mask | 107 | Sets the octal file creation mode mask |
108 | .Pq umask | 108 | .Pq umask |
109 | @@ -1487,6 +1498,12 @@ Specifies whether the system should send TCP keepalive messages to the | 109 | @@ -1492,6 +1503,12 @@ Specifies whether the system should send TCP keepalive messages to the |
110 | other side. | 110 | other side. |
111 | If they are sent, death of the connection or crash of one | 111 | If they are sent, death of the connection or crash of one |
112 | of the machines will be properly noticed. | 112 | of the machines will be properly noticed. |
@@ -120,10 +120,10 @@ index dd35dd8..250c0d1 100644 | |||
120 | connections will die if the route is down temporarily, and some people | 120 | connections will die if the route is down temporarily, and some people |
121 | find it annoying. | 121 | find it annoying. |
122 | diff --git a/sshd_config.5 b/sshd_config.5 | 122 | diff --git a/sshd_config.5 b/sshd_config.5 |
123 | index 0331496..d14576e 100644 | 123 | index 68424f1..1269bbd 100644 |
124 | --- a/sshd_config.5 | 124 | --- a/sshd_config.5 |
125 | +++ b/sshd_config.5 | 125 | +++ b/sshd_config.5 |
126 | @@ -1392,6 +1392,9 @@ This avoids infinitely hanging sessions. | 126 | @@ -1443,6 +1443,9 @@ This avoids infinitely hanging sessions. |
127 | .Pp | 127 | .Pp |
128 | To disable TCP keepalive messages, the value should be set to | 128 | To disable TCP keepalive messages, the value should be set to |
129 | .Dq no . | 129 | .Dq no . |
@@ -132,4 +132,4 @@ index 0331496..d14576e 100644 | |||
132 | +.Cm KeepAlive . | 132 | +.Cm KeepAlive . |
133 | .It Cm TrustedUserCAKeys | 133 | .It Cm TrustedUserCAKeys |
134 | Specifies a file containing public keys of certificate authorities that are | 134 | Specifies a file containing public keys of certificate authorities that are |
135 | trusted to sign user certificates for authentication. | 135 | trusted to sign user certificates for authentication, or |
diff --git a/debian/patches/lintian-symlink-pickiness.patch b/debian/patches/lintian-symlink-pickiness.patch index 7aa035726..a285b4c69 100644 --- a/debian/patches/lintian-symlink-pickiness.patch +++ b/debian/patches/lintian-symlink-pickiness.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 90fc009420a03c598d6f003df5466191ab4d12b2 Mon Sep 17 00:00:00 2001 | 1 | From 1237c8b43799156af8972c53c9ccc6b27140a284 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:08 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:08 +0000 |
4 | Subject: Fix picky lintian errors about slogin symlinks | 4 | Subject: Fix picky lintian errors about slogin symlinks |
diff --git a/debian/patches/mention-ssh-keygen-on-keychange.patch b/debian/patches/mention-ssh-keygen-on-keychange.patch index 127ed9f9e..84804481e 100644 --- a/debian/patches/mention-ssh-keygen-on-keychange.patch +++ b/debian/patches/mention-ssh-keygen-on-keychange.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From aedcf9cb37f512b929ce895ba1fccc9ca39166b0 Mon Sep 17 00:00:00 2001 | 1 | From f948cb2d089ebf70b70db3d483d09ad97a0cf371 Mon Sep 17 00:00:00 2001 |
2 | From: Scott Moser <smoser@ubuntu.com> | 2 | From: Scott Moser <smoser@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:10:03 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:03 +0000 |
4 | Subject: Mention ssh-keygen in ssh fingerprint changed warning | 4 | Subject: Mention ssh-keygen in ssh fingerprint changed warning |
@@ -13,7 +13,7 @@ Patch-Name: mention-ssh-keygen-on-keychange.patch | |||
13 | 1 file changed, 6 insertions(+), 1 deletion(-) | 13 | 1 file changed, 6 insertions(+), 1 deletion(-) |
14 | 14 | ||
15 | diff --git a/sshconnect.c b/sshconnect.c | 15 | diff --git a/sshconnect.c b/sshconnect.c |
16 | index 0073c6e..6065dff 100644 | 16 | index 8adc943..0c9fc6c 100644 |
17 | --- a/sshconnect.c | 17 | --- a/sshconnect.c |
18 | +++ b/sshconnect.c | 18 | +++ b/sshconnect.c |
19 | @@ -1078,9 +1078,12 @@ check_host_key(char *hostname, struct sockaddr *hostaddr, u_short port, | 19 | @@ -1078,9 +1078,12 @@ check_host_key(char *hostname, struct sockaddr *hostaddr, u_short port, |
diff --git a/debian/patches/no-openssl-version-status.patch b/debian/patches/no-openssl-version-status.patch index f4d8bca66..73b16a368 100644 --- a/debian/patches/no-openssl-version-status.patch +++ b/debian/patches/no-openssl-version-status.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 6b85aa42144010401906754b98f9876651669163 Mon Sep 17 00:00:00 2001 | 1 | From d3777c50b834493fcfbc3549e1dfb465c10abeec Mon Sep 17 00:00:00 2001 |
2 | From: Kurt Roeckx <kurt@roeckx.be> | 2 | From: Kurt Roeckx <kurt@roeckx.be> |
3 | Date: Sun, 9 Feb 2014 16:10:14 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:14 +0000 |
4 | Subject: Don't check the status field of the OpenSSL version | 4 | Subject: Don't check the status field of the OpenSSL version |
diff --git a/debian/patches/openbsd-docs.patch b/debian/patches/openbsd-docs.patch index f5b96f4a1..97971707f 100644 --- a/debian/patches/openbsd-docs.patch +++ b/debian/patches/openbsd-docs.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 96c2797aaa79d687e75dc56f40f7102131d87fb1 Mon Sep 17 00:00:00 2001 | 1 | From 3303a9d037ae9b62e5af01f467d8053cbd9c8410 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:09 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:09 +0000 |
4 | Subject: Adjust various OpenBSD-specific references in manual pages | 4 | Subject: Adjust various OpenBSD-specific references in manual pages |
@@ -88,7 +88,7 @@ index 9b93666..19bed1e 100644 | |||
88 | The file format is described in | 88 | The file format is described in |
89 | .Xr moduli 5 . | 89 | .Xr moduli 5 . |
90 | diff --git a/ssh.1 b/ssh.1 | 90 | diff --git a/ssh.1 b/ssh.1 |
91 | index 53c711a..04de6cf 100644 | 91 | index c84196f..c3e1266 100644 |
92 | --- a/ssh.1 | 92 | --- a/ssh.1 |
93 | +++ b/ssh.1 | 93 | +++ b/ssh.1 |
94 | @@ -766,6 +766,10 @@ Protocol 1 is restricted to using only RSA keys, | 94 | @@ -766,6 +766,10 @@ Protocol 1 is restricted to using only RSA keys, |
@@ -103,7 +103,7 @@ index 53c711a..04de6cf 100644 | |||
103 | .Pp | 103 | .Pp |
104 | The file | 104 | The file |
105 | diff --git a/sshd.8 b/sshd.8 | 105 | diff --git a/sshd.8 b/sshd.8 |
106 | index fc2154c..8dba6cf 100644 | 106 | index 5afd10f..2f4d4f3 100644 |
107 | --- a/sshd.8 | 107 | --- a/sshd.8 |
108 | +++ b/sshd.8 | 108 | +++ b/sshd.8 |
109 | @@ -67,7 +67,7 @@ over an insecure network. | 109 | @@ -67,7 +67,7 @@ over an insecure network. |
@@ -115,7 +115,7 @@ index fc2154c..8dba6cf 100644 | |||
115 | It forks a new | 115 | It forks a new |
116 | daemon for each incoming connection. | 116 | daemon for each incoming connection. |
117 | The forked daemons handle | 117 | The forked daemons handle |
118 | @@ -862,7 +862,7 @@ This file is for host-based authentication (see | 118 | @@ -864,7 +864,7 @@ This file is for host-based authentication (see |
119 | .Xr ssh 1 ) . | 119 | .Xr ssh 1 ) . |
120 | It should only be writable by root. | 120 | It should only be writable by root. |
121 | .Pp | 121 | .Pp |
@@ -124,7 +124,7 @@ index fc2154c..8dba6cf 100644 | |||
124 | Contains Diffie-Hellman groups used for the "Diffie-Hellman Group Exchange". | 124 | Contains Diffie-Hellman groups used for the "Diffie-Hellman Group Exchange". |
125 | The file format is described in | 125 | The file format is described in |
126 | .Xr moduli 5 . | 126 | .Xr moduli 5 . |
127 | @@ -961,7 +961,6 @@ The content of this file is not sensitive; it can be world-readable. | 127 | @@ -963,7 +963,6 @@ The content of this file is not sensitive; it can be world-readable. |
128 | .Xr ssh-keyscan 1 , | 128 | .Xr ssh-keyscan 1 , |
129 | .Xr chroot 2 , | 129 | .Xr chroot 2 , |
130 | .Xr hosts_access 5 , | 130 | .Xr hosts_access 5 , |
@@ -133,10 +133,10 @@ index fc2154c..8dba6cf 100644 | |||
133 | .Xr sshd_config 5 , | 133 | .Xr sshd_config 5 , |
134 | .Xr inetd 8 , | 134 | .Xr inetd 8 , |
135 | diff --git a/sshd_config.5 b/sshd_config.5 | 135 | diff --git a/sshd_config.5 b/sshd_config.5 |
136 | index ec58635..453d741 100644 | 136 | index a5afbc3..355b445 100644 |
137 | --- a/sshd_config.5 | 137 | --- a/sshd_config.5 |
138 | +++ b/sshd_config.5 | 138 | +++ b/sshd_config.5 |
139 | @@ -322,8 +322,7 @@ This option is only available for protocol version 2. | 139 | @@ -374,8 +374,7 @@ This option is only available for protocol version 2. |
140 | By default, no banner is displayed. | 140 | By default, no banner is displayed. |
141 | .It Cm ChallengeResponseAuthentication | 141 | .It Cm ChallengeResponseAuthentication |
142 | Specifies whether challenge-response authentication is allowed (e.g. via | 142 | Specifies whether challenge-response authentication is allowed (e.g. via |
diff --git a/debian/patches/package-versioning.patch b/debian/patches/package-versioning.patch index 11674a915..6eb7b7243 100644 --- a/debian/patches/package-versioning.patch +++ b/debian/patches/package-versioning.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 9f6aded97671ee8b9164f0524b3ac622d827dcde Mon Sep 17 00:00:00 2001 | 1 | From c3a4906692ddd85d8530d2fdb74822ae793f18db Mon Sep 17 00:00:00 2001 |
2 | From: Matthew Vernon <matthew@debian.org> | 2 | From: Matthew Vernon <matthew@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:05 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:05 +0000 |
4 | Subject: Include the Debian version in our identification | 4 | Subject: Include the Debian version in our identification |
@@ -19,7 +19,7 @@ Patch-Name: package-versioning.patch | |||
19 | 3 files changed, 9 insertions(+), 4 deletions(-) | 19 | 3 files changed, 9 insertions(+), 4 deletions(-) |
20 | 20 | ||
21 | diff --git a/sshconnect.c b/sshconnect.c | 21 | diff --git a/sshconnect.c b/sshconnect.c |
22 | index 6065dff..a6c9e20 100644 | 22 | index 0c9fc6c..988f4ef 100644 |
23 | --- a/sshconnect.c | 23 | --- a/sshconnect.c |
24 | +++ b/sshconnect.c | 24 | +++ b/sshconnect.c |
25 | @@ -524,10 +524,10 @@ send_client_banner(int connection_out, int minor1) | 25 | @@ -524,10 +524,10 @@ send_client_banner(int connection_out, int minor1) |
@@ -36,7 +36,7 @@ index 6065dff..a6c9e20 100644 | |||
36 | if (roaming_atomicio(vwrite, connection_out, client_version_string, | 36 | if (roaming_atomicio(vwrite, connection_out, client_version_string, |
37 | strlen(client_version_string)) != strlen(client_version_string)) | 37 | strlen(client_version_string)) != strlen(client_version_string)) |
38 | diff --git a/sshd.c b/sshd.c | 38 | diff --git a/sshd.c b/sshd.c |
39 | index 3b4e97c..c362209 100644 | 39 | index 9ff9e8b..96e75c6 100644 |
40 | --- a/sshd.c | 40 | --- a/sshd.c |
41 | +++ b/sshd.c | 41 | +++ b/sshd.c |
42 | @@ -442,7 +442,7 @@ sshd_exchange_identification(int sock_in, int sock_out) | 42 | @@ -442,7 +442,7 @@ sshd_exchange_identification(int sock_in, int sock_out) |
@@ -49,11 +49,11 @@ index 3b4e97c..c362209 100644 | |||
49 | options.version_addendum, newline); | 49 | options.version_addendum, newline); |
50 | 50 | ||
51 | diff --git a/version.h b/version.h | 51 | diff --git a/version.h b/version.h |
52 | index dfe3ee9..94569ac 100644 | 52 | index b58fbe1..bff2b3b 100644 |
53 | --- a/version.h | 53 | --- a/version.h |
54 | +++ b/version.h | 54 | +++ b/version.h |
55 | @@ -3,4 +3,9 @@ | 55 | @@ -3,4 +3,9 @@ |
56 | #define SSH_VERSION "OpenSSH_6.8" | 56 | #define SSH_VERSION "OpenSSH_6.9" |
57 | 57 | ||
58 | #define SSH_PORTABLE "p1" | 58 | #define SSH_PORTABLE "p1" |
59 | -#define SSH_RELEASE SSH_VERSION SSH_PORTABLE | 59 | -#define SSH_RELEASE SSH_VERSION SSH_PORTABLE |
diff --git a/debian/patches/quieter-signals.patch b/debian/patches/quieter-signals.patch index ff16b9850..ba16a9943 100644 --- a/debian/patches/quieter-signals.patch +++ b/debian/patches/quieter-signals.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 34592a434851697537873eed1eb83ba0a640c5c8 Mon Sep 17 00:00:00 2001 | 1 | From 7c26c2f768c5d457c6645c1e1c077ba10a853626 Mon Sep 17 00:00:00 2001 |
2 | From: Peter Samuelson <peter@p12n.org> | 2 | From: Peter Samuelson <peter@p12n.org> |
3 | Date: Sun, 9 Feb 2014 16:09:55 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:55 +0000 |
4 | Subject: Reduce severity of "Killed by signal %d" | 4 | Subject: Reduce severity of "Killed by signal %d" |
@@ -22,10 +22,10 @@ Patch-Name: quieter-signals.patch | |||
22 | 1 file changed, 4 insertions(+), 2 deletions(-) | 22 | 1 file changed, 4 insertions(+), 2 deletions(-) |
23 | 23 | ||
24 | diff --git a/clientloop.c b/clientloop.c | 24 | diff --git a/clientloop.c b/clientloop.c |
25 | index 156a196..45cef88 100644 | 25 | index 964353d..65f90b8 100644 |
26 | --- a/clientloop.c | 26 | --- a/clientloop.c |
27 | +++ b/clientloop.c | 27 | +++ b/clientloop.c |
28 | @@ -1707,8 +1707,10 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id) | 28 | @@ -1720,8 +1720,10 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id) |
29 | exit_status = 0; | 29 | exit_status = 0; |
30 | } | 30 | } |
31 | 31 | ||
diff --git a/debian/patches/restore-tcp-wrappers.patch b/debian/patches/restore-tcp-wrappers.patch index c9da26f7d..9e0435313 100644 --- a/debian/patches/restore-tcp-wrappers.patch +++ b/debian/patches/restore-tcp-wrappers.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 7df209aed8ded9a6cab34e704576998786bdc890 Mon Sep 17 00:00:00 2001 | 1 | From ace4bfab52b31a2833636a243ba150fdf0f48293 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Tue, 7 Oct 2014 13:22:41 +0100 | 3 | Date: Tue, 7 Oct 2014 13:22:41 +0100 |
4 | Subject: Restore TCP wrappers support | 4 | Subject: Restore TCP wrappers support |
@@ -28,10 +28,10 @@ Patch-Name: restore-tcp-wrappers.patch | |||
28 | 3 files changed, 89 insertions(+) | 28 | 3 files changed, 89 insertions(+) |
29 | 29 | ||
30 | diff --git a/configure.ac b/configure.ac | 30 | diff --git a/configure.ac b/configure.ac |
31 | index 216a9fd..5f606ea 100644 | 31 | index df21693..4d55c46 100644 |
32 | --- a/configure.ac | 32 | --- a/configure.ac |
33 | +++ b/configure.ac | 33 | +++ b/configure.ac |
34 | @@ -1440,6 +1440,62 @@ AC_ARG_WITH([skey], | 34 | @@ -1448,6 +1448,62 @@ AC_ARG_WITH([skey], |
35 | ] | 35 | ] |
36 | ) | 36 | ) |
37 | 37 | ||
@@ -94,7 +94,7 @@ index 216a9fd..5f606ea 100644 | |||
94 | # Check whether user wants to use ldns | 94 | # Check whether user wants to use ldns |
95 | LDNS_MSG="no" | 95 | LDNS_MSG="no" |
96 | AC_ARG_WITH(ldns, | 96 | AC_ARG_WITH(ldns, |
97 | @@ -4920,6 +4976,7 @@ echo " KerberosV support: $KRB5_MSG" | 97 | @@ -4928,6 +4984,7 @@ echo " KerberosV support: $KRB5_MSG" |
98 | echo " SELinux support: $SELINUX_MSG" | 98 | echo " SELinux support: $SELINUX_MSG" |
99 | echo " Smartcard support: $SCARD_MSG" | 99 | echo " Smartcard support: $SCARD_MSG" |
100 | echo " S/KEY support: $SKEY_MSG" | 100 | echo " S/KEY support: $SKEY_MSG" |
@@ -103,10 +103,10 @@ index 216a9fd..5f606ea 100644 | |||
103 | echo " libedit support: $LIBEDIT_MSG" | 103 | echo " libedit support: $LIBEDIT_MSG" |
104 | echo " Solaris process contract support: $SPC_MSG" | 104 | echo " Solaris process contract support: $SPC_MSG" |
105 | diff --git a/sshd.8 b/sshd.8 | 105 | diff --git a/sshd.8 b/sshd.8 |
106 | index 3c53f7c..fc2154c 100644 | 106 | index dcf20f0..5afd10f 100644 |
107 | --- a/sshd.8 | 107 | --- a/sshd.8 |
108 | +++ b/sshd.8 | 108 | +++ b/sshd.8 |
109 | @@ -851,6 +851,12 @@ the user's home directory becomes accessible. | 109 | @@ -853,6 +853,12 @@ the user's home directory becomes accessible. |
110 | This file should be writable only by the user, and need not be | 110 | This file should be writable only by the user, and need not be |
111 | readable by anyone else. | 111 | readable by anyone else. |
112 | .Pp | 112 | .Pp |
@@ -119,7 +119,7 @@ index 3c53f7c..fc2154c 100644 | |||
119 | .It Pa /etc/hosts.equiv | 119 | .It Pa /etc/hosts.equiv |
120 | This file is for host-based authentication (see | 120 | This file is for host-based authentication (see |
121 | .Xr ssh 1 ) . | 121 | .Xr ssh 1 ) . |
122 | @@ -954,6 +960,7 @@ The content of this file is not sensitive; it can be world-readable. | 122 | @@ -956,6 +962,7 @@ The content of this file is not sensitive; it can be world-readable. |
123 | .Xr ssh-keygen 1 , | 123 | .Xr ssh-keygen 1 , |
124 | .Xr ssh-keyscan 1 , | 124 | .Xr ssh-keyscan 1 , |
125 | .Xr chroot 2 , | 125 | .Xr chroot 2 , |
@@ -128,7 +128,7 @@ index 3c53f7c..fc2154c 100644 | |||
128 | .Xr moduli 5 , | 128 | .Xr moduli 5 , |
129 | .Xr sshd_config 5 , | 129 | .Xr sshd_config 5 , |
130 | diff --git a/sshd.c b/sshd.c | 130 | diff --git a/sshd.c b/sshd.c |
131 | index cf38bae..9cbe8c4 100644 | 131 | index 6b85e6c..186ad55 100644 |
132 | --- a/sshd.c | 132 | --- a/sshd.c |
133 | +++ b/sshd.c | 133 | +++ b/sshd.c |
134 | @@ -129,6 +129,13 @@ | 134 | @@ -129,6 +129,13 @@ |
@@ -145,7 +145,7 @@ index cf38bae..9cbe8c4 100644 | |||
145 | #ifndef O_NOCTTY | 145 | #ifndef O_NOCTTY |
146 | #define O_NOCTTY 0 | 146 | #define O_NOCTTY 0 |
147 | #endif | 147 | #endif |
148 | @@ -2133,6 +2140,24 @@ main(int ac, char **av) | 148 | @@ -2141,6 +2148,24 @@ main(int ac, char **av) |
149 | #ifdef SSH_AUDIT_EVENTS | 149 | #ifdef SSH_AUDIT_EVENTS |
150 | audit_connection_from(remote_ip, remote_port); | 150 | audit_connection_from(remote_ip, remote_port); |
151 | #endif | 151 | #endif |
@@ -169,4 +169,4 @@ index cf38bae..9cbe8c4 100644 | |||
169 | +#endif /* LIBWRAP */ | 169 | +#endif /* LIBWRAP */ |
170 | 170 | ||
171 | /* Log the connection. */ | 171 | /* Log the connection. */ |
172 | verbose("Connection from %s port %d on %s port %d", | 172 | laddr = get_local_ipaddr(sock_in); |
diff --git a/debian/patches/scp-quoting.patch b/debian/patches/scp-quoting.patch index 52e709112..fcf389dec 100644 --- a/debian/patches/scp-quoting.patch +++ b/debian/patches/scp-quoting.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 4f55e60d2296feba17b473b2146a75debe29993a Mon Sep 17 00:00:00 2001 | 1 | From 9921536f50f50eb283dea50c77753eb0773d4258 Mon Sep 17 00:00:00 2001 |
2 | From: =?UTF-8?q?Nicolas=20Valc=C3=A1rcel?= <nvalcarcel@ubuntu.com> | 2 | From: =?UTF-8?q?Nicolas=20Valc=C3=A1rcel?= <nvalcarcel@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:09:59 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:59 +0000 |
4 | Subject: Adjust scp quoting in verbose mode | 4 | Subject: Adjust scp quoting in verbose mode |
@@ -17,7 +17,7 @@ Patch-Name: scp-quoting.patch | |||
17 | 1 file changed, 10 insertions(+), 2 deletions(-) | 17 | 1 file changed, 10 insertions(+), 2 deletions(-) |
18 | 18 | ||
19 | diff --git a/scp.c b/scp.c | 19 | diff --git a/scp.c b/scp.c |
20 | index 887b014..afa4a2f 100644 | 20 | index 593fe89..e39294e 100644 |
21 | --- a/scp.c | 21 | --- a/scp.c |
22 | +++ b/scp.c | 22 | +++ b/scp.c |
23 | @@ -190,8 +190,16 @@ do_local_cmd(arglist *a) | 23 | @@ -190,8 +190,16 @@ do_local_cmd(arglist *a) |
diff --git a/debian/patches/selinux-role.patch b/debian/patches/selinux-role.patch index da53671e3..617aa3b11 100644 --- a/debian/patches/selinux-role.patch +++ b/debian/patches/selinux-role.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From b9e97e15e25e4c836cb550213e3ee59b19096f9d Mon Sep 17 00:00:00 2001 | 1 | From 8b3e4a6ddad01fef62d153ac3b033de61a02696e Mon Sep 17 00:00:00 2001 |
2 | From: Manoj Srivastava <srivasta@debian.org> | 2 | From: Manoj Srivastava <srivasta@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:09:49 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:49 +0000 |
4 | Subject: Handle SELinux authorisation roles | 4 | Subject: Handle SELinux authorisation roles |
@@ -32,7 +32,7 @@ Patch-Name: selinux-role.patch | |||
32 | 16 files changed, 104 insertions(+), 31 deletions(-) | 32 | 16 files changed, 104 insertions(+), 31 deletions(-) |
33 | 33 | ||
34 | diff --git a/auth.h b/auth.h | 34 | diff --git a/auth.h b/auth.h |
35 | index db86037..4985cd8 100644 | 35 | index 8b27575..3c2222f 100644 |
36 | --- a/auth.h | 36 | --- a/auth.h |
37 | +++ b/auth.h | 37 | +++ b/auth.h |
38 | @@ -62,6 +62,7 @@ struct Authctxt { | 38 | @@ -62,6 +62,7 @@ struct Authctxt { |
@@ -113,7 +113,7 @@ index 3f49bdc..6eb3cc7 100644 | |||
113 | if (auth2_setup_methods_lists(authctxt) != 0) | 113 | if (auth2_setup_methods_lists(authctxt) != 0) |
114 | packet_disconnect("no authentication methods enabled"); | 114 | packet_disconnect("no authentication methods enabled"); |
115 | diff --git a/monitor.c b/monitor.c | 115 | diff --git a/monitor.c b/monitor.c |
116 | index a2027e5..6ff05e4 100644 | 116 | index bdc2972..3a3d2f0 100644 |
117 | --- a/monitor.c | 117 | --- a/monitor.c |
118 | +++ b/monitor.c | 118 | +++ b/monitor.c |
119 | @@ -127,6 +127,7 @@ int mm_answer_sign(int, Buffer *); | 119 | @@ -127,6 +127,7 @@ int mm_answer_sign(int, Buffer *); |
@@ -180,7 +180,7 @@ index a2027e5..6ff05e4 100644 | |||
180 | return (0); | 180 | return (0); |
181 | } | 181 | } |
182 | 182 | ||
183 | @@ -1540,7 +1566,7 @@ mm_answer_pty(int sock, Buffer *m) | 183 | @@ -1544,7 +1570,7 @@ mm_answer_pty(int sock, Buffer *m) |
184 | res = pty_allocate(&s->ptyfd, &s->ttyfd, s->tty, sizeof(s->tty)); | 184 | res = pty_allocate(&s->ptyfd, &s->ttyfd, s->tty, sizeof(s->tty)); |
185 | if (res == 0) | 185 | if (res == 0) |
186 | goto error; | 186 | goto error; |
@@ -203,10 +203,10 @@ index bc50ade..2d82b8b 100644 | |||
203 | 203 | ||
204 | struct mm_master; | 204 | struct mm_master; |
205 | diff --git a/monitor_wrap.c b/monitor_wrap.c | 205 | diff --git a/monitor_wrap.c b/monitor_wrap.c |
206 | index b667218..5aa9c47 100644 | 206 | index 71e7c08..6ae72a0 100644 |
207 | --- a/monitor_wrap.c | 207 | --- a/monitor_wrap.c |
208 | +++ b/monitor_wrap.c | 208 | +++ b/monitor_wrap.c |
209 | @@ -329,10 +329,10 @@ mm_auth2_read_banner(void) | 209 | @@ -327,10 +327,10 @@ mm_auth2_read_banner(void) |
210 | return (banner); | 210 | return (banner); |
211 | } | 211 | } |
212 | 212 | ||
@@ -219,7 +219,7 @@ index b667218..5aa9c47 100644 | |||
219 | { | 219 | { |
220 | Buffer m; | 220 | Buffer m; |
221 | 221 | ||
222 | @@ -341,12 +341,30 @@ mm_inform_authserv(char *service, char *style) | 222 | @@ -339,12 +339,30 @@ mm_inform_authserv(char *service, char *style) |
223 | buffer_init(&m); | 223 | buffer_init(&m); |
224 | buffer_put_cstring(&m, service); | 224 | buffer_put_cstring(&m, service); |
225 | buffer_put_cstring(&m, style ? style : ""); | 225 | buffer_put_cstring(&m, style ? style : ""); |
@@ -251,7 +251,7 @@ index b667218..5aa9c47 100644 | |||
251 | int | 251 | int |
252 | mm_auth_password(Authctxt *authctxt, char *password) | 252 | mm_auth_password(Authctxt *authctxt, char *password) |
253 | diff --git a/monitor_wrap.h b/monitor_wrap.h | 253 | diff --git a/monitor_wrap.h b/monitor_wrap.h |
254 | index 0c770e8..4d1e899 100644 | 254 | index 9758290..57e740f 100644 |
255 | --- a/monitor_wrap.h | 255 | --- a/monitor_wrap.h |
256 | +++ b/monitor_wrap.h | 256 | +++ b/monitor_wrap.h |
257 | @@ -41,7 +41,8 @@ void mm_log_handler(LogLevel, const char *, void *); | 257 | @@ -41,7 +41,8 @@ void mm_log_handler(LogLevel, const char *, void *); |
@@ -396,7 +396,7 @@ index 1c7a45d..436ae7c 100644 | |||
396 | char *platform_krb5_get_principal_name(const char *); | 396 | char *platform_krb5_get_principal_name(const char *); |
397 | int platform_sys_dir_uid(uid_t); | 397 | int platform_sys_dir_uid(uid_t); |
398 | diff --git a/session.c b/session.c | 398 | diff --git a/session.c b/session.c |
399 | index 54bac36..d4b7725 100644 | 399 | index 5a64715..afac4a5 100644 |
400 | --- a/session.c | 400 | --- a/session.c |
401 | +++ b/session.c | 401 | +++ b/session.c |
402 | @@ -1487,7 +1487,7 @@ safely_chroot(const char *path, uid_t uid) | 402 | @@ -1487,7 +1487,7 @@ safely_chroot(const char *path, uid_t uid) |
@@ -458,7 +458,7 @@ index 6a2f35e..ef6593c 100644 | |||
458 | const char *value); | 458 | const char *value); |
459 | 459 | ||
460 | diff --git a/sshd.c b/sshd.c | 460 | diff --git a/sshd.c b/sshd.c |
461 | index 9cbe8c4..3b4e97c 100644 | 461 | index 186ad55..9ff9e8b 100644 |
462 | --- a/sshd.c | 462 | --- a/sshd.c |
463 | +++ b/sshd.c | 463 | +++ b/sshd.c |
464 | @@ -781,7 +781,7 @@ privsep_postauth(Authctxt *authctxt) | 464 | @@ -781,7 +781,7 @@ privsep_postauth(Authctxt *authctxt) |
@@ -471,7 +471,7 @@ index 9cbe8c4..3b4e97c 100644 | |||
471 | skip: | 471 | skip: |
472 | /* It is safe now to apply the key state */ | 472 | /* It is safe now to apply the key state */ |
473 | diff --git a/sshpty.c b/sshpty.c | 473 | diff --git a/sshpty.c b/sshpty.c |
474 | index d2ff8c1..f7b1f6d 100644 | 474 | index 7bb7641..0e32b39 100644 |
475 | --- a/sshpty.c | 475 | --- a/sshpty.c |
476 | +++ b/sshpty.c | 476 | +++ b/sshpty.c |
477 | @@ -187,7 +187,7 @@ pty_change_window_size(int ptyfd, u_int row, u_int col, | 477 | @@ -187,7 +187,7 @@ pty_change_window_size(int ptyfd, u_int row, u_int col, |
diff --git a/debian/patches/shell-path.patch b/debian/patches/shell-path.patch index 549ef38dd..c12d86132 100644 --- a/debian/patches/shell-path.patch +++ b/debian/patches/shell-path.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 8a8bbc66b8eefd7c679d5769f087209188deafe7 Mon Sep 17 00:00:00 2001 | 1 | From 865180de0e7d4735170faac2d584603fbe0530b2 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:00 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:00 +0000 |
4 | Subject: Look for $SHELL on the path for ProxyCommand/LocalCommand | 4 | Subject: Look for $SHELL on the path for ProxyCommand/LocalCommand |
@@ -16,7 +16,7 @@ Patch-Name: shell-path.patch | |||
16 | 1 file changed, 2 insertions(+), 2 deletions(-) | 16 | 1 file changed, 2 insertions(+), 2 deletions(-) |
17 | 17 | ||
18 | diff --git a/sshconnect.c b/sshconnect.c | 18 | diff --git a/sshconnect.c b/sshconnect.c |
19 | index 9e51506..0073c6e 100644 | 19 | index f41960c..8adc943 100644 |
20 | --- a/sshconnect.c | 20 | --- a/sshconnect.c |
21 | +++ b/sshconnect.c | 21 | +++ b/sshconnect.c |
22 | @@ -231,7 +231,7 @@ ssh_proxy_connect(const char *host, u_short port, const char *proxy_command) | 22 | @@ -231,7 +231,7 @@ ssh_proxy_connect(const char *host, u_short port, const char *proxy_command) |
@@ -28,7 +28,7 @@ index 9e51506..0073c6e 100644 | |||
28 | perror(argv[0]); | 28 | perror(argv[0]); |
29 | exit(1); | 29 | exit(1); |
30 | } | 30 | } |
31 | @@ -1470,7 +1470,7 @@ ssh_local_cmd(const char *args) | 31 | @@ -1471,7 +1471,7 @@ ssh_local_cmd(const char *args) |
32 | if (pid == 0) { | 32 | if (pid == 0) { |
33 | signal(SIGPIPE, SIG_DFL); | 33 | signal(SIGPIPE, SIG_DFL); |
34 | debug3("Executing %s -c \"%s\"", shell, args); | 34 | debug3("Executing %s -c \"%s\"", shell, args); |
diff --git a/debian/patches/sigstop.patch b/debian/patches/sigstop.patch index 80e775dc1..ae65d8285 100644 --- a/debian/patches/sigstop.patch +++ b/debian/patches/sigstop.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From a8e779107942d044d281461c609ec29129dec51e Mon Sep 17 00:00:00 2001 | 1 | From b0b95d9689563856ac4992c90b65ed4fd8f3fae6 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:17 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:17 +0000 |
4 | Subject: Support synchronisation with service supervisor using SIGSTOP | 4 | Subject: Support synchronisation with service supervisor using SIGSTOP |
@@ -13,10 +13,10 @@ Patch-Name: sigstop.patch | |||
13 | 1 file changed, 10 insertions(+) | 13 | 1 file changed, 10 insertions(+) |
14 | 14 | ||
15 | diff --git a/sshd.c b/sshd.c | 15 | diff --git a/sshd.c b/sshd.c |
16 | index 5435968..f8db3ae 100644 | 16 | index 7886d0e..cc8ecaf 100644 |
17 | --- a/sshd.c | 17 | --- a/sshd.c |
18 | +++ b/sshd.c | 18 | +++ b/sshd.c |
19 | @@ -2030,6 +2030,16 @@ main(int ac, char **av) | 19 | @@ -2038,6 +2038,16 @@ main(int ac, char **av) |
20 | } | 20 | } |
21 | } | 21 | } |
22 | 22 | ||
diff --git a/debian/patches/ssh-agent-setgid.patch b/debian/patches/ssh-agent-setgid.patch index b382252a3..aa9fa7e4d 100644 --- a/debian/patches/ssh-agent-setgid.patch +++ b/debian/patches/ssh-agent-setgid.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 101d1dd7f95d75f1862c541a5b8d4032d4623d53 Mon Sep 17 00:00:00 2001 | 1 | From 95d0369e741776a0d18cffb2e4526dee37ebdbd6 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:13 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:13 +0000 |
4 | Subject: Document consequences of ssh-agent being setgid in ssh-agent(1) | 4 | Subject: Document consequences of ssh-agent being setgid in ssh-agent(1) |
@@ -13,10 +13,10 @@ Patch-Name: ssh-agent-setgid.patch | |||
13 | 1 file changed, 15 insertions(+) | 13 | 1 file changed, 15 insertions(+) |
14 | 14 | ||
15 | diff --git a/ssh-agent.1 b/ssh-agent.1 | 15 | diff --git a/ssh-agent.1 b/ssh-agent.1 |
16 | index 6759afe..25de326 100644 | 16 | index d0aa712..2a940d9 100644 |
17 | --- a/ssh-agent.1 | 17 | --- a/ssh-agent.1 |
18 | +++ b/ssh-agent.1 | 18 | +++ b/ssh-agent.1 |
19 | @@ -181,6 +181,21 @@ environment variable holds the agent's process ID. | 19 | @@ -186,6 +186,21 @@ environment variable holds the agent's process ID. |
20 | .Pp | 20 | .Pp |
21 | The agent exits automatically when the command given on the command | 21 | The agent exits automatically when the command given on the command |
22 | line terminates. | 22 | line terminates. |
diff --git a/debian/patches/ssh-argv0.patch b/debian/patches/ssh-argv0.patch index 0fe3b6da4..fce893c91 100644 --- a/debian/patches/ssh-argv0.patch +++ b/debian/patches/ssh-argv0.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From fac628fd57d3d357b86d77987f896d6289240345 Mon Sep 17 00:00:00 2001 | 1 | From abc6170edaed77f07694dd001c87077376157eaa Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:10:10 +0000 | 3 | Date: Sun, 9 Feb 2014 16:10:10 +0000 |
4 | Subject: ssh(1): Refer to ssh-argv0(1) | 4 | Subject: ssh(1): Refer to ssh-argv0(1) |
@@ -18,10 +18,10 @@ Patch-Name: ssh-argv0.patch | |||
18 | 1 file changed, 1 insertion(+) | 18 | 1 file changed, 1 insertion(+) |
19 | 19 | ||
20 | diff --git a/ssh.1 b/ssh.1 | 20 | diff --git a/ssh.1 b/ssh.1 |
21 | index 04de6cf..c8892fe 100644 | 21 | index c3e1266..2178863 100644 |
22 | --- a/ssh.1 | 22 | --- a/ssh.1 |
23 | +++ b/ssh.1 | 23 | +++ b/ssh.1 |
24 | @@ -1471,6 +1471,7 @@ if an error occurred. | 24 | @@ -1487,6 +1487,7 @@ if an error occurred. |
25 | .Xr sftp 1 , | 25 | .Xr sftp 1 , |
26 | .Xr ssh-add 1 , | 26 | .Xr ssh-add 1 , |
27 | .Xr ssh-agent 1 , | 27 | .Xr ssh-agent 1 , |
diff --git a/debian/patches/ssh-vulnkey-compat.patch b/debian/patches/ssh-vulnkey-compat.patch index 28b98f527..7af91e955 100644 --- a/debian/patches/ssh-vulnkey-compat.patch +++ b/debian/patches/ssh-vulnkey-compat.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From d027dea6b4b659a7ad537e452db563763302eabd Mon Sep 17 00:00:00 2001 | 1 | From dd02db02d322c9db67d42fe491727854f951c828 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@ubuntu.com> | 2 | From: Colin Watson <cjwatson@ubuntu.com> |
3 | Date: Sun, 9 Feb 2014 16:09:50 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:50 +0000 |
4 | Subject: Accept obsolete ssh-vulnkey configuration options | 4 | Subject: Accept obsolete ssh-vulnkey configuration options |
@@ -17,7 +17,7 @@ Patch-Name: ssh-vulnkey-compat.patch | |||
17 | 2 files changed, 2 insertions(+) | 17 | 2 files changed, 2 insertions(+) |
18 | 18 | ||
19 | diff --git a/readconf.c b/readconf.c | 19 | diff --git a/readconf.c b/readconf.c |
20 | index 254dbce..278fe15 100644 | 20 | index 68dac76..85eea48 100644 |
21 | --- a/readconf.c | 21 | --- a/readconf.c |
22 | +++ b/readconf.c | 22 | +++ b/readconf.c |
23 | @@ -180,6 +180,7 @@ static struct { | 23 | @@ -180,6 +180,7 @@ static struct { |
@@ -29,10 +29,10 @@ index 254dbce..278fe15 100644 | |||
29 | { "pubkeyauthentication", oPubkeyAuthentication }, | 29 | { "pubkeyauthentication", oPubkeyAuthentication }, |
30 | { "dsaauthentication", oPubkeyAuthentication }, /* alias */ | 30 | { "dsaauthentication", oPubkeyAuthentication }, /* alias */ |
31 | diff --git a/servconf.c b/servconf.c | 31 | diff --git a/servconf.c b/servconf.c |
32 | index f68c0d0..b3a2841 100644 | 32 | index 2f7f41e..8a5bd7b 100644 |
33 | --- a/servconf.c | 33 | --- a/servconf.c |
34 | +++ b/servconf.c | 34 | +++ b/servconf.c |
35 | @@ -503,6 +503,7 @@ static struct { | 35 | @@ -510,6 +510,7 @@ static struct { |
36 | { "x11uselocalhost", sX11UseLocalhost, SSHCFG_ALL }, | 36 | { "x11uselocalhost", sX11UseLocalhost, SSHCFG_ALL }, |
37 | { "xauthlocation", sXAuthLocation, SSHCFG_GLOBAL }, | 37 | { "xauthlocation", sXAuthLocation, SSHCFG_GLOBAL }, |
38 | { "strictmodes", sStrictModes, SSHCFG_GLOBAL }, | 38 | { "strictmodes", sStrictModes, SSHCFG_GLOBAL }, |
diff --git a/debian/patches/ssh1-keepalive.patch b/debian/patches/ssh1-keepalive.patch index e6bc72440..48308bcff 100644 --- a/debian/patches/ssh1-keepalive.patch +++ b/debian/patches/ssh1-keepalive.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 396f7d932b391fc92ac7ccdf8813f49564e2bbab Mon Sep 17 00:00:00 2001 | 1 | From b3d7661669a0f5255ede81f82c25951aeba9576c Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:09:51 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:51 +0000 |
4 | Subject: Partial server keep-alive implementation for SSH1 | 4 | Subject: Partial server keep-alive implementation for SSH1 |
@@ -13,10 +13,10 @@ Patch-Name: ssh1-keepalive.patch | |||
13 | 2 files changed, 19 insertions(+), 11 deletions(-) | 13 | 2 files changed, 19 insertions(+), 11 deletions(-) |
14 | 14 | ||
15 | diff --git a/clientloop.c b/clientloop.c | 15 | diff --git a/clientloop.c b/clientloop.c |
16 | index 7df9413..156a196 100644 | 16 | index 77d5498..964353d 100644 |
17 | --- a/clientloop.c | 17 | --- a/clientloop.c |
18 | +++ b/clientloop.c | 18 | +++ b/clientloop.c |
19 | @@ -564,16 +564,21 @@ client_global_request_reply(int type, u_int32_t seq, void *ctxt) | 19 | @@ -577,16 +577,21 @@ client_global_request_reply(int type, u_int32_t seq, void *ctxt) |
20 | static void | 20 | static void |
21 | server_alive_check(void) | 21 | server_alive_check(void) |
22 | { | 22 | { |
@@ -47,7 +47,7 @@ index 7df9413..156a196 100644 | |||
47 | } | 47 | } |
48 | 48 | ||
49 | /* | 49 | /* |
50 | @@ -635,7 +640,7 @@ client_wait_until_can_do_something(fd_set **readsetp, fd_set **writesetp, | 50 | @@ -648,7 +653,7 @@ client_wait_until_can_do_something(fd_set **readsetp, fd_set **writesetp, |
51 | */ | 51 | */ |
52 | 52 | ||
53 | timeout_secs = INT_MAX; /* we use INT_MAX to mean no timeout */ | 53 | timeout_secs = INT_MAX; /* we use INT_MAX to mean no timeout */ |
@@ -57,10 +57,10 @@ index 7df9413..156a196 100644 | |||
57 | server_alive_time = now + options.server_alive_interval; | 57 | server_alive_time = now + options.server_alive_interval; |
58 | } | 58 | } |
59 | diff --git a/ssh_config.5 b/ssh_config.5 | 59 | diff --git a/ssh_config.5 b/ssh_config.5 |
60 | index 4476171..dd35dd8 100644 | 60 | index b840261..f7510b6 100644 |
61 | --- a/ssh_config.5 | 61 | --- a/ssh_config.5 |
62 | +++ b/ssh_config.5 | 62 | +++ b/ssh_config.5 |
63 | @@ -1409,7 +1409,10 @@ If, for example, | 63 | @@ -1414,7 +1414,10 @@ If, for example, |
64 | .Cm ServerAliveCountMax | 64 | .Cm ServerAliveCountMax |
65 | is left at the default, if the server becomes unresponsive, | 65 | is left at the default, if the server becomes unresponsive, |
66 | ssh will disconnect after approximately 45 seconds. | 66 | ssh will disconnect after approximately 45 seconds. |
diff --git a/debian/patches/syslog-level-silent.patch b/debian/patches/syslog-level-silent.patch index d760e6c19..e829e50fd 100644 --- a/debian/patches/syslog-level-silent.patch +++ b/debian/patches/syslog-level-silent.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From fbe5bd9e957ea90404158b3a3c11a6b91fe6f010 Mon Sep 17 00:00:00 2001 | 1 | From 9e6bb8525886d99876eb43a3b39c96bdf3032146 Mon Sep 17 00:00:00 2001 |
2 | From: Jonathan David Amery <jdamery@ysolde.ucam.org> | 2 | From: Jonathan David Amery <jdamery@ysolde.ucam.org> |
3 | Date: Sun, 9 Feb 2014 16:09:54 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:54 +0000 |
4 | Subject: "LogLevel SILENT" compatibility | 4 | Subject: "LogLevel SILENT" compatibility |
@@ -33,10 +33,10 @@ index 32e1d2e..53e7b65 100644 | |||
33 | { "FATAL", SYSLOG_LEVEL_FATAL }, | 33 | { "FATAL", SYSLOG_LEVEL_FATAL }, |
34 | { "ERROR", SYSLOG_LEVEL_ERROR }, | 34 | { "ERROR", SYSLOG_LEVEL_ERROR }, |
35 | diff --git a/ssh.c b/ssh.c | 35 | diff --git a/ssh.c b/ssh.c |
36 | index 0ad82f0..e8be6fe 100644 | 36 | index 3fd5a94..d99f7ef 100644 |
37 | --- a/ssh.c | 37 | --- a/ssh.c |
38 | +++ b/ssh.c | 38 | +++ b/ssh.c |
39 | @@ -1107,7 +1107,7 @@ main(int ac, char **av) | 39 | @@ -1105,7 +1105,7 @@ main(int ac, char **av) |
40 | /* Do not allocate a tty if stdin is not a tty. */ | 40 | /* Do not allocate a tty if stdin is not a tty. */ |
41 | if ((!isatty(fileno(stdin)) || stdin_null_flag) && | 41 | if ((!isatty(fileno(stdin)) || stdin_null_flag) && |
42 | options.request_tty != REQUEST_TTY_FORCE) { | 42 | options.request_tty != REQUEST_TTY_FORCE) { |
diff --git a/debian/patches/user-group-modes.patch b/debian/patches/user-group-modes.patch index 8ce3d1f71..9213c1f29 100644 --- a/debian/patches/user-group-modes.patch +++ b/debian/patches/user-group-modes.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 39b2121148a0aa016a648446823c8f02c5fd95b3 Mon Sep 17 00:00:00 2001 | 1 | From 209c51110996719eab04236d72f776eed6bd8226 Mon Sep 17 00:00:00 2001 |
2 | From: Colin Watson <cjwatson@debian.org> | 2 | From: Colin Watson <cjwatson@debian.org> |
3 | Date: Sun, 9 Feb 2014 16:09:58 +0000 | 3 | Date: Sun, 9 Feb 2014 16:09:58 +0000 |
4 | Subject: Allow harmless group-writability | 4 | Subject: Allow harmless group-writability |
@@ -52,10 +52,10 @@ index ee9e827..2ff2cff 100644 | |||
52 | pw->pw_name, buf); | 52 | pw->pw_name, buf); |
53 | auth_debug_add("Bad file modes for %.200s", buf); | 53 | auth_debug_add("Bad file modes for %.200s", buf); |
54 | diff --git a/auth.c b/auth.c | 54 | diff --git a/auth.c b/auth.c |
55 | index f9b7673..41e3876 100644 | 55 | index e6c094d..a99c475 100644 |
56 | --- a/auth.c | 56 | --- a/auth.c |
57 | +++ b/auth.c | 57 | +++ b/auth.c |
58 | @@ -423,8 +423,7 @@ check_key_in_hostfiles(struct passwd *pw, Key *key, const char *host, | 58 | @@ -422,8 +422,7 @@ check_key_in_hostfiles(struct passwd *pw, Key *key, const char *host, |
59 | user_hostfile = tilde_expand_filename(userfile, pw->pw_uid); | 59 | user_hostfile = tilde_expand_filename(userfile, pw->pw_uid); |
60 | if (options.strict_modes && | 60 | if (options.strict_modes && |
61 | (stat(user_hostfile, &st) == 0) && | 61 | (stat(user_hostfile, &st) == 0) && |
@@ -65,7 +65,7 @@ index f9b7673..41e3876 100644 | |||
65 | logit("Authentication refused for %.100s: " | 65 | logit("Authentication refused for %.100s: " |
66 | "bad owner or modes for %.200s", | 66 | "bad owner or modes for %.200s", |
67 | pw->pw_name, user_hostfile); | 67 | pw->pw_name, user_hostfile); |
68 | @@ -486,8 +485,7 @@ auth_secure_path(const char *name, struct stat *stp, const char *pw_dir, | 68 | @@ -485,8 +484,7 @@ auth_secure_path(const char *name, struct stat *stp, const char *pw_dir, |
69 | snprintf(err, errlen, "%s is not a regular file", buf); | 69 | snprintf(err, errlen, "%s is not a regular file", buf); |
70 | return -1; | 70 | return -1; |
71 | } | 71 | } |
@@ -75,7 +75,7 @@ index f9b7673..41e3876 100644 | |||
75 | snprintf(err, errlen, "bad ownership or modes for file %s", | 75 | snprintf(err, errlen, "bad ownership or modes for file %s", |
76 | buf); | 76 | buf); |
77 | return -1; | 77 | return -1; |
78 | @@ -502,8 +500,7 @@ auth_secure_path(const char *name, struct stat *stp, const char *pw_dir, | 78 | @@ -501,8 +499,7 @@ auth_secure_path(const char *name, struct stat *stp, const char *pw_dir, |
79 | strlcpy(buf, cp, sizeof(buf)); | 79 | strlcpy(buf, cp, sizeof(buf)); |
80 | 80 | ||
81 | if (stat(buf, &st) < 0 || | 81 | if (stat(buf, &st) < 0 || |
@@ -86,7 +86,7 @@ index f9b7673..41e3876 100644 | |||
86 | "bad ownership or modes for directory %s", buf); | 86 | "bad ownership or modes for directory %s", buf); |
87 | return -1; | 87 | return -1; |
88 | diff --git a/misc.c b/misc.c | 88 | diff --git a/misc.c b/misc.c |
89 | index 38af3df..d745480 100644 | 89 | index ddd2b2d..1c063ea 100644 |
90 | --- a/misc.c | 90 | --- a/misc.c |
91 | +++ b/misc.c | 91 | +++ b/misc.c |
92 | @@ -50,8 +50,9 @@ | 92 | @@ -50,8 +50,9 @@ |
@@ -216,7 +216,7 @@ index f35ec39..9a23e6e 100644 | |||
216 | - return 0; | 216 | - return 0; |
217 | -} | 217 | -} |
218 | diff --git a/readconf.c b/readconf.c | 218 | diff --git a/readconf.c b/readconf.c |
219 | index 1d2d596..2ef8d7b 100644 | 219 | index 5c5890c..5f6c37f 100644 |
220 | --- a/readconf.c | 220 | --- a/readconf.c |
221 | +++ b/readconf.c | 221 | +++ b/readconf.c |
222 | @@ -39,6 +39,8 @@ | 222 | @@ -39,6 +39,8 @@ |
@@ -239,10 +239,10 @@ index 1d2d596..2ef8d7b 100644 | |||
239 | } | 239 | } |
240 | 240 | ||
241 | diff --git a/ssh.1 b/ssh.1 | 241 | diff --git a/ssh.1 b/ssh.1 |
242 | index da64b71..53c711a 100644 | 242 | index df7ac86..c84196f 100644 |
243 | --- a/ssh.1 | 243 | --- a/ssh.1 |
244 | +++ b/ssh.1 | 244 | +++ b/ssh.1 |
245 | @@ -1355,6 +1355,8 @@ The file format and configuration options are described in | 245 | @@ -1371,6 +1371,8 @@ The file format and configuration options are described in |
246 | .Xr ssh_config 5 . | 246 | .Xr ssh_config 5 . |
247 | Because of the potential for abuse, this file must have strict permissions: | 247 | Because of the potential for abuse, this file must have strict permissions: |
248 | read/write for the user, and not writable by others. | 248 | read/write for the user, and not writable by others. |
@@ -252,10 +252,10 @@ index da64b71..53c711a 100644 | |||
252 | .It Pa ~/.ssh/environment | 252 | .It Pa ~/.ssh/environment |
253 | Contains additional definitions for environment variables; see | 253 | Contains additional definitions for environment variables; see |
254 | diff --git a/ssh_config.5 b/ssh_config.5 | 254 | diff --git a/ssh_config.5 b/ssh_config.5 |
255 | index 250c0d1..8abcf40 100644 | 255 | index 21d3e94..1d0c52b 100644 |
256 | --- a/ssh_config.5 | 256 | --- a/ssh_config.5 |
257 | +++ b/ssh_config.5 | 257 | +++ b/ssh_config.5 |
258 | @@ -1701,6 +1701,8 @@ The format of this file is described above. | 258 | @@ -1706,6 +1706,8 @@ The format of this file is described above. |
259 | This file is used by the SSH client. | 259 | This file is used by the SSH client. |
260 | Because of the potential for abuse, this file must have strict permissions: | 260 | Because of the potential for abuse, this file must have strict permissions: |
261 | read/write for the user, and not accessible by others. | 261 | read/write for the user, and not accessible by others. |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dh.c,v 1.55 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: dh.c,v 1.57 2015/05/27 23:39:18 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Niels Provos. All rights reserved. | 3 | * Copyright (c) 2000 Niels Provos. All rights reserved. |
4 | * | 4 | * |
@@ -155,7 +155,7 @@ choose_dh(int min, int wantbits, int max) | |||
155 | (f = fopen(_PATH_DH_PRIMES, "r")) == NULL) { | 155 | (f = fopen(_PATH_DH_PRIMES, "r")) == NULL) { |
156 | logit("WARNING: %s does not exist, using fixed modulus", | 156 | logit("WARNING: %s does not exist, using fixed modulus", |
157 | _PATH_DH_MODULI); | 157 | _PATH_DH_MODULI); |
158 | return (dh_new_group14()); | 158 | return (dh_new_group_fallback(max)); |
159 | } | 159 | } |
160 | 160 | ||
161 | linenum = 0; | 161 | linenum = 0; |
@@ -183,7 +183,7 @@ choose_dh(int min, int wantbits, int max) | |||
183 | if (bestcount == 0) { | 183 | if (bestcount == 0) { |
184 | fclose(f); | 184 | fclose(f); |
185 | logit("WARNING: no suitable primes in %s", _PATH_DH_PRIMES); | 185 | logit("WARNING: no suitable primes in %s", _PATH_DH_PRIMES); |
186 | return (dh_new_group14()); | 186 | return (dh_new_group_fallback(max)); |
187 | } | 187 | } |
188 | 188 | ||
189 | linenum = 0; | 189 | linenum = 0; |
@@ -204,7 +204,7 @@ choose_dh(int min, int wantbits, int max) | |||
204 | if (linenum != which+1) { | 204 | if (linenum != which+1) { |
205 | logit("WARNING: line %d disappeared in %s, giving up", | 205 | logit("WARNING: line %d disappeared in %s, giving up", |
206 | which, _PATH_DH_PRIMES); | 206 | which, _PATH_DH_PRIMES); |
207 | return (dh_new_group14()); | 207 | return (dh_new_group_fallback(max)); |
208 | } | 208 | } |
209 | 209 | ||
210 | return (dh_new_group(dhg.g, dhg.p)); | 210 | return (dh_new_group(dhg.g, dhg.p)); |
@@ -261,7 +261,7 @@ dh_gen_key(DH *dh, int need) | |||
261 | 261 | ||
262 | if (need < 0 || dh->p == NULL || | 262 | if (need < 0 || dh->p == NULL || |
263 | (pbits = BN_num_bits(dh->p)) <= 0 || | 263 | (pbits = BN_num_bits(dh->p)) <= 0 || |
264 | need > INT_MAX / 2 || 2 * need >= pbits) | 264 | need > INT_MAX / 2 || 2 * need > pbits) |
265 | return SSH_ERR_INVALID_ARGUMENT; | 265 | return SSH_ERR_INVALID_ARGUMENT; |
266 | dh->length = MIN(need * 2, pbits - 1); | 266 | dh->length = MIN(need * 2, pbits - 1); |
267 | if (DH_generate_key(dh) == 0 || | 267 | if (DH_generate_key(dh) == 0 || |
@@ -339,6 +339,45 @@ dh_new_group14(void) | |||
339 | } | 339 | } |
340 | 340 | ||
341 | /* | 341 | /* |
342 | * 4k bit fallback group used by DH-GEX if moduli file cannot be read. | ||
343 | * Source: MODP group 16 from RFC3526. | ||
344 | */ | ||
345 | DH * | ||
346 | dh_new_group_fallback(int max) | ||
347 | { | ||
348 | static char *gen = "2", *group16 = | ||
349 | "FFFFFFFF" "FFFFFFFF" "C90FDAA2" "2168C234" "C4C6628B" "80DC1CD1" | ||
350 | "29024E08" "8A67CC74" "020BBEA6" "3B139B22" "514A0879" "8E3404DD" | ||
351 | "EF9519B3" "CD3A431B" "302B0A6D" "F25F1437" "4FE1356D" "6D51C245" | ||
352 | "E485B576" "625E7EC6" "F44C42E9" "A637ED6B" "0BFF5CB6" "F406B7ED" | ||
353 | "EE386BFB" "5A899FA5" "AE9F2411" "7C4B1FE6" "49286651" "ECE45B3D" | ||
354 | "C2007CB8" "A163BF05" "98DA4836" "1C55D39A" "69163FA8" "FD24CF5F" | ||
355 | "83655D23" "DCA3AD96" "1C62F356" "208552BB" "9ED52907" "7096966D" | ||
356 | "670C354E" "4ABC9804" "F1746C08" "CA18217C" "32905E46" "2E36CE3B" | ||
357 | "E39E772C" "180E8603" "9B2783A2" "EC07A28F" "B5C55DF0" "6F4C52C9" | ||
358 | "DE2BCBF6" "95581718" "3995497C" "EA956AE5" "15D22618" "98FA0510" | ||
359 | "15728E5A" "8AAAC42D" "AD33170D" "04507A33" "A85521AB" "DF1CBA64" | ||
360 | "ECFB8504" "58DBEF0A" "8AEA7157" "5D060C7D" "B3970F85" "A6E1E4C7" | ||
361 | "ABF5AE8C" "DB0933D7" "1E8C94E0" "4A25619D" "CEE3D226" "1AD2EE6B" | ||
362 | "F12FFA06" "D98A0864" "D8760273" "3EC86A64" "521F2B18" "177B200C" | ||
363 | "BBE11757" "7A615D6C" "770988C0" "BAD946E2" "08E24FA0" "74E5AB31" | ||
364 | "43DB5BFC" "E0FD108E" "4B82D120" "A9210801" "1A723C12" "A787E6D7" | ||
365 | "88719A10" "BDBA5B26" "99C32718" "6AF4E23C" "1A946834" "B6150BDA" | ||
366 | "2583E9CA" "2AD44CE8" "DBBBC2DB" "04DE8EF9" "2E8EFC14" "1FBECAA6" | ||
367 | "287C5947" "4E6BC05D" "99B2964F" "A090C3A2" "233BA186" "515BE7ED" | ||
368 | "1F612970" "CEE2D7AF" "B81BDD76" "2170481C" "D0069127" "D5B05AA9" | ||
369 | "93B4EA98" "8D8FDDC1" "86FFB7DC" "90A6C08F" "4DF435C9" "34063199" | ||
370 | "FFFFFFFF" "FFFFFFFF"; | ||
371 | |||
372 | if (max < 4096) { | ||
373 | debug3("requested max size %d, using 2k bit group 14", max); | ||
374 | return dh_new_group14(); | ||
375 | } | ||
376 | debug3("using 4k bit group 16"); | ||
377 | return (dh_new_group_asc(gen, group16)); | ||
378 | } | ||
379 | |||
380 | /* | ||
342 | * Estimates the group order for a Diffie-Hellman group that has an | 381 | * Estimates the group order for a Diffie-Hellman group that has an |
343 | * attack complexity approximately the same as O(2**bits). | 382 | * attack complexity approximately the same as O(2**bits). |
344 | * Values from NIST Special Publication 800-57: Recommendation for Key | 383 | * Values from NIST Special Publication 800-57: Recommendation for Key |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dh.h,v 1.12 2015/01/19 20:16:15 markus Exp $ */ | 1 | /* $OpenBSD: dh.h,v 1.13 2015/05/27 23:39:18 dtucker Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2000 Niels Provos. All rights reserved. | 4 | * Copyright (c) 2000 Niels Provos. All rights reserved. |
@@ -37,6 +37,7 @@ DH *dh_new_group_asc(const char *, const char *); | |||
37 | DH *dh_new_group(BIGNUM *, BIGNUM *); | 37 | DH *dh_new_group(BIGNUM *, BIGNUM *); |
38 | DH *dh_new_group1(void); | 38 | DH *dh_new_group1(void); |
39 | DH *dh_new_group14(void); | 39 | DH *dh_new_group14(void); |
40 | DH *dh_new_group_fallback(int); | ||
40 | 41 | ||
41 | int dh_gen_key(DH *, int); | 42 | int dh_gen_key(DH *, int); |
42 | int dh_pub_is_valid(DH *, BIGNUM *); | 43 | int dh_pub_is_valid(DH *, BIGNUM *); |
diff --git a/digest-libc.c b/digest-libc.c index a216e784e..40db00274 100644 --- a/digest-libc.c +++ b/digest-libc.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: digest-libc.c,v 1.4 2014/12/21 22:27:56 djm Exp $ */ | 1 | /* $OpenBSD: digest-libc.c,v 1.5 2015/05/05 02:48:17 jsg Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2013 Damien Miller <djm@mindrot.org> | 3 | * Copyright (c) 2013 Damien Miller <djm@mindrot.org> |
4 | * Copyright (c) 2014 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2014 Markus Friedl. All rights reserved. |
@@ -172,7 +172,7 @@ ssh_digest_start(int alg) | |||
172 | const struct ssh_digest *digest = ssh_digest_by_alg(alg); | 172 | const struct ssh_digest *digest = ssh_digest_by_alg(alg); |
173 | struct ssh_digest_ctx *ret; | 173 | struct ssh_digest_ctx *ret; |
174 | 174 | ||
175 | if (digest == NULL || (ret = calloc(1, sizeof(ret))) == NULL) | 175 | if (digest == NULL || (ret = calloc(1, sizeof(*ret))) == NULL) |
176 | return NULL; | 176 | return NULL; |
177 | if ((ret->mdctx = calloc(1, digest->ctx_len)) == NULL) { | 177 | if ((ret->mdctx = calloc(1, digest->ctx_len)) == NULL) { |
178 | free(ret); | 178 | free(ret); |
diff --git a/dispatch.c b/dispatch.c index afe618221..aac933e0a 100644 --- a/dispatch.c +++ b/dispatch.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dispatch.c,v 1.26 2015/02/12 20:34:19 dtucker Exp $ */ | 1 | /* $OpenBSD: dispatch.c,v 1.27 2015/05/01 07:10:01 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -137,22 +137,6 @@ ssh_dispatch_run_fatal(struct ssh *ssh, int mode, volatile sig_atomic_t *done, | |||
137 | { | 137 | { |
138 | int r; | 138 | int r; |
139 | 139 | ||
140 | if ((r = ssh_dispatch_run(ssh, mode, done, ctxt)) != 0) { | 140 | if ((r = ssh_dispatch_run(ssh, mode, done, ctxt)) != 0) |
141 | switch (r) { | 141 | sshpkt_fatal(ssh, __func__, r); |
142 | case SSH_ERR_CONN_CLOSED: | ||
143 | logit("Connection closed by %.200s", | ||
144 | ssh_remote_ipaddr(ssh)); | ||
145 | cleanup_exit(255); | ||
146 | case SSH_ERR_CONN_TIMEOUT: | ||
147 | logit("Connection to %.200s timed out while " | ||
148 | "waiting to read", ssh_remote_ipaddr(ssh)); | ||
149 | cleanup_exit(255); | ||
150 | case SSH_ERR_DISCONNECTED: | ||
151 | logit("Disconnected from %.200s", | ||
152 | ssh_remote_ipaddr(ssh)); | ||
153 | cleanup_exit(255); | ||
154 | default: | ||
155 | fatal("%s: %s", __func__, ssh_err(r)); | ||
156 | } | ||
157 | } | ||
158 | } | 142 | } |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dns.h,v 1.14 2015/01/15 09:40:00 djm Exp $ */ | 1 | /* $OpenBSD: dns.h,v 1.15 2015/05/08 06:45:13 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2003 Wesley Griffin. All rights reserved. | 4 | * Copyright (c) 2003 Wesley Griffin. All rights reserved. |
@@ -33,7 +33,7 @@ enum sshfp_types { | |||
33 | SSHFP_KEY_RSA = 1, | 33 | SSHFP_KEY_RSA = 1, |
34 | SSHFP_KEY_DSA = 2, | 34 | SSHFP_KEY_DSA = 2, |
35 | SSHFP_KEY_ECDSA = 3, | 35 | SSHFP_KEY_ECDSA = 3, |
36 | SSHFP_KEY_ED25519 = 4 | 36 | SSHFP_KEY_ED25519 = 4 |
37 | }; | 37 | }; |
38 | 38 | ||
39 | enum sshfp_hashes { | 39 | enum sshfp_hashes { |
diff --git a/groupaccess.c b/groupaccess.c index 4fca04471..2518c8487 100644 --- a/groupaccess.c +++ b/groupaccess.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: groupaccess.c,v 1.15 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: groupaccess.c,v 1.16 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2001 Kevin Steves. All rights reserved. | 3 | * Copyright (c) 2001 Kevin Steves. All rights reserved. |
4 | * | 4 | * |
@@ -97,11 +97,9 @@ int | |||
97 | ga_match_pattern_list(const char *group_pattern) | 97 | ga_match_pattern_list(const char *group_pattern) |
98 | { | 98 | { |
99 | int i, found = 0; | 99 | int i, found = 0; |
100 | size_t len = strlen(group_pattern); | ||
101 | 100 | ||
102 | for (i = 0; i < ngroups; i++) { | 101 | for (i = 0; i < ngroups; i++) { |
103 | switch (match_pattern_list(groups_byname[i], | 102 | switch (match_pattern_list(groups_byname[i], group_pattern, 0)) { |
104 | group_pattern, len, 0)) { | ||
105 | case -1: | 103 | case -1: |
106 | return 0; /* Negated match wins */ | 104 | return 0; /* Negated match wins */ |
107 | case 0: | 105 | case 0: |
diff --git a/gss-genr.c b/gss-genr.c index 5610f0bf2..b4eca3feb 100644 --- a/gss-genr.c +++ b/gss-genr.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <limits.h> | 34 | #include <limits.h> |
35 | #include <stdarg.h> | 35 | #include <stdarg.h> |
36 | #include <string.h> | 36 | #include <string.h> |
37 | #include <signal.h> | ||
37 | #include <unistd.h> | 38 | #include <unistd.h> |
38 | 39 | ||
39 | #include "xmalloc.h" | 40 | #include "xmalloc.h" |
diff --git a/gss-serv.c b/gss-serv.c index 539862d67..2f6baf70d 100644 --- a/gss-serv.c +++ b/gss-serv.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: gss-serv.c,v 1.28 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: gss-serv.c,v 1.29 2015/05/22 03:50:02 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. | 4 | * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. |
@@ -52,6 +52,8 @@ | |||
52 | 52 | ||
53 | extern ServerOptions options; | 53 | extern ServerOptions options; |
54 | 54 | ||
55 | extern ServerOptions options; | ||
56 | |||
55 | static ssh_gssapi_client gssapi_client = | 57 | static ssh_gssapi_client gssapi_client = |
56 | { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, | 58 | { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, |
57 | GSS_C_NO_CREDENTIAL, GSS_C_NO_NAME, NULL, | 59 | GSS_C_NO_CREDENTIAL, GSS_C_NO_NAME, NULL, |
@@ -109,7 +111,7 @@ ssh_gssapi_acquire_cred(Gssctxt *ctx) | |||
109 | gss_create_empty_oid_set(&status, &oidset); | 111 | gss_create_empty_oid_set(&status, &oidset); |
110 | gss_add_oid_set_member(&status, ctx->oid, &oidset); | 112 | gss_add_oid_set_member(&status, ctx->oid, &oidset); |
111 | 113 | ||
112 | if (gethostname(lname, sizeof(lname))) { | 114 | if (gethostname(lname, MAXHOSTNAMELEN)) { |
113 | gss_release_oid_set(&status, &oidset); | 115 | gss_release_oid_set(&status, &oidset); |
114 | return (-1); | 116 | return (-1); |
115 | } | 117 | } |
@@ -120,7 +122,7 @@ ssh_gssapi_acquire_cred(Gssctxt *ctx) | |||
120 | } | 122 | } |
121 | 123 | ||
122 | if ((ctx->major = gss_acquire_cred(&ctx->minor, | 124 | if ((ctx->major = gss_acquire_cred(&ctx->minor, |
123 | ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, | 125 | ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, |
124 | NULL, NULL))) | 126 | NULL, NULL))) |
125 | ssh_gssapi_error(ctx); | 127 | ssh_gssapi_error(ctx); |
126 | 128 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: hmac.c,v 1.11 2015/01/15 21:37:14 markus Exp $ */ | 1 | /* $OpenBSD: hmac.c,v 1.12 2015/03/24 20:03:44 markus Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2014 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2014 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -154,7 +154,7 @@ hmac_test(void *key, size_t klen, void *m, size_t mlen, u_char *e, size_t elen) | |||
154 | 154 | ||
155 | if (memcmp(e, digest, elen)) { | 155 | if (memcmp(e, digest, elen)) { |
156 | for (i = 0; i < elen; i++) | 156 | for (i = 0; i < elen; i++) |
157 | printf("[%zd] %2.2x %2.2x\n", i, e[i], digest[i]); | 157 | printf("[%zu] %2.2x %2.2x\n", i, e[i], digest[i]); |
158 | printf("mismatch\n"); | 158 | printf("mismatch\n"); |
159 | } else | 159 | } else |
160 | printf("ok\n"); | 160 | printf("ok\n"); |
diff --git a/hostfile.c b/hostfile.c index b235795e6..2850a4793 100644 --- a/hostfile.c +++ b/hostfile.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: hostfile.c,v 1.64 2015/02/16 22:08:57 djm Exp $ */ | 1 | /* $OpenBSD: hostfile.c,v 1.66 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -242,7 +242,8 @@ record_hostkey(struct hostkey_foreach_line *l, void *_ctx) | |||
242 | struct hostkey_entry *tmp; | 242 | struct hostkey_entry *tmp; |
243 | 243 | ||
244 | if (l->status == HKF_STATUS_INVALID) { | 244 | if (l->status == HKF_STATUS_INVALID) { |
245 | error("%s:%ld: parse error in hostkeys file", | 245 | /* XXX make this verbose() in the future */ |
246 | debug("%s:%ld: parse error in hostkeys file", | ||
246 | l->path, l->linenum); | 247 | l->path, l->linenum); |
247 | return 0; | 248 | return 0; |
248 | } | 249 | } |
@@ -662,7 +663,7 @@ match_maybe_hashed(const char *host, const char *names, int *was_hashed) | |||
662 | return nlen == strlen(hashed_host) && | 663 | return nlen == strlen(hashed_host) && |
663 | strncmp(hashed_host, names, nlen) == 0; | 664 | strncmp(hashed_host, names, nlen) == 0; |
664 | } | 665 | } |
665 | return match_hostname(host, names, nlen) == 1; | 666 | return match_hostname(host, names) == 1; |
666 | } | 667 | } |
667 | 668 | ||
668 | int | 669 | int |
@@ -810,7 +811,7 @@ hostkeys_foreach(const char *path, hostkeys_foreach_fn *callback, void *ctx, | |||
810 | memcpy(ktype, lineinfo.rawkey, l); | 811 | memcpy(ktype, lineinfo.rawkey, l); |
811 | ktype[l] = '\0'; | 812 | ktype[l] = '\0'; |
812 | lineinfo.keytype = sshkey_type_from_name(ktype); | 813 | lineinfo.keytype = sshkey_type_from_name(ktype); |
813 | #ifdef WITH_SSH1 | 814 | |
814 | /* | 815 | /* |
815 | * Assume RSA1 if the first component is a short | 816 | * Assume RSA1 if the first component is a short |
816 | * decimal number. | 817 | * decimal number. |
@@ -818,7 +819,7 @@ hostkeys_foreach(const char *path, hostkeys_foreach_fn *callback, void *ctx, | |||
818 | if (lineinfo.keytype == KEY_UNSPEC && l < 8 && | 819 | if (lineinfo.keytype == KEY_UNSPEC && l < 8 && |
819 | strspn(ktype, "0123456789") == l) | 820 | strspn(ktype, "0123456789") == l) |
820 | lineinfo.keytype = KEY_RSA1; | 821 | lineinfo.keytype = KEY_RSA1; |
821 | #endif | 822 | |
822 | /* | 823 | /* |
823 | * Check that something other than whitespace follows | 824 | * Check that something other than whitespace follows |
824 | * the key type. This won't catch all corruption, but | 825 | * the key type. This won't catch all corruption, but |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kex.c,v 1.105 2015/01/30 00:22:25 djm Exp $ */ | 1 | /* $OpenBSD: kex.c,v 1.106 2015/04/17 13:25:52 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -245,6 +245,8 @@ kex_prop_free(char **proposal) | |||
245 | { | 245 | { |
246 | u_int i; | 246 | u_int i; |
247 | 247 | ||
248 | if (proposal == NULL) | ||
249 | return; | ||
248 | for (i = 0; i < PROPOSAL_MAX; i++) | 250 | for (i = 0; i < PROPOSAL_MAX; i++) |
249 | free(proposal[i]); | 251 | free(proposal[i]); |
250 | free(proposal); | 252 | free(proposal); |
diff --git a/kexc25519.c b/kexc25519.c index b6e6c4010..8d8cd4a2b 100644 --- a/kexc25519.c +++ b/kexc25519.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kexc25519.c,v 1.8 2015/01/19 20:16:15 markus Exp $ */ | 1 | /* $OpenBSD: kexc25519.c,v 1.9 2015/03/26 07:00:04 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2001, 2013 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2001, 2013 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2010 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2010 Damien Miller. All rights reserved. |
@@ -66,6 +66,11 @@ kexc25519_shared_key(const u_char key[CURVE25519_SIZE], | |||
66 | u_char shared_key[CURVE25519_SIZE]; | 66 | u_char shared_key[CURVE25519_SIZE]; |
67 | int r; | 67 | int r; |
68 | 68 | ||
69 | /* Check for all-zero public key */ | ||
70 | explicit_bzero(shared_key, CURVE25519_SIZE); | ||
71 | if (timingsafe_bcmp(pub, shared_key, CURVE25519_SIZE) == 0) | ||
72 | return SSH_ERR_KEY_INVALID_EC_VALUE; | ||
73 | |||
69 | crypto_scalarmult_curve25519(shared_key, key, pub); | 74 | crypto_scalarmult_curve25519(shared_key, key, pub); |
70 | #ifdef DEBUG_KEXECDH | 75 | #ifdef DEBUG_KEXECDH |
71 | dump_digest("shared secret", shared_key, CURVE25519_SIZE); | 76 | dump_digest("shared secret", shared_key, CURVE25519_SIZE); |
diff --git a/kexc25519s.c b/kexc25519s.c index b2d2c858f..240272533 100644 --- a/kexc25519s.c +++ b/kexc25519s.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kexc25519s.c,v 1.8 2015/01/26 06:10:03 djm Exp $ */ | 1 | /* $OpenBSD: kexc25519s.c,v 1.9 2015/04/27 00:37:53 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2001 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2001 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2010 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2010 Damien Miller. All rights reserved. |
@@ -27,6 +27,7 @@ | |||
27 | #include "includes.h" | 27 | #include "includes.h" |
28 | 28 | ||
29 | #include <sys/types.h> | 29 | #include <sys/types.h> |
30 | #include <stdio.h> | ||
30 | #include <string.h> | 31 | #include <string.h> |
31 | #include <signal.h> | 32 | #include <signal.h> |
32 | 33 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kexgexc.c,v 1.20 2015/01/26 06:10:03 djm Exp $ */ | 1 | /* $OpenBSD: kexgexc.c,v 1.22 2015/05/26 23:23:40 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Niels Provos. All rights reserved. | 3 | * Copyright (c) 2000 Niels Provos. All rights reserved. |
4 | * Copyright (c) 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2001 Markus Friedl. All rights reserved. |
@@ -28,6 +28,7 @@ | |||
28 | 28 | ||
29 | #ifdef WITH_OPENSSL | 29 | #ifdef WITH_OPENSSL |
30 | 30 | ||
31 | #include <sys/param.h> | ||
31 | #include <sys/types.h> | 32 | #include <sys/types.h> |
32 | 33 | ||
33 | #include <openssl/dh.h> | 34 | #include <openssl/dh.h> |
@@ -65,25 +66,17 @@ kexgex_client(struct ssh *ssh) | |||
65 | kex->min = DH_GRP_MIN; | 66 | kex->min = DH_GRP_MIN; |
66 | kex->max = DH_GRP_MAX; | 67 | kex->max = DH_GRP_MAX; |
67 | kex->nbits = nbits; | 68 | kex->nbits = nbits; |
68 | if (ssh->compat & SSH_OLD_DHGEX) { | 69 | if (datafellows & SSH_BUG_DHGEX_LARGE) |
69 | /* Old GEX request */ | 70 | kex->nbits = MIN(kex->nbits, 4096); |
70 | if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST_OLD)) | 71 | /* New GEX request */ |
71 | != 0 || | 72 | if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST)) != 0 || |
72 | (r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || | 73 | (r = sshpkt_put_u32(ssh, kex->min)) != 0 || |
73 | (r = sshpkt_send(ssh)) != 0) | 74 | (r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || |
74 | goto out; | 75 | (r = sshpkt_put_u32(ssh, kex->max)) != 0 || |
75 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST_OLD(%u) sent", kex->nbits); | 76 | (r = sshpkt_send(ssh)) != 0) |
76 | } else { | 77 | goto out; |
77 | /* New GEX request */ | 78 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST(%u<%u<%u) sent", |
78 | if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST)) != 0 || | 79 | kex->min, kex->nbits, kex->max); |
79 | (r = sshpkt_put_u32(ssh, kex->min)) != 0 || | ||
80 | (r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || | ||
81 | (r = sshpkt_put_u32(ssh, kex->max)) != 0 || | ||
82 | (r = sshpkt_send(ssh)) != 0) | ||
83 | goto out; | ||
84 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST(%u<%u<%u) sent", | ||
85 | kex->min, kex->nbits, kex->max); | ||
86 | } | ||
87 | #ifdef DEBUG_KEXDH | 80 | #ifdef DEBUG_KEXDH |
88 | fprintf(stderr, "\nmin = %d, nbits = %d, max = %d\n", | 81 | fprintf(stderr, "\nmin = %d, nbits = %d, max = %d\n", |
89 | kex->min, kex->nbits, kex->max); | 82 | kex->min, kex->nbits, kex->max); |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kexgexs.c,v 1.24 2015/01/26 06:10:03 djm Exp $ */ | 1 | /* $OpenBSD: kexgexs.c,v 1.25 2015/04/13 02:04:08 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Niels Provos. All rights reserved. | 3 | * Copyright (c) 2000 Niels Provos. All rights reserved. |
4 | * Copyright (c) 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2001 Markus Friedl. All rights reserved. |
@@ -60,8 +60,6 @@ static int input_kex_dh_gex_init(int, u_int32_t, void *); | |||
60 | int | 60 | int |
61 | kexgex_server(struct ssh *ssh) | 61 | kexgex_server(struct ssh *ssh) |
62 | { | 62 | { |
63 | ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST_OLD, | ||
64 | &input_kex_dh_gex_request); | ||
65 | ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST, | 63 | ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST, |
66 | &input_kex_dh_gex_request); | 64 | &input_kex_dh_gex_request); |
67 | debug("expecting SSH2_MSG_KEX_DH_GEX_REQUEST"); | 65 | debug("expecting SSH2_MSG_KEX_DH_GEX_REQUEST"); |
@@ -76,36 +74,19 @@ input_kex_dh_gex_request(int type, u_int32_t seq, void *ctxt) | |||
76 | int r; | 74 | int r; |
77 | u_int min = 0, max = 0, nbits = 0; | 75 | u_int min = 0, max = 0, nbits = 0; |
78 | 76 | ||
79 | switch (type) { | 77 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST received"); |
80 | case SSH2_MSG_KEX_DH_GEX_REQUEST: | 78 | if ((r = sshpkt_get_u32(ssh, &min)) != 0 || |
81 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST received"); | 79 | (r = sshpkt_get_u32(ssh, &nbits)) != 0 || |
82 | if ((r = sshpkt_get_u32(ssh, &min)) != 0 || | 80 | (r = sshpkt_get_u32(ssh, &max)) != 0 || |
83 | (r = sshpkt_get_u32(ssh, &nbits)) != 0 || | 81 | (r = sshpkt_get_end(ssh)) != 0) |
84 | (r = sshpkt_get_u32(ssh, &max)) != 0 || | ||
85 | (r = sshpkt_get_end(ssh)) != 0) | ||
86 | goto out; | ||
87 | kex->nbits = nbits; | ||
88 | kex->min = min; | ||
89 | kex->max = max; | ||
90 | min = MAX(DH_GRP_MIN, min); | ||
91 | max = MIN(DH_GRP_MAX, max); | ||
92 | nbits = MAX(DH_GRP_MIN, nbits); | ||
93 | nbits = MIN(DH_GRP_MAX, nbits); | ||
94 | break; | ||
95 | case SSH2_MSG_KEX_DH_GEX_REQUEST_OLD: | ||
96 | debug("SSH2_MSG_KEX_DH_GEX_REQUEST_OLD received"); | ||
97 | if ((r = sshpkt_get_u32(ssh, &nbits)) != 0 || | ||
98 | (r = sshpkt_get_end(ssh)) != 0) | ||
99 | goto out; | ||
100 | kex->nbits = nbits; | ||
101 | /* unused for old GEX */ | ||
102 | kex->min = min = DH_GRP_MIN; | ||
103 | kex->max = max = DH_GRP_MAX; | ||
104 | break; | ||
105 | default: | ||
106 | r = SSH_ERR_INVALID_ARGUMENT; | ||
107 | goto out; | 82 | goto out; |
108 | } | 83 | kex->nbits = nbits; |
84 | kex->min = min; | ||
85 | kex->max = max; | ||
86 | min = MAX(DH_GRP_MIN, min); | ||
87 | max = MIN(DH_GRP_MAX, max); | ||
88 | nbits = MAX(DH_GRP_MIN, nbits); | ||
89 | nbits = MIN(DH_GRP_MAX, nbits); | ||
109 | 90 | ||
110 | if (kex->max < kex->min || kex->nbits < kex->min || | 91 | if (kex->max < kex->min || kex->nbits < kex->min || |
111 | kex->max < kex->nbits) { | 92 | kex->max < kex->nbits) { |
@@ -131,10 +112,6 @@ input_kex_dh_gex_request(int type, u_int32_t seq, void *ctxt) | |||
131 | if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0) | 112 | if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0) |
132 | goto out; | 113 | goto out; |
133 | 114 | ||
134 | /* old KEX does not use min/max in kexgex_hash() */ | ||
135 | if (type == SSH2_MSG_KEX_DH_GEX_REQUEST_OLD) | ||
136 | kex->min = kex->max = -1; | ||
137 | |||
138 | debug("expecting SSH2_MSG_KEX_DH_GEX_INIT"); | 115 | debug("expecting SSH2_MSG_KEX_DH_GEX_INIT"); |
139 | ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_INIT, &input_kex_dh_gex_init); | 116 | ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_INIT, &input_kex_dh_gex_init); |
140 | r = 0; | 117 | r = 0; |
@@ -14,7 +14,7 @@ | |||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | /* $OpenBSD: krl.c,v 1.31 2015/01/30 01:10:33 djm Exp $ */ | 17 | /* $OpenBSD: krl.c,v 1.32 2015/06/24 23:47:23 djm Exp $ */ |
18 | 18 | ||
19 | #include "includes.h" | 19 | #include "includes.h" |
20 | 20 | ||
@@ -772,7 +772,7 @@ ssh_krl_to_blob(struct ssh_krl *krl, struct sshbuf *buf, | |||
772 | goto out; | 772 | goto out; |
773 | 773 | ||
774 | if ((r = sshkey_sign(sign_keys[i], &sblob, &slen, | 774 | if ((r = sshkey_sign(sign_keys[i], &sblob, &slen, |
775 | sshbuf_ptr(buf), sshbuf_len(buf), 0)) == -1) | 775 | sshbuf_ptr(buf), sshbuf_len(buf), 0)) != 0) |
776 | goto out; | 776 | goto out; |
777 | KRL_DBG(("%s: signature sig len %zu", __func__, slen)); | 777 | KRL_DBG(("%s: signature sig len %zu", __func__, slen)); |
778 | if ((r = sshbuf_put_string(buf, sblob, slen)) != 0) | 778 | if ((r = sshbuf_put_string(buf, sblob, slen)) != 0) |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: match.c,v 1.29 2013/11/20 20:54:10 deraadt Exp $ */ | 1 | /* $OpenBSD: match.c,v 1.30 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -115,15 +115,13 @@ match_pattern(const char *s, const char *pattern) | |||
115 | * indicate negation). Returns -1 if negation matches, 1 if there is | 115 | * indicate negation). Returns -1 if negation matches, 1 if there is |
116 | * a positive match, 0 if there is no match at all. | 116 | * a positive match, 0 if there is no match at all. |
117 | */ | 117 | */ |
118 | |||
119 | int | 118 | int |
120 | match_pattern_list(const char *string, const char *pattern, u_int len, | 119 | match_pattern_list(const char *string, const char *pattern, int dolower) |
121 | int dolower) | ||
122 | { | 120 | { |
123 | char sub[1024]; | 121 | char sub[1024]; |
124 | int negated; | 122 | int negated; |
125 | int got_positive; | 123 | int got_positive; |
126 | u_int i, subi; | 124 | u_int i, subi, len = strlen(pattern); |
127 | 125 | ||
128 | got_positive = 0; | 126 | got_positive = 0; |
129 | for (i = 0; i < len;) { | 127 | for (i = 0; i < len;) { |
@@ -177,9 +175,9 @@ match_pattern_list(const char *string, const char *pattern, u_int len, | |||
177 | * a positive match, 0 if there is no match at all. | 175 | * a positive match, 0 if there is no match at all. |
178 | */ | 176 | */ |
179 | int | 177 | int |
180 | match_hostname(const char *host, const char *pattern, u_int len) | 178 | match_hostname(const char *host, const char *pattern) |
181 | { | 179 | { |
182 | return match_pattern_list(host, pattern, len, 1); | 180 | return match_pattern_list(host, pattern, 1); |
183 | } | 181 | } |
184 | 182 | ||
185 | /* | 183 | /* |
@@ -200,7 +198,7 @@ match_host_and_ip(const char *host, const char *ipaddr, | |||
200 | return 0; | 198 | return 0; |
201 | 199 | ||
202 | /* negative hostname match */ | 200 | /* negative hostname match */ |
203 | if ((mhost = match_hostname(host, patterns, strlen(patterns))) == -1) | 201 | if ((mhost = match_hostname(host, patterns)) == -1) |
204 | return 0; | 202 | return 0; |
205 | /* no match at all */ | 203 | /* no match at all */ |
206 | if (mhost == 0 && mip == 0) | 204 | if (mhost == 0 && mip == 0) |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: match.h,v 1.15 2010/02/26 20:29:54 djm Exp $ */ | 1 | /* $OpenBSD: match.h,v 1.16 2015/05/04 06:10:48 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
@@ -15,8 +15,8 @@ | |||
15 | #define MATCH_H | 15 | #define MATCH_H |
16 | 16 | ||
17 | int match_pattern(const char *, const char *); | 17 | int match_pattern(const char *, const char *); |
18 | int match_pattern_list(const char *, const char *, u_int, int); | 18 | int match_pattern_list(const char *, const char *, int); |
19 | int match_hostname(const char *, const char *, u_int); | 19 | int match_hostname(const char *, const char *); |
20 | int match_host_and_ip(const char *, const char *, const char *); | 20 | int match_host_and_ip(const char *, const char *, const char *); |
21 | int match_user(const char *, const char *, const char *, const char *); | 21 | int match_user(const char *, const char *, const char *, const char *); |
22 | char *match_list(const char *, const char *, u_int *); | 22 | char *match_list(const char *, const char *, u_int *); |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: misc.c,v 1.96 2015/01/16 06:40:12 deraadt Exp $ */ | 1 | /* $OpenBSD: misc.c,v 1.97 2015/04/24 01:36:00 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2005,2006 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2005,2006 Damien Miller. All rights reserved. |
@@ -474,7 +474,7 @@ addargs(arglist *args, char *fmt, ...) | |||
474 | } else if (args->num+2 >= nalloc) | 474 | } else if (args->num+2 >= nalloc) |
475 | nalloc *= 2; | 475 | nalloc *= 2; |
476 | 476 | ||
477 | args->list = xrealloc(args->list, nalloc, sizeof(char *)); | 477 | args->list = xreallocarray(args->list, nalloc, sizeof(char *)); |
478 | args->nalloc = nalloc; | 478 | args->nalloc = nalloc; |
479 | args->list[args->num++] = cp; | 479 | args->list[args->num++] = cp; |
480 | args->list[args->num] = NULL; | 480 | args->list[args->num] = NULL; |
@@ -1,262 +1,247 @@ | |||
1 | # $OpenBSD: moduli,v 1.8 2012/08/29 05:06:54 dtucker Exp $ | 1 | # $OpenBSD: moduli,v 1.13 2015/05/28 00:03:06 dtucker Exp $ |
2 | # Time Type Tests Tries Size Generator Modulus | 2 | # Time Type Tests Tries Size Generator Modulus |
3 | 20120821044040 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A770E2EC9F | 3 | 20150520234251 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A740BE2123 |
4 | 20120821044046 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7711F2C6B | 4 | 20150520234255 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A740D85877 |
5 | 20120821044047 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771225323 | 5 | 20150520234257 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A740E6494B |
6 | 20120821044048 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7712507AB | 6 | 20150520234301 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A741120F9B |
7 | 20120821044050 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7712A2DB3 | 7 | 20150520234303 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7411EAC5B |
8 | 20120821044051 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7712CACEF | 8 | 20150520234304 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7412579DB |
9 | 20120821044053 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7713959C3 | 9 | 20150520234311 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74167053B |
10 | 20120821044057 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7715BBA13 | 10 | 20150520234312 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74169B303 |
11 | 20120821044103 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A77191592F | 11 | 20150520234318 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A741A3D69F |
12 | 20120821044104 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771938E1F | 12 | 20150520234322 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A741C07E23 |
13 | 20120821044106 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771A1E127 | 13 | 20150520234330 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7420B48E3 |
14 | 20120821044108 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771B3CDFB | 14 | 20150520234331 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74215059B |
15 | 20120821044109 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771B71913 | 15 | 20150520234336 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74240BD03 |
16 | 20120821044111 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771C2759F | 16 | 20150520234338 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7424D70BB |
17 | 20120821044113 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771CF8ABF | 17 | 20150520234341 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7425C6CE3 |
18 | 20120821044114 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771D2B49B | 18 | 20150520234342 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74264FA9B |
19 | 20120821044116 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771DF6193 | 19 | 20150520234343 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7426BB34B |
20 | 20120821044117 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771E67E33 | 20 | 20150520234346 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74285D9E3 |
21 | 20120821044120 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A771FA581B | 21 | 20150520234347 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A742878293 |
22 | 20120821044121 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772027DDB | 22 | 20150520234348 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74288D143 |
23 | 20120821044123 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772093F8B | 23 | 20150520234356 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A742D55BF3 |
24 | 20120821044124 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7720EEF6F | 24 | 20150520234401 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A742FC8227 |
25 | 20120821044125 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A77216CAD7 | 25 | 20150520234410 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7436032EB |
26 | 20120821044126 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A77219A90B | 26 | 20150520234411 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74361377F |
27 | 20120821044129 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7722A0103 | 27 | 20150520234415 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7437CCCFB |
28 | 20120821044130 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772343DBF | 28 | 20150520234418 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A743902C1F |
29 | 20120821044133 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772460C3F | 29 | 20150520234420 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7439EE5DB |
30 | 20120821044137 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7726A4E0F | 30 | 20150520234422 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A743AE19BF |
31 | 20120821044138 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772716D8B | 31 | 20150520234430 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7440152AB |
32 | 20120821044141 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A7728D719B | 32 | 20150520234432 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7440C2F63 |
33 | 20120821044143 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A77297AA8B | 33 | 20150520234434 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7441FBDEB |
34 | 20120821044145 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772A8794B | 34 | 20150520234436 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7442C98DF |
35 | 20120821044147 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772B4D6AB | 35 | 20150520234437 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A744319703 |
36 | 20120821044149 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772BD325F | 36 | 20150520234438 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A74433E927 |
37 | 20120821044150 2 6 100 1023 5 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772BDAE07 | 37 | 20150520234444 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A7446DF46F |
38 | 20120821044151 2 6 100 1023 2 D9277DAA27DB131C03B108D41A76B4DA8ACEECCCAE73D2E48CEDAAA70B09EF9F04FB020DCF36C51B8E485B26FABE0337E24232BE4F4E693548310244937433FB1A5758195DC73B84ADEF8237472C46747D79DC0A2CF8A57CE8DBD8F466A20F8551E7B1B824B2E4987A8816D9BC0741C2798F3EBAD3ADEBCC78FCE6A772C95CE3 | 38 | 20150520234450 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A744A3488B |
39 | 20120821044502 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F96361507 | 39 | 20150520234455 2 6 100 1535 2 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A744CDAACB |
40 | 20120821044515 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F965885BF | 40 | 20150520234459 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A744E9D8FF |
41 | 20120821044519 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F966006C7 | 41 | 20150520234504 2 6 100 1535 5 F8F4A446A6C7196643612A6C5CC26A47E491FB737740D68BBEBF0130F7AAADC59075781FB1723B644C0ADCE548C02E726DE5233C484FB4481F3EF3ED0585A0D687B2E0A6987AD2BC910754FC1A1E06B87710CFF0BC2E9868BA15BA20C103D3DCA6B65D8D0182B277F7CAE61D83A785BDD0B3CE471B4B8FAB224438D7A6772130167110AFD1FF584861996117F67B41CF3D2D5FAB020F2EB7F53E299AACF98797AEB6BAC3F0BB892DB4E4F8CDDE28C112C73EB556D0C381C6B9CC78A745196237 |
42 | 20120821044528 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9674A0EB | 42 | 20150520235007 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031E9A9C5F7 |
43 | 20120821044539 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F969457F3 | 43 | 20150520235015 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031E9CBB21F |
44 | 20120821044544 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F969BE79B | 44 | 20150520235039 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EA2E9623 |
45 | 20120821044606 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F96E1E827 | 45 | 20150520235043 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EA33E3DF |
46 | 20120821044623 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9714284B | 46 | 20150520235057 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EA68038B |
47 | 20120821044630 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97231CB7 | 47 | 20150520235114 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EAAB0717 |
48 | 20120821044636 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F972E01DF | 48 | 20150520235122 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EAC2A7FB |
49 | 20120821044647 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F974BCED3 | 49 | 20150520235125 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EAC82DD3 |
50 | 20120821044650 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F974C3A43 | 50 | 20150520235154 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EB40583F |
51 | 20120821044653 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F974E8F73 | 51 | 20150520235214 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EB94F247 |
52 | 20120821044701 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9763403B | 52 | 20150520235218 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EB9DF49F |
53 | 20120821044705 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9767666B | 53 | 20150520235239 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EBF7BE27 |
54 | 20120821044708 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9768D81F | 54 | 20150520235244 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EC0B4F4F |
55 | 20120821044726 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F979FD437 | 55 | 20150520235250 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EC21070F |
56 | 20120821044729 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97A29BC7 | 56 | 20150520235256 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EC36541F |
57 | 20120821044732 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97A56447 | 57 | 20150520235307 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EC5FE22B |
58 | 20120821044737 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97AEDBDB | 58 | 20150520235322 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ECA1FB57 |
59 | 20120821044740 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97B187F3 | 59 | 20150520235331 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ECC3C823 |
60 | 20120821044746 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97BC6EE3 | 60 | 20150520235349 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED035187 |
61 | 20120821044757 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F97DCCDEB | 61 | 20150520235400 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED2F07DB |
62 | 20120821044817 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F981975F7 | 62 | 20150520235407 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED4620CF |
63 | 20120821044831 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F983EC267 | 63 | 20150520235422 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED86D39F |
64 | 20120821044841 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F985A032F | 64 | 20150520235424 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED86E683 |
65 | 20120821044846 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9863B0AB | 65 | 20150520235427 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031ED8C3073 |
66 | 20120821044852 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F986E5C7F | 66 | 20150520235443 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EDCB1F63 |
67 | 20120821044911 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F98A8FF6B | 67 | 20150520235450 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EDE00B77 |
68 | 20120821044917 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F98B40E4B | 68 | 20150520235452 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EDE42247 |
69 | 20120821044924 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F98C5840F | 69 | 20150520235458 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EDF8F493 |
70 | 20120821044940 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F98F22CEB | 70 | 20150520235503 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE04D69F |
71 | 20120821044947 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99040FFF | 71 | 20150520235508 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE14B92B |
72 | 20120821044954 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99139AE3 | 72 | 20150520235510 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE167933 |
73 | 20120821045010 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9940BEFB | 73 | 20150520235517 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE2DC63B |
74 | 20120821045017 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9954379F | 74 | 20150520235527 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE52259F |
75 | 20120821045020 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99548C23 | 75 | 20150520235539 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EE829247 |
76 | 20120821045023 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99562FC3 | 76 | 20150520235557 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EED044BF |
77 | 20120821045028 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9960CDCF | 77 | 20150520235608 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EEFD34CF |
78 | 20120821045038 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F997AC0B3 | 78 | 20150520235614 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EF0F709F |
79 | 20120821045045 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F998D9B6B | 79 | 20150520235616 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EF12110B |
80 | 20120821045050 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9994BB77 | 80 | 20150520235622 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EF25FE1F |
81 | 20120821045059 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99AC001B | 81 | 20150520235637 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EF6BF4D3 |
82 | 20120821045101 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99AC5547 | 82 | 20150520235654 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EFAF28BF |
83 | 20120821045107 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99B86567 | 83 | 20150520235701 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EFBFB8BB |
84 | 20120821045110 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99BA2677 | 84 | 20150520235704 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EFC7A62F |
85 | 20120821045128 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F99EF4523 | 85 | 20150520235710 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031EFD79323 |
86 | 20120821045154 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9A419DAB | 86 | 20150520235725 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F0158F1F |
87 | 20120821045214 2 6 100 1535 5 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9A7D1E67 | 87 | 20150520235728 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F01A9E6B |
88 | 20120821045218 2 6 100 1535 2 D1391174233D315398FE2830AC6B2B66BCCD01B0A634899F339B7879F1DB85712E9DC4E4B1C6C8355570C1D2DCB53493DF18175A9C53D1128B592B4C72D97136F5542FEB981CBFE8012FDD30361F288A42BD5EBB08BAB0A5640E1AC48763B2ABD1945FEE36B2D55E1D50A1C86CED9DD141C4E7BE2D32D9B562A0F8E2E927020E91F58B57EB9ACDDA106A59302D7E92AD5F6E851A45FA1CFE86029A0F727F65A8F475F33572E2FDAB6073F0C21B8B54C3823DB2EF068927E5D747498F9A826443 | 88 | 20150520235743 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F055798B |
89 | 20120821045639 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293680B09D63 | 89 | 20150520235752 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F0730BC3 |
90 | 20120821045830 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936814C2FFB | 90 | 20150520235757 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F08283FF |
91 | 20120821050046 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368214FC53 | 91 | 20150520235825 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F0F451E3 |
92 | 20120821050054 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368218E83F | 92 | 20150520235830 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F0FDEFB7 |
93 | 20120821050118 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293682361D5F | 93 | 20150520235901 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F1828ECF |
94 | 20120821050218 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936828ADA17 | 94 | 20150521000008 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F185D7BF |
95 | 20120821050243 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293682A8A7CB | 95 | 20150521000011 2 6 100 2047 2 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F18C58FB |
96 | 20120821050427 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368341AC87 | 96 | 20150521000014 2 6 100 2047 5 F7360753237CF1837003CDFE89D99C8149BE6C4B4CCD9D09D834FF137878C452FB4FAB5CA51BE6619BC6FEC4184FA9A96D21FDE83505B67262EEA4870FD709F4DD3A2EC36E5746ED80D762467E794FE524992EAC42D2F0F391A63E027F24411B231D25AEFE60C9329CE8FFB61A8A123C74F6755211C8CFD59915CE0DE28579B66CB426D111F90B19A5BD83AB8C2CAB09FB1F09509B029883BD154B82418B4F3A9EE4564E5F344D5B911C10829C1E975817EB2DFF49F34D95277897A7198C9C4921037B8AA091C380663A6D5260F98FA784565DE2D977C50A1079B485F4BE63B4E3D6A63FD8DD59704116A41CB1C7C2AAA449071BFBAFB0F867FCC031F191F757 |
97 | 20120821050515 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936837F8657 | 97 | 20150521000841 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CC7F06BB |
98 | 20120821050545 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293683A3DFD3 | 98 | 20150521001025 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CD1057AB |
99 | 20120821050554 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293683A9635F | 99 | 20150521001131 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CD717D6F |
100 | 20120821050636 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293683DF582B | 100 | 20150521001248 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CDDA85F7 |
101 | 20120821050648 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293683E86803 | 101 | 20150521001453 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CE8959BF |
102 | 20120821050758 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293684495A13 | 102 | 20150521001510 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CE98227B |
103 | 20120821050807 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936844FAB5B | 103 | 20150521001623 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CEF967BF |
104 | 20120821050849 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368486D99B | 104 | 20150521001651 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CF18156B |
105 | 20120821050916 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293684A776A7 | 105 | 20150521001758 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CF717197 |
106 | 20120821050942 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293684C4FF73 | 106 | 20150521001924 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622CFE1507B |
107 | 20120821051003 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293684DB980F | 107 | 20150521002244 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D0F75427 |
108 | 20120821051010 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293684DD4FBF | 108 | 20150521002509 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D1BD2823 |
109 | 20120821051158 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685721537 | 109 | 20150521002808 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D2B4950F |
110 | 20120821051206 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685768253 | 110 | 20150521002846 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D2E6D6D7 |
111 | 20120821051231 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685930F13 | 111 | 20150521003203 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D3F5D0D3 |
112 | 20120821051240 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685987B0B | 112 | 20150521003322 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D45851E3 |
113 | 20120821051324 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685D5E36B | 113 | 20150521003430 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D4AEE517 |
114 | 20120821051349 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293685F3AB7F | 114 | 20150521003629 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D5538E0B |
115 | 20120821051424 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293686206187 | 115 | 20150521003714 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D58BAFCF |
116 | 20120821051516 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368668EB4B | 116 | 20150521003722 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D5916FC7 |
117 | 20120821051540 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C60429368686EB87 | 117 | 20150521003739 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D5A378F7 |
118 | 20120821051622 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293686BCCF13 | 118 | 20150521004506 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D82B5113 |
119 | 20120821051703 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293686F13B9F | 119 | 20150521004613 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D880CB43 |
120 | 20120821051715 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293686FB2D4F | 120 | 20150521004753 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D909305B |
121 | 20120821051837 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936876ED7DF | 121 | 20150521004802 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D90DBDC3 |
122 | 20120821051843 2 6 100 2047 2 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C6042936876F05DB | 122 | 20150521005025 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D9CBF44F |
123 | 20120821051930 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293687AEDE8F | 123 | 20150521005051 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622D9E89DA7 |
124 | 20120821052131 2 6 100 2047 5 DD2047CBDBB6F8E919BC63DE885B34D0FD6E3DB2887D8B46FE249886ACED6B46DFCD5553168185FD376122171CD8927E60120FA8D01F01D03E58281FEA9A1ABE97631C828E41815F34FDCDF787419FE13A3137649AA93D2584230DF5F24B5C00C88B7D7DE4367693428C730376F218A53E853B0851BAB7C53C15DA7839CBE1285DB63F6FA45C1BB59FE1C5BB918F0F8459D7EF60ACFF5C0FA0F3FCAD1C5F4CE4416D4F4B36B05CDCEBE4FB879E95847EFBC6449CD190248843BC7EDB145FBFC4EDBB1A3C959298F08F3BA2CFBE231BBE204BE6F906209D28BD4820AB3E7BE96C26AE8A809ADD8D1A5A0B008E9570FA4C4697E116B8119892C604293688637CFF | 124 | 20150521005252 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DA8BA403 |
125 | 20120821053137 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942284EA9F | 125 | 20150521005347 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DAD07F73 |
126 | 20120821053209 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94228B7F67 | 126 | 20150521005825 2 6 100 3071 2 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DC5CE5A3 |
127 | 20120821053317 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9422A2B3C7 | 127 | 20150521005858 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DC84A597 |
128 | 20120821053841 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94232DEF87 | 128 | 20150521010014 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DCE62957 |
129 | 20120821054039 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942359AB7B | 129 | 20150521010219 2 6 100 3071 5 E0C2D7F7B6E4C69A3B6632FC77BED88CAC663CE39D91DDF017816529795F33B591F80F445BE16F8FB51D11861682154B904AE2282FA0462EB6C508FD7B7AEC551A6C630FE9CC7E17E660377558E4F841CD77AABD81E6A0988823047B3A00C2E50C33035987D6EA42C65FD776051F5D43045848D4385FB37482DC9E5133D1B75E34CC81C2B87C9530F5229FF2154604A286C2E257D3A89CF330AEDBA16288E852277C5D7C6AA947B4510625312DF982A30A4D75679F707EB325CD4DF65C7A58154C6C05E28545DE69673B3EA9CCD41529A7CCEB49A3392D23E9AB083148DD956F8CA9B8CDD76496FF95B5782EE888C40EF1201EB3A52CAE1A635BBF82CD479B38DABD6DEE7A2844F8C614215B04CEBDD41039C2DC2D1CF00AFC78C0363E548FAE1DE8A7B535CC41CED767BE05F300F50C59307061ADE1CAA4614F8FEFAECE8F8C5DB3F425B348A206B0E95703EEA8785768CDB53972422C75B58A7AEA2AD9E2546EA991466E6AFE1FA157D75D3F6616DB715D10CCD6B71C73051FE622DD9517D7 |
130 | 20120821054334 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9423A371A7 | 130 | 20150521011229 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F951FEB83 |
131 | 20120821054455 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9423C1CEEF | 131 | 20150521011834 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F960399B7 |
132 | 20120821054844 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9424273F1F | 132 | 20150521012438 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F96EE7973 |
133 | 20120821055307 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9424987667 | 133 | 20150521014010 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F99453213 |
134 | 20120821055436 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9424B90BAB | 134 | 20150521015607 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F9B549727 |
135 | 20120821055700 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9424F6C7CF | 135 | 20150521015640 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F9B600A7B |
136 | 20120821060224 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94258ADCEF | 136 | 20150521020946 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F9D5299DF |
137 | 20120821060334 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9425A1FCEB | 137 | 20150521021536 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F9E2793D3 |
138 | 20120821060420 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9425AEBF43 | 138 | 20150521022706 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877F9FE131CB |
139 | 20120821060927 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942634C34F | 139 | 20150521023922 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA1BAC073 |
140 | 20120821061829 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94272F0D4F | 140 | 20150521025234 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA3BC9483 |
141 | 20120821062020 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94275B00B7 | 141 | 20150521025424 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA3FB3513 |
142 | 20120821062241 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9427941F5F | 142 | 20150521032445 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA87E0FAB |
143 | 20120821063416 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9428D5E367 | 143 | 20150521032932 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA929F00F |
144 | 20120821063648 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942917E127 | 144 | 20150521032947 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA92B272B |
145 | 20120821064052 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9429825A2B | 145 | 20150521033245 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FA9953D0B |
146 | 20120821064951 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942A74C4EB | 146 | 20150521034828 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FABDD4AEF |
147 | 20120821065736 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942B4640D3 | 147 | 20150521035044 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAC298C7F |
148 | 20120821071146 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942CCD6D1B | 148 | 20150521035111 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAC31F17B |
149 | 20120821071337 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942CF9321B | 149 | 20150521035749 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAD250357 |
150 | 20120821072545 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF942E48654F | 150 | 20150521040009 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAD788A73 |
151 | 20120821075022 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9430F1B6A3 | 151 | 20150521040220 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FADC5F173 |
152 | 20120821080229 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9432356F63 | 152 | 20150521040316 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FADDFFC03 |
153 | 20120821081230 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF94333D9363 | 153 | 20150521041042 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAEEBDEB3 |
154 | 20120821081746 2 6 100 3071 5 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9433C6A7A7 | 154 | 20150521041443 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FAF7AD7BB |
155 | 20120821081811 2 6 100 3071 2 DFAA35D35531E0F524F0099877A482D2AC8D589F374394A262A8E81A8A4FB2F65FADBAB395E05D147B29D486DFAA41F41597A256DA82A8B6F76401AED53D0253F956CEC610D417E42E3B287F7938FC24D8821B40BFA218A956EB7401BED6C96C68C7FD64F8170A8A76B953DD2F05420118F6B144D8FE48060A2BCB85056B478EDEF96DBC70427053ECD2958C074169E9550DD877779A3CF17C5AC850598C7586BEEA9DCFE9DD2A5FB62DF5F33EA7BC00CDA31B9D2DD721F979EA85B6E63F0C4E30BDDCD3A335522F9004C4ED50B15DC537F55324DD4FA119FB3F101467C6D7E1699DE4B3E3C478A8679B8EB3FA5C9B826B44530FD3BE9AD3063B240B0C853EBDDBD68DD940332D98F148D5D9E1DC977D60A0D23D0CA1198637FEAE4E7FAAC173AF2B84313A666CFB4EE6972811921D0AD867CE57F3BBC8D6CB057E3B66757BB46C9F72662624D44E14528327E3A7100E81A12C43C4E236118318CD90C8AA185BBB0C764826DAEAEE8DD245C5B451B4944E6122CC522D1C335C2EEF9433C94C93 | 155 | 20150521041831 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB007D653 |
156 | 20120821084945 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45B27D047 | 156 | 20150521041928 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB025C91B |
157 | 20120821091240 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45C370A33 | 157 | 20150521042301 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB0A4C143 |
158 | 20120821092428 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45CBB9FBB | 158 | 20150521042631 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB12009F7 |
159 | 20120821093047 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45D001E73 | 159 | 20150521042740 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB145360F |
160 | 20120821095420 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45E104D6F | 160 | 20150521043358 2 6 100 4095 2 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB22FAE93 |
161 | 20120821095624 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45E21E2BF | 161 | 20150521044013 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB31527AF |
162 | 20120821102749 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA45F9B1B7B | 162 | 20150521044543 2 6 100 4095 5 C8BCE52E2AE7AE1EC20056B2D0764047C92392C9DF75C3A57EB8AF1062A809E6EA975D9910AA5C55833CC47D4DA76E92BF63FEBB289E5FE2ED729429DE9567D0A489FA27B41810066B96602B2E555B34628A37C4CE04984D15C36F1EAD09081D2CB2147D5F0B7E8BCF0774FFCF5F649E0CB797DD23D0801C153B6B8480828CF165C7ED3181F316F371C6EC0B6EF6B8CBE36E5A4E8C070854668AF07FE6C73C3EB817CD0E8C7F264546A1B0402AC0FCEBA5032EBA2323769CC401D262971F4B44FC1151EC4F6E761709FD6ABDC84D9C36046811F54DC86D293D16D235DC712BF7346CDAC005AE5C0DCD96480C9BD0CF7C4BD50026553E27F957B6640BA6A87C6642FF3D97A3E63DA468276E3A22C0C3F2A1CFFB4F190D5E23700BB468EA31FD3EB87B44B51BDABDB0667FCFB618CECFB2BC440A5F2E237E93A6DFF96AB3561AF5EE1BDA21720129FF2123F7038C70B4CADF1BC70B2EF5EBC264E1E3B2A4B3780D4A11507D03A498A556A923B0EFAF90D024341A47818F03D5ADD961086C2573DABF02C4E2F303817D323E1D8D88EFBE3F5E0D6688593C65254907745CA6176C8ED7D6B830875A0BA8FFEEB1882742A4553E4E55A93A7AD4F3224B7BFA03E29C77DB0FCCE0E37E6D3A64C5555ED9555FA1E2C34EC04DA3B6E0AAA7BF64879BC4724859FE806E7DC49A5394AD3D01492F05AE69CF10C67B18BDFF8E877FB3DDFBB7 |
163 | 20120821105854 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4610E205F | 163 | 20150521004745 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F52665F2B |
164 | 20120821110658 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA461631FBF | 164 | 20150521003352 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F57C7B577 |
165 | 20120821110744 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA461635E3B | 165 | 20150521005557 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F591BBC57 |
166 | 20120821115206 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4636E0DF7 | 166 | 20150521014228 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5BDF5CE7 |
167 | 20120821121256 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4645F38B3 | 167 | 20150521015455 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5C9CFD1F |
168 | 20120821121421 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46467609B | 168 | 20150521001701 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5CF6FF9B |
169 | 20120821122649 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA464F87D6B | 169 | 20150521002558 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5D7C4FE3 |
170 | 20120821122854 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46508F94B | 170 | 20150521003319 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5DE41DFB |
171 | 20120821125200 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4661CBC5B | 171 | 20150521003721 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F5E1B5FAF |
172 | 20120821130613 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA466BC6B33 | 172 | 20150521010943 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F600B866F |
173 | 20120821131115 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA466ED9CC7 | 173 | 20150521014141 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F61F01EC3 |
174 | 20120821132817 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA467B278B3 | 174 | 20150521010312 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F65EAB753 |
175 | 20120821135349 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA468D8351B | 175 | 20150521002914 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F69FD9357 |
176 | 20120821141206 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA469A817A7 | 176 | 20150521011058 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F6C6B8513 |
177 | 20120821144909 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46B488EF7 | 177 | 20150521013628 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F6DE7D9EF |
178 | 20120821150021 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46BC5D5E7 | 178 | 20150521015040 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F6EB0C897 |
179 | 20120821153843 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46D774723 | 179 | 20150521001307 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F6F15473B |
180 | 20120821162006 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA46F5488DB | 180 | 20150521012712 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F7377044B |
181 | 20120821170404 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA47157A067 | 181 | 20150521005218 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F7767DEA3 |
182 | 20120821173305 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA472A1E94B | 182 | 20150521003512 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F7C5546F7 |
183 | 20120821173936 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA472E0E57F | 183 | 20150521005420 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F7D68EDC3 |
184 | 20120821174533 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4731F7433 | 184 | 20150521011347 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F7E859CF3 |
185 | 20120821180053 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA473C7CE3F | 185 | 20150521002429 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F819A93E7 |
186 | 20120821180952 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4742A8237 | 186 | 20150521004826 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F88D91A57 |
187 | 20120821181124 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA474343C5B | 187 | 20150521010541 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F89D29B9F |
188 | 20120821183540 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4754D89DB | 188 | 20150521012418 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8ADC38F7 |
189 | 20120821183852 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA47569B47F | 189 | 20150521015506 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8C91980B |
190 | 20120821184512 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA475AC57DB | 190 | 20150521004000 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8E369B97 |
191 | 20120821184603 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA475AD78CB | 191 | 20150521005659 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8F2B1BEB |
192 | 20120821184701 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA475B0038F | 192 | 20150521010328 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8F7DD1D3 |
193 | 20120821185939 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA4763BD72F | 193 | 20150521011152 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F8FF052BB |
194 | 20120821190630 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA476853BB7 | 194 | 20150521001457 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F92940463 |
195 | 20120821190945 2 6 100 4095 2 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA476A47843 | 195 | 20150521011129 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F95C47DCB |
196 | 20120821195501 2 6 100 4095 5 EF07B0F39662DC8600224E46AB8BE8CB72E552D52E88013D20EC039A0697ED9AAD018B16F0B910D4AD54437B8585AAA4EAE0CE216E31F50EDF0CD05DAF5E02A73D399C91B38220EC3B62C42D1CF6BF06378533A70C1F8F4F4416DD542213D3432412125FDBFF7B9473CE6F8812D860E66282C9F34C1774D1EA57D54DADDF7E37A12C4A6AD5B4A30128C29D27D03B6535C0F7A8AF857E18ECAB992984E6D546918AAACB971A2AC2C2E7AF79A9547979E6342DB7443985E5F7EDF6F9F22B600EEB42CB84A5F1ACD76E213C52E3052DAE1A9119801CFA28E6EFD4F6BC35FA06C8724D78A96AF054826C0BF865D0EC5F6F4D31C1D3F7CF2FE6F16AF267A7BA04753AEF420D4D8C36BCE8D9694814B9E9C3DF468064EB5636405C71CA9D8D50D36570B42639C9C2C02FB3A3D0C6B28DD200B0AF164C621D60B12E35E4D00129C8900F6EFDBB49FF34DD64CB13CD4087A7F84FEFD77D4E8099C2B804BA643EAFCA66D1F02BD09AE44AC83A5149F60711B7B108C01D53FF15FA59B36BE62A870F163F5063CEE103B377808343AFBD32271199E26D93734011BED2305EDE2E841EAD512E23B8C9B8CD4D398C7B4C8B76B355CC150B66B8EB7779E2CA519E10E45D0FB138676850C56F23DB135F546D364B92BC1C9423E089D30D4D57D27D7885EE14AE135A488C0542C3719FBEF46F4BB5FB53A28DA26DDF84C8BC55348A8AA478A96AEF | 196 | 20150521013515 2 6 100 6143 2 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F9710A103 |
197 | 20120705232031 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B241215BB | 197 | 20150521013841 2 6 100 6143 5 D9F2DC4F4AB3E451AB7781730AE26AE5AB1927A8F93D05C7765C4F23947CBAD218690437DDE587137100CA657CB902597743E8B05CB9B821A48E081C451227F5E42404534A28EE1D0A52FA903FBB15B79139D130420B8C7BD2477CDF0C06CF4C9943DF76A74C3B503B2229A5628E13983B0426A10FD164A720488DE3A1639D004B694ADB5216C21F481519865529CE6E3C9C8B89AC00FBF2B4C1F0B0033AC2A5072A157B5D4346950917B055227557FF1EB5F0873D75E648BEE4B6F88D4B228CB89C7602E34F85BF86DDBD09CA39993C73FF59B0310754F0D24740316F7D8D21D67EC65C8715B7130EBC8E19EB712990BBB30D650ACB0B7864B632ABBC2AEE7221393A5C74B043568043480DB41821A0CE1E6D271456C2FDC243D39868FB0D7BDA3FAD5894F7DCBBC5751B77B3DF99F6E8A5BD7A5B82F594E3E0CA2BBF7DA74312227B323652E6856B597326206CAFF2380C23CF94B8CD3EAA56BE60F8C372887CD37A62FC6F5FD467ED96E7CD9C285E75C2C353E520DFB3F39FE7B8E35FFB485B1B043F52321675EDF4848266997D059810F71D21E9DB3E3AB1BCE3713DB67155F41B7C21939B285AB63DBF1770228E4EE36314310D89200F132E8ECF2968CDA0E57DBBCE589E4DDBAD009994A817032EFA52F0659A319FBD813901BF5847EC2D7979CBA5870F3DA25BE09673952628E1EA70C82EC0BE67B402E48DF85C5983516BBEEAB811D1ECAB02928D4087B826139D073501149D47B3339CDA763840E4492661FFEF96C81C816B862EEE820019CD83C93BF9DFF8EC8C59331780D5D86B164EC12BBE59F4C9E62FD7819A941D10AFE32179B2361A17618FA84864F58C09AECB817E67BC352371BB7D7F8209E4EB9002013A585092D4721B1CB464A8480CC76173989144EF51692E373E9CCEAC9807EF190D6BBDD3BB0D16CA87DC6A54890D6F074ABD83E3CF077F2F592C0745BE15D7D6871552BB6139E5CF70D684C6D1D0C4516733E0639BBEC847313BE3D1D923B6A5FAF43A5341DD8C0779881BEB92736BA4F18BD6CDC1FC922B3809ED244748101A6C7E30DDE0C232FA3F9733A497 |
198 | 20120705233800 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B246EC93B | 198 | 20150521041810 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7BE934407F |
199 | 20120706002709 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B2582B477 | 199 | 20150521070624 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7BEEB1E407 |
200 | 20120706013826 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B271419A3 | 200 | 20150521051555 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7BF50EEEC3 |
201 | 20120706014732 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B273FB1BB | 201 | 20150521061258 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C00AF225F |
202 | 20120706021008 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B27B7E59F | 202 | 20150521034225 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C058D5963 |
203 | 20120705225552 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B29C4E81B | 203 | 20150521035956 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C0616723F |
204 | 20120705233754 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B2AB07037 | 204 | 20150521054248 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C12F16C3F |
205 | 20120705234834 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B2AE25CBB | 205 | 20150521060112 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C1379EA23 |
206 | 20120706024556 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B2EDFAA6F | 206 | 20150521023340 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C165F2773 |
207 | 20120705233556 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B30EE83EB | 207 | 20150521043505 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C1A3EC717 |
208 | 20120706002117 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B31E6F727 | 208 | 20150521024626 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C202ABED3 |
209 | 20120705233808 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B37267537 | 209 | 20150521064303 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C27790087 |
210 | 20120706001148 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B3DF98C1F | 210 | 20150521060604 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C2F9DF583 |
211 | 20120706013155 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B3FBB98EB | 211 | 20150521062143 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C3003EEAB |
212 | 20120706025705 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B418898A7 | 212 | 20150521044311 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C363D0A77 |
213 | 20120706022948 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B4707179B | 213 | 20150521053731 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C37D6EFCF |
214 | 20120705233534 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B4F3D25C7 | 214 | 20150521065640 2 6 100 7679 5 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C3A20A2DF |
215 | 20120706014542 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B520205CB | 215 | 20150521044717 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C3F622E8B |
216 | 20120706030026 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B539518DB | 216 | 20150521065426 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C430ED7CB |
217 | 20120706003519 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B566E0243 | 217 | 20150521023632 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C445E575B |
218 | 20120706032218 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B59E508EF | 218 | 20150521032945 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C45EEE643 |
219 | 20120706033523 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B5A254F5F | 219 | 20150521054538 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C49FB77CB |
220 | 20120705235242 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B5B60C48F | 220 | 20150521024620 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C4D86D0FB |
221 | 20120706022615 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B646A1B3B | 221 | 20150521042108 2 6 100 7679 2 D67DA234F46097F7EE3B230456E7C895BCA86395DF43D60D9D587C64EA4525FBCAD22442143068578CE8ECC8280B2D81F747B484AA668FFCDBEB067EB824B42E5FA1A40BC08EE8CC4A064298CB31C36340951EC7A006878C79C80068196180DA31E1DEF79A72B2D059203DDE461485D1B9783AF79E981CDAEF88589D8343E5B52D96FE90EA13194AFAF7459B17B80971720357ABD09CFE992966FFC1C239821C910F55D69E44277E5DE9841F4E5B2D25D6A265D321059B762F7D6AC5F0E260DEEB628D32940002B219B354486CC5BBF6390F19899EA5E145A28487029DF0517564A81FA10FA60AFA04CE77794775392829DB636E7F5EE00868D5027A6BA75CA922CEF3CA78683D14AB2E58439789033ACF441236F5E3C7849E3662B5123304F82D0061EA9C18EA1676A736FFD628AE982CCEAB8979568C43FB34207E0DEC7D8A6AA391846C910F77771ECF2D0531A234D3798BC1B1433091A895E23A77792F4BE403D526F1D260A3627F2E80E863A204A774F58D7DE2C5C4A7E463A46BC436F0B7AF07179EC334D31073BF035FD94454ECD54146473F786EA15A1CEBB3B9C0D282195AD612D33B31F5528DAB5231CB17A3DE9AB5C8BD7BF8F773C255845BC9B70A1E53A50E5AEA801FFE604A2B2C1FBE86A2A883632E7AE75ADA007FB6AB1AA529DE3151CAA8D1D07FA19EFF5679398340E720CF2CFC4E1AEDD73C44983CC8E610DD419AE2E88206573837D6E44018D9498B62F9C0B8EA7741450FC7DBFF7C546D3CBCBA5B9123577FD5531880A18F1275F9181A922803D8F03512C58B5FBBC41CE8095EDD920A3E36CEB6EDB56900E6CEC2928288909D61B3B426EBC54F0A69C261A848B358C3A8E332567B9FFC1A7A07E9414BB1F75DE0795CF87632F5D6A87A246FD4E98E70489F779FE99C5BC4DB24BFA860C3551888FC721CDBC6AB5783B02BEF893E0984B6FDB5142A1AFD3277FE8F36B87849BC00B3FB3ADAFE4EDAE4839B83894C27FEF93514D7E3FFB7A30E99C6875D96C582E81D45FB463DC37B8791FC28A759301FC2F9879960C82BC7C427382A41B9AEFAC0051A2C653E55A47B48860CDA32812A192C1508A6C012C7E4BBAB1619B7926549FD8CE27928618F035BE31D56CBC9586D88E00DA69341F6F01554E205344E49E8871CCF80F9FF5CB54479AFA66806DD02FAFEE7D43572B3AA22742635FE65BFC8004960DC679FC7F8C0E5B50B3CE1E446B7A5E189BB9AAFA06FEC472D6E67EA4905373A01A2B662F534131405FBAB9BBAE892F0C265439EA1ABC91B186B5AC1E53A0C786607B1069BC026359955CFD614D7F80DF416A08AB18991A0398A83DF3CF2D65D7C505E524B |
222 | 20120706032540 2 6 100 6143 5 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B6594B14F | 222 | 20150521041835 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CD3703FA7 |
223 | 20120706001843 2 6 100 6143 2 EEBCAD36F686DDEB790C1EBDF6C6355A4EEB95435785FAC26C1DDBBD0D3C284AB5B4A1D5BA22131604AAE087D8B9431038CDA76DAA9E1C8D10793F53374FDF26489D38FF13188B6961B86E44A065D2FADEFC6C9496350AFA4129C9FD1B6B321E6053A6C645978C151D623C1106FE6669C220690B637F6259522F88250CC2B1B7F170706E9CE741F6E26BB4E86FB6822B13D8A7CE99FEF5CD66EF08310ECE5CC86648BD90E1DC59332505579116D3F3C8314065DC1319BEA133ED809903CA4949905C3D21619217816465E964768FFE76BC962AACBC8FF13477990A81C8759BBE95DFFA22E299F7C0F79A0EA7C44B28E8AB96149CC213E7C886E3D0A2230D7A4176749D6EDD6FCA2F5F3E2BD10392BC818CFB25C696C1EC14CE6F23CDB6C3DA2ED77E098A874799EB65F82A4EAF85CA0C9E68278381AF964AA5816B2CDA8E1ABB2954C02F641E1F374563B0F9DBF2F1B6D8168558BB971C8F48668A8034F82908D45D4D9A9072375D00AE0D5D442C6E6B6B2E7280C104C7675FDB0795DD0D3273E74BDC7B243B7604447502EB1572A273ABA0032CDB754345B1ACDF17B5AEDA45B661DBEFDA084B1427F94C8EA62BAB6A1E05DED8F2F706445879F15FB096996765238B6B546FDE5F219B5B85B31E804A989C4959600998A03572FB59DC150714BDB0C71A236497AE79871FBEFCAFFF34D2DF0142F2AF3C9C5D92F5FC7A61A27FF9AA1EADDF3552A2BED2CC4D19FB0F67DCC02744947A42FE10B338A3A8E634B413AE46C4E644DD5934D5820C9714656171A02BBCA25AED1CCD9EB9BEF9C63E7E966B0E2E47146191ECA452588FA2AFF50AF25FABAF83E143D47A651BD9B9C37CF5D6319FDCBC2F5D4B76D07B52D857FDE48FD983F06B531F7D316E2961E17D358FE6556C82C2E78C1D9CCF68760EFD8CC692E8912914781651D834C0C766B3D71C07C91AB93619E0C06385CFAC6FA18E1DEC7F3C5EE92C906CC49A4786D24CDB4F5656DE60F1F4412367B16BDA68DA368218C16E30C48366A8C0FDFA6E708E3353B8471402A42E594903774A65EA7AB5A83D08AD10D34DB38201B44B677C3593 | 223 | 20150521051726 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CD4CEF96F |
224 | 20120705054703 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234453518A0F7 | 224 | 20150521074626 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CD86439C3 |
225 | 20120705060217 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445353B291F | 225 | 20150521082439 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CD947F7F3 |
226 | 20120705100916 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344537DF8F1B | 226 | 20150521012012 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CE0694343 |
227 | 20120705112627 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344538AF7C7B | 227 | 20150521073153 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CE93D436F |
228 | 20120705121419 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445392BB61F | 228 | 20150521094433 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CEC4EE993 |
229 | 20120705162623 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234453BD5FE03 | 229 | 20150521074128 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354CFA190CE3 |
230 | 20120705171958 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234453C6257EF | 230 | 20150521014004 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D0235296F |
231 | 20120705222541 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234453FBF1073 | 231 | 20150521014736 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D025961EB |
232 | 20120705120012 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344544BA2363 | 232 | 20150521065737 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D0961218F |
233 | 20120705143238 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445464ED33B | 233 | 20150521043653 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D163706C7 |
234 | 20120705175610 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445486B9E93 | 234 | 20150521085322 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D1BC6858F |
235 | 20120705143839 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344551AEBB1B | 235 | 20150521093922 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D1CC27FE3 |
236 | 20120705164833 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344553053057 | 236 | 20150521120407 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D1FE2874F |
237 | 20120705195911 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344560200E33 | 237 | 20150521124157 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D20A8A19B |
238 | 20120705051445 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445620DCB9B | 238 | 20150521035417 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D24E0665B |
239 | 20120705090103 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234456453E2C3 | 239 | 20150521062806 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D2828F7AB |
240 | 20120705102457 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234456520F7B3 | 240 | 20150521074218 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D29B42017 |
241 | 20120705045958 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234456CC34FE7 | 241 | 20150521114937 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D2F027D3F |
242 | 20120705064048 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234456DBB1643 | 242 | 20150521073847 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D3905A9FF |
243 | 20120705100057 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234456FACFC3F | 243 | 20150521024512 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D41DB2FFB |
244 | 20120705130216 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445716EEFD3 | 244 | 20150521024827 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D41E2852F |
245 | 20120705184211 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344574BD3B0F | 245 | 20150521042402 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D43D9B0E3 |
246 | 20120705075506 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234457918ED6F | 246 | 20150521083756 2 6 100 8191 5 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D491D852F |
247 | 20120705111016 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445857E1707 | 247 | 20150521113241 2 6 100 8191 2 D7182545CB6AFDA1CCF5BB87F606DDD1CD25D4BAF110D7CCCC0BC78929189C09DC69308FBF76A16338AB8351B974081AEFE6F68B9DD0B3F661ED84DAF8736BF328122D00A803AD05DDB334CF5C98B2670F0B2ED0E2FA602CE2F6157A2A8E649A546957CE4F723C84B6AC46D64C5B329304181F2B70F48D15181C38777F4E18BB0344F5DAE703CC3A46B670713A7B99E536D30F92D1E5E683F2C5540105F425E01234968D1A63E0220A02721183E30302F029E4D0E0664E30329B730D99D03E53D67793F31BBA6C4274FB2ACA9181655B766246C598E4CD402737B682232B8534BE43A790ED6C04EF8047E1796048099B65EF415375D87BC7A01CB6086C9E23B667D22F52F5F44D6960601C15515D14F7D6A6BF6D7F6B1D834866ADF9FCFA1CDE00EF04C05591B05D4752471F124406D034BC8E6D71E03880BD3E7A77FD22E7D90B90A491E528EDE2E4B6FCF7C638883A4CDE80AF2C839569A4FB641C7B8948200DB0F51CA9B2613966C51F026A007D0696D14A4E4897556C7BB0E60A407B7B8C57643F278A47CC8089E24D38BAC1350A0E6D19FE540A773B8E90A6312D4B038C643B03ADDC741BDD3012F7714863BB63688E6145D47A6F40D15D6485E5AC278E229EA800FE705FEBEB2183CEF7C55DB952B627D4890B45441B3D4CF03BF0D132A7042C24447518B14956C11703131981CD69D7B6BA2A9F8C62057FE3A4319D17739DE0BBDAC9600E4809CD856E5F41C580863D93C251F0A31BA1CBCCAA499FEB79184E165C436A3B2FA9791C4526B47B0D1F6FE3BDE2730421E5DCA10483D91AA873ABD1236674EBE3A0D134C685CCE9D632280AE11C0D9CF7275517C1F14BCB81F2B23860D86F5028B21DF85868972EDF70A0704B3853EB1B16970834C661BC65693D38368DDB0D6E781DD2F52AE279913304601F5709E1C4B1A12B0FFDA93369001186FE8716027667F4B816E927A9977D3030CE211F4BE8B6F48836EABF4D8457FC5CFE39DF5BE96146D3B8C5BA11C3D75D252B0C190DEA5757049DE6BA89249166D60163ADDD38EAE171B53D44E135973AA05293AA7407693AE5478F480A3BE97BACBD8C7DE6EDF39EFB8BDDF8B0A2169228FD98A863C450129C8BA561A1D0F29C4EC75060A27E028E1321BCF7ADCB34B2C2B037E2C6B705F74002E0C844092025A630CFB2105F04D40135794DDF30C7E19187AE2AB8E6296C9EACFF43279F0ABE6E1150ABC2C3C8A6C4B95A7AA18CFBF953BF7662C16A0FE26D9EE7CF62BA16AA87B06373082E7551F42B8BE57BE19A50B059DC652BA46157FB7CC29AC1BF2834E668443637F87B2B12FD338706D69935D2C6348CF72F568B89B66345BF42209AA6D898F4388A54B4CFFD735EAF987CD6B738B401A14FACDAC97F63529118ED56DFB7DAC4967FFA252D185DBC29652E3F62A45D6BF990FB354D4CAD7D8B |
248 | 20120705051124 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234458C6078E3 | ||
249 | 20120705054255 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234458CA4E313 | ||
250 | 20120705155949 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234459281E7B3 | ||
251 | 20120705065517 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE2344597A57CB3 | ||
252 | 20120705082307 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445987253DB | ||
253 | 20120705182442 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234459E124B2F | ||
254 | 20120705184956 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE234459E442F5B | ||
255 | 20120705071209 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445A1E0FD83 | ||
256 | 20120705155527 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445A6BDA473 | ||
257 | 20120705103912 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445ADCE429F | ||
258 | 20120705115451 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445AE75FB83 | ||
259 | 20120705133531 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445AF5813A3 | ||
260 | 20120705144902 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445AFF92FDF | ||
261 | 20120705160631 2 6 100 8191 5 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445B0A9AF9F | ||
262 | 20120705194100 2 6 100 8191 2 DA2167F01CB32874E032B38C40FEC5F2557C9C4411B3A4B3D38C889A8BEED4EB7EF08A9A1E1EAAEEC22C2A46891D3CA84517FDFCDFA2BACBCDE2FC8EA87182542F5C8D3897B6C8A6DB951256F3DDBA7C5D6E7060925AD1F3046F49D00B433770B412DAA2A74E539EB81E3266DDDA82781BB21B19695FB925FA8BB6D249B5C33401C5D9E5C6B1719A36F1EB36E7CCD28AD98AA74DFD453D343BD189C968EB8F459809E87F77C6BA985B82B960A46660C7A277970E016EBD183CE7D6232F56EB06ECC0931024B9333879EF063F976C3603649AB9DCBE9714753E0A865020C3EF22BABF2F473F771CFC70A7C43FE320640D6E2816E88B6CA501A85A34F88EFF26AD8FFA0D11B0A21CB1A4FC7F90DB97B11BD5367302CBB45A390D2CB28CE83D50156A161D0080FD5F3961872ABC56FBCB973C517F6D7205E6CCF44E22E5DF8793D5037A9E779A52628D258CEA6B45CA4AC604CD69875D51145EE4C3D8856E24F9DBCA0134D54A734320A46A0AF52E20DD604AD465508172D4185C0D5C720B325ABC1760B1680B7BDFBAA1AE845A84AC3C7BBC53CD01C000B2186DC3915A1879224DD703E817C58F5FFCFBDF0189BB4B5033769F49852F3C48A88B88FB659B4AC96EE9DFC1D7E1760194EE4E1B6A8052BA17C827BE8A74C9F3FA7EA3236171F3DF9ACF19C40636825F1C49EFAAB12CEAD24F4585FE7C466FDE7ACF7E1FC91C8D473A8AB12C652AF568227E7CE3421256F83084D8E82DC977309E5B8C73EB8D92B71B9DAF6A53D13539D55C1A67BAC646358352529958AA3599DF0D882B8640ABFF17031C3F246A3E07F86AEB29CEACACF3B3EB931C40D292D09F4B99E08E4C68D811F9425DA30AC456107454AAC470DBD627C3EE2132E7C6FCEB61C2BA1CBE4FE6F07A2A4E398FDFBECC0283E9CF440F9F8F6893D019A98EFE992BA7433951DF341A3B3A8E879B090FB0E11907382853FBD6FA79B5B3FFF4EBE286F92A99D24C548949209867B1116BDBE1F104230EE26CCA0A12602A328B9B7A86D18415881AEFC9527AD4BB563CC330F29DF51199E1E9F0317EE6F3768C0849351FC1F95D47A1DE90484BE923ADC004D8287A90168C1D1491AD9A9B3266A826F966AA964E814F171FF9F3BA755DF83961182D95317844D6064D8BDED2DDB9AB4D74C325C1748036103690D88D85B532B692B74ED199253CB77E3BA57A2369BD9DD3B4FE68A66A1EFE507BA1F1A0164B6EDF397DF550EAC7FA155F7DED564A34DA73BC1F72E2D56CBABADAF3ED6B03C56FE00CA51548604403757ACAE67C71C564D4F688BA44465C7D3FFC84DB2BA142E06A967181CA0806E732134D795AD6E936BB25C00A14FE0DA5A83A7095D0271B380E802CD9E6E601C582EAC20CB6AC0C670108376302BA364FFD30E78D0CAB72BADB15F282CD256BC3B365896D80DC170BE23445B296E223 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: monitor.c,v 1.145 2015/02/20 22:17:21 djm Exp $ */ | 1 | /* $OpenBSD: monitor.c,v 1.150 2015/06/22 23:42:16 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | 3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> |
4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> | 4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> |
@@ -432,7 +432,7 @@ monitor_child_preauth(Authctxt *_authctxt, struct monitor *pmonitor) | |||
432 | if (ent->flags & (MON_AUTHDECIDE|MON_ALOG)) { | 432 | if (ent->flags & (MON_AUTHDECIDE|MON_ALOG)) { |
433 | auth_log(authctxt, authenticated, partial, | 433 | auth_log(authctxt, authenticated, partial, |
434 | auth_method, auth_submethod); | 434 | auth_method, auth_submethod); |
435 | if (!authenticated) | 435 | if (!partial && !authenticated) |
436 | authctxt->failures++; | 436 | authctxt->failures++; |
437 | } | 437 | } |
438 | } | 438 | } |
@@ -1244,7 +1244,7 @@ mm_answer_keyallowed(int sock, Buffer *m) | |||
1244 | Key *key; | 1244 | Key *key; |
1245 | char *cuser, *chost; | 1245 | char *cuser, *chost; |
1246 | u_char *blob; | 1246 | u_char *blob; |
1247 | u_int bloblen; | 1247 | u_int bloblen, pubkey_auth_attempt; |
1248 | enum mm_keytype type = 0; | 1248 | enum mm_keytype type = 0; |
1249 | int allowed = 0; | 1249 | int allowed = 0; |
1250 | 1250 | ||
@@ -1254,6 +1254,7 @@ mm_answer_keyallowed(int sock, Buffer *m) | |||
1254 | cuser = buffer_get_string(m, NULL); | 1254 | cuser = buffer_get_string(m, NULL); |
1255 | chost = buffer_get_string(m, NULL); | 1255 | chost = buffer_get_string(m, NULL); |
1256 | blob = buffer_get_string(m, &bloblen); | 1256 | blob = buffer_get_string(m, &bloblen); |
1257 | pubkey_auth_attempt = buffer_get_int(m); | ||
1257 | 1258 | ||
1258 | key = key_from_blob(blob, bloblen); | 1259 | key = key_from_blob(blob, bloblen); |
1259 | 1260 | ||
@@ -1274,19 +1275,19 @@ mm_answer_keyallowed(int sock, Buffer *m) | |||
1274 | allowed = options.pubkey_authentication && | 1275 | allowed = options.pubkey_authentication && |
1275 | !auth2_userkey_already_used(authctxt, key) && | 1276 | !auth2_userkey_already_used(authctxt, key) && |
1276 | match_pattern_list(sshkey_ssh_name(key), | 1277 | match_pattern_list(sshkey_ssh_name(key), |
1277 | options.pubkey_key_types, | 1278 | options.pubkey_key_types, 0) == 1 && |
1278 | strlen(options.pubkey_key_types), 0) == 1 && | 1279 | user_key_allowed(authctxt->pw, key, |
1279 | user_key_allowed(authctxt->pw, key); | 1280 | pubkey_auth_attempt); |
1280 | pubkey_auth_info(authctxt, key, NULL); | 1281 | pubkey_auth_info(authctxt, key, NULL); |
1281 | auth_method = "publickey"; | 1282 | auth_method = "publickey"; |
1282 | if (options.pubkey_authentication && allowed != 1) | 1283 | if (options.pubkey_authentication && |
1284 | (!pubkey_auth_attempt || allowed != 1)) | ||
1283 | auth_clear_options(); | 1285 | auth_clear_options(); |
1284 | break; | 1286 | break; |
1285 | case MM_HOSTKEY: | 1287 | case MM_HOSTKEY: |
1286 | allowed = options.hostbased_authentication && | 1288 | allowed = options.hostbased_authentication && |
1287 | match_pattern_list(sshkey_ssh_name(key), | 1289 | match_pattern_list(sshkey_ssh_name(key), |
1288 | options.hostbased_key_types, | 1290 | options.hostbased_key_types, 0) == 1 && |
1289 | strlen(options.hostbased_key_types), 0) == 1 && | ||
1290 | hostbased_key_allowed(authctxt->pw, | 1291 | hostbased_key_allowed(authctxt->pw, |
1291 | cuser, chost, key); | 1292 | cuser, chost, key); |
1292 | pubkey_auth_info(authctxt, key, | 1293 | pubkey_auth_info(authctxt, key, |
@@ -1533,6 +1534,9 @@ mm_record_login(Session *s, struct passwd *pw) | |||
1533 | socklen_t fromlen; | 1534 | socklen_t fromlen; |
1534 | struct sockaddr_storage from; | 1535 | struct sockaddr_storage from; |
1535 | 1536 | ||
1537 | if (options.use_login) | ||
1538 | return; | ||
1539 | |||
1536 | /* | 1540 | /* |
1537 | * Get IP address of client. If the connection is not a socket, let | 1541 | * Get IP address of client. If the connection is not a socket, let |
1538 | * the address be 0.0.0.0. | 1542 | * the address be 0.0.0.0. |
diff --git a/monitor_wrap.c b/monitor_wrap.c index a5f4e9d3c..2a0fe9bf6 100644 --- a/monitor_wrap.c +++ b/monitor_wrap.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: monitor_wrap.c,v 1.84 2015/02/16 22:13:32 djm Exp $ */ | 1 | /* $OpenBSD: monitor_wrap.c,v 1.85 2015/05/01 03:23:51 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | 3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> |
4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> | 4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> |
@@ -153,10 +153,8 @@ mm_request_receive(int sock, Buffer *m) | |||
153 | debug3("%s entering", __func__); | 153 | debug3("%s entering", __func__); |
154 | 154 | ||
155 | if (atomicio(read, sock, buf, sizeof(buf)) != sizeof(buf)) { | 155 | if (atomicio(read, sock, buf, sizeof(buf)) != sizeof(buf)) { |
156 | if (errno == EPIPE) { | 156 | if (errno == EPIPE) |
157 | error("%s: socket closed", __func__); | ||
158 | cleanup_exit(255); | 157 | cleanup_exit(255); |
159 | } | ||
160 | fatal("%s: read: %s", __func__, strerror(errno)); | 158 | fatal("%s: read: %s", __func__, strerror(errno)); |
161 | } | 159 | } |
162 | msg_len = get_u32(buf); | 160 | msg_len = get_u32(buf); |
@@ -391,16 +389,17 @@ mm_auth_password(Authctxt *authctxt, char *password) | |||
391 | } | 389 | } |
392 | 390 | ||
393 | int | 391 | int |
394 | mm_user_key_allowed(struct passwd *pw, Key *key) | 392 | mm_user_key_allowed(struct passwd *pw, Key *key, int pubkey_auth_attempt) |
395 | { | 393 | { |
396 | return (mm_key_allowed(MM_USERKEY, NULL, NULL, key)); | 394 | return (mm_key_allowed(MM_USERKEY, NULL, NULL, key, |
395 | pubkey_auth_attempt)); | ||
397 | } | 396 | } |
398 | 397 | ||
399 | int | 398 | int |
400 | mm_hostbased_key_allowed(struct passwd *pw, char *user, char *host, | 399 | mm_hostbased_key_allowed(struct passwd *pw, char *user, char *host, |
401 | Key *key) | 400 | Key *key) |
402 | { | 401 | { |
403 | return (mm_key_allowed(MM_HOSTKEY, user, host, key)); | 402 | return (mm_key_allowed(MM_HOSTKEY, user, host, key, 0)); |
404 | } | 403 | } |
405 | 404 | ||
406 | int | 405 | int |
@@ -410,13 +409,14 @@ mm_auth_rhosts_rsa_key_allowed(struct passwd *pw, char *user, | |||
410 | int ret; | 409 | int ret; |
411 | 410 | ||
412 | key->type = KEY_RSA; /* XXX hack for key_to_blob */ | 411 | key->type = KEY_RSA; /* XXX hack for key_to_blob */ |
413 | ret = mm_key_allowed(MM_RSAHOSTKEY, user, host, key); | 412 | ret = mm_key_allowed(MM_RSAHOSTKEY, user, host, key, 0); |
414 | key->type = KEY_RSA1; | 413 | key->type = KEY_RSA1; |
415 | return (ret); | 414 | return (ret); |
416 | } | 415 | } |
417 | 416 | ||
418 | int | 417 | int |
419 | mm_key_allowed(enum mm_keytype type, char *user, char *host, Key *key) | 418 | mm_key_allowed(enum mm_keytype type, char *user, char *host, Key *key, |
419 | int pubkey_auth_attempt) | ||
420 | { | 420 | { |
421 | Buffer m; | 421 | Buffer m; |
422 | u_char *blob; | 422 | u_char *blob; |
@@ -434,6 +434,7 @@ mm_key_allowed(enum mm_keytype type, char *user, char *host, Key *key) | |||
434 | buffer_put_cstring(&m, user ? user : ""); | 434 | buffer_put_cstring(&m, user ? user : ""); |
435 | buffer_put_cstring(&m, host ? host : ""); | 435 | buffer_put_cstring(&m, host ? host : ""); |
436 | buffer_put_string(&m, blob, len); | 436 | buffer_put_string(&m, blob, len); |
437 | buffer_put_int(&m, pubkey_auth_attempt); | ||
437 | free(blob); | 438 | free(blob); |
438 | 439 | ||
439 | mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_KEYALLOWED, &m); | 440 | mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_KEYALLOWED, &m); |
diff --git a/monitor_wrap.h b/monitor_wrap.h index f99c31c43..682939215 100644 --- a/monitor_wrap.h +++ b/monitor_wrap.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: monitor_wrap.h,v 1.26 2015/02/16 22:13:32 djm Exp $ */ | 1 | /* $OpenBSD: monitor_wrap.h,v 1.27 2015/05/01 03:23:51 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | 4 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> |
@@ -46,8 +46,8 @@ void mm_inform_authrole(char *); | |||
46 | struct passwd *mm_getpwnamallow(const char *); | 46 | struct passwd *mm_getpwnamallow(const char *); |
47 | char *mm_auth2_read_banner(void); | 47 | char *mm_auth2_read_banner(void); |
48 | int mm_auth_password(struct Authctxt *, char *); | 48 | int mm_auth_password(struct Authctxt *, char *); |
49 | int mm_key_allowed(enum mm_keytype, char *, char *, Key *); | 49 | int mm_key_allowed(enum mm_keytype, char *, char *, Key *, int); |
50 | int mm_user_key_allowed(struct passwd *, Key *); | 50 | int mm_user_key_allowed(struct passwd *, Key *, int); |
51 | int mm_hostbased_key_allowed(struct passwd *, char *, char *, Key *); | 51 | int mm_hostbased_key_allowed(struct passwd *, char *, char *, Key *); |
52 | int mm_auth_rhosts_rsa_key_allowed(struct passwd *, char *, char *, Key *); | 52 | int mm_auth_rhosts_rsa_key_allowed(struct passwd *, char *, char *, Key *); |
53 | int mm_key_verify(Key *, u_char *, u_int, u_char *, u_int); | 53 | int mm_key_verify(Key *, u_char *, u_int, u_char *, u_int); |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: mux.c,v 1.50 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: mux.c,v 1.53 2015/05/01 04:03:20 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org> | 3 | * Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org> |
4 | * | 4 | * |
@@ -350,7 +350,7 @@ process_mux_new_session(u_int rid, Channel *c, Buffer *m, Buffer *r) | |||
350 | free(cp); | 350 | free(cp); |
351 | continue; | 351 | continue; |
352 | } | 352 | } |
353 | cctx->env = xrealloc(cctx->env, env_len + 2, | 353 | cctx->env = xreallocarray(cctx->env, env_len + 2, |
354 | sizeof(*cctx->env)); | 354 | sizeof(*cctx->env)); |
355 | cctx->env[env_len++] = cp; | 355 | cctx->env[env_len++] = cp; |
356 | cctx->env[env_len] = NULL; | 356 | cctx->env[env_len] = NULL; |
@@ -593,7 +593,9 @@ mux_confirm_remote_forward(int type, u_int32_t seq, void *ctxt) | |||
593 | return; | 593 | return; |
594 | } | 594 | } |
595 | buffer_init(&out); | 595 | buffer_init(&out); |
596 | if (fctx->fid >= options.num_remote_forwards) { | 596 | if (fctx->fid >= options.num_remote_forwards || |
597 | (options.remote_forwards[fctx->fid].connect_path == NULL && | ||
598 | options.remote_forwards[fctx->fid].connect_host == NULL)) { | ||
597 | xasprintf(&failmsg, "unknown forwarding id %d", fctx->fid); | 599 | xasprintf(&failmsg, "unknown forwarding id %d", fctx->fid); |
598 | goto fail; | 600 | goto fail; |
599 | } | 601 | } |
@@ -605,7 +607,7 @@ mux_confirm_remote_forward(int type, u_int32_t seq, void *ctxt) | |||
605 | if (type == SSH2_MSG_REQUEST_SUCCESS) { | 607 | if (type == SSH2_MSG_REQUEST_SUCCESS) { |
606 | if (rfwd->listen_port == 0) { | 608 | if (rfwd->listen_port == 0) { |
607 | rfwd->allocated_port = packet_get_int(); | 609 | rfwd->allocated_port = packet_get_int(); |
608 | logit("Allocated port %u for mux remote forward" | 610 | debug("Allocated port %u for mux remote forward" |
609 | " to %s:%d", rfwd->allocated_port, | 611 | " to %s:%d", rfwd->allocated_port, |
610 | rfwd->connect_host, rfwd->connect_port); | 612 | rfwd->connect_host, rfwd->connect_port); |
611 | buffer_put_int(&out, MUX_S_REMOTE_PORT); | 613 | buffer_put_int(&out, MUX_S_REMOTE_PORT); |
@@ -627,6 +629,17 @@ mux_confirm_remote_forward(int type, u_int32_t seq, void *ctxt) | |||
627 | else | 629 | else |
628 | xasprintf(&failmsg, "remote port forwarding failed for " | 630 | xasprintf(&failmsg, "remote port forwarding failed for " |
629 | "listen port %d", rfwd->listen_port); | 631 | "listen port %d", rfwd->listen_port); |
632 | |||
633 | debug2("%s: clearing registered forwarding for listen %d, " | ||
634 | "connect %s:%d", __func__, rfwd->listen_port, | ||
635 | rfwd->connect_path ? rfwd->connect_path : | ||
636 | rfwd->connect_host, rfwd->connect_port); | ||
637 | |||
638 | free(rfwd->listen_host); | ||
639 | free(rfwd->listen_path); | ||
640 | free(rfwd->connect_host); | ||
641 | free(rfwd->connect_path); | ||
642 | memset(rfwd, 0, sizeof(*rfwd)); | ||
630 | } | 643 | } |
631 | fail: | 644 | fail: |
632 | error("%s: %s", __func__, failmsg); | 645 | error("%s: %s", __func__, failmsg); |
@@ -1722,7 +1735,7 @@ mux_client_forward(int fd, int cancel_flag, u_int ftype, struct Forward *fwd) | |||
1722 | if (cancel_flag) | 1735 | if (cancel_flag) |
1723 | fatal("%s: got MUX_S_REMOTE_PORT for cancel", __func__); | 1736 | fatal("%s: got MUX_S_REMOTE_PORT for cancel", __func__); |
1724 | fwd->allocated_port = buffer_get_int(&m); | 1737 | fwd->allocated_port = buffer_get_int(&m); |
1725 | logit("Allocated port %u for remote forward to %s:%d", | 1738 | verbose("Allocated port %u for remote forward to %s:%d", |
1726 | fwd->allocated_port, | 1739 | fwd->allocated_port, |
1727 | fwd->connect_host ? fwd->connect_host : "", | 1740 | fwd->connect_host ? fwd->connect_host : "", |
1728 | fwd->connect_port); | 1741 | fwd->connect_port); |
diff --git a/myproposal.h b/myproposal.h index b35b2b8bd..84b63bcd5 100644 --- a/myproposal.h +++ b/myproposal.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: myproposal.h,v 1.41 2014/07/11 13:54:34 tedu Exp $ */ | 1 | /* $OpenBSD: myproposal.h,v 1.44 2015/05/27 23:51:10 dtucker Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
@@ -61,7 +61,7 @@ | |||
61 | 61 | ||
62 | #ifdef OPENSSL_HAVE_EVPGCM | 62 | #ifdef OPENSSL_HAVE_EVPGCM |
63 | # define AESGCM_CIPHER_MODES \ | 63 | # define AESGCM_CIPHER_MODES \ |
64 | "aes128-gcm@openssh.com,aes256-gcm@openssh.com," | 64 | ",aes128-gcm@openssh.com,aes256-gcm@openssh.com" |
65 | #else | 65 | #else |
66 | # define AESGCM_CIPHER_MODES | 66 | # define AESGCM_CIPHER_MODES |
67 | #endif | 67 | #endif |
@@ -83,14 +83,17 @@ | |||
83 | # else | 83 | # else |
84 | # define KEX_CURVE25519_METHODS "" | 84 | # define KEX_CURVE25519_METHODS "" |
85 | # endif | 85 | # endif |
86 | #define KEX_SERVER_KEX \ | 86 | #define KEX_COMMON_KEX \ |
87 | KEX_CURVE25519_METHODS \ | 87 | KEX_CURVE25519_METHODS \ |
88 | KEX_ECDH_METHODS \ | 88 | KEX_ECDH_METHODS \ |
89 | KEX_SHA256_METHODS \ | 89 | KEX_SHA256_METHODS |
90 | "diffie-hellman-group14-sha1" | ||
91 | 90 | ||
92 | #define KEX_CLIENT_KEX KEX_SERVER_KEX "," \ | 91 | #define KEX_SERVER_KEX KEX_COMMON_KEX \ |
92 | "diffie-hellman-group14-sha1" \ | ||
93 | |||
94 | #define KEX_CLIENT_KEX KEX_COMMON_KEX \ | ||
93 | "diffie-hellman-group-exchange-sha1," \ | 95 | "diffie-hellman-group-exchange-sha1," \ |
96 | "diffie-hellman-group14-sha1," \ | ||
94 | "diffie-hellman-group1-sha1" | 97 | "diffie-hellman-group1-sha1" |
95 | 98 | ||
96 | #define KEX_DEFAULT_PK_ALG \ | 99 | #define KEX_DEFAULT_PK_ALG \ |
@@ -108,9 +111,9 @@ | |||
108 | /* the actual algorithms */ | 111 | /* the actual algorithms */ |
109 | 112 | ||
110 | #define KEX_SERVER_ENCRYPT \ | 113 | #define KEX_SERVER_ENCRYPT \ |
111 | "aes128-ctr,aes192-ctr,aes256-ctr," \ | 114 | "chacha20-poly1305@openssh.com," \ |
112 | AESGCM_CIPHER_MODES \ | 115 | "aes128-ctr,aes192-ctr,aes256-ctr" \ |
113 | "chacha20-poly1305@openssh.com" | 116 | AESGCM_CIPHER_MODES |
114 | 117 | ||
115 | #define KEX_CLIENT_ENCRYPT KEX_SERVER_ENCRYPT "," \ | 118 | #define KEX_CLIENT_ENCRYPT KEX_SERVER_ENCRYPT "," \ |
116 | "arcfour256,arcfour128," \ | 119 | "arcfour256,arcfour128," \ |
@@ -148,8 +151,8 @@ | |||
148 | "ssh-ed25519-cert-v01@openssh.com," \ | 151 | "ssh-ed25519-cert-v01@openssh.com," \ |
149 | "ssh-ed25519" | 152 | "ssh-ed25519" |
150 | #define KEX_SERVER_ENCRYPT \ | 153 | #define KEX_SERVER_ENCRYPT \ |
151 | "aes128-ctr,aes192-ctr,aes256-ctr," \ | 154 | "chacha20-poly1305@openssh.com," \ |
152 | "chacha20-poly1305@openssh.com" | 155 | "aes128-ctr,aes192-ctr,aes256-ctr" |
153 | #define KEX_SERVER_MAC \ | 156 | #define KEX_SERVER_MAC \ |
154 | "umac-64-etm@openssh.com," \ | 157 | "umac-64-etm@openssh.com," \ |
155 | "umac-128-etm@openssh.com," \ | 158 | "umac-128-etm@openssh.com," \ |
diff --git a/openbsd-compat/bcrypt_pbkdf.c b/openbsd-compat/bcrypt_pbkdf.c index 16912575a..0a07f9a0f 100644 --- a/openbsd-compat/bcrypt_pbkdf.c +++ b/openbsd-compat/bcrypt_pbkdf.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: bcrypt_pbkdf.c,v 1.9 2014/07/13 21:21:25 tedu Exp $ */ | 1 | /* $OpenBSD: bcrypt_pbkdf.c,v 1.13 2015/01/12 03:20:04 tedu Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2013 Ted Unangst <tedu@openbsd.org> | 3 | * Copyright (c) 2013 Ted Unangst <tedu@openbsd.org> |
4 | * | 4 | * |
@@ -37,6 +37,8 @@ | |||
37 | #endif | 37 | #endif |
38 | #define SHA512_DIGEST_LENGTH crypto_hash_sha512_BYTES | 38 | #define SHA512_DIGEST_LENGTH crypto_hash_sha512_BYTES |
39 | 39 | ||
40 | #define MINIMUM(a,b) (((a) < (b)) ? (a) : (b)) | ||
41 | |||
40 | /* | 42 | /* |
41 | * pkcs #5 pbkdf2 implementation using the "bcrypt" hash | 43 | * pkcs #5 pbkdf2 implementation using the "bcrypt" hash |
42 | * | 44 | * |
@@ -61,8 +63,8 @@ | |||
61 | * wise caller could do; we just do it for you. | 63 | * wise caller could do; we just do it for you. |
62 | */ | 64 | */ |
63 | 65 | ||
64 | #define BCRYPT_BLOCKS 8 | 66 | #define BCRYPT_WORDS 8 |
65 | #define BCRYPT_HASHSIZE (BCRYPT_BLOCKS * 4) | 67 | #define BCRYPT_HASHSIZE (BCRYPT_WORDS * 4) |
66 | 68 | ||
67 | static void | 69 | static void |
68 | bcrypt_hash(u_int8_t *sha2pass, u_int8_t *sha2salt, u_int8_t *out) | 70 | bcrypt_hash(u_int8_t *sha2pass, u_int8_t *sha2salt, u_int8_t *out) |
@@ -70,7 +72,7 @@ bcrypt_hash(u_int8_t *sha2pass, u_int8_t *sha2salt, u_int8_t *out) | |||
70 | blf_ctx state; | 72 | blf_ctx state; |
71 | u_int8_t ciphertext[BCRYPT_HASHSIZE] = | 73 | u_int8_t ciphertext[BCRYPT_HASHSIZE] = |
72 | "OxychromaticBlowfishSwatDynamite"; | 74 | "OxychromaticBlowfishSwatDynamite"; |
73 | uint32_t cdata[BCRYPT_BLOCKS]; | 75 | uint32_t cdata[BCRYPT_WORDS]; |
74 | int i; | 76 | int i; |
75 | uint16_t j; | 77 | uint16_t j; |
76 | size_t shalen = SHA512_DIGEST_LENGTH; | 78 | size_t shalen = SHA512_DIGEST_LENGTH; |
@@ -85,14 +87,14 @@ bcrypt_hash(u_int8_t *sha2pass, u_int8_t *sha2salt, u_int8_t *out) | |||
85 | 87 | ||
86 | /* encryption */ | 88 | /* encryption */ |
87 | j = 0; | 89 | j = 0; |
88 | for (i = 0; i < BCRYPT_BLOCKS; i++) | 90 | for (i = 0; i < BCRYPT_WORDS; i++) |
89 | cdata[i] = Blowfish_stream2word(ciphertext, sizeof(ciphertext), | 91 | cdata[i] = Blowfish_stream2word(ciphertext, sizeof(ciphertext), |
90 | &j); | 92 | &j); |
91 | for (i = 0; i < 64; i++) | 93 | for (i = 0; i < 64; i++) |
92 | blf_enc(&state, cdata, sizeof(cdata) / sizeof(uint64_t)); | 94 | blf_enc(&state, cdata, sizeof(cdata) / sizeof(uint64_t)); |
93 | 95 | ||
94 | /* copy out */ | 96 | /* copy out */ |
95 | for (i = 0; i < BCRYPT_BLOCKS; i++) { | 97 | for (i = 0; i < BCRYPT_WORDS; i++) { |
96 | out[4 * i + 3] = (cdata[i] >> 24) & 0xff; | 98 | out[4 * i + 3] = (cdata[i] >> 24) & 0xff; |
97 | out[4 * i + 2] = (cdata[i] >> 16) & 0xff; | 99 | out[4 * i + 2] = (cdata[i] >> 16) & 0xff; |
98 | out[4 * i + 1] = (cdata[i] >> 8) & 0xff; | 100 | out[4 * i + 1] = (cdata[i] >> 8) & 0xff; |
@@ -156,9 +158,9 @@ bcrypt_pbkdf(const char *pass, size_t passlen, const u_int8_t *salt, size_t salt | |||
156 | } | 158 | } |
157 | 159 | ||
158 | /* | 160 | /* |
159 | * pbkdf2 deviation: ouput the key material non-linearly. | 161 | * pbkdf2 deviation: output the key material non-linearly. |
160 | */ | 162 | */ |
161 | amt = MIN(amt, keylen); | 163 | amt = MINIMUM(amt, keylen); |
162 | for (i = 0; i < amt; i++) { | 164 | for (i = 0; i < amt; i++) { |
163 | size_t dest = i * stride + (count - 1); | 165 | size_t dest = i * stride + (count - 1); |
164 | if (dest >= origkeylen) | 166 | if (dest >= origkeylen) |
diff --git a/openbsd-compat/blowfish.c b/openbsd-compat/blowfish.c index 6c419549e..e10f7e7d9 100644 --- a/openbsd-compat/blowfish.c +++ b/openbsd-compat/blowfish.c | |||
@@ -50,7 +50,9 @@ | |||
50 | #endif | 50 | #endif |
51 | 51 | ||
52 | #include <sys/types.h> | 52 | #include <sys/types.h> |
53 | #ifdef HAVE_BLF_H | ||
53 | #include <blf.h> | 54 | #include <blf.h> |
55 | #endif | ||
54 | 56 | ||
55 | #undef inline | 57 | #undef inline |
56 | #ifdef __GNUC__ | 58 | #ifdef __GNUC__ |
diff --git a/openbsd-compat/bsd-cygwin_util.c b/openbsd-compat/bsd-cygwin_util.c index a2d82126d..8672ccf7f 100644 --- a/openbsd-compat/bsd-cygwin_util.c +++ b/openbsd-compat/bsd-cygwin_util.c | |||
@@ -68,7 +68,7 @@ cygwin_ssh_privsep_user() | |||
68 | if (cygwin_internal (CW_CYGNAME_FROM_WINNAME, "sshd", cyg_privsep_user, | 68 | if (cygwin_internal (CW_CYGNAME_FROM_WINNAME, "sshd", cyg_privsep_user, |
69 | sizeof cyg_privsep_user) != 0) | 69 | sizeof cyg_privsep_user) != 0) |
70 | #endif | 70 | #endif |
71 | strcpy (cyg_privsep_user, "sshd"); | 71 | strlcpy(cyg_privsep_user, "sshd", sizeof(cyg_privsep_user)); |
72 | } | 72 | } |
73 | return cyg_privsep_user; | 73 | return cyg_privsep_user; |
74 | } | 74 | } |
diff --git a/openbsd-compat/bsd-misc.h b/openbsd-compat/bsd-misc.h index 65c18ec2f..ff347a24b 100644 --- a/openbsd-compat/bsd-misc.h +++ b/openbsd-compat/bsd-misc.h | |||
@@ -111,7 +111,7 @@ pid_t getpgid(pid_t); | |||
111 | #endif | 111 | #endif |
112 | 112 | ||
113 | #ifndef HAVE_ENDGRENT | 113 | #ifndef HAVE_ENDGRENT |
114 | # define endgrent() {} | 114 | # define endgrent() do { } while(0) |
115 | #endif | 115 | #endif |
116 | 116 | ||
117 | #ifndef HAVE_KRB5_GET_ERROR_MESSAGE | 117 | #ifndef HAVE_KRB5_GET_ERROR_MESSAGE |
@@ -119,7 +119,7 @@ pid_t getpgid(pid_t); | |||
119 | #endif | 119 | #endif |
120 | 120 | ||
121 | #ifndef HAVE_KRB5_FREE_ERROR_MESSAGE | 121 | #ifndef HAVE_KRB5_FREE_ERROR_MESSAGE |
122 | # define krb5_free_error_message(a,b) while(0) | 122 | # define krb5_free_error_message(a,b) do { } while(0) |
123 | #endif | 123 | #endif |
124 | 124 | ||
125 | #endif /* _BSD_MISC_H */ | 125 | #endif /* _BSD_MISC_H */ |
diff --git a/openbsd-compat/openbsd-compat.h b/openbsd-compat/openbsd-compat.h index 1cffefe06..cb59ccd57 100644 --- a/openbsd-compat/openbsd-compat.h +++ b/openbsd-compat/openbsd-compat.h | |||
@@ -221,7 +221,7 @@ long long strtonum(const char *, long long, long long, const char **); | |||
221 | 221 | ||
222 | /* multibyte character support */ | 222 | /* multibyte character support */ |
223 | #ifndef HAVE_MBLEN | 223 | #ifndef HAVE_MBLEN |
224 | # define mblen(x, y) 1 | 224 | # define mblen(x, y) (1) |
225 | #endif | 225 | #endif |
226 | 226 | ||
227 | #if !defined(HAVE_VASPRINTF) || !defined(HAVE_VSNPRINTF) | 227 | #if !defined(HAVE_VASPRINTF) || !defined(HAVE_VSNPRINTF) |
diff --git a/openbsd-compat/rmd160.c b/openbsd-compat/rmd160.c index 2a14dd7b0..e915141a5 100644 --- a/openbsd-compat/rmd160.c +++ b/openbsd-compat/rmd160.c | |||
@@ -32,7 +32,9 @@ | |||
32 | #ifndef WITH_OPENSSL | 32 | #ifndef WITH_OPENSSL |
33 | 33 | ||
34 | #include <sys/types.h> | 34 | #include <sys/types.h> |
35 | #ifdef HAVE_ENDIAN_H | ||
35 | #include <endian.h> | 36 | #include <endian.h> |
37 | #endif | ||
36 | #include <string.h> | 38 | #include <string.h> |
37 | #include <rmd160.h> | 39 | #include <rmd160.h> |
38 | 40 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: packet.c,v 1.208 2015/02/13 18:57:00 markus Exp $ */ | 1 | /* $OpenBSD: packet.c,v 1.212 2015/05/01 07:10:01 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -290,6 +290,7 @@ ssh_packet_set_connection(struct ssh *ssh, int fd_in, int fd_out) | |||
290 | (r = cipher_init(&state->receive_context, none, | 290 | (r = cipher_init(&state->receive_context, none, |
291 | (const u_char *)"", 0, NULL, 0, CIPHER_DECRYPT)) != 0) { | 291 | (const u_char *)"", 0, NULL, 0, CIPHER_DECRYPT)) != 0) { |
292 | error("%s: cipher_init failed: %s", __func__, ssh_err(r)); | 292 | error("%s: cipher_init failed: %s", __func__, ssh_err(r)); |
293 | free(ssh); | ||
293 | return NULL; | 294 | return NULL; |
294 | } | 295 | } |
295 | state->newkeys[MODE_IN] = state->newkeys[MODE_OUT] = NULL; | 296 | state->newkeys[MODE_IN] = state->newkeys[MODE_OUT] = NULL; |
@@ -791,7 +792,9 @@ ssh_packet_set_compress_hooks(struct ssh *ssh, void *ctx, | |||
791 | void | 792 | void |
792 | ssh_packet_set_encryption_key(struct ssh *ssh, const u_char *key, u_int keylen, int number) | 793 | ssh_packet_set_encryption_key(struct ssh *ssh, const u_char *key, u_int keylen, int number) |
793 | { | 794 | { |
794 | #ifdef WITH_SSH1 | 795 | #ifndef WITH_SSH1 |
796 | fatal("no SSH protocol 1 support"); | ||
797 | #else /* WITH_SSH1 */ | ||
795 | struct session_state *state = ssh->state; | 798 | struct session_state *state = ssh->state; |
796 | const struct sshcipher *cipher = cipher_by_number(number); | 799 | const struct sshcipher *cipher = cipher_by_number(number); |
797 | int r; | 800 | int r; |
@@ -1279,7 +1282,7 @@ ssh_packet_read_seqnr(struct ssh *ssh, u_char *typep, u_int32_t *seqnr_p) | |||
1279 | * been sent. | 1282 | * been sent. |
1280 | */ | 1283 | */ |
1281 | if ((r = ssh_packet_write_wait(ssh)) != 0) | 1284 | if ((r = ssh_packet_write_wait(ssh)) != 0) |
1282 | return r; | 1285 | goto out; |
1283 | 1286 | ||
1284 | /* Stay in the loop until we have received a complete packet. */ | 1287 | /* Stay in the loop until we have received a complete packet. */ |
1285 | for (;;) { | 1288 | for (;;) { |
@@ -1337,15 +1340,20 @@ ssh_packet_read_seqnr(struct ssh *ssh, u_char *typep, u_int32_t *seqnr_p) | |||
1337 | len = roaming_read(state->connection_in, buf, | 1340 | len = roaming_read(state->connection_in, buf, |
1338 | sizeof(buf), &cont); | 1341 | sizeof(buf), &cont); |
1339 | } while (len == 0 && cont); | 1342 | } while (len == 0 && cont); |
1340 | if (len == 0) | 1343 | if (len == 0) { |
1341 | return SSH_ERR_CONN_CLOSED; | 1344 | r = SSH_ERR_CONN_CLOSED; |
1342 | if (len < 0) | 1345 | goto out; |
1343 | return SSH_ERR_SYSTEM_ERROR; | 1346 | } |
1347 | if (len < 0) { | ||
1348 | r = SSH_ERR_SYSTEM_ERROR; | ||
1349 | goto out; | ||
1350 | } | ||
1344 | 1351 | ||
1345 | /* Append it to the buffer. */ | 1352 | /* Append it to the buffer. */ |
1346 | if ((r = ssh_packet_process_incoming(ssh, buf, len)) != 0) | 1353 | if ((r = ssh_packet_process_incoming(ssh, buf, len)) != 0) |
1347 | return r; | 1354 | goto out; |
1348 | } | 1355 | } |
1356 | out: | ||
1349 | free(setp); | 1357 | free(setp); |
1350 | return r; | 1358 | return r; |
1351 | } | 1359 | } |
@@ -1912,9 +1920,19 @@ sshpkt_fatal(struct ssh *ssh, const char *tag, int r) | |||
1912 | logit("Connection closed by %.200s", ssh_remote_ipaddr(ssh)); | 1920 | logit("Connection closed by %.200s", ssh_remote_ipaddr(ssh)); |
1913 | cleanup_exit(255); | 1921 | cleanup_exit(255); |
1914 | case SSH_ERR_CONN_TIMEOUT: | 1922 | case SSH_ERR_CONN_TIMEOUT: |
1915 | logit("Connection to %.200s timed out while " | 1923 | logit("Connection to %.200s timed out", ssh_remote_ipaddr(ssh)); |
1916 | "waiting to write", ssh_remote_ipaddr(ssh)); | ||
1917 | cleanup_exit(255); | 1924 | cleanup_exit(255); |
1925 | case SSH_ERR_DISCONNECTED: | ||
1926 | logit("Disconnected from %.200s", | ||
1927 | ssh_remote_ipaddr(ssh)); | ||
1928 | cleanup_exit(255); | ||
1929 | case SSH_ERR_SYSTEM_ERROR: | ||
1930 | if (errno == ECONNRESET) { | ||
1931 | logit("Connection reset by %.200s", | ||
1932 | ssh_remote_ipaddr(ssh)); | ||
1933 | cleanup_exit(255); | ||
1934 | } | ||
1935 | /* FALLTHROUGH */ | ||
1918 | default: | 1936 | default: |
1919 | fatal("%s%sConnection to %.200s: %s", | 1937 | fatal("%s%sConnection to %.200s: %s", |
1920 | tag != NULL ? tag : "", tag != NULL ? ": " : "", | 1938 | tag != NULL ? tag : "", tag != NULL ? ": " : "", |
@@ -2727,13 +2745,14 @@ sshpkt_put_stringb(struct ssh *ssh, const struct sshbuf *v) | |||
2727 | return sshbuf_put_stringb(ssh->state->outgoing_packet, v); | 2745 | return sshbuf_put_stringb(ssh->state->outgoing_packet, v); |
2728 | } | 2746 | } |
2729 | 2747 | ||
2730 | #if defined(WITH_OPENSSL) && defined(OPENSSL_HAS_ECC) | 2748 | #ifdef WITH_OPENSSL |
2749 | #ifdef OPENSSL_HAS_ECC | ||
2731 | int | 2750 | int |
2732 | sshpkt_put_ec(struct ssh *ssh, const EC_POINT *v, const EC_GROUP *g) | 2751 | sshpkt_put_ec(struct ssh *ssh, const EC_POINT *v, const EC_GROUP *g) |
2733 | { | 2752 | { |
2734 | return sshbuf_put_ec(ssh->state->outgoing_packet, v, g); | 2753 | return sshbuf_put_ec(ssh->state->outgoing_packet, v, g); |
2735 | } | 2754 | } |
2736 | #endif /* WITH_OPENSSL && OPENSSL_HAS_ECC */ | 2755 | #endif /* OPENSSL_HAS_ECC */ |
2737 | 2756 | ||
2738 | #ifdef WITH_SSH1 | 2757 | #ifdef WITH_SSH1 |
2739 | int | 2758 | int |
@@ -2743,7 +2762,6 @@ sshpkt_put_bignum1(struct ssh *ssh, const BIGNUM *v) | |||
2743 | } | 2762 | } |
2744 | #endif /* WITH_SSH1 */ | 2763 | #endif /* WITH_SSH1 */ |
2745 | 2764 | ||
2746 | #ifdef WITH_OPENSSL | ||
2747 | int | 2765 | int |
2748 | sshpkt_put_bignum2(struct ssh *ssh, const BIGNUM *v) | 2766 | sshpkt_put_bignum2(struct ssh *ssh, const BIGNUM *v) |
2749 | { | 2767 | { |
@@ -2795,13 +2813,14 @@ sshpkt_get_cstring(struct ssh *ssh, char **valp, size_t *lenp) | |||
2795 | return sshbuf_get_cstring(ssh->state->incoming_packet, valp, lenp); | 2813 | return sshbuf_get_cstring(ssh->state->incoming_packet, valp, lenp); |
2796 | } | 2814 | } |
2797 | 2815 | ||
2798 | #if defined(WITH_OPENSSL) && defined(OPENSSL_HAS_ECC) | 2816 | #ifdef WITH_OPENSSL |
2817 | #ifdef OPENSSL_HAS_ECC | ||
2799 | int | 2818 | int |
2800 | sshpkt_get_ec(struct ssh *ssh, EC_POINT *v, const EC_GROUP *g) | 2819 | sshpkt_get_ec(struct ssh *ssh, EC_POINT *v, const EC_GROUP *g) |
2801 | { | 2820 | { |
2802 | return sshbuf_get_ec(ssh->state->incoming_packet, v, g); | 2821 | return sshbuf_get_ec(ssh->state->incoming_packet, v, g); |
2803 | } | 2822 | } |
2804 | #endif /* WITH_OPENSSL && OPENSSL_HAS_ECC */ | 2823 | #endif /* OPENSSL_HAS_ECC */ |
2805 | 2824 | ||
2806 | #ifdef WITH_SSH1 | 2825 | #ifdef WITH_SSH1 |
2807 | int | 2826 | int |
@@ -2811,7 +2830,6 @@ sshpkt_get_bignum1(struct ssh *ssh, BIGNUM *v) | |||
2811 | } | 2830 | } |
2812 | #endif /* WITH_SSH1 */ | 2831 | #endif /* WITH_SSH1 */ |
2813 | 2832 | ||
2814 | #ifdef WITH_OPENSSL | ||
2815 | int | 2833 | int |
2816 | sshpkt_get_bignum2(struct ssh *ssh, BIGNUM *v) | 2834 | sshpkt_get_bignum2(struct ssh *ssh, BIGNUM *v) |
2817 | { | 2835 | { |
diff --git a/readconf.c b/readconf.c index 66a62f269..f0769b574 100644 --- a/readconf.c +++ b/readconf.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: readconf.c,v 1.232 2015/02/16 22:13:32 djm Exp $ */ | 1 | /* $OpenBSD: readconf.c,v 1.237 2015/06/26 05:13:20 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -312,7 +312,7 @@ add_local_forward(Options *options, const struct Forward *newfwd) | |||
312 | newfwd->listen_path == NULL) | 312 | newfwd->listen_path == NULL) |
313 | fatal("Privileged ports can only be forwarded by root."); | 313 | fatal("Privileged ports can only be forwarded by root."); |
314 | #endif | 314 | #endif |
315 | options->local_forwards = xrealloc(options->local_forwards, | 315 | options->local_forwards = xreallocarray(options->local_forwards, |
316 | options->num_local_forwards + 1, | 316 | options->num_local_forwards + 1, |
317 | sizeof(*options->local_forwards)); | 317 | sizeof(*options->local_forwards)); |
318 | fwd = &options->local_forwards[options->num_local_forwards++]; | 318 | fwd = &options->local_forwards[options->num_local_forwards++]; |
@@ -335,7 +335,7 @@ add_remote_forward(Options *options, const struct Forward *newfwd) | |||
335 | { | 335 | { |
336 | struct Forward *fwd; | 336 | struct Forward *fwd; |
337 | 337 | ||
338 | options->remote_forwards = xrealloc(options->remote_forwards, | 338 | options->remote_forwards = xreallocarray(options->remote_forwards, |
339 | options->num_remote_forwards + 1, | 339 | options->num_remote_forwards + 1, |
340 | sizeof(*options->remote_forwards)); | 340 | sizeof(*options->remote_forwards)); |
341 | fwd = &options->remote_forwards[options->num_remote_forwards++]; | 341 | fwd = &options->remote_forwards[options->num_remote_forwards++]; |
@@ -509,7 +509,6 @@ match_cfg_line(Options *options, char **condition, struct passwd *pw, | |||
509 | char *arg, *oattrib, *attrib, *cmd, *cp = *condition, *host, *criteria; | 509 | char *arg, *oattrib, *attrib, *cmd, *cp = *condition, *host, *criteria; |
510 | const char *ruser; | 510 | const char *ruser; |
511 | int r, port, this_result, result = 1, attributes = 0, negate; | 511 | int r, port, this_result, result = 1, attributes = 0, negate; |
512 | size_t len; | ||
513 | char thishost[NI_MAXHOST], shorthost[NI_MAXHOST], portstr[NI_MAXSERV]; | 512 | char thishost[NI_MAXHOST], shorthost[NI_MAXHOST], portstr[NI_MAXSERV]; |
514 | 513 | ||
515 | /* | 514 | /* |
@@ -562,25 +561,24 @@ match_cfg_line(Options *options, char **condition, struct passwd *pw, | |||
562 | result = -1; | 561 | result = -1; |
563 | goto out; | 562 | goto out; |
564 | } | 563 | } |
565 | len = strlen(arg); | ||
566 | if (strcasecmp(attrib, "host") == 0) { | 564 | if (strcasecmp(attrib, "host") == 0) { |
567 | criteria = xstrdup(host); | 565 | criteria = xstrdup(host); |
568 | r = match_hostname(host, arg, len) == 1; | 566 | r = match_hostname(host, arg) == 1; |
569 | if (r == (negate ? 1 : 0)) | 567 | if (r == (negate ? 1 : 0)) |
570 | this_result = result = 0; | 568 | this_result = result = 0; |
571 | } else if (strcasecmp(attrib, "originalhost") == 0) { | 569 | } else if (strcasecmp(attrib, "originalhost") == 0) { |
572 | criteria = xstrdup(original_host); | 570 | criteria = xstrdup(original_host); |
573 | r = match_hostname(original_host, arg, len) == 1; | 571 | r = match_hostname(original_host, arg) == 1; |
574 | if (r == (negate ? 1 : 0)) | 572 | if (r == (negate ? 1 : 0)) |
575 | this_result = result = 0; | 573 | this_result = result = 0; |
576 | } else if (strcasecmp(attrib, "user") == 0) { | 574 | } else if (strcasecmp(attrib, "user") == 0) { |
577 | criteria = xstrdup(ruser); | 575 | criteria = xstrdup(ruser); |
578 | r = match_pattern_list(ruser, arg, len, 0) == 1; | 576 | r = match_pattern_list(ruser, arg, 0) == 1; |
579 | if (r == (negate ? 1 : 0)) | 577 | if (r == (negate ? 1 : 0)) |
580 | this_result = result = 0; | 578 | this_result = result = 0; |
581 | } else if (strcasecmp(attrib, "localuser") == 0) { | 579 | } else if (strcasecmp(attrib, "localuser") == 0) { |
582 | criteria = xstrdup(pw->pw_name); | 580 | criteria = xstrdup(pw->pw_name); |
583 | r = match_pattern_list(pw->pw_name, arg, len, 0) == 1; | 581 | r = match_pattern_list(pw->pw_name, arg, 0) == 1; |
584 | if (r == (negate ? 1 : 0)) | 582 | if (r == (negate ? 1 : 0)) |
585 | this_result = result = 0; | 583 | this_result = result = 0; |
586 | } else if (strcasecmp(attrib, "exec") == 0) { | 584 | } else if (strcasecmp(attrib, "exec") == 0) { |
@@ -682,8 +680,8 @@ parse_token(const char *cp, const char *filename, int linenum, | |||
682 | for (i = 0; keywords[i].name; i++) | 680 | for (i = 0; keywords[i].name; i++) |
683 | if (strcmp(cp, keywords[i].name) == 0) | 681 | if (strcmp(cp, keywords[i].name) == 0) |
684 | return keywords[i].opcode; | 682 | return keywords[i].opcode; |
685 | if (ignored_unknown != NULL && match_pattern_list(cp, ignored_unknown, | 683 | if (ignored_unknown != NULL && |
686 | strlen(ignored_unknown), 1) == 1) | 684 | match_pattern_list(cp, ignored_unknown, 1) == 1) |
687 | return oIgnoredUnknownOption; | 685 | return oIgnoredUnknownOption; |
688 | error("%s: line %d: Bad configuration option: %s", | 686 | error("%s: line %d: Bad configuration option: %s", |
689 | filename, linenum, cp); | 687 | filename, linenum, cp); |
@@ -780,7 +778,9 @@ process_config_line(Options *options, struct passwd *pw, const char *host, | |||
780 | } | 778 | } |
781 | 779 | ||
782 | /* Strip trailing whitespace */ | 780 | /* Strip trailing whitespace */ |
783 | for (len = strlen(line) - 1; len > 0; len--) { | 781 | if ((len = strlen(line)) == 0) |
782 | return 0; | ||
783 | for (len--; len > 0; len--) { | ||
784 | if (strchr(WHITESPACE, line[len]) == NULL) | 784 | if (strchr(WHITESPACE, line[len]) == NULL) |
785 | break; | 785 | break; |
786 | line[len] = '\0'; | 786 | line[len] = '\0'; |
@@ -1273,13 +1273,13 @@ parse_int: | |||
1273 | arg = strdelim(&s); | 1273 | arg = strdelim(&s); |
1274 | if (!arg || *arg == '\0') | 1274 | if (!arg || *arg == '\0') |
1275 | fatal("%.200s line %d: Missing argument.", filename, linenum); | 1275 | fatal("%.200s line %d: Missing argument.", filename, linenum); |
1276 | if (arg[0] == '^' && arg[2] == 0 && | 1276 | if (strcmp(arg, "none") == 0) |
1277 | value = SSH_ESCAPECHAR_NONE; | ||
1278 | else if (arg[1] == '\0') | ||
1279 | value = (u_char) arg[0]; | ||
1280 | else if (arg[0] == '^' && arg[2] == 0 && | ||
1277 | (u_char) arg[1] >= 64 && (u_char) arg[1] < 128) | 1281 | (u_char) arg[1] >= 64 && (u_char) arg[1] < 128) |
1278 | value = (u_char) arg[1] & 31; | 1282 | value = (u_char) arg[1] & 31; |
1279 | else if (strlen(arg) == 1) | ||
1280 | value = (u_char) arg[0]; | ||
1281 | else if (strcmp(arg, "none") == 0) | ||
1282 | value = SSH_ESCAPECHAR_NONE; | ||
1283 | else { | 1283 | else { |
1284 | fatal("%.200s line %d: Bad escape character.", | 1284 | fatal("%.200s line %d: Bad escape character.", |
1285 | filename, linenum); | 1285 | filename, linenum); |
@@ -1981,7 +1981,8 @@ parse_fwd_field(char **p, struct fwdarg *fwd) | |||
1981 | switch (*cp) { | 1981 | switch (*cp) { |
1982 | case '\\': | 1982 | case '\\': |
1983 | memmove(cp, cp + 1, strlen(cp + 1) + 1); | 1983 | memmove(cp, cp + 1, strlen(cp + 1) + 1); |
1984 | cp++; | 1984 | if (*cp == '\0') |
1985 | return -1; | ||
1985 | break; | 1986 | break; |
1986 | case '/': | 1987 | case '/': |
1987 | ispath = 1; | 1988 | ispath = 1; |
diff --git a/regress/Makefile b/regress/Makefile index 99a7d60f5..cba83f4d6 100644 --- a/regress/Makefile +++ b/regress/Makefile | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: Makefile,v 1.78 2015/01/26 06:12:18 djm Exp $ | 1 | # $OpenBSD: Makefile,v 1.81 2015/05/21 06:44:25 djm Exp $ |
2 | 2 | ||
3 | REGRESS_TARGETS= unit t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t-exec | 3 | REGRESS_TARGETS= unit t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t-exec |
4 | tests: prep $(REGRESS_TARGETS) | 4 | tests: prep $(REGRESS_TARGETS) |
@@ -54,6 +54,7 @@ LTESTS= connect \ | |||
54 | multiplex \ | 54 | multiplex \ |
55 | reexec \ | 55 | reexec \ |
56 | brokenkeys \ | 56 | brokenkeys \ |
57 | cfgparse \ | ||
57 | cfgmatch \ | 58 | cfgmatch \ |
58 | addrmatch \ | 59 | addrmatch \ |
59 | localcommand \ | 60 | localcommand \ |
@@ -72,7 +73,8 @@ LTESTS= connect \ | |||
72 | limit-keytype \ | 73 | limit-keytype \ |
73 | hostkey-agent \ | 74 | hostkey-agent \ |
74 | keygen-knownhosts \ | 75 | keygen-knownhosts \ |
75 | hostkey-rotate | 76 | hostkey-rotate \ |
77 | principals-command | ||
76 | 78 | ||
77 | 79 | ||
78 | # dhgex \ | 80 | # dhgex \ |
@@ -180,10 +182,10 @@ t11: | |||
180 | ${TEST_SSH_SSHKEYGEN} -E sha256 -lf ${.CURDIR}/rsa_openssh.pub |\ | 182 | ${TEST_SSH_SSHKEYGEN} -E sha256 -lf ${.CURDIR}/rsa_openssh.pub |\ |
181 | awk '{print $$2}' | diff - ${.CURDIR}/t11.ok | 183 | awk '{print $$2}' | diff - ${.CURDIR}/t11.ok |
182 | 184 | ||
183 | t12.out: | 185 | $(OBJ)/t12.out: |
184 | ${TEST_SSH_SSHKEYGEN} -q -t ed25519 -N '' -C 'test-comment-1234' -f $(OBJ)/$@ | 186 | ${TEST_SSH_SSHKEYGEN} -q -t ed25519 -N '' -C 'test-comment-1234' -f $@ |
185 | 187 | ||
186 | t12: t12.out | 188 | t12: $(OBJ)/t12.out |
187 | ${TEST_SSH_SSHKEYGEN} -lf $(OBJ)/t12.out.pub | grep test-comment-1234 >/dev/null | 189 | ${TEST_SSH_SSHKEYGEN} -lf $(OBJ)/t12.out.pub | grep test-comment-1234 >/dev/null |
188 | 190 | ||
189 | t-exec: ${LTESTS:=.sh} | 191 | t-exec: ${LTESTS:=.sh} |
diff --git a/regress/README.regress b/regress/README.regress index 82e4cc751..9b99bdacb 100644 --- a/regress/README.regress +++ b/regress/README.regress | |||
@@ -31,7 +31,7 @@ TEST_SHELL: shell used for running the test scripts. | |||
31 | TEST_SSH_PORT: TCP port to be used for the listening tests. | 31 | TEST_SSH_PORT: TCP port to be used for the listening tests. |
32 | TEST_SSH_SSH_CONFOPTS: Configuration directives to be added to ssh_config | 32 | TEST_SSH_SSH_CONFOPTS: Configuration directives to be added to ssh_config |
33 | before running each test. | 33 | before running each test. |
34 | TEST_SSH_SSHD_CONFOTPS: Configuration directives to be added to sshd_config | 34 | TEST_SSH_SSHD_CONFOPTS: Configuration directives to be added to sshd_config |
35 | before running each test. | 35 | before running each test. |
36 | 36 | ||
37 | 37 | ||
diff --git a/regress/cfgparse.sh b/regress/cfgparse.sh new file mode 100644 index 000000000..736f38976 --- /dev/null +++ b/regress/cfgparse.sh | |||
@@ -0,0 +1,75 @@ | |||
1 | # $OpenBSD: cfgparse.sh,v 1.5 2015/05/29 03:05:13 djm Exp $ | ||
2 | # Placed in the Public Domain. | ||
3 | |||
4 | tid="config parse" | ||
5 | |||
6 | # This is a reasonable proxy for IPv6 support. | ||
7 | if ! config_defined HAVE_STRUCT_IN6_ADDR ; then | ||
8 | SKIP_IPV6=yes | ||
9 | fi | ||
10 | |||
11 | # We need to use the keys generated for the regression test because sshd -T | ||
12 | # will fail if we're not running with SUDO (no permissions for real keys) or | ||
13 | # if we are # running tests on a system that has never had sshd installed | ||
14 | # (keys won't exist). | ||
15 | |||
16 | grep "HostKey " $OBJ/sshd_config > $OBJ/sshd_config_minimal | ||
17 | SSHD_KEYS="`cat $OBJ/sshd_config_minimal`" | ||
18 | |||
19 | verbose "reparse minimal config" | ||
20 | ($SUDO ${SSHD} -T -f $OBJ/sshd_config_minimal >$OBJ/sshd_config.1 && | ||
21 | $SUDO ${SSHD} -T -f $OBJ/sshd_config.1 >$OBJ/sshd_config.2 && | ||
22 | diff $OBJ/sshd_config.1 $OBJ/sshd_config.2) || fail "reparse minimal config" | ||
23 | |||
24 | verbose "reparse regress config" | ||
25 | ($SUDO ${SSHD} -T -f $OBJ/sshd_config >$OBJ/sshd_config.1 && | ||
26 | $SUDO ${SSHD} -T -f $OBJ/sshd_config.1 >$OBJ/sshd_config.2 && | ||
27 | diff $OBJ/sshd_config.1 $OBJ/sshd_config.2) || fail "reparse regress config" | ||
28 | |||
29 | verbose "listenaddress order" | ||
30 | # expected output | ||
31 | cat > $OBJ/sshd_config.0 <<EOD | ||
32 | listenaddress 1.2.3.4:1234 | ||
33 | listenaddress 1.2.3.4:5678 | ||
34 | EOD | ||
35 | [ X${SKIP_IPV6} = Xyes ] || cat >> $OBJ/sshd_config.0 <<EOD | ||
36 | listenaddress [::1]:1234 | ||
37 | listenaddress [::1]:5678 | ||
38 | EOD | ||
39 | |||
40 | # test input sets. should all result in the output above. | ||
41 | # test 1: addressfamily and port first | ||
42 | cat > $OBJ/sshd_config.1 <<EOD | ||
43 | ${SSHD_KEYS} | ||
44 | addressfamily any | ||
45 | port 1234 | ||
46 | port 5678 | ||
47 | listenaddress 1.2.3.4 | ||
48 | EOD | ||
49 | [ X${SKIP_IPV6} = Xyes ] || cat >> $OBJ/sshd_config.1 <<EOD | ||
50 | listenaddress ::1 | ||
51 | EOD | ||
52 | |||
53 | ($SUDO ${SSHD} -T -f $OBJ/sshd_config.1 | \ | ||
54 | grep 'listenaddress ' >$OBJ/sshd_config.2 && | ||
55 | diff $OBJ/sshd_config.0 $OBJ/sshd_config.2) || \ | ||
56 | fail "listenaddress order 1" | ||
57 | # test 2: listenaddress first | ||
58 | cat > $OBJ/sshd_config.1 <<EOD | ||
59 | ${SSHD_KEYS} | ||
60 | listenaddress 1.2.3.4 | ||
61 | port 1234 | ||
62 | port 5678 | ||
63 | addressfamily any | ||
64 | EOD | ||
65 | [ X${SKIP_IPV6} = Xyes ] || cat >> $OBJ/sshd_config.1 <<EOD | ||
66 | listenaddress ::1 | ||
67 | EOD | ||
68 | |||
69 | ($SUDO ${SSHD} -T -f $OBJ/sshd_config.1 | \ | ||
70 | grep 'listenaddress ' >$OBJ/sshd_config.2 && | ||
71 | diff $OBJ/sshd_config.0 $OBJ/sshd_config.2) || \ | ||
72 | fail "listenaddress order 2" | ||
73 | |||
74 | # cleanup | ||
75 | rm -f $OBJ/sshd_config.[012] | ||
diff --git a/regress/cipher-speed.sh b/regress/cipher-speed.sh index ad2f9b90b..575dc2341 100644 --- a/regress/cipher-speed.sh +++ b/regress/cipher-speed.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: cipher-speed.sh,v 1.12 2015/03/03 22:35:19 markus Exp $ | 1 | # $OpenBSD: cipher-speed.sh,v 1.13 2015/03/24 20:22:17 markus Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="cipher speed" | 4 | tid="cipher speed" |
@@ -25,7 +25,7 @@ for c in `${SSH} -Q cipher`; do n=0; for m in `${SSH} -Q mac`; do | |||
25 | fi | 25 | fi |
26 | done | 26 | done |
27 | # No point trying all MACs for AEAD ciphers since they are ignored. | 27 | # No point trying all MACs for AEAD ciphers since they are ignored. |
28 | if ssh -Q cipher-auth | grep "^${c}\$" >/dev/null 2>&1 ; then | 28 | if ${SSH} -Q cipher-auth | grep "^${c}\$" >/dev/null 2>&1 ; then |
29 | break | 29 | break |
30 | fi | 30 | fi |
31 | n=`expr $n + 1` | 31 | n=`expr $n + 1` |
diff --git a/regress/hostkey-rotate.sh b/regress/hostkey-rotate.sh index b5d542d12..cde6008f4 100644 --- a/regress/hostkey-rotate.sh +++ b/regress/hostkey-rotate.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: hostkey-rotate.sh,v 1.2 2015/03/03 17:53:40 djm Exp $ | 1 | # $OpenBSD: hostkey-rotate.sh,v 1.3 2015/03/24 20:22:17 markus Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="hostkey rotate" | 4 | tid="hostkey rotate" |
@@ -15,7 +15,7 @@ rm $OBJ/known_hosts | |||
15 | trace "prepare hostkeys" | 15 | trace "prepare hostkeys" |
16 | nkeys=0 | 16 | nkeys=0 |
17 | all_algs="" | 17 | all_algs="" |
18 | for k in `ssh -Q key-plain` ; do | 18 | for k in `${SSH} -Q key-plain` ; do |
19 | ${SSHKEYGEN} -qt $k -f $OBJ/hkr.$k -N '' || fatal "ssh-keygen $k" | 19 | ${SSHKEYGEN} -qt $k -f $OBJ/hkr.$k -N '' || fatal "ssh-keygen $k" |
20 | echo "Hostkey $OBJ/hkr.${k}" >> $OBJ/sshd_proxy.orig | 20 | echo "Hostkey $OBJ/hkr.${k}" >> $OBJ/sshd_proxy.orig |
21 | nkeys=`expr $nkeys + 1` | 21 | nkeys=`expr $nkeys + 1` |
@@ -62,7 +62,7 @@ expect_nkeys $nkeys "learn hostkeys" | |||
62 | check_key_present ssh-rsa || fail "didn't learn keys" | 62 | check_key_present ssh-rsa || fail "didn't learn keys" |
63 | 63 | ||
64 | # Check each key type | 64 | # Check each key type |
65 | for k in `ssh -Q key-plain` ; do | 65 | for k in `${SSH} -Q key-plain` ; do |
66 | verbose "learn additional hostkeys, type=$k" | 66 | verbose "learn additional hostkeys, type=$k" |
67 | dossh -oStrictHostKeyChecking=yes -oHostKeyAlgorithms=$k,$all_algs | 67 | dossh -oStrictHostKeyChecking=yes -oHostKeyAlgorithms=$k,$all_algs |
68 | expect_nkeys $nkeys "learn hostkeys $k" | 68 | expect_nkeys $nkeys "learn hostkeys $k" |
@@ -109,7 +109,7 @@ dossh -oStrictHostKeyChecking=yes -oHostKeyAlgorithms=ssh-rsa | |||
109 | expect_nkeys 1 "learn hostkeys" | 109 | expect_nkeys 1 "learn hostkeys" |
110 | check_key_present ssh-rsa || fail "didn't learn changed key" | 110 | check_key_present ssh-rsa || fail "didn't learn changed key" |
111 | 111 | ||
112 | # $OpenBSD: hostkey-rotate.sh,v 1.2 2015/03/03 17:53:40 djm Exp $ | 112 | # $OpenBSD: hostkey-rotate.sh,v 1.3 2015/03/24 20:22:17 markus Exp $ |
113 | # Placed in the Public Domain. | 113 | # Placed in the Public Domain. |
114 | 114 | ||
115 | tid="hostkey rotate" | 115 | tid="hostkey rotate" |
diff --git a/regress/integrity.sh b/regress/integrity.sh index 2ff8b3f17..1d4976771 100644 --- a/regress/integrity.sh +++ b/regress/integrity.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: integrity.sh,v 1.15 2015/01/19 20:42:31 markus Exp $ | 1 | # $OpenBSD: integrity.sh,v 1.16 2015/03/24 20:22:17 markus Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="integrity" | 4 | tid="integrity" |
@@ -38,7 +38,7 @@ for m in $macs; do | |||
38 | cp $OBJ/sshd_proxy_bak $OBJ/sshd_proxy | 38 | cp $OBJ/sshd_proxy_bak $OBJ/sshd_proxy |
39 | # modify output from sshd at offset $off | 39 | # modify output from sshd at offset $off |
40 | pxy="proxycommand=$cmd | $OBJ/modpipe -wm xor:$off:1" | 40 | pxy="proxycommand=$cmd | $OBJ/modpipe -wm xor:$off:1" |
41 | if ssh -Q cipher-auth | grep "^${m}\$" >/dev/null 2>&1 ; then | 41 | if ${SSH} -Q cipher-auth | grep "^${m}\$" >/dev/null 2>&1 ; then |
42 | echo "Ciphers=$m" >> $OBJ/sshd_proxy | 42 | echo "Ciphers=$m" >> $OBJ/sshd_proxy |
43 | macopt="-c $m" | 43 | macopt="-c $m" |
44 | else | 44 | else |
diff --git a/regress/kextype.sh b/regress/kextype.sh index 6f952f4e4..e27189904 100644 --- a/regress/kextype.sh +++ b/regress/kextype.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: kextype.sh,v 1.5 2014/04/21 22:15:37 djm Exp $ | 1 | # $OpenBSD: kextype.sh,v 1.6 2015/03/24 20:19:15 markus Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="login with different key exchange algorithms" | 4 | tid="login with different key exchange algorithms" |
@@ -8,7 +8,7 @@ cp $OBJ/sshd_proxy $OBJ/sshd_proxy_bak | |||
8 | cp $OBJ/ssh_proxy $OBJ/ssh_proxy_bak | 8 | cp $OBJ/ssh_proxy $OBJ/ssh_proxy_bak |
9 | 9 | ||
10 | # Make server accept all key exchanges. | 10 | # Make server accept all key exchanges. |
11 | ALLKEX=`ssh -Q kex` | 11 | ALLKEX=`${SSH} -Q kex` |
12 | KEXOPT=`echo $ALLKEX | tr ' ' ,` | 12 | KEXOPT=`echo $ALLKEX | tr ' ' ,` |
13 | echo "KexAlgorithms=$KEXOPT" >> $OBJ/sshd_proxy | 13 | echo "KexAlgorithms=$KEXOPT" >> $OBJ/sshd_proxy |
14 | 14 | ||
diff --git a/regress/keys-command.sh b/regress/keys-command.sh index b595a434f..700273b66 100644 --- a/regress/keys-command.sh +++ b/regress/keys-command.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: keys-command.sh,v 1.2 2012/12/06 06:06:54 dtucker Exp $ | 1 | # $OpenBSD: keys-command.sh,v 1.3 2015/05/21 06:40:02 djm Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="authorized keys from command" | 4 | tid="authorized keys from command" |
@@ -9,26 +9,63 @@ if test -z "$SUDO" ; then | |||
9 | exit 0 | 9 | exit 0 |
10 | fi | 10 | fi |
11 | 11 | ||
12 | rm -f $OBJ/keys-command-args | ||
13 | |||
14 | touch $OBJ/keys-command-args | ||
15 | chmod a+rw $OBJ/keys-command-args | ||
16 | |||
17 | expected_key_text=`awk '{ print $2 }' < $OBJ/rsa.pub` | ||
18 | expected_key_fp=`$SSHKEYGEN -lf $OBJ/rsa.pub | awk '{ print $2 }'` | ||
19 | |||
12 | # Establish a AuthorizedKeysCommand in /var/run where it will have | 20 | # Establish a AuthorizedKeysCommand in /var/run where it will have |
13 | # acceptable directory permissions. | 21 | # acceptable directory permissions. |
14 | KEY_COMMAND="/var/run/keycommand_${LOGNAME}" | 22 | KEY_COMMAND="/var/run/keycommand_${LOGNAME}" |
15 | cat << _EOF | $SUDO sh -c "cat > '$KEY_COMMAND'" | 23 | cat << _EOF | $SUDO sh -c "rm -f '$KEY_COMMAND' ; cat > '$KEY_COMMAND'" |
16 | #!/bin/sh | 24 | #!/bin/sh |
25 | echo args: "\$@" >> $OBJ/keys-command-args | ||
26 | echo "$PATH" | grep -q mekmitasdigoat && exit 7 | ||
17 | test "x\$1" != "x${LOGNAME}" && exit 1 | 27 | test "x\$1" != "x${LOGNAME}" && exit 1 |
28 | if test $# -eq 6 ; then | ||
29 | test "x\$2" != "xblah" && exit 2 | ||
30 | test "x\$3" != "x${expected_key_text}" && exit 3 | ||
31 | test "x\$4" != "xssh-rsa" && exit 4 | ||
32 | test "x\$5" != "x${expected_key_fp}" && exit 5 | ||
33 | test "x\$6" != "xblah" && exit 6 | ||
34 | fi | ||
18 | exec cat "$OBJ/authorized_keys_${LOGNAME}" | 35 | exec cat "$OBJ/authorized_keys_${LOGNAME}" |
19 | _EOF | 36 | _EOF |
20 | $SUDO chmod 0755 "$KEY_COMMAND" | 37 | $SUDO chmod 0755 "$KEY_COMMAND" |
21 | 38 | ||
22 | cp $OBJ/sshd_proxy $OBJ/sshd_proxy.bak | ||
23 | ( | ||
24 | grep -vi AuthorizedKeysFile $OBJ/sshd_proxy.bak | ||
25 | echo AuthorizedKeysFile none | ||
26 | echo AuthorizedKeysCommand $KEY_COMMAND | ||
27 | echo AuthorizedKeysCommandUser ${LOGNAME} | ||
28 | ) > $OBJ/sshd_proxy | ||
29 | |||
30 | if [ -x $KEY_COMMAND ]; then | 39 | if [ -x $KEY_COMMAND ]; then |
31 | ${SSH} -F $OBJ/ssh_proxy somehost true | 40 | cp $OBJ/sshd_proxy $OBJ/sshd_proxy.bak |
41 | |||
42 | verbose "AuthorizedKeysCommand with arguments" | ||
43 | ( | ||
44 | grep -vi AuthorizedKeysFile $OBJ/sshd_proxy.bak | ||
45 | echo AuthorizedKeysFile none | ||
46 | echo AuthorizedKeysCommand $KEY_COMMAND %u blah %k %t %f blah | ||
47 | echo AuthorizedKeysCommandUser ${LOGNAME} | ||
48 | ) > $OBJ/sshd_proxy | ||
49 | |||
50 | # Ensure that $PATH is sanitised in sshd | ||
51 | env PATH=$PATH:/sbin/mekmitasdigoat \ | ||
52 | ${SSH} -F $OBJ/ssh_proxy somehost true | ||
53 | if [ $? -ne 0 ]; then | ||
54 | fail "connect failed" | ||
55 | fi | ||
56 | |||
57 | verbose "AuthorizedKeysCommand without arguments" | ||
58 | # Check legacy behavior of no-args resulting in username being passed. | ||
59 | ( | ||
60 | grep -vi AuthorizedKeysFile $OBJ/sshd_proxy.bak | ||
61 | echo AuthorizedKeysFile none | ||
62 | echo AuthorizedKeysCommand $KEY_COMMAND | ||
63 | echo AuthorizedKeysCommandUser ${LOGNAME} | ||
64 | ) > $OBJ/sshd_proxy | ||
65 | |||
66 | # Ensure that $PATH is sanitised in sshd | ||
67 | env PATH=$PATH:/sbin/mekmitasdigoat \ | ||
68 | ${SSH} -F $OBJ/ssh_proxy somehost true | ||
32 | if [ $? -ne 0 ]; then | 69 | if [ $? -ne 0 ]; then |
33 | fail "connect failed" | 70 | fail "connect failed" |
34 | fi | 71 | fi |
diff --git a/regress/netcat.c b/regress/netcat.c index 1a9fc8730..6234ba019 100644 --- a/regress/netcat.c +++ b/regress/netcat.c | |||
@@ -42,7 +42,6 @@ | |||
42 | #include <netinet/in.h> | 42 | #include <netinet/in.h> |
43 | #include <netinet/tcp.h> | 43 | #include <netinet/tcp.h> |
44 | #include <netinet/ip.h> | 44 | #include <netinet/ip.h> |
45 | #include <arpa/telnet.h> | ||
46 | 45 | ||
47 | #include <errno.h> | 46 | #include <errno.h> |
48 | #include <netdb.h> | 47 | #include <netdb.h> |
@@ -63,6 +62,13 @@ | |||
63 | # endif | 62 | # endif |
64 | #endif | 63 | #endif |
65 | 64 | ||
65 | /* Telnet options from arpa/telnet.h */ | ||
66 | #define IAC 255 | ||
67 | #define DONT 254 | ||
68 | #define DO 253 | ||
69 | #define WONT 252 | ||
70 | #define WILL 251 | ||
71 | |||
66 | #ifndef SUN_LEN | 72 | #ifndef SUN_LEN |
67 | #define SUN_LEN(su) \ | 73 | #define SUN_LEN(su) \ |
68 | (sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path)) | 74 | (sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path)) |
diff --git a/regress/principals-command.sh b/regress/principals-command.sh new file mode 100644 index 000000000..90064373d --- /dev/null +++ b/regress/principals-command.sh | |||
@@ -0,0 +1,141 @@ | |||
1 | # $OpenBSD: principals-command.sh,v 1.1 2015/05/21 06:44:25 djm Exp $ | ||
2 | # Placed in the Public Domain. | ||
3 | |||
4 | tid="authorized principals command" | ||
5 | |||
6 | rm -f $OBJ/user_ca_key* $OBJ/cert_user_key* | ||
7 | cp $OBJ/sshd_proxy $OBJ/sshd_proxy_bak | ||
8 | |||
9 | if test -z "$SUDO" ; then | ||
10 | echo "skipped (SUDO not set)" | ||
11 | echo "need SUDO to create file in /var/run, test won't work without" | ||
12 | exit 0 | ||
13 | fi | ||
14 | |||
15 | # Establish a AuthorizedPrincipalsCommand in /var/run where it will have | ||
16 | # acceptable directory permissions. | ||
17 | PRINCIPALS_COMMAND="/var/run/principals_command_${LOGNAME}" | ||
18 | cat << _EOF | $SUDO sh -c "cat > '$PRINCIPALS_COMMAND'" | ||
19 | #!/bin/sh | ||
20 | test "x\$1" != "x${LOGNAME}" && exit 1 | ||
21 | test -f "$OBJ/authorized_principals_${LOGNAME}" && | ||
22 | exec cat "$OBJ/authorized_principals_${LOGNAME}" | ||
23 | _EOF | ||
24 | test $? -eq 0 || fatal "couldn't prepare principals command" | ||
25 | $SUDO chmod 0755 "$PRINCIPALS_COMMAND" | ||
26 | |||
27 | # Create a CA key and a user certificate. | ||
28 | ${SSHKEYGEN} -q -N '' -t ed25519 -f $OBJ/user_ca_key || \ | ||
29 | fatal "ssh-keygen of user_ca_key failed" | ||
30 | ${SSHKEYGEN} -q -N '' -t ed25519 -f $OBJ/cert_user_key || \ | ||
31 | fatal "ssh-keygen of cert_user_key failed" | ||
32 | ${SSHKEYGEN} -q -s $OBJ/user_ca_key -I "regress user key for $USER" \ | ||
33 | -z $$ -n ${USER},mekmitasdigoat $OBJ/cert_user_key || \ | ||
34 | fatal "couldn't sign cert_user_key" | ||
35 | |||
36 | # Test explicitly-specified principals | ||
37 | for privsep in yes no ; do | ||
38 | _prefix="privsep $privsep" | ||
39 | |||
40 | # Setup for AuthorizedPrincipalsCommand | ||
41 | rm -f $OBJ/authorized_keys_$USER | ||
42 | ( | ||
43 | cat $OBJ/sshd_proxy_bak | ||
44 | echo "UsePrivilegeSeparation $privsep" | ||
45 | echo "AuthorizedKeysFile none" | ||
46 | echo "AuthorizedPrincipalsCommand $PRINCIPALS_COMMAND %u" | ||
47 | echo "AuthorizedPrincipalsCommandUser ${LOGNAME}" | ||
48 | echo "TrustedUserCAKeys $OBJ/user_ca_key.pub" | ||
49 | ) > $OBJ/sshd_proxy | ||
50 | |||
51 | # XXX test missing command | ||
52 | # XXX test failing command | ||
53 | |||
54 | # Empty authorized_principals | ||
55 | verbose "$tid: ${_prefix} empty authorized_principals" | ||
56 | echo > $OBJ/authorized_principals_$USER | ||
57 | ${SSH} -2i $OBJ/cert_user_key \ | ||
58 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
59 | if [ $? -eq 0 ]; then | ||
60 | fail "ssh cert connect succeeded unexpectedly" | ||
61 | fi | ||
62 | |||
63 | # Wrong authorized_principals | ||
64 | verbose "$tid: ${_prefix} wrong authorized_principals" | ||
65 | echo gregorsamsa > $OBJ/authorized_principals_$USER | ||
66 | ${SSH} -2i $OBJ/cert_user_key \ | ||
67 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
68 | if [ $? -eq 0 ]; then | ||
69 | fail "ssh cert connect succeeded unexpectedly" | ||
70 | fi | ||
71 | |||
72 | # Correct authorized_principals | ||
73 | verbose "$tid: ${_prefix} correct authorized_principals" | ||
74 | echo mekmitasdigoat > $OBJ/authorized_principals_$USER | ||
75 | ${SSH} -2i $OBJ/cert_user_key \ | ||
76 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
77 | if [ $? -ne 0 ]; then | ||
78 | fail "ssh cert connect failed" | ||
79 | fi | ||
80 | |||
81 | # authorized_principals with bad key option | ||
82 | verbose "$tid: ${_prefix} authorized_principals bad key opt" | ||
83 | echo 'blah mekmitasdigoat' > $OBJ/authorized_principals_$USER | ||
84 | ${SSH} -2i $OBJ/cert_user_key \ | ||
85 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
86 | if [ $? -eq 0 ]; then | ||
87 | fail "ssh cert connect succeeded unexpectedly" | ||
88 | fi | ||
89 | |||
90 | # authorized_principals with command=false | ||
91 | verbose "$tid: ${_prefix} authorized_principals command=false" | ||
92 | echo 'command="false" mekmitasdigoat' > \ | ||
93 | $OBJ/authorized_principals_$USER | ||
94 | ${SSH} -2i $OBJ/cert_user_key \ | ||
95 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
96 | if [ $? -eq 0 ]; then | ||
97 | fail "ssh cert connect succeeded unexpectedly" | ||
98 | fi | ||
99 | |||
100 | |||
101 | # authorized_principals with command=true | ||
102 | verbose "$tid: ${_prefix} authorized_principals command=true" | ||
103 | echo 'command="true" mekmitasdigoat' > \ | ||
104 | $OBJ/authorized_principals_$USER | ||
105 | ${SSH} -2i $OBJ/cert_user_key \ | ||
106 | -F $OBJ/ssh_proxy somehost false >/dev/null 2>&1 | ||
107 | if [ $? -ne 0 ]; then | ||
108 | fail "ssh cert connect failed" | ||
109 | fi | ||
110 | |||
111 | # Setup for principals= key option | ||
112 | rm -f $OBJ/authorized_principals_$USER | ||
113 | ( | ||
114 | cat $OBJ/sshd_proxy_bak | ||
115 | echo "UsePrivilegeSeparation $privsep" | ||
116 | ) > $OBJ/sshd_proxy | ||
117 | |||
118 | # Wrong principals list | ||
119 | verbose "$tid: ${_prefix} wrong principals key option" | ||
120 | ( | ||
121 | printf 'cert-authority,principals="gregorsamsa" ' | ||
122 | cat $OBJ/user_ca_key.pub | ||
123 | ) > $OBJ/authorized_keys_$USER | ||
124 | ${SSH} -2i $OBJ/cert_user_key \ | ||
125 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
126 | if [ $? -eq 0 ]; then | ||
127 | fail "ssh cert connect succeeded unexpectedly" | ||
128 | fi | ||
129 | |||
130 | # Correct principals list | ||
131 | verbose "$tid: ${_prefix} correct principals key option" | ||
132 | ( | ||
133 | printf 'cert-authority,principals="mekmitasdigoat" ' | ||
134 | cat $OBJ/user_ca_key.pub | ||
135 | ) > $OBJ/authorized_keys_$USER | ||
136 | ${SSH} -2i $OBJ/cert_user_key \ | ||
137 | -F $OBJ/ssh_proxy somehost true >/dev/null 2>&1 | ||
138 | if [ $? -ne 0 ]; then | ||
139 | fail "ssh cert connect failed" | ||
140 | fi | ||
141 | done | ||
diff --git a/regress/ssh-com.sh b/regress/ssh-com.sh index 6c5cfe888..4371d5279 100644 --- a/regress/ssh-com.sh +++ b/regress/ssh-com.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: ssh-com.sh,v 1.8 2013/05/17 00:37:40 dtucker Exp $ | 1 | # $OpenBSD: ssh-com.sh,v 1.9 2015/05/08 07:29:00 djm Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="connect to ssh.com server" | 4 | tid="connect to ssh.com server" |
@@ -44,14 +44,14 @@ cat << EOF > $OBJ/sshd2_config | |||
44 | HostKeyFile ${SRC}/dsa_ssh2.prv | 44 | HostKeyFile ${SRC}/dsa_ssh2.prv |
45 | PublicHostKeyFile ${SRC}/dsa_ssh2.pub | 45 | PublicHostKeyFile ${SRC}/dsa_ssh2.pub |
46 | RandomSeedFile ${OBJ}/random_seed | 46 | RandomSeedFile ${OBJ}/random_seed |
47 | MaxConnections 0 | 47 | MaxConnections 0 |
48 | PermitRootLogin yes | 48 | PermitRootLogin yes |
49 | VerboseMode no | 49 | VerboseMode no |
50 | CheckMail no | 50 | CheckMail no |
51 | Ssh1Compatibility no | 51 | Ssh1Compatibility no |
52 | EOF | 52 | EOF |
53 | 53 | ||
54 | # create client config | 54 | # create client config |
55 | sed "s/HostKeyAlias.*/HostKeyAlias ssh2-localhost-with-alias/" \ | 55 | sed "s/HostKeyAlias.*/HostKeyAlias ssh2-localhost-with-alias/" \ |
56 | < $OBJ/ssh_config > $OBJ/ssh_config_com | 56 | < $OBJ/ssh_config > $OBJ/ssh_config_com |
57 | 57 | ||
diff --git a/regress/ssh2putty.sh b/regress/ssh2putty.sh index 691db1690..bcf83afe9 100755 --- a/regress/ssh2putty.sh +++ b/regress/ssh2putty.sh | |||
@@ -1,5 +1,5 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | # $OpenBSD: ssh2putty.sh,v 1.2 2009/10/06 23:51:49 dtucker Exp $ | 2 | # $OpenBSD: ssh2putty.sh,v 1.3 2015/05/08 07:26:13 djm Exp $ |
3 | 3 | ||
4 | if test "x$1" = "x" -o "x$2" = "x" -o "x$3" = "x" ; then | 4 | if test "x$1" = "x" -o "x$2" = "x" -o "x$3" = "x" ; then |
5 | echo "Usage: ssh2putty hostname port ssh-private-key" | 5 | echo "Usage: ssh2putty hostname port ssh-private-key" |
@@ -19,13 +19,13 @@ else | |||
19 | fi | 19 | fi |
20 | 20 | ||
21 | public_exponent=` | 21 | public_exponent=` |
22 | openssl rsa -noout -text -in $KEYFILE | grep ^publicExponent | | 22 | openssl rsa -noout -text -in $KEYFILE | grep ^publicExponent | |
23 | sed 's/.*(//;s/).*//' | 23 | sed 's/.*(//;s/).*//' |
24 | ` | 24 | ` |
25 | test $? -ne 0 && exit 1 | 25 | test $? -ne 0 && exit 1 |
26 | 26 | ||
27 | modulus=` | 27 | modulus=` |
28 | openssl rsa -noout -modulus -in $KEYFILE | grep ^Modulus= | | 28 | openssl rsa -noout -modulus -in $KEYFILE | grep ^Modulus= | |
29 | sed 's/^Modulus=/0x/' | tr A-Z a-z | 29 | sed 's/^Modulus=/0x/' | tr A-Z a-z |
30 | ` | 30 | ` |
31 | test $? -ne 0 && exit 1 | 31 | test $? -ne 0 && exit 1 |
diff --git a/regress/test-exec.sh b/regress/test-exec.sh index 0f766620d..114e129f2 100644 --- a/regress/test-exec.sh +++ b/regress/test-exec.sh | |||
@@ -444,7 +444,7 @@ Host * | |||
444 | EOF | 444 | EOF |
445 | 445 | ||
446 | if [ ! -z "$TEST_SSH_SSH_CONFOPTS" ]; then | 446 | if [ ! -z "$TEST_SSH_SSH_CONFOPTS" ]; then |
447 | trace "adding ssh_config option $TEST_SSH_SSHD_CONFOPTS" | 447 | trace "adding ssh_config option $TEST_SSH_SSH_CONFOPTS" |
448 | echo "$TEST_SSH_SSH_CONFOPTS" >> $OBJ/ssh_config | 448 | echo "$TEST_SSH_SSH_CONFOPTS" >> $OBJ/ssh_config |
449 | fi | 449 | fi |
450 | 450 | ||
diff --git a/regress/try-ciphers.sh b/regress/try-ciphers.sh index 4165c7b88..889a735d2 100644 --- a/regress/try-ciphers.sh +++ b/regress/try-ciphers.sh | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: try-ciphers.sh,v 1.24 2015/03/03 22:35:19 markus Exp $ | 1 | # $OpenBSD: try-ciphers.sh,v 1.25 2015/03/24 20:22:17 markus Exp $ |
2 | # Placed in the Public Domain. | 2 | # Placed in the Public Domain. |
3 | 3 | ||
4 | tid="try ciphers" | 4 | tid="try ciphers" |
@@ -19,7 +19,7 @@ for c in `${SSH} -Q cipher`; do | |||
19 | fi | 19 | fi |
20 | # No point trying all MACs for AEAD ciphers since they | 20 | # No point trying all MACs for AEAD ciphers since they |
21 | # are ignored. | 21 | # are ignored. |
22 | if ssh -Q cipher-auth | grep "^${c}\$" >/dev/null 2>&1 ; then | 22 | if ${SSH} -Q cipher-auth | grep "^${c}\$" >/dev/null 2>&1 ; then |
23 | break | 23 | break |
24 | fi | 24 | fi |
25 | n=`expr $n + 1` | 25 | n=`expr $n + 1` |
diff --git a/regress/unittests/hostkeys/test_iterate.c b/regress/unittests/hostkeys/test_iterate.c index d81291b68..2eaaf063a 100644 --- a/regress/unittests/hostkeys/test_iterate.c +++ b/regress/unittests/hostkeys/test_iterate.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: test_iterate.c,v 1.3 2015/03/07 04:41:48 djm Exp $ */ | 1 | /* $OpenBSD: test_iterate.c,v 1.4 2015/03/31 22:59:01 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Regress test for hostfile.h hostkeys_foreach() | 3 | * Regress test for hostfile.h hostkeys_foreach() |
4 | * | 4 | * |
@@ -91,8 +91,8 @@ check(struct hostkey_foreach_line *l, void *_ctx) | |||
91 | expected->l.keytype : expected->no_parse_keytype; | 91 | expected->l.keytype : expected->no_parse_keytype; |
92 | 92 | ||
93 | #ifndef WITH_SSH1 | 93 | #ifndef WITH_SSH1 |
94 | if (expected->l.keytype == KEY_RSA1 || | 94 | if (parse_key && (expected->l.keytype == KEY_RSA1 || |
95 | expected->no_parse_keytype == KEY_RSA1) { | 95 | expected->no_parse_keytype == KEY_RSA1)) { |
96 | expected_status = HKF_STATUS_INVALID; | 96 | expected_status = HKF_STATUS_INVALID; |
97 | expected_keytype = KEY_UNSPEC; | 97 | expected_keytype = KEY_UNSPEC; |
98 | parse_key = 0; | 98 | parse_key = 0; |
diff --git a/regress/unittests/sshkey/test_sshkey.c b/regress/unittests/sshkey/test_sshkey.c index ad10c9be2..4453a8599 100644 --- a/regress/unittests/sshkey/test_sshkey.c +++ b/regress/unittests/sshkey/test_sshkey.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: test_sshkey.c,v 1.3 2015/01/26 06:11:28 djm Exp $ */ | 1 | /* $OpenBSD: test_sshkey.c,v 1.4 2015/04/22 01:38:36 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Regress test for sshkey.h key management API | 3 | * Regress test for sshkey.h key management API |
4 | * | 4 | * |
@@ -505,7 +505,7 @@ sshkey_tests(void) | |||
505 | ASSERT_INT_EQ(sshkey_load_cert(test_data_file("rsa_1"), &k1), 0); | 505 | ASSERT_INT_EQ(sshkey_load_cert(test_data_file("rsa_1"), &k1), 0); |
506 | ASSERT_INT_EQ(sshkey_load_public(test_data_file("rsa_1.pub"), &k2, | 506 | ASSERT_INT_EQ(sshkey_load_public(test_data_file("rsa_1.pub"), &k2, |
507 | NULL), 0); | 507 | NULL), 0); |
508 | k3 = get_private("ed25519_2"); | 508 | k3 = get_private("rsa_1"); |
509 | build_cert(b, k2, "ssh-rsa-cert-v01@openssh.com", k3, k1); | 509 | build_cert(b, k2, "ssh-rsa-cert-v01@openssh.com", k3, k1); |
510 | ASSERT_INT_EQ(sshkey_from_blob(sshbuf_ptr(b), sshbuf_len(b), &k4), | 510 | ASSERT_INT_EQ(sshkey_from_blob(sshbuf_ptr(b), sshbuf_len(b), &k4), |
511 | SSH_ERR_KEY_CERT_INVALID_SIGN_KEY); | 511 | SSH_ERR_KEY_CERT_INVALID_SIGN_KEY); |
diff --git a/rijndael.c b/rijndael.c index b352a11e5..40ab7b1f5 100644 --- a/rijndael.c +++ b/rijndael.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: rijndael.c,v 1.19 2014/11/18 22:38:48 mikeb Exp $ */ | 1 | /* $OpenBSD: rijndael.c,v 1.20 2015/03/16 11:09:52 djm Exp $ */ |
2 | 2 | ||
3 | /** | 3 | /** |
4 | * rijndael-alg-fst.c | 4 | * rijndael-alg-fst.c |
diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c index b6f6258f2..2462bcc88 100644 --- a/sandbox-seccomp-filter.c +++ b/sandbox-seccomp-filter.c | |||
@@ -43,6 +43,7 @@ | |||
43 | #include <sys/resource.h> | 43 | #include <sys/resource.h> |
44 | #include <sys/prctl.h> | 44 | #include <sys/prctl.h> |
45 | 45 | ||
46 | #include <linux/net.h> | ||
46 | #include <linux/audit.h> | 47 | #include <linux/audit.h> |
47 | #include <linux/filter.h> | 48 | #include <linux/filter.h> |
48 | #include <linux/seccomp.h> | 49 | #include <linux/seccomp.h> |
@@ -79,6 +80,16 @@ | |||
79 | #define SC_ALLOW(_nr) \ | 80 | #define SC_ALLOW(_nr) \ |
80 | BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, __NR_ ## _nr, 0, 1), \ | 81 | BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, __NR_ ## _nr, 0, 1), \ |
81 | BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_ALLOW) | 82 | BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_ALLOW) |
83 | #define SC_ALLOW_ARG(_nr, _arg_nr, _arg_val) \ | ||
84 | BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, __NR_ ## _nr, 0, 4), \ | ||
85 | /* load first syscall argument */ \ | ||
86 | BPF_STMT(BPF_LD+BPF_W+BPF_ABS, \ | ||
87 | offsetof(struct seccomp_data, args[(_arg_nr)])), \ | ||
88 | BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, (_arg_val), 0, 1), \ | ||
89 | BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_ALLOW), \ | ||
90 | /* reload syscall number; all rules expect it in accumulator */ \ | ||
91 | BPF_STMT(BPF_LD+BPF_W+BPF_ABS, \ | ||
92 | offsetof(struct seccomp_data, nr)) | ||
82 | 93 | ||
83 | /* Syscall filtering set for preauth. */ | 94 | /* Syscall filtering set for preauth. */ |
84 | static const struct sock_filter preauth_insns[] = { | 95 | static const struct sock_filter preauth_insns[] = { |
@@ -90,45 +101,105 @@ static const struct sock_filter preauth_insns[] = { | |||
90 | /* Load the syscall number for checking. */ | 101 | /* Load the syscall number for checking. */ |
91 | BPF_STMT(BPF_LD+BPF_W+BPF_ABS, | 102 | BPF_STMT(BPF_LD+BPF_W+BPF_ABS, |
92 | offsetof(struct seccomp_data, nr)), | 103 | offsetof(struct seccomp_data, nr)), |
104 | |||
105 | /* Syscalls to non-fatally deny */ | ||
106 | #ifdef __NR_fstat | ||
107 | SC_DENY(fstat, EACCES), | ||
108 | #endif | ||
109 | #ifdef __NR_fstat64 | ||
110 | SC_DENY(fstat64, EACCES), | ||
111 | #endif | ||
112 | #ifdef __NR_open | ||
93 | SC_DENY(open, EACCES), | 113 | SC_DENY(open, EACCES), |
114 | #endif | ||
115 | #ifdef __NR_openat | ||
116 | SC_DENY(openat, EACCES), | ||
117 | #endif | ||
118 | #ifdef __NR_newfstatat | ||
119 | SC_DENY(newfstatat, EACCES), | ||
120 | #endif | ||
121 | #ifdef __NR_stat | ||
94 | SC_DENY(stat, EACCES), | 122 | SC_DENY(stat, EACCES), |
95 | SC_ALLOW(getpid), | 123 | #endif |
96 | SC_ALLOW(gettimeofday), | 124 | #ifdef __NR_stat64 |
125 | SC_DENY(stat64, EACCES), | ||
126 | #endif | ||
127 | |||
128 | /* Syscalls to permit */ | ||
129 | #ifdef __NR_brk | ||
130 | SC_ALLOW(brk), | ||
131 | #endif | ||
132 | #ifdef __NR_clock_gettime | ||
97 | SC_ALLOW(clock_gettime), | 133 | SC_ALLOW(clock_gettime), |
98 | #ifdef __NR_time /* not defined on EABI ARM */ | ||
99 | SC_ALLOW(time), | ||
100 | #endif | 134 | #endif |
101 | SC_ALLOW(read), | 135 | #ifdef __NR_close |
102 | SC_ALLOW(write), | ||
103 | SC_ALLOW(close), | 136 | SC_ALLOW(close), |
104 | #ifdef __NR_shutdown /* not defined on archs that go via socketcall(2) */ | ||
105 | SC_ALLOW(shutdown), | ||
106 | #endif | 137 | #endif |
107 | SC_ALLOW(brk), | 138 | #ifdef __NR_exit |
108 | SC_ALLOW(poll), | 139 | SC_ALLOW(exit), |
109 | #ifdef __NR__newselect | 140 | #endif |
110 | SC_ALLOW(_newselect), | 141 | #ifdef __NR_exit_group |
111 | #else | 142 | SC_ALLOW(exit_group), |
112 | SC_ALLOW(select), | 143 | #endif |
144 | #ifdef __NR_getpgid | ||
145 | SC_ALLOW(getpgid), | ||
146 | #endif | ||
147 | #ifdef __NR_getpid | ||
148 | SC_ALLOW(getpid), | ||
113 | #endif | 149 | #endif |
150 | #ifdef __NR_gettimeofday | ||
151 | SC_ALLOW(gettimeofday), | ||
152 | #endif | ||
153 | #ifdef __NR_madvise | ||
114 | SC_ALLOW(madvise), | 154 | SC_ALLOW(madvise), |
115 | #ifdef __NR_mmap2 /* EABI ARM only has mmap2() */ | ||
116 | SC_ALLOW(mmap2), | ||
117 | #endif | 155 | #endif |
118 | #ifdef __NR_mmap | 156 | #ifdef __NR_mmap |
119 | SC_ALLOW(mmap), | 157 | SC_ALLOW(mmap), |
120 | #endif | 158 | #endif |
121 | #ifdef __dietlibc__ | 159 | #ifdef __NR_mmap2 |
160 | SC_ALLOW(mmap2), | ||
161 | #endif | ||
162 | #ifdef __NR_mremap | ||
122 | SC_ALLOW(mremap), | 163 | SC_ALLOW(mremap), |
123 | SC_ALLOW(exit), | ||
124 | #endif | 164 | #endif |
165 | #ifdef __NR_munmap | ||
125 | SC_ALLOW(munmap), | 166 | SC_ALLOW(munmap), |
126 | SC_ALLOW(exit_group), | 167 | #endif |
168 | #ifdef __NR__newselect | ||
169 | SC_ALLOW(_newselect), | ||
170 | #endif | ||
171 | #ifdef __NR_poll | ||
172 | SC_ALLOW(poll), | ||
173 | #endif | ||
174 | #ifdef __NR_pselect6 | ||
175 | SC_ALLOW(pselect6), | ||
176 | #endif | ||
177 | #ifdef __NR_read | ||
178 | SC_ALLOW(read), | ||
179 | #endif | ||
127 | #ifdef __NR_rt_sigprocmask | 180 | #ifdef __NR_rt_sigprocmask |
128 | SC_ALLOW(rt_sigprocmask), | 181 | SC_ALLOW(rt_sigprocmask), |
129 | #else | 182 | #endif |
183 | #ifdef __NR_select | ||
184 | SC_ALLOW(select), | ||
185 | #endif | ||
186 | #ifdef __NR_shutdown | ||
187 | SC_ALLOW(shutdown), | ||
188 | #endif | ||
189 | #ifdef __NR_sigprocmask | ||
130 | SC_ALLOW(sigprocmask), | 190 | SC_ALLOW(sigprocmask), |
131 | #endif | 191 | #endif |
192 | #ifdef __NR_time | ||
193 | SC_ALLOW(time), | ||
194 | #endif | ||
195 | #ifdef __NR_write | ||
196 | SC_ALLOW(write), | ||
197 | #endif | ||
198 | #ifdef __NR_socketcall | ||
199 | SC_ALLOW_ARG(socketcall, 0, SYS_SHUTDOWN), | ||
200 | #endif | ||
201 | |||
202 | /* Default deny */ | ||
132 | BPF_STMT(BPF_RET+BPF_K, SECCOMP_FILTER_FAIL), | 203 | BPF_STMT(BPF_RET+BPF_K, SECCOMP_FILTER_FAIL), |
133 | }; | 204 | }; |
134 | 205 | ||
diff --git a/sandbox-systrace.c b/sandbox-systrace.c index f30e70575..03b0d40cc 100644 --- a/sandbox-systrace.c +++ b/sandbox-systrace.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sandbox-systrace.c,v 1.14 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: sandbox-systrace.c,v 1.16 2015/06/29 22:35:12 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2011 Damien Miller <djm@mindrot.org> | 3 | * Copyright (c) 2011 Damien Miller <djm@mindrot.org> |
4 | * | 4 | * |
@@ -50,8 +50,9 @@ struct sandbox_policy { | |||
50 | 50 | ||
51 | /* Permitted syscalls in preauth. Unlisted syscalls get SYSTR_POLICY_KILL */ | 51 | /* Permitted syscalls in preauth. Unlisted syscalls get SYSTR_POLICY_KILL */ |
52 | static const struct sandbox_policy preauth_policy[] = { | 52 | static const struct sandbox_policy preauth_policy[] = { |
53 | { SYS_open, SYSTR_POLICY_NEVER }, | 53 | { SYS_clock_gettime, SYSTR_POLICY_PERMIT }, |
54 | 54 | { SYS_close, SYSTR_POLICY_PERMIT }, | |
55 | { SYS_exit, SYSTR_POLICY_PERMIT }, | ||
55 | #ifdef SYS_getentropy | 56 | #ifdef SYS_getentropy |
56 | /* OpenBSD 5.6 and newer use getentropy(2) to seed arc4random(3). */ | 57 | /* OpenBSD 5.6 and newer use getentropy(2) to seed arc4random(3). */ |
57 | { SYS_getentropy, SYSTR_POLICY_PERMIT }, | 58 | { SYS_getentropy, SYSTR_POLICY_PERMIT }, |
@@ -59,23 +60,21 @@ static const struct sandbox_policy preauth_policy[] = { | |||
59 | /* Previous releases used sysctl(3)'s kern.arnd variable. */ | 60 | /* Previous releases used sysctl(3)'s kern.arnd variable. */ |
60 | { SYS___sysctl, SYSTR_POLICY_PERMIT }, | 61 | { SYS___sysctl, SYSTR_POLICY_PERMIT }, |
61 | #endif | 62 | #endif |
62 | |||
63 | #ifdef SYS_sendsyslog | ||
64 | { SYS_sendsyslog, SYSTR_POLICY_PERMIT }, | ||
65 | #endif | ||
66 | { SYS_close, SYSTR_POLICY_PERMIT }, | ||
67 | { SYS_exit, SYSTR_POLICY_PERMIT }, | ||
68 | { SYS_getpid, SYSTR_POLICY_PERMIT }, | 63 | { SYS_getpid, SYSTR_POLICY_PERMIT }, |
64 | { SYS_getpgid, SYSTR_POLICY_PERMIT }, | ||
69 | { SYS_gettimeofday, SYSTR_POLICY_PERMIT }, | 65 | { SYS_gettimeofday, SYSTR_POLICY_PERMIT }, |
70 | { SYS_clock_gettime, SYSTR_POLICY_PERMIT }, | ||
71 | { SYS_madvise, SYSTR_POLICY_PERMIT }, | 66 | { SYS_madvise, SYSTR_POLICY_PERMIT }, |
72 | { SYS_mmap, SYSTR_POLICY_PERMIT }, | 67 | { SYS_mmap, SYSTR_POLICY_PERMIT }, |
73 | { SYS_mprotect, SYSTR_POLICY_PERMIT }, | 68 | { SYS_mprotect, SYSTR_POLICY_PERMIT }, |
74 | { SYS_mquery, SYSTR_POLICY_PERMIT }, | 69 | { SYS_mquery, SYSTR_POLICY_PERMIT }, |
75 | { SYS_poll, SYSTR_POLICY_PERMIT }, | ||
76 | { SYS_munmap, SYSTR_POLICY_PERMIT }, | 70 | { SYS_munmap, SYSTR_POLICY_PERMIT }, |
71 | { SYS_open, SYSTR_POLICY_NEVER }, | ||
72 | { SYS_poll, SYSTR_POLICY_PERMIT }, | ||
77 | { SYS_read, SYSTR_POLICY_PERMIT }, | 73 | { SYS_read, SYSTR_POLICY_PERMIT }, |
78 | { SYS_select, SYSTR_POLICY_PERMIT }, | 74 | { SYS_select, SYSTR_POLICY_PERMIT }, |
75 | #ifdef SYS_sendsyslog | ||
76 | { SYS_sendsyslog, SYSTR_POLICY_PERMIT }, | ||
77 | #endif | ||
79 | { SYS_shutdown, SYSTR_POLICY_PERMIT }, | 78 | { SYS_shutdown, SYSTR_POLICY_PERMIT }, |
80 | { SYS_sigprocmask, SYSTR_POLICY_PERMIT }, | 79 | { SYS_sigprocmask, SYSTR_POLICY_PERMIT }, |
81 | { SYS_write, SYSTR_POLICY_PERMIT }, | 80 | { SYS_write, SYSTR_POLICY_PERMIT }, |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: scp.c,v 1.181 2015/01/16 06:40:12 deraadt Exp $ */ | 1 | /* $OpenBSD: scp.c,v 1.182 2015/04/24 01:36:00 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * scp - secure remote copy. This is basically patched BSD rcp which | 3 | * scp - secure remote copy. This is basically patched BSD rcp which |
4 | * uses ssh to do the data transfer (instead of using rcmd). | 4 | * uses ssh to do the data transfer (instead of using rcmd). |
@@ -1341,7 +1341,7 @@ allocbuf(BUF *bp, int fd, int blksize) | |||
1341 | if (bp->buf == NULL) | 1341 | if (bp->buf == NULL) |
1342 | bp->buf = xmalloc(size); | 1342 | bp->buf = xmalloc(size); |
1343 | else | 1343 | else |
1344 | bp->buf = xrealloc(bp->buf, 1, size); | 1344 | bp->buf = xreallocarray(bp->buf, 1, size); |
1345 | memset(bp->buf, 0, size); | 1345 | memset(bp->buf, 0, size); |
1346 | bp->cnt = size; | 1346 | bp->cnt = size; |
1347 | return (bp); | 1347 | return (bp); |
diff --git a/servconf.c b/servconf.c index bec53e00e..fe3e31157 100644 --- a/servconf.c +++ b/servconf.c | |||
@@ -1,5 +1,4 @@ | |||
1 | 1 | /* $OpenBSD: servconf.c,v 1.274 2015/07/01 02:32:17 djm Exp $ */ | |
2 | /* $OpenBSD: servconf.c,v 1.260 2015/02/02 01:57:44 deraadt Exp $ */ | ||
3 | /* | 2 | /* |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 3 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
5 | * All rights reserved | 4 | * All rights reserved |
@@ -78,6 +77,8 @@ initialize_server_options(ServerOptions *options) | |||
78 | /* Standard Options */ | 77 | /* Standard Options */ |
79 | options->num_ports = 0; | 78 | options->num_ports = 0; |
80 | options->ports_from_cmdline = 0; | 79 | options->ports_from_cmdline = 0; |
80 | options->queued_listen_addrs = NULL; | ||
81 | options->num_queued_listens = 0; | ||
81 | options->listen_addrs = NULL; | 82 | options->listen_addrs = NULL; |
82 | options->address_family = -1; | 83 | options->address_family = -1; |
83 | options->num_host_key_files = 0; | 84 | options->num_host_key_files = 0; |
@@ -162,6 +163,8 @@ initialize_server_options(ServerOptions *options) | |||
162 | options->revoked_keys_file = NULL; | 163 | options->revoked_keys_file = NULL; |
163 | options->trusted_user_ca_keys = NULL; | 164 | options->trusted_user_ca_keys = NULL; |
164 | options->authorized_principals_file = NULL; | 165 | options->authorized_principals_file = NULL; |
166 | options->authorized_principals_command = NULL; | ||
167 | options->authorized_principals_command_user = NULL; | ||
165 | options->ip_qos_interactive = -1; | 168 | options->ip_qos_interactive = -1; |
166 | options->ip_qos_bulk = -1; | 169 | options->ip_qos_bulk = -1; |
167 | options->version_addendum = NULL; | 170 | options->version_addendum = NULL; |
@@ -209,6 +212,8 @@ fill_default_server_options(ServerOptions *options) | |||
209 | /* No certificates by default */ | 212 | /* No certificates by default */ |
210 | if (options->num_ports == 0) | 213 | if (options->num_ports == 0) |
211 | options->ports[options->num_ports++] = SSH_DEFAULT_PORT; | 214 | options->ports[options->num_ports++] = SSH_DEFAULT_PORT; |
215 | if (options->address_family == -1) | ||
216 | options->address_family = AF_UNSPEC; | ||
212 | if (options->listen_addrs == NULL) | 217 | if (options->listen_addrs == NULL) |
213 | add_listen_addr(options, NULL, 0); | 218 | add_listen_addr(options, NULL, 0); |
214 | if (options->pid_file == NULL) | 219 | if (options->pid_file == NULL) |
@@ -361,6 +366,7 @@ fill_default_server_options(ServerOptions *options) | |||
361 | CLEAR_ON_NONE(options->banner); | 366 | CLEAR_ON_NONE(options->banner); |
362 | CLEAR_ON_NONE(options->trusted_user_ca_keys); | 367 | CLEAR_ON_NONE(options->trusted_user_ca_keys); |
363 | CLEAR_ON_NONE(options->revoked_keys_file); | 368 | CLEAR_ON_NONE(options->revoked_keys_file); |
369 | CLEAR_ON_NONE(options->authorized_principals_file); | ||
364 | for (i = 0; i < options->num_host_key_files; i++) | 370 | for (i = 0; i < options->num_host_key_files; i++) |
365 | CLEAR_ON_NONE(options->host_key_files[i]); | 371 | CLEAR_ON_NONE(options->host_key_files[i]); |
366 | for (i = 0; i < options->num_host_cert_files; i++) | 372 | for (i = 0; i < options->num_host_cert_files; i++) |
@@ -410,6 +416,7 @@ typedef enum { | |||
410 | sUsePrivilegeSeparation, sAllowAgentForwarding, | 416 | sUsePrivilegeSeparation, sAllowAgentForwarding, |
411 | sHostCertificate, | 417 | sHostCertificate, |
412 | sRevokedKeys, sTrustedUserCAKeys, sAuthorizedPrincipalsFile, | 418 | sRevokedKeys, sTrustedUserCAKeys, sAuthorizedPrincipalsFile, |
419 | sAuthorizedPrincipalsCommand, sAuthorizedPrincipalsCommandUser, | ||
413 | sKexAlgorithms, sIPQoS, sVersionAddendum, | 420 | sKexAlgorithms, sIPQoS, sVersionAddendum, |
414 | sAuthorizedKeysCommand, sAuthorizedKeysCommandUser, | 421 | sAuthorizedKeysCommand, sAuthorizedKeysCommandUser, |
415 | sAuthenticationMethods, sHostKeyAgent, sPermitUserRC, | 422 | sAuthenticationMethods, sHostKeyAgent, sPermitUserRC, |
@@ -554,6 +561,8 @@ static struct { | |||
554 | { "ipqos", sIPQoS, SSHCFG_ALL }, | 561 | { "ipqos", sIPQoS, SSHCFG_ALL }, |
555 | { "authorizedkeyscommand", sAuthorizedKeysCommand, SSHCFG_ALL }, | 562 | { "authorizedkeyscommand", sAuthorizedKeysCommand, SSHCFG_ALL }, |
556 | { "authorizedkeyscommanduser", sAuthorizedKeysCommandUser, SSHCFG_ALL }, | 563 | { "authorizedkeyscommanduser", sAuthorizedKeysCommandUser, SSHCFG_ALL }, |
564 | { "authorizedprincipalscommand", sAuthorizedPrincipalsCommand, SSHCFG_ALL }, | ||
565 | { "authorizedprincipalscommanduser", sAuthorizedPrincipalsCommandUser, SSHCFG_ALL }, | ||
557 | { "versionaddendum", sVersionAddendum, SSHCFG_GLOBAL }, | 566 | { "versionaddendum", sVersionAddendum, SSHCFG_GLOBAL }, |
558 | { "authenticationmethods", sAuthenticationMethods, SSHCFG_ALL }, | 567 | { "authenticationmethods", sAuthenticationMethods, SSHCFG_ALL }, |
559 | { "streamlocalbindmask", sStreamLocalBindMask, SSHCFG_ALL }, | 568 | { "streamlocalbindmask", sStreamLocalBindMask, SSHCFG_ALL }, |
@@ -618,10 +627,6 @@ add_listen_addr(ServerOptions *options, char *addr, int port) | |||
618 | { | 627 | { |
619 | u_int i; | 628 | u_int i; |
620 | 629 | ||
621 | if (options->num_ports == 0) | ||
622 | options->ports[options->num_ports++] = SSH_DEFAULT_PORT; | ||
623 | if (options->address_family == -1) | ||
624 | options->address_family = AF_UNSPEC; | ||
625 | if (port == 0) | 630 | if (port == 0) |
626 | for (i = 0; i < options->num_ports; i++) | 631 | for (i = 0; i < options->num_ports; i++) |
627 | add_one_listen_addr(options, addr, options->ports[i]); | 632 | add_one_listen_addr(options, addr, options->ports[i]); |
@@ -651,6 +656,51 @@ add_one_listen_addr(ServerOptions *options, char *addr, int port) | |||
651 | options->listen_addrs = aitop; | 656 | options->listen_addrs = aitop; |
652 | } | 657 | } |
653 | 658 | ||
659 | /* | ||
660 | * Queue a ListenAddress to be processed once we have all of the Ports | ||
661 | * and AddressFamily options. | ||
662 | */ | ||
663 | static void | ||
664 | queue_listen_addr(ServerOptions *options, char *addr, int port) | ||
665 | { | ||
666 | options->queued_listen_addrs = xreallocarray( | ||
667 | options->queued_listen_addrs, options->num_queued_listens + 1, | ||
668 | sizeof(addr)); | ||
669 | options->queued_listen_ports = xreallocarray( | ||
670 | options->queued_listen_ports, options->num_queued_listens + 1, | ||
671 | sizeof(port)); | ||
672 | options->queued_listen_addrs[options->num_queued_listens] = | ||
673 | xstrdup(addr); | ||
674 | options->queued_listen_ports[options->num_queued_listens] = port; | ||
675 | options->num_queued_listens++; | ||
676 | } | ||
677 | |||
678 | /* | ||
679 | * Process queued (text) ListenAddress entries. | ||
680 | */ | ||
681 | static void | ||
682 | process_queued_listen_addrs(ServerOptions *options) | ||
683 | { | ||
684 | u_int i; | ||
685 | |||
686 | if (options->num_ports == 0) | ||
687 | options->ports[options->num_ports++] = SSH_DEFAULT_PORT; | ||
688 | if (options->address_family == -1) | ||
689 | options->address_family = AF_UNSPEC; | ||
690 | |||
691 | for (i = 0; i < options->num_queued_listens; i++) { | ||
692 | add_listen_addr(options, options->queued_listen_addrs[i], | ||
693 | options->queued_listen_ports[i]); | ||
694 | free(options->queued_listen_addrs[i]); | ||
695 | options->queued_listen_addrs[i] = NULL; | ||
696 | } | ||
697 | free(options->queued_listen_addrs); | ||
698 | options->queued_listen_addrs = NULL; | ||
699 | free(options->queued_listen_ports); | ||
700 | options->queued_listen_ports = NULL; | ||
701 | options->num_queued_listens = 0; | ||
702 | } | ||
703 | |||
654 | struct connection_info * | 704 | struct connection_info * |
655 | get_connection_info(int populate, int use_dns) | 705 | get_connection_info(int populate, int use_dns) |
656 | { | 706 | { |
@@ -736,7 +786,6 @@ match_cfg_line(char **condition, int line, struct connection_info *ci) | |||
736 | { | 786 | { |
737 | int result = 1, attributes = 0, port; | 787 | int result = 1, attributes = 0, port; |
738 | char *arg, *attrib, *cp = *condition; | 788 | char *arg, *attrib, *cp = *condition; |
739 | size_t len; | ||
740 | 789 | ||
741 | if (ci == NULL) | 790 | if (ci == NULL) |
742 | debug3("checking syntax for 'Match %s'", cp); | 791 | debug3("checking syntax for 'Match %s'", cp); |
@@ -763,13 +812,12 @@ match_cfg_line(char **condition, int line, struct connection_info *ci) | |||
763 | error("Missing Match criteria for %s", attrib); | 812 | error("Missing Match criteria for %s", attrib); |
764 | return -1; | 813 | return -1; |
765 | } | 814 | } |
766 | len = strlen(arg); | ||
767 | if (strcasecmp(attrib, "user") == 0) { | 815 | if (strcasecmp(attrib, "user") == 0) { |
768 | if (ci == NULL || ci->user == NULL) { | 816 | if (ci == NULL || ci->user == NULL) { |
769 | result = 0; | 817 | result = 0; |
770 | continue; | 818 | continue; |
771 | } | 819 | } |
772 | if (match_pattern_list(ci->user, arg, len, 0) != 1) | 820 | if (match_pattern_list(ci->user, arg, 0) != 1) |
773 | result = 0; | 821 | result = 0; |
774 | else | 822 | else |
775 | debug("user %.100s matched 'User %.100s' at " | 823 | debug("user %.100s matched 'User %.100s' at " |
@@ -790,7 +838,7 @@ match_cfg_line(char **condition, int line, struct connection_info *ci) | |||
790 | result = 0; | 838 | result = 0; |
791 | continue; | 839 | continue; |
792 | } | 840 | } |
793 | if (match_hostname(ci->host, arg, len) != 1) | 841 | if (match_hostname(ci->host, arg) != 1) |
794 | result = 0; | 842 | result = 0; |
795 | else | 843 | else |
796 | debug("connection from %.100s matched 'Host " | 844 | debug("connection from %.100s matched 'Host " |
@@ -967,9 +1015,6 @@ process_server_config_line(ServerOptions *options, char *line, | |||
967 | /* ignore ports from configfile if cmdline specifies ports */ | 1015 | /* ignore ports from configfile if cmdline specifies ports */ |
968 | if (options->ports_from_cmdline) | 1016 | if (options->ports_from_cmdline) |
969 | return 0; | 1017 | return 0; |
970 | if (options->listen_addrs != NULL) | ||
971 | fatal("%s line %d: ports must be specified before " | ||
972 | "ListenAddress.", filename, linenum); | ||
973 | if (options->num_ports >= MAX_PORTS) | 1018 | if (options->num_ports >= MAX_PORTS) |
974 | fatal("%s line %d: too many ports.", | 1019 | fatal("%s line %d: too many ports.", |
975 | filename, linenum); | 1020 | filename, linenum); |
@@ -1005,7 +1050,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1005 | if ((value = convtime(arg)) == -1) | 1050 | if ((value = convtime(arg)) == -1) |
1006 | fatal("%s line %d: invalid time value.", | 1051 | fatal("%s line %d: invalid time value.", |
1007 | filename, linenum); | 1052 | filename, linenum); |
1008 | if (*intptr == -1) | 1053 | if (*activep && *intptr == -1) |
1009 | *intptr = value; | 1054 | *intptr = value; |
1010 | break; | 1055 | break; |
1011 | 1056 | ||
@@ -1021,7 +1066,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1021 | /* check for bare IPv6 address: no "[]" and 2 or more ":" */ | 1066 | /* check for bare IPv6 address: no "[]" and 2 or more ":" */ |
1022 | if (strchr(arg, '[') == NULL && (p = strchr(arg, ':')) != NULL | 1067 | if (strchr(arg, '[') == NULL && (p = strchr(arg, ':')) != NULL |
1023 | && strchr(p+1, ':') != NULL) { | 1068 | && strchr(p+1, ':') != NULL) { |
1024 | add_listen_addr(options, arg, 0); | 1069 | queue_listen_addr(options, arg, 0); |
1025 | break; | 1070 | break; |
1026 | } | 1071 | } |
1027 | p = hpdelim(&arg); | 1072 | p = hpdelim(&arg); |
@@ -1034,16 +1079,13 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1034 | else if ((port = a2port(arg)) <= 0) | 1079 | else if ((port = a2port(arg)) <= 0) |
1035 | fatal("%s line %d: bad port number", filename, linenum); | 1080 | fatal("%s line %d: bad port number", filename, linenum); |
1036 | 1081 | ||
1037 | add_listen_addr(options, p, port); | 1082 | queue_listen_addr(options, p, port); |
1038 | 1083 | ||
1039 | break; | 1084 | break; |
1040 | 1085 | ||
1041 | case sAddressFamily: | 1086 | case sAddressFamily: |
1042 | intptr = &options->address_family; | 1087 | intptr = &options->address_family; |
1043 | multistate_ptr = multistate_addressfamily; | 1088 | multistate_ptr = multistate_addressfamily; |
1044 | if (options->listen_addrs != NULL) | ||
1045 | fatal("%s line %d: address family must be specified " | ||
1046 | "before ListenAddress.", filename, linenum); | ||
1047 | parse_multistate: | 1089 | parse_multistate: |
1048 | arg = strdelim(&cp); | 1090 | arg = strdelim(&cp); |
1049 | if (!arg || *arg == '\0') | 1091 | if (!arg || *arg == '\0') |
@@ -1483,7 +1525,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1483 | len = strlen(p) + 1; | 1525 | len = strlen(p) + 1; |
1484 | while ((arg = strdelim(&cp)) != NULL && *arg != '\0') { | 1526 | while ((arg = strdelim(&cp)) != NULL && *arg != '\0') { |
1485 | len += 1 + strlen(arg); | 1527 | len += 1 + strlen(arg); |
1486 | p = xrealloc(p, 1, len); | 1528 | p = xreallocarray(p, 1, len); |
1487 | strlcat(p, " ", len); | 1529 | strlcat(p, " ", len); |
1488 | strlcat(p, arg, len); | 1530 | strlcat(p, arg, len); |
1489 | } | 1531 | } |
@@ -1598,7 +1640,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1598 | if (value == -1) | 1640 | if (value == -1) |
1599 | fatal("%s line %d: Bad yes/point-to-point/ethernet/" | 1641 | fatal("%s line %d: Bad yes/point-to-point/ethernet/" |
1600 | "no argument: %s", filename, linenum, arg); | 1642 | "no argument: %s", filename, linenum, arg); |
1601 | if (*intptr == -1) | 1643 | if (*activep && *intptr == -1) |
1602 | *intptr = value; | 1644 | *intptr = value; |
1603 | break; | 1645 | break; |
1604 | 1646 | ||
@@ -1651,7 +1693,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1651 | break; | 1693 | break; |
1652 | 1694 | ||
1653 | case sForceCommand: | 1695 | case sForceCommand: |
1654 | if (cp == NULL) | 1696 | if (cp == NULL || *cp == '\0') |
1655 | fatal("%.200s line %d: Missing argument.", filename, | 1697 | fatal("%.200s line %d: Missing argument.", filename, |
1656 | linenum); | 1698 | linenum); |
1657 | len = strspn(cp, WHITESPACE); | 1699 | len = strspn(cp, WHITESPACE); |
@@ -1696,7 +1738,7 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1696 | break; | 1738 | break; |
1697 | 1739 | ||
1698 | case sVersionAddendum: | 1740 | case sVersionAddendum: |
1699 | if (cp == NULL) | 1741 | if (cp == NULL || *cp == '\0') |
1700 | fatal("%.200s line %d: Missing argument.", filename, | 1742 | fatal("%.200s line %d: Missing argument.", filename, |
1701 | linenum); | 1743 | linenum); |
1702 | len = strspn(cp, WHITESPACE); | 1744 | len = strspn(cp, WHITESPACE); |
@@ -1736,8 +1778,36 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1736 | *charptr = xstrdup(arg); | 1778 | *charptr = xstrdup(arg); |
1737 | break; | 1779 | break; |
1738 | 1780 | ||
1781 | case sAuthorizedPrincipalsCommand: | ||
1782 | if (cp == NULL) | ||
1783 | fatal("%.200s line %d: Missing argument.", filename, | ||
1784 | linenum); | ||
1785 | len = strspn(cp, WHITESPACE); | ||
1786 | if (*activep && | ||
1787 | options->authorized_principals_command == NULL) { | ||
1788 | if (cp[len] != '/' && strcasecmp(cp + len, "none") != 0) | ||
1789 | fatal("%.200s line %d: " | ||
1790 | "AuthorizedPrincipalsCommand must be " | ||
1791 | "an absolute path", filename, linenum); | ||
1792 | options->authorized_principals_command = | ||
1793 | xstrdup(cp + len); | ||
1794 | } | ||
1795 | return 0; | ||
1796 | |||
1797 | case sAuthorizedPrincipalsCommandUser: | ||
1798 | charptr = &options->authorized_principals_command_user; | ||
1799 | |||
1800 | arg = strdelim(&cp); | ||
1801 | if (!arg || *arg == '\0') | ||
1802 | fatal("%s line %d: missing " | ||
1803 | "AuthorizedPrincipalsCommandUser argument.", | ||
1804 | filename, linenum); | ||
1805 | if (*activep && *charptr == NULL) | ||
1806 | *charptr = xstrdup(arg); | ||
1807 | break; | ||
1808 | |||
1739 | case sAuthenticationMethods: | 1809 | case sAuthenticationMethods: |
1740 | if (*activep && options->num_auth_methods == 0) { | 1810 | if (options->num_auth_methods == 0) { |
1741 | while ((arg = strdelim(&cp)) && *arg != '\0') { | 1811 | while ((arg = strdelim(&cp)) && *arg != '\0') { |
1742 | if (options->num_auth_methods >= | 1812 | if (options->num_auth_methods >= |
1743 | MAX_AUTH_METHODS) | 1813 | MAX_AUTH_METHODS) |
@@ -1748,6 +1818,8 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1748 | fatal("%s line %d: invalid " | 1818 | fatal("%s line %d: invalid " |
1749 | "authentication method list.", | 1819 | "authentication method list.", |
1750 | filename, linenum); | 1820 | filename, linenum); |
1821 | if (!*activep) | ||
1822 | continue; | ||
1751 | options->auth_methods[ | 1823 | options->auth_methods[ |
1752 | options->num_auth_methods++] = xstrdup(arg); | 1824 | options->num_auth_methods++] = xstrdup(arg); |
1753 | } | 1825 | } |
@@ -1757,13 +1829,14 @@ process_server_config_line(ServerOptions *options, char *line, | |||
1757 | case sStreamLocalBindMask: | 1829 | case sStreamLocalBindMask: |
1758 | arg = strdelim(&cp); | 1830 | arg = strdelim(&cp); |
1759 | if (!arg || *arg == '\0') | 1831 | if (!arg || *arg == '\0') |
1760 | fatal("%s line %d: missing StreamLocalBindMask argument.", | 1832 | fatal("%s line %d: missing StreamLocalBindMask " |
1761 | filename, linenum); | 1833 | "argument.", filename, linenum); |
1762 | /* Parse mode in octal format */ | 1834 | /* Parse mode in octal format */ |
1763 | value = strtol(arg, &p, 8); | 1835 | value = strtol(arg, &p, 8); |
1764 | if (arg == p || value < 0 || value > 0777) | 1836 | if (arg == p || value < 0 || value > 0777) |
1765 | fatal("%s line %d: Bad mask.", filename, linenum); | 1837 | fatal("%s line %d: Bad mask.", filename, linenum); |
1766 | options->fwd_opts.streamlocal_bind_mask = (mode_t)value; | 1838 | if (*activep) |
1839 | options->fwd_opts.streamlocal_bind_mask = (mode_t)value; | ||
1767 | break; | 1840 | break; |
1768 | 1841 | ||
1769 | case sStreamLocalBindUnlink: | 1842 | case sStreamLocalBindUnlink: |
@@ -1994,6 +2067,7 @@ parse_server_config(ServerOptions *options, const char *filename, Buffer *conf, | |||
1994 | if (bad_options > 0) | 2067 | if (bad_options > 0) |
1995 | fatal("%s: terminating, %d bad configuration options", | 2068 | fatal("%s: terminating, %d bad configuration options", |
1996 | filename, bad_options); | 2069 | filename, bad_options); |
2070 | process_queued_listen_addrs(options); | ||
1997 | } | 2071 | } |
1998 | 2072 | ||
1999 | static const char * | 2073 | static const char * |
@@ -2071,6 +2145,12 @@ dump_cfg_int(ServerOpCodes code, int val) | |||
2071 | } | 2145 | } |
2072 | 2146 | ||
2073 | static void | 2147 | static void |
2148 | dump_cfg_oct(ServerOpCodes code, int val) | ||
2149 | { | ||
2150 | printf("%s 0%o\n", lookup_opcode_name(code), val); | ||
2151 | } | ||
2152 | |||
2153 | static void | ||
2074 | dump_cfg_fmtint(ServerOpCodes code, int val) | 2154 | dump_cfg_fmtint(ServerOpCodes code, int val) |
2075 | { | 2155 | { |
2076 | printf("%s %s\n", lookup_opcode_name(code), fmt_intarg(code, val)); | 2156 | printf("%s %s\n", lookup_opcode_name(code), fmt_intarg(code, val)); |
@@ -2099,6 +2179,8 @@ dump_cfg_strarray_oneline(ServerOpCodes code, u_int count, char **vals) | |||
2099 | { | 2179 | { |
2100 | u_int i; | 2180 | u_int i; |
2101 | 2181 | ||
2182 | if (count <= 0) | ||
2183 | return; | ||
2102 | printf("%s", lookup_opcode_name(code)); | 2184 | printf("%s", lookup_opcode_name(code)); |
2103 | for (i = 0; i < count; i++) | 2185 | for (i = 0; i < count; i++) |
2104 | printf(" %s", vals[i]); | 2186 | printf(" %s", vals[i]); |
@@ -2112,6 +2194,7 @@ dump_config(ServerOptions *o) | |||
2112 | int ret; | 2194 | int ret; |
2113 | struct addrinfo *ai; | 2195 | struct addrinfo *ai; |
2114 | char addr[NI_MAXHOST], port[NI_MAXSERV], *s = NULL; | 2196 | char addr[NI_MAXHOST], port[NI_MAXSERV], *s = NULL; |
2197 | char *laddr1 = xstrdup(""), *laddr2 = NULL; | ||
2115 | 2198 | ||
2116 | /* these are usually at the top of the config */ | 2199 | /* these are usually at the top of the config */ |
2117 | for (i = 0; i < o->num_ports; i++) | 2200 | for (i = 0; i < o->num_ports; i++) |
@@ -2119,7 +2202,11 @@ dump_config(ServerOptions *o) | |||
2119 | dump_cfg_fmtint(sProtocol, o->protocol); | 2202 | dump_cfg_fmtint(sProtocol, o->protocol); |
2120 | dump_cfg_fmtint(sAddressFamily, o->address_family); | 2203 | dump_cfg_fmtint(sAddressFamily, o->address_family); |
2121 | 2204 | ||
2122 | /* ListenAddress must be after Port */ | 2205 | /* |
2206 | * ListenAddress must be after Port. add_one_listen_addr pushes | ||
2207 | * addresses onto a stack, so to maintain ordering we need to | ||
2208 | * print these in reverse order. | ||
2209 | */ | ||
2123 | for (ai = o->listen_addrs; ai; ai = ai->ai_next) { | 2210 | for (ai = o->listen_addrs; ai; ai = ai->ai_next) { |
2124 | if ((ret = getnameinfo(ai->ai_addr, ai->ai_addrlen, addr, | 2211 | if ((ret = getnameinfo(ai->ai_addr, ai->ai_addrlen, addr, |
2125 | sizeof(addr), port, sizeof(port), | 2212 | sizeof(addr), port, sizeof(port), |
@@ -2128,16 +2215,22 @@ dump_config(ServerOptions *o) | |||
2128 | (ret != EAI_SYSTEM) ? gai_strerror(ret) : | 2215 | (ret != EAI_SYSTEM) ? gai_strerror(ret) : |
2129 | strerror(errno)); | 2216 | strerror(errno)); |
2130 | } else { | 2217 | } else { |
2218 | laddr2 = laddr1; | ||
2131 | if (ai->ai_family == AF_INET6) | 2219 | if (ai->ai_family == AF_INET6) |
2132 | printf("listenaddress [%s]:%s\n", addr, port); | 2220 | xasprintf(&laddr1, "listenaddress [%s]:%s\n%s", |
2221 | addr, port, laddr2); | ||
2133 | else | 2222 | else |
2134 | printf("listenaddress %s:%s\n", addr, port); | 2223 | xasprintf(&laddr1, "listenaddress %s:%s\n%s", |
2224 | addr, port, laddr2); | ||
2225 | free(laddr2); | ||
2135 | } | 2226 | } |
2136 | } | 2227 | } |
2228 | printf("%s", laddr1); | ||
2229 | free(laddr1); | ||
2137 | 2230 | ||
2138 | /* integer arguments */ | 2231 | /* integer arguments */ |
2139 | #ifdef USE_PAM | 2232 | #ifdef USE_PAM |
2140 | dump_cfg_int(sUsePAM, o->use_pam); | 2233 | dump_cfg_fmtint(sUsePAM, o->use_pam); |
2141 | #endif | 2234 | #endif |
2142 | dump_cfg_int(sServerKeyBits, o->server_key_bits); | 2235 | dump_cfg_int(sServerKeyBits, o->server_key_bits); |
2143 | dump_cfg_int(sLoginGraceTime, o->login_grace_time); | 2236 | dump_cfg_int(sLoginGraceTime, o->login_grace_time); |
@@ -2147,6 +2240,7 @@ dump_config(ServerOptions *o) | |||
2147 | dump_cfg_int(sMaxSessions, o->max_sessions); | 2240 | dump_cfg_int(sMaxSessions, o->max_sessions); |
2148 | dump_cfg_int(sClientAliveInterval, o->client_alive_interval); | 2241 | dump_cfg_int(sClientAliveInterval, o->client_alive_interval); |
2149 | dump_cfg_int(sClientAliveCountMax, o->client_alive_count_max); | 2242 | dump_cfg_int(sClientAliveCountMax, o->client_alive_count_max); |
2243 | dump_cfg_oct(sStreamLocalBindMask, o->fwd_opts.streamlocal_bind_mask); | ||
2150 | 2244 | ||
2151 | /* formatted integer arguments */ | 2245 | /* formatted integer arguments */ |
2152 | dump_cfg_fmtint(sPermitRootLogin, o->permit_root_login); | 2246 | dump_cfg_fmtint(sPermitRootLogin, o->permit_root_login); |
@@ -2193,6 +2287,7 @@ dump_config(ServerOptions *o) | |||
2193 | dump_cfg_fmtint(sGatewayPorts, o->fwd_opts.gateway_ports); | 2287 | dump_cfg_fmtint(sGatewayPorts, o->fwd_opts.gateway_ports); |
2194 | dump_cfg_fmtint(sUseDNS, o->use_dns); | 2288 | dump_cfg_fmtint(sUseDNS, o->use_dns); |
2195 | dump_cfg_fmtint(sAllowTcpForwarding, o->allow_tcp_forwarding); | 2289 | dump_cfg_fmtint(sAllowTcpForwarding, o->allow_tcp_forwarding); |
2290 | dump_cfg_fmtint(sAllowAgentForwarding, o->allow_agent_forwarding); | ||
2196 | dump_cfg_fmtint(sAllowStreamLocalForwarding, o->allow_streamlocal_forwarding); | 2291 | dump_cfg_fmtint(sAllowStreamLocalForwarding, o->allow_streamlocal_forwarding); |
2197 | dump_cfg_fmtint(sUsePrivilegeSeparation, use_privsep); | 2292 | dump_cfg_fmtint(sUsePrivilegeSeparation, use_privsep); |
2198 | dump_cfg_fmtint(sFingerprintHash, o->fingerprint_hash); | 2293 | dump_cfg_fmtint(sFingerprintHash, o->fingerprint_hash); |
@@ -2209,9 +2304,12 @@ dump_config(ServerOptions *o) | |||
2209 | dump_cfg_string(sRevokedKeys, o->revoked_keys_file); | 2304 | dump_cfg_string(sRevokedKeys, o->revoked_keys_file); |
2210 | dump_cfg_string(sAuthorizedPrincipalsFile, | 2305 | dump_cfg_string(sAuthorizedPrincipalsFile, |
2211 | o->authorized_principals_file); | 2306 | o->authorized_principals_file); |
2212 | dump_cfg_string(sVersionAddendum, o->version_addendum); | 2307 | dump_cfg_string(sVersionAddendum, *o->version_addendum == '\0' |
2308 | ? "none" : o->version_addendum); | ||
2213 | dump_cfg_string(sAuthorizedKeysCommand, o->authorized_keys_command); | 2309 | dump_cfg_string(sAuthorizedKeysCommand, o->authorized_keys_command); |
2214 | dump_cfg_string(sAuthorizedKeysCommandUser, o->authorized_keys_command_user); | 2310 | dump_cfg_string(sAuthorizedKeysCommandUser, o->authorized_keys_command_user); |
2311 | dump_cfg_string(sAuthorizedPrincipalsCommand, o->authorized_principals_command); | ||
2312 | dump_cfg_string(sAuthorizedPrincipalsCommandUser, o->authorized_principals_command_user); | ||
2215 | dump_cfg_string(sHostKeyAgent, o->host_key_agent); | 2313 | dump_cfg_string(sHostKeyAgent, o->host_key_agent); |
2216 | dump_cfg_string(sKexAlgorithms, | 2314 | dump_cfg_string(sKexAlgorithms, |
2217 | o->kex_algorithms ? o->kex_algorithms : KEX_SERVER_KEX); | 2315 | o->kex_algorithms ? o->kex_algorithms : KEX_SERVER_KEX); |
@@ -2229,7 +2327,7 @@ dump_config(ServerOptions *o) | |||
2229 | o->authorized_keys_files); | 2327 | o->authorized_keys_files); |
2230 | dump_cfg_strarray(sHostKeyFile, o->num_host_key_files, | 2328 | dump_cfg_strarray(sHostKeyFile, o->num_host_key_files, |
2231 | o->host_key_files); | 2329 | o->host_key_files); |
2232 | dump_cfg_strarray(sHostKeyFile, o->num_host_cert_files, | 2330 | dump_cfg_strarray(sHostCertificate, o->num_host_cert_files, |
2233 | o->host_cert_files); | 2331 | o->host_cert_files); |
2234 | dump_cfg_strarray(sAllowUsers, o->num_allow_users, o->allow_users); | 2332 | dump_cfg_strarray(sAllowUsers, o->num_allow_users, o->allow_users); |
2235 | dump_cfg_strarray(sDenyUsers, o->num_deny_users, o->deny_users); | 2333 | dump_cfg_strarray(sDenyUsers, o->num_deny_users, o->deny_users); |
diff --git a/servconf.h b/servconf.h index ed0f17167..ba7b73947 100644 --- a/servconf.h +++ b/servconf.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: servconf.h,v 1.116 2015/01/13 07:39:19 djm Exp $ */ | 1 | /* $OpenBSD: servconf.h,v 1.119 2015/05/22 03:50:02 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
@@ -58,7 +58,9 @@ typedef struct { | |||
58 | u_int num_ports; | 58 | u_int num_ports; |
59 | u_int ports_from_cmdline; | 59 | u_int ports_from_cmdline; |
60 | int ports[MAX_PORTS]; /* Port number to listen on. */ | 60 | int ports[MAX_PORTS]; /* Port number to listen on. */ |
61 | char *listen_addr; /* Address on which the server listens. */ | 61 | u_int num_queued_listens; |
62 | char **queued_listen_addrs; | ||
63 | int *queued_listen_ports; | ||
62 | struct addrinfo *listen_addrs; /* Addresses on which the server listens. */ | 64 | struct addrinfo *listen_addrs; /* Addresses on which the server listens. */ |
63 | int address_family; /* Address family used by the server. */ | 65 | int address_family; /* Address family used by the server. */ |
64 | char *host_key_files[MAX_HOSTKEYS]; /* Files containing host keys. */ | 66 | char *host_key_files[MAX_HOSTKEYS]; /* Files containing host keys. */ |
@@ -117,7 +119,7 @@ typedef struct { | |||
117 | int gss_authentication; /* If true, permit GSSAPI authentication */ | 119 | int gss_authentication; /* If true, permit GSSAPI authentication */ |
118 | int gss_keyex; /* If true, permit GSSAPI key exchange */ | 120 | int gss_keyex; /* If true, permit GSSAPI key exchange */ |
119 | int gss_cleanup_creds; /* If true, destroy cred cache on logout */ | 121 | int gss_cleanup_creds; /* If true, destroy cred cache on logout */ |
120 | int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ | 122 | int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ |
121 | int gss_store_rekey; | 123 | int gss_store_rekey; |
122 | int password_authentication; /* If true, permit password | 124 | int password_authentication; /* If true, permit password |
123 | * authentication. */ | 125 | * authentication. */ |
@@ -179,9 +181,11 @@ typedef struct { | |||
179 | char *chroot_directory; | 181 | char *chroot_directory; |
180 | char *revoked_keys_file; | 182 | char *revoked_keys_file; |
181 | char *trusted_user_ca_keys; | 183 | char *trusted_user_ca_keys; |
182 | char *authorized_principals_file; | ||
183 | char *authorized_keys_command; | 184 | char *authorized_keys_command; |
184 | char *authorized_keys_command_user; | 185 | char *authorized_keys_command_user; |
186 | char *authorized_principals_file; | ||
187 | char *authorized_principals_command; | ||
188 | char *authorized_principals_command_user; | ||
185 | 189 | ||
186 | int64_t rekey_limit; | 190 | int64_t rekey_limit; |
187 | int rekey_interval; | 191 | int rekey_interval; |
@@ -219,9 +223,11 @@ struct connection_info { | |||
219 | M_CP_STROPT(banner); \ | 223 | M_CP_STROPT(banner); \ |
220 | M_CP_STROPT(trusted_user_ca_keys); \ | 224 | M_CP_STROPT(trusted_user_ca_keys); \ |
221 | M_CP_STROPT(revoked_keys_file); \ | 225 | M_CP_STROPT(revoked_keys_file); \ |
222 | M_CP_STROPT(authorized_principals_file); \ | ||
223 | M_CP_STROPT(authorized_keys_command); \ | 226 | M_CP_STROPT(authorized_keys_command); \ |
224 | M_CP_STROPT(authorized_keys_command_user); \ | 227 | M_CP_STROPT(authorized_keys_command_user); \ |
228 | M_CP_STROPT(authorized_principals_file); \ | ||
229 | M_CP_STROPT(authorized_principals_command); \ | ||
230 | M_CP_STROPT(authorized_principals_command_user); \ | ||
225 | M_CP_STROPT(hostbased_key_types); \ | 231 | M_CP_STROPT(hostbased_key_types); \ |
226 | M_CP_STROPT(pubkey_key_types); \ | 232 | M_CP_STROPT(pubkey_key_types); \ |
227 | M_CP_STRARRAYOPT(authorized_keys_files, num_authkeys_files); \ | 233 | M_CP_STRARRAYOPT(authorized_keys_files, num_authkeys_files); \ |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: session.c,v 1.277 2015/01/16 06:40:12 deraadt Exp $ */ | 1 | /* $OpenBSD: session.c,v 1.278 2015/04/24 01:36:00 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 3 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
4 | * All rights reserved | 4 | * All rights reserved |
@@ -998,7 +998,7 @@ child_set_env(char ***envp, u_int *envsizep, const char *name, | |||
998 | if (envsize >= 1000) | 998 | if (envsize >= 1000) |
999 | fatal("child_set_env: too many env vars"); | 999 | fatal("child_set_env: too many env vars"); |
1000 | envsize += 50; | 1000 | envsize += 50; |
1001 | env = (*envp) = xrealloc(env, envsize, sizeof(char *)); | 1001 | env = (*envp) = xreallocarray(env, envsize, sizeof(char *)); |
1002 | *envsizep = envsize; | 1002 | *envsizep = envsize; |
1003 | } | 1003 | } |
1004 | /* Need to set the NULL pointer at end of array beyond the new slot. */ | 1004 | /* Need to set the NULL pointer at end of array beyond the new slot. */ |
@@ -1923,7 +1923,7 @@ session_new(void) | |||
1923 | return NULL; | 1923 | return NULL; |
1924 | debug2("%s: allocate (allocated %d max %d)", | 1924 | debug2("%s: allocate (allocated %d max %d)", |
1925 | __func__, sessions_nalloc, options.max_sessions); | 1925 | __func__, sessions_nalloc, options.max_sessions); |
1926 | tmp = xrealloc(sessions, sessions_nalloc + 1, | 1926 | tmp = xreallocarray(sessions, sessions_nalloc + 1, |
1927 | sizeof(*sessions)); | 1927 | sizeof(*sessions)); |
1928 | if (tmp == NULL) { | 1928 | if (tmp == NULL) { |
1929 | error("%s: cannot allocate %d sessions", | 1929 | error("%s: cannot allocate %d sessions", |
@@ -2250,7 +2250,7 @@ session_env_req(Session *s) | |||
2250 | for (i = 0; i < options.num_accept_env; i++) { | 2250 | for (i = 0; i < options.num_accept_env; i++) { |
2251 | if (match_pattern(name, options.accept_env[i])) { | 2251 | if (match_pattern(name, options.accept_env[i])) { |
2252 | debug2("Setting env %d: %s=%s", s->num_env, name, val); | 2252 | debug2("Setting env %d: %s=%s", s->num_env, name, val); |
2253 | s->env = xrealloc(s->env, s->num_env + 1, | 2253 | s->env = xreallocarray(s->env, s->num_env + 1, |
2254 | sizeof(*s->env)); | 2254 | sizeof(*s->env)); |
2255 | s->env[s->num_env].name = name; | 2255 | s->env[s->num_env].name = name; |
2256 | s->env[s->num_env].val = val; | 2256 | s->env[s->num_env].val = val; |
diff --git a/sftp-client.c b/sftp-client.c index 80f4805cb..5dbeb47c0 100644 --- a/sftp-client.c +++ b/sftp-client.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sftp-client.c,v 1.117 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: sftp-client.c,v 1.120 2015/05/28 04:50:53 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org> | 3 | * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org> |
4 | * | 4 | * |
@@ -408,6 +408,7 @@ do_init(int fd_in, int fd_out, u_int transfer_buflen, u_int num_requests, | |||
408 | error("Invalid packet back from SSH2_FXP_INIT (type %u)", | 408 | error("Invalid packet back from SSH2_FXP_INIT (type %u)", |
409 | type); | 409 | type); |
410 | sshbuf_free(msg); | 410 | sshbuf_free(msg); |
411 | free(ret); | ||
411 | return(NULL); | 412 | return(NULL); |
412 | } | 413 | } |
413 | if ((r = sshbuf_get_u32(msg, &ret->version)) != 0) | 414 | if ((r = sshbuf_get_u32(msg, &ret->version)) != 0) |
@@ -621,7 +622,7 @@ do_lsreaddir(struct sftp_conn *conn, const char *path, int print_flag, | |||
621 | error("Server sent suspect path \"%s\" " | 622 | error("Server sent suspect path \"%s\" " |
622 | "during readdir of \"%s\"", filename, path); | 623 | "during readdir of \"%s\"", filename, path); |
623 | } else if (dir) { | 624 | } else if (dir) { |
624 | *dir = xrealloc(*dir, ents + 2, sizeof(**dir)); | 625 | *dir = xreallocarray(*dir, ents + 2, sizeof(**dir)); |
625 | (*dir)[ents] = xcalloc(1, sizeof(***dir)); | 626 | (*dir)[ents] = xcalloc(1, sizeof(***dir)); |
626 | (*dir)[ents]->filename = xstrdup(filename); | 627 | (*dir)[ents]->filename = xstrdup(filename); |
627 | (*dir)[ents]->longname = xstrdup(longname); | 628 | (*dir)[ents]->longname = xstrdup(longname); |
@@ -1384,7 +1385,9 @@ do_download(struct sftp_conn *conn, const char *remote_path, | |||
1384 | "server reordered requests", local_path); | 1385 | "server reordered requests", local_path); |
1385 | } | 1386 | } |
1386 | debug("truncating at %llu", (unsigned long long)highwater); | 1387 | debug("truncating at %llu", (unsigned long long)highwater); |
1387 | ftruncate(local_fd, highwater); | 1388 | if (ftruncate(local_fd, highwater) == -1) |
1389 | error("ftruncate \"%s\": %s", local_path, | ||
1390 | strerror(errno)); | ||
1388 | } | 1391 | } |
1389 | if (read_error) { | 1392 | if (read_error) { |
1390 | error("Couldn't read from remote file \"%s\" : %s", | 1393 | error("Couldn't read from remote file \"%s\" : %s", |
diff --git a/sftp-client.h b/sftp-client.h index 507d763ea..f814b07d6 100644 --- a/sftp-client.h +++ b/sftp-client.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sftp-client.h,v 1.26 2015/01/14 13:54:13 djm Exp $ */ | 1 | /* $OpenBSD: sftp-client.h,v 1.27 2015/05/08 06:45:13 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org> | 4 | * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org> |
@@ -111,7 +111,7 @@ int do_download(struct sftp_conn *, const char *, const char *, | |||
111 | Attrib *, int, int, int); | 111 | Attrib *, int, int, int); |
112 | 112 | ||
113 | /* | 113 | /* |
114 | * Recursively download 'remote_directory' to 'local_directory'. Preserve | 114 | * Recursively download 'remote_directory' to 'local_directory'. Preserve |
115 | * times if 'pflag' is set | 115 | * times if 'pflag' is set |
116 | */ | 116 | */ |
117 | int download_dir(struct sftp_conn *, const char *, const char *, | 117 | int download_dir(struct sftp_conn *, const char *, const char *, |
@@ -124,7 +124,7 @@ int download_dir(struct sftp_conn *, const char *, const char *, | |||
124 | int do_upload(struct sftp_conn *, const char *, const char *, int, int, int); | 124 | int do_upload(struct sftp_conn *, const char *, const char *, int, int, int); |
125 | 125 | ||
126 | /* | 126 | /* |
127 | * Recursively upload 'local_directory' to 'remote_directory'. Preserve | 127 | * Recursively upload 'local_directory' to 'remote_directory'. Preserve |
128 | * times if 'pflag' is set | 128 | * times if 'pflag' is set |
129 | */ | 129 | */ |
130 | int upload_dir(struct sftp_conn *, const char *, const char *, int, int, int, | 130 | int upload_dir(struct sftp_conn *, const char *, const char *, int, int, int, |
diff --git a/sftp-server.c b/sftp-server.c index 4f735cd93..d1831bf8d 100644 --- a/sftp-server.c +++ b/sftp-server.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sftp-server.c,v 1.105 2015/01/20 23:14:00 deraadt Exp $ */ | 1 | /* $OpenBSD: sftp-server.c,v 1.106 2015/04/24 01:36:01 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000-2004 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000-2004 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -40,7 +40,6 @@ | |||
40 | #include <stdlib.h> | 40 | #include <stdlib.h> |
41 | #include <stdio.h> | 41 | #include <stdio.h> |
42 | #include <string.h> | 42 | #include <string.h> |
43 | #include <pwd.h> | ||
44 | #include <time.h> | 43 | #include <time.h> |
45 | #include <unistd.h> | 44 | #include <unistd.h> |
46 | #include <stdarg.h> | 45 | #include <stdarg.h> |
@@ -310,7 +309,7 @@ handle_new(int use, const char *name, int fd, int flags, DIR *dirp) | |||
310 | if (num_handles + 1 <= num_handles) | 309 | if (num_handles + 1 <= num_handles) |
311 | return -1; | 310 | return -1; |
312 | num_handles++; | 311 | num_handles++; |
313 | handles = xrealloc(handles, num_handles, sizeof(Handle)); | 312 | handles = xreallocarray(handles, num_handles, sizeof(Handle)); |
314 | handle_unused(num_handles - 1); | 313 | handle_unused(num_handles - 1); |
315 | } | 314 | } |
316 | 315 | ||
@@ -1063,7 +1062,7 @@ process_readdir(u_int32_t id) | |||
1063 | while ((dp = readdir(dirp)) != NULL) { | 1062 | while ((dp = readdir(dirp)) != NULL) { |
1064 | if (count >= nstats) { | 1063 | if (count >= nstats) { |
1065 | nstats *= 2; | 1064 | nstats *= 2; |
1066 | stats = xrealloc(stats, nstats, sizeof(Stat)); | 1065 | stats = xreallocarray(stats, nstats, sizeof(Stat)); |
1067 | } | 1066 | } |
1068 | /* XXX OVERFLOW ? */ | 1067 | /* XXX OVERFLOW ? */ |
1069 | snprintf(pathname, sizeof pathname, "%s%s%s", path, | 1068 | snprintf(pathname, sizeof pathname, "%s%s%s", path, |
@@ -29,9 +29,9 @@ DESCRIPTION | |||
29 | 29 | ||
30 | -c Indicates that added identities should be subject to confirmation | 30 | -c Indicates that added identities should be subject to confirmation |
31 | before being used for authentication. Confirmation is performed | 31 | before being used for authentication. Confirmation is performed |
32 | by the SSH_ASKPASS program mentioned below. Successful | 32 | by ssh-askpass(1). Successful confirmation is signaled by a zero |
33 | confirmation is signaled by a zero exit status from the | 33 | exit status from ssh-askpass(1), rather than text entered into |
34 | SSH_ASKPASS program, rather than text entered into the requester. | 34 | the requester. |
35 | 35 | ||
36 | -D Deletes all identities from the agent. | 36 | -D Deletes all identities from the agent. |
37 | 37 | ||
@@ -78,10 +78,11 @@ ENVIRONMENT | |||
78 | the current terminal if it was run from a terminal. If ssh-add | 78 | the current terminal if it was run from a terminal. If ssh-add |
79 | does not have a terminal associated with it but DISPLAY and | 79 | does not have a terminal associated with it but DISPLAY and |
80 | SSH_ASKPASS are set, it will execute the program specified by | 80 | SSH_ASKPASS are set, it will execute the program specified by |
81 | SSH_ASKPASS and open an X11 window to read the passphrase. This | 81 | SSH_ASKPASS (by default M-bM-^@M-^\ssh-askpassM-bM-^@M-^]) and open an X11 window to |
82 | is particularly useful when calling ssh-add from a .xsession or | 82 | read the passphrase. This is particularly useful when calling |
83 | related script. (Note that on some machines it may be necessary | 83 | ssh-add from a .xsession or related script. (Note that on some |
84 | to redirect the input from /dev/null to make this work.) | 84 | machines it may be necessary to redirect the input from /dev/null |
85 | to make this work.) | ||
85 | 86 | ||
86 | SSH_AUTH_SOCK | 87 | SSH_AUTH_SOCK |
87 | Identifies the path of a UNIX-domain socket used to communicate | 88 | Identifies the path of a UNIX-domain socket used to communicate |
@@ -116,7 +117,7 @@ EXIT STATUS | |||
116 | ssh-add is unable to contact the authentication agent. | 117 | ssh-add is unable to contact the authentication agent. |
117 | 118 | ||
118 | SEE ALSO | 119 | SEE ALSO |
119 | ssh(1), ssh-agent(1), ssh-keygen(1), sshd(8) | 120 | ssh(1), ssh-agent(1), ssh-askpass(1), ssh-keygen(1), sshd(8) |
120 | 121 | ||
121 | AUTHORS | 122 | AUTHORS |
122 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by | 123 | OpenSSH is a derivative of the original and free ssh 1.2.12 release by |
@@ -125,4 +126,4 @@ AUTHORS | |||
125 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | 126 | created OpenSSH. Markus Friedl contributed the support for SSH protocol |
126 | versions 1.5 and 2.0. | 127 | versions 1.5 and 2.0. |
127 | 128 | ||
128 | OpenBSD 5.7 December 21, 2014 OpenBSD 5.7 | 129 | OpenBSD 5.7 March 30, 2015 OpenBSD 5.7 |
@@ -1,4 +1,4 @@ | |||
1 | .\" $OpenBSD: ssh-add.1,v 1.61 2014/12/21 22:27:56 djm Exp $ | 1 | .\" $OpenBSD: ssh-add.1,v 1.62 2015/03/30 18:28:37 jmc Exp $ |
2 | .\" | 2 | .\" |
3 | .\" Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | .\" Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | .\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | .\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -35,7 +35,7 @@ | |||
35 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 35 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
36 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 36 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
37 | .\" | 37 | .\" |
38 | .Dd $Mdocdate: December 21 2014 $ | 38 | .Dd $Mdocdate: March 30 2015 $ |
39 | .Dt SSH-ADD 1 | 39 | .Dt SSH-ADD 1 |
40 | .Os | 40 | .Os |
41 | .Sh NAME | 41 | .Sh NAME |
@@ -88,12 +88,11 @@ The options are as follows: | |||
88 | .It Fl c | 88 | .It Fl c |
89 | Indicates that added identities should be subject to confirmation before | 89 | Indicates that added identities should be subject to confirmation before |
90 | being used for authentication. | 90 | being used for authentication. |
91 | Confirmation is performed by the | 91 | Confirmation is performed by |
92 | .Ev SSH_ASKPASS | 92 | .Xr ssh-askpass 1 . |
93 | program mentioned below. | 93 | Successful confirmation is signaled by a zero exit status from |
94 | Successful confirmation is signaled by a zero exit status from the | 94 | .Xr ssh-askpass 1 , |
95 | .Ev SSH_ASKPASS | 95 | rather than text entered into the requester. |
96 | program, rather than text entered into the requester. | ||
97 | .It Fl D | 96 | .It Fl D |
98 | Deletes all identities from the agent. | 97 | Deletes all identities from the agent. |
99 | .It Fl d | 98 | .It Fl d |
@@ -156,6 +155,8 @@ and | |||
156 | .Ev SSH_ASKPASS | 155 | .Ev SSH_ASKPASS |
157 | are set, it will execute the program specified by | 156 | are set, it will execute the program specified by |
158 | .Ev SSH_ASKPASS | 157 | .Ev SSH_ASKPASS |
158 | (by default | ||
159 | .Dq ssh-askpass ) | ||
159 | and open an X11 window to read the passphrase. | 160 | and open an X11 window to read the passphrase. |
160 | This is particularly useful when calling | 161 | This is particularly useful when calling |
161 | .Nm | 162 | .Nm |
@@ -197,6 +198,7 @@ is unable to contact the authentication agent. | |||
197 | .Sh SEE ALSO | 198 | .Sh SEE ALSO |
198 | .Xr ssh 1 , | 199 | .Xr ssh 1 , |
199 | .Xr ssh-agent 1 , | 200 | .Xr ssh-agent 1 , |
201 | .Xr ssh-askpass 1 , | ||
200 | .Xr ssh-keygen 1 , | 202 | .Xr ssh-keygen 1 , |
201 | .Xr sshd 8 | 203 | .Xr sshd 8 |
202 | .Sh AUTHORS | 204 | .Sh AUTHORS |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-add.c,v 1.120 2015/02/21 21:46:57 halex Exp $ */ | 1 | /* $OpenBSD: ssh-add.c,v 1.122 2015/03/26 12:32:38 naddy Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -79,7 +79,9 @@ static char *default_files[] = { | |||
79 | #endif | 79 | #endif |
80 | #endif /* WITH_OPENSSL */ | 80 | #endif /* WITH_OPENSSL */ |
81 | _PATH_SSH_CLIENT_ID_ED25519, | 81 | _PATH_SSH_CLIENT_ID_ED25519, |
82 | #ifdef WITH_SSH1 | ||
82 | _PATH_SSH_CLIENT_IDENTITY, | 83 | _PATH_SSH_CLIENT_IDENTITY, |
84 | #endif | ||
83 | NULL | 85 | NULL |
84 | }; | 86 | }; |
85 | 87 | ||
@@ -164,11 +166,10 @@ delete_all(int agent_fd) | |||
164 | { | 166 | { |
165 | int ret = -1; | 167 | int ret = -1; |
166 | 168 | ||
167 | if (ssh_remove_all_identities(agent_fd, 1) == 0) | 169 | if (ssh_remove_all_identities(agent_fd, 2) == 0) |
168 | ret = 0; | 170 | ret = 0; |
169 | /* ignore error-code for ssh2 */ | 171 | /* ignore error-code for ssh1 */ |
170 | /* XXX revisit */ | 172 | ssh_remove_all_identities(agent_fd, 1); |
171 | ssh_remove_all_identities(agent_fd, 2); | ||
172 | 173 | ||
173 | if (ret == 0) | 174 | if (ret == 0) |
174 | fprintf(stderr, "All identities removed.\n"); | 175 | fprintf(stderr, "All identities removed.\n"); |
@@ -364,11 +365,16 @@ static int | |||
364 | list_identities(int agent_fd, int do_fp) | 365 | list_identities(int agent_fd, int do_fp) |
365 | { | 366 | { |
366 | char *fp; | 367 | char *fp; |
367 | int version, r, had_identities = 0; | 368 | int r, had_identities = 0; |
368 | struct ssh_identitylist *idlist; | 369 | struct ssh_identitylist *idlist; |
369 | size_t i; | 370 | size_t i; |
371 | #ifdef WITH_SSH1 | ||
372 | int version = 1; | ||
373 | #else | ||
374 | int version = 2; | ||
375 | #endif | ||
370 | 376 | ||
371 | for (version = 1; version <= 2; version++) { | 377 | for (; version <= 2; version++) { |
372 | if ((r = ssh_fetch_identitylist(agent_fd, version, | 378 | if ((r = ssh_fetch_identitylist(agent_fd, version, |
373 | &idlist)) != 0) { | 379 | &idlist)) != 0) { |
374 | if (r != SSH_ERR_AGENT_NO_IDENTITIES) | 380 | if (r != SSH_ERR_AGENT_NO_IDENTITIES) |
diff --git a/ssh-agent.0 b/ssh-agent.0 index 30f4eb3bc..eb892811c 100644 --- a/ssh-agent.0 +++ b/ssh-agent.0 | |||
@@ -4,7 +4,7 @@ NAME | |||
4 | ssh-agent M-bM-^@M-^S authentication agent | 4 | ssh-agent M-bM-^@M-^S authentication agent |
5 | 5 | ||
6 | SYNOPSIS | 6 | SYNOPSIS |
7 | ssh-agent [-c | -s] [-d] [-a bind_address] [-E fingerprint_hash] | 7 | ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash] |
8 | [-t life] [command [arg ...]] | 8 | [-t life] [command [arg ...]] |
9 | ssh-agent [-c | -s] -k | 9 | ssh-agent [-c | -s] -k |
10 | 10 | ||
@@ -32,8 +32,11 @@ DESCRIPTION | |||
32 | -c Generate C-shell commands on stdout. This is the default if | 32 | -c Generate C-shell commands on stdout. This is the default if |
33 | SHELL looks like it's a csh style of shell. | 33 | SHELL looks like it's a csh style of shell. |
34 | 34 | ||
35 | -D Foreground mode. When this option is specified ssh-agent will | ||
36 | not fork. | ||
37 | |||
35 | -d Debug mode. When this option is specified ssh-agent will not | 38 | -d Debug mode. When this option is specified ssh-agent will not |
36 | fork. | 39 | fork and will write debug information to standard error. |
37 | 40 | ||
38 | -E fingerprint_hash | 41 | -E fingerprint_hash |
39 | Specifies the hash algorithm used when displaying key | 42 | Specifies the hash algorithm used when displaying key |
@@ -106,4 +109,4 @@ AUTHORS | |||
106 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | 109 | created OpenSSH. Markus Friedl contributed the support for SSH protocol |
107 | versions 1.5 and 2.0. | 110 | versions 1.5 and 2.0. |
108 | 111 | ||
109 | OpenBSD 5.7 December 21, 2014 OpenBSD 5.7 | 112 | OpenBSD 5.7 April 24, 2015 OpenBSD 5.7 |
diff --git a/ssh-agent.1 b/ssh-agent.1 index 25de326b4..2a940d9ff 100644 --- a/ssh-agent.1 +++ b/ssh-agent.1 | |||
@@ -1,4 +1,4 @@ | |||
1 | .\" $OpenBSD: ssh-agent.1,v 1.57 2014/12/21 22:27:56 djm Exp $ | 1 | .\" $OpenBSD: ssh-agent.1,v 1.59 2015/04/24 06:26:49 jmc Exp $ |
2 | .\" | 2 | .\" |
3 | .\" Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | .\" Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | .\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | .\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -34,7 +34,7 @@ | |||
34 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 34 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
35 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 35 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
36 | .\" | 36 | .\" |
37 | .Dd $Mdocdate: December 21 2014 $ | 37 | .Dd $Mdocdate: April 24 2015 $ |
38 | .Dt SSH-AGENT 1 | 38 | .Dt SSH-AGENT 1 |
39 | .Os | 39 | .Os |
40 | .Sh NAME | 40 | .Sh NAME |
@@ -43,7 +43,7 @@ | |||
43 | .Sh SYNOPSIS | 43 | .Sh SYNOPSIS |
44 | .Nm ssh-agent | 44 | .Nm ssh-agent |
45 | .Op Fl c | s | 45 | .Op Fl c | s |
46 | .Op Fl d | 46 | .Op Fl Dd |
47 | .Op Fl a Ar bind_address | 47 | .Op Fl a Ar bind_address |
48 | .Op Fl E Ar fingerprint_hash | 48 | .Op Fl E Ar fingerprint_hash |
49 | .Op Fl t Ar life | 49 | .Op Fl t Ar life |
@@ -92,11 +92,16 @@ Generate C-shell commands on | |||
92 | This is the default if | 92 | This is the default if |
93 | .Ev SHELL | 93 | .Ev SHELL |
94 | looks like it's a csh style of shell. | 94 | looks like it's a csh style of shell. |
95 | .It Fl D | ||
96 | Foreground mode. | ||
97 | When this option is specified | ||
98 | .Nm | ||
99 | will not fork. | ||
95 | .It Fl d | 100 | .It Fl d |
96 | Debug mode. | 101 | Debug mode. |
97 | When this option is specified | 102 | When this option is specified |
98 | .Nm | 103 | .Nm |
99 | will not fork. | 104 | will not fork and will write debug information to standard error. |
100 | .It Fl E Ar fingerprint_hash | 105 | .It Fl E Ar fingerprint_hash |
101 | Specifies the hash algorithm used when displaying key fingerprints. | 106 | Specifies the hash algorithm used when displaying key fingerprints. |
102 | Valid options are: | 107 | Valid options are: |
diff --git a/ssh-agent.c b/ssh-agent.c index aeda656ac..34b19b754 100644 --- a/ssh-agent.c +++ b/ssh-agent.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-agent.c,v 1.199 2015/03/04 21:12:59 djm Exp $ */ | 1 | /* $OpenBSD: ssh-agent.c,v 1.203 2015/05/15 05:44:21 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -68,6 +68,9 @@ | |||
68 | #include <time.h> | 68 | #include <time.h> |
69 | #include <string.h> | 69 | #include <string.h> |
70 | #include <unistd.h> | 70 | #include <unistd.h> |
71 | #ifdef HAVE_UTIL_H | ||
72 | # include <util.h> | ||
73 | #endif | ||
71 | 74 | ||
72 | #include "key.h" /* XXX for typedef */ | 75 | #include "key.h" /* XXX for typedef */ |
73 | #include "buffer.h" /* XXX for typedef */ | 76 | #include "buffer.h" /* XXX for typedef */ |
@@ -140,8 +143,12 @@ char socket_name[PATH_MAX]; | |||
140 | char socket_dir[PATH_MAX]; | 143 | char socket_dir[PATH_MAX]; |
141 | 144 | ||
142 | /* locking */ | 145 | /* locking */ |
146 | #define LOCK_SIZE 32 | ||
147 | #define LOCK_SALT_SIZE 16 | ||
148 | #define LOCK_ROUNDS 1 | ||
143 | int locked = 0; | 149 | int locked = 0; |
144 | char *lock_passwd = NULL; | 150 | char lock_passwd[LOCK_SIZE]; |
151 | char lock_salt[LOCK_SALT_SIZE]; | ||
145 | 152 | ||
146 | extern char *__progname; | 153 | extern char *__progname; |
147 | 154 | ||
@@ -660,23 +667,45 @@ send: | |||
660 | static void | 667 | static void |
661 | process_lock_agent(SocketEntry *e, int lock) | 668 | process_lock_agent(SocketEntry *e, int lock) |
662 | { | 669 | { |
663 | int r, success = 0; | 670 | int r, success = 0, delay; |
664 | char *passwd; | 671 | char *passwd, passwdhash[LOCK_SIZE]; |
672 | static u_int fail_count = 0; | ||
673 | size_t pwlen; | ||
665 | 674 | ||
666 | if ((r = sshbuf_get_cstring(e->request, &passwd, NULL)) != 0) | 675 | if ((r = sshbuf_get_cstring(e->request, &passwd, &pwlen)) != 0) |
667 | fatal("%s: buffer error: %s", __func__, ssh_err(r)); | 676 | fatal("%s: buffer error: %s", __func__, ssh_err(r)); |
668 | if (locked && !lock && strcmp(passwd, lock_passwd) == 0) { | 677 | if (pwlen == 0) { |
669 | locked = 0; | 678 | debug("empty password not supported"); |
670 | explicit_bzero(lock_passwd, strlen(lock_passwd)); | 679 | } else if (locked && !lock) { |
671 | free(lock_passwd); | 680 | if (bcrypt_pbkdf(passwd, pwlen, lock_salt, sizeof(lock_salt), |
672 | lock_passwd = NULL; | 681 | passwdhash, sizeof(passwdhash), LOCK_ROUNDS) < 0) |
673 | success = 1; | 682 | fatal("bcrypt_pbkdf"); |
683 | if (timingsafe_bcmp(passwdhash, lock_passwd, LOCK_SIZE) == 0) { | ||
684 | debug("agent unlocked"); | ||
685 | locked = 0; | ||
686 | fail_count = 0; | ||
687 | explicit_bzero(lock_passwd, sizeof(lock_passwd)); | ||
688 | success = 1; | ||
689 | } else { | ||
690 | /* delay in 0.1s increments up to 10s */ | ||
691 | if (fail_count < 100) | ||
692 | fail_count++; | ||
693 | delay = 100000 * fail_count; | ||
694 | debug("unlock failed, delaying %0.1lf seconds", | ||
695 | (double)delay/1000000); | ||
696 | usleep(delay); | ||
697 | } | ||
698 | explicit_bzero(passwdhash, sizeof(passwdhash)); | ||
674 | } else if (!locked && lock) { | 699 | } else if (!locked && lock) { |
700 | debug("agent locked"); | ||
675 | locked = 1; | 701 | locked = 1; |
676 | lock_passwd = xstrdup(passwd); | 702 | arc4random_buf(lock_salt, sizeof(lock_salt)); |
703 | if (bcrypt_pbkdf(passwd, pwlen, lock_salt, sizeof(lock_salt), | ||
704 | lock_passwd, sizeof(lock_passwd), LOCK_ROUNDS) < 0) | ||
705 | fatal("bcrypt_pbkdf"); | ||
677 | success = 1; | 706 | success = 1; |
678 | } | 707 | } |
679 | explicit_bzero(passwd, strlen(passwd)); | 708 | explicit_bzero(passwd, pwlen); |
680 | free(passwd); | 709 | free(passwd); |
681 | send_status(e, success); | 710 | send_status(e, success); |
682 | } | 711 | } |
@@ -929,7 +958,7 @@ new_socket(sock_type type, int fd) | |||
929 | } | 958 | } |
930 | old_alloc = sockets_alloc; | 959 | old_alloc = sockets_alloc; |
931 | new_alloc = sockets_alloc + 10; | 960 | new_alloc = sockets_alloc + 10; |
932 | sockets = xrealloc(sockets, new_alloc, sizeof(sockets[0])); | 961 | sockets = xreallocarray(sockets, new_alloc, sizeof(sockets[0])); |
933 | for (i = old_alloc; i < new_alloc; i++) | 962 | for (i = old_alloc; i < new_alloc; i++) |
934 | sockets[i].type = AUTH_UNUSED; | 963 | sockets[i].type = AUTH_UNUSED; |
935 | sockets_alloc = new_alloc; | 964 | sockets_alloc = new_alloc; |
@@ -1137,7 +1166,7 @@ static void | |||
1137 | usage(void) | 1166 | usage(void) |
1138 | { | 1167 | { |
1139 | fprintf(stderr, | 1168 | fprintf(stderr, |
1140 | "usage: ssh-agent [-c | -s] [-d] [-a bind_address] [-E fingerprint_hash]\n" | 1169 | "usage: ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash]\n" |
1141 | " [-t life] [command [arg ...]]\n" | 1170 | " [-t life] [command [arg ...]]\n" |
1142 | " ssh-agent [-c | -s] -k\n"); | 1171 | " ssh-agent [-c | -s] -k\n"); |
1143 | exit(1); | 1172 | exit(1); |
@@ -1146,7 +1175,7 @@ usage(void) | |||
1146 | int | 1175 | int |
1147 | main(int ac, char **av) | 1176 | main(int ac, char **av) |
1148 | { | 1177 | { |
1149 | int c_flag = 0, d_flag = 0, k_flag = 0, s_flag = 0; | 1178 | int c_flag = 0, d_flag = 0, D_flag = 0, k_flag = 0, s_flag = 0; |
1150 | int sock, fd, ch, result, saved_errno; | 1179 | int sock, fd, ch, result, saved_errno; |
1151 | u_int nalloc; | 1180 | u_int nalloc; |
1152 | char *shell, *format, *pidstr, *agentsocket = NULL; | 1181 | char *shell, *format, *pidstr, *agentsocket = NULL; |
@@ -1181,7 +1210,7 @@ main(int ac, char **av) | |||
1181 | __progname = ssh_get_progname(av[0]); | 1210 | __progname = ssh_get_progname(av[0]); |
1182 | seed_rng(); | 1211 | seed_rng(); |
1183 | 1212 | ||
1184 | while ((ch = getopt(ac, av, "cdksE:a:t:")) != -1) { | 1213 | while ((ch = getopt(ac, av, "cDdksE:a:t:")) != -1) { |
1185 | switch (ch) { | 1214 | switch (ch) { |
1186 | case 'E': | 1215 | case 'E': |
1187 | fingerprint_hash = ssh_digest_alg_by_name(optarg); | 1216 | fingerprint_hash = ssh_digest_alg_by_name(optarg); |
@@ -1202,10 +1231,15 @@ main(int ac, char **av) | |||
1202 | s_flag++; | 1231 | s_flag++; |
1203 | break; | 1232 | break; |
1204 | case 'd': | 1233 | case 'd': |
1205 | if (d_flag) | 1234 | if (d_flag || D_flag) |
1206 | usage(); | 1235 | usage(); |
1207 | d_flag++; | 1236 | d_flag++; |
1208 | break; | 1237 | break; |
1238 | case 'D': | ||
1239 | if (d_flag || D_flag) | ||
1240 | usage(); | ||
1241 | D_flag++; | ||
1242 | break; | ||
1209 | case 'a': | 1243 | case 'a': |
1210 | agentsocket = optarg; | 1244 | agentsocket = optarg; |
1211 | break; | 1245 | break; |
@@ -1222,7 +1256,7 @@ main(int ac, char **av) | |||
1222 | ac -= optind; | 1256 | ac -= optind; |
1223 | av += optind; | 1257 | av += optind; |
1224 | 1258 | ||
1225 | if (ac > 0 && (c_flag || k_flag || s_flag || d_flag)) | 1259 | if (ac > 0 && (c_flag || k_flag || s_flag || d_flag || D_flag)) |
1226 | usage(); | 1260 | usage(); |
1227 | 1261 | ||
1228 | if (ac == 0 && !c_flag && !s_flag) { | 1262 | if (ac == 0 && !c_flag && !s_flag) { |
@@ -1291,8 +1325,10 @@ main(int ac, char **av) | |||
1291 | * Fork, and have the parent execute the command, if any, or present | 1325 | * Fork, and have the parent execute the command, if any, or present |
1292 | * the socket data. The child continues as the authentication agent. | 1326 | * the socket data. The child continues as the authentication agent. |
1293 | */ | 1327 | */ |
1294 | if (d_flag) { | 1328 | if (D_flag || d_flag) { |
1295 | log_init(__progname, SYSLOG_LEVEL_DEBUG1, SYSLOG_FACILITY_AUTH, 1); | 1329 | log_init(__progname, |
1330 | d_flag ? SYSLOG_LEVEL_DEBUG3 : SYSLOG_LEVEL_INFO, | ||
1331 | SYSLOG_FACILITY_AUTH, 1); | ||
1296 | format = c_flag ? "setenv %s %s;\n" : "%s=%s; export %s;\n"; | 1332 | format = c_flag ? "setenv %s %s;\n" : "%s=%s; export %s;\n"; |
1297 | printf(format, SSH_AUTHSOCKET_ENV_NAME, socket_name, | 1333 | printf(format, SSH_AUTHSOCKET_ENV_NAME, socket_name, |
1298 | SSH_AUTHSOCKET_ENV_NAME); | 1334 | SSH_AUTHSOCKET_ENV_NAME); |
@@ -1364,7 +1400,7 @@ skip: | |||
1364 | parent_alive_interval = 10; | 1400 | parent_alive_interval = 10; |
1365 | idtab_init(); | 1401 | idtab_init(); |
1366 | signal(SIGPIPE, SIG_IGN); | 1402 | signal(SIGPIPE, SIG_IGN); |
1367 | signal(SIGINT, d_flag ? cleanup_handler : SIG_IGN); | 1403 | signal(SIGINT, (d_flag | D_flag) ? cleanup_handler : SIG_IGN); |
1368 | signal(SIGHUP, cleanup_handler); | 1404 | signal(SIGHUP, cleanup_handler); |
1369 | signal(SIGTERM, cleanup_handler); | 1405 | signal(SIGTERM, cleanup_handler); |
1370 | nalloc = 0; | 1406 | nalloc = 0; |
diff --git a/ssh-keygen.c b/ssh-keygen.c index a3c2362a2..8259d87e7 100644 --- a/ssh-keygen.c +++ b/ssh-keygen.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-keygen.c,v 1.266 2015/02/26 20:45:47 djm Exp $ */ | 1 | /* $OpenBSD: ssh-keygen.c,v 1.274 2015/05/28 07:37:31 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -58,6 +58,12 @@ | |||
58 | #include "krl.h" | 58 | #include "krl.h" |
59 | #include "digest.h" | 59 | #include "digest.h" |
60 | 60 | ||
61 | #ifdef WITH_OPENSSL | ||
62 | # define DEFAULT_KEY_TYPE_NAME "rsa" | ||
63 | #else | ||
64 | # define DEFAULT_KEY_TYPE_NAME "ed25519" | ||
65 | #endif | ||
66 | |||
61 | /* Number of bits in the RSA/DSA key. This value can be set on the command line. */ | 67 | /* Number of bits in the RSA/DSA key. This value can be set on the command line. */ |
62 | #define DEFAULT_BITS 2048 | 68 | #define DEFAULT_BITS 2048 |
63 | #define DEFAULT_BITS_DSA 1024 | 69 | #define DEFAULT_BITS_DSA 1024 |
@@ -174,23 +180,22 @@ extern char *__progname; | |||
174 | 180 | ||
175 | char hostname[NI_MAXHOST]; | 181 | char hostname[NI_MAXHOST]; |
176 | 182 | ||
183 | #ifdef WITH_OPENSSL | ||
177 | /* moduli.c */ | 184 | /* moduli.c */ |
178 | int gen_candidates(FILE *, u_int32_t, u_int32_t, BIGNUM *); | 185 | int gen_candidates(FILE *, u_int32_t, u_int32_t, BIGNUM *); |
179 | int prime_test(FILE *, FILE *, u_int32_t, u_int32_t, char *, unsigned long, | 186 | int prime_test(FILE *, FILE *, u_int32_t, u_int32_t, char *, unsigned long, |
180 | unsigned long); | 187 | unsigned long); |
188 | #endif | ||
181 | 189 | ||
182 | static void | 190 | static void |
183 | type_bits_valid(int type, const char *name, u_int32_t *bitsp) | 191 | type_bits_valid(int type, const char *name, u_int32_t *bitsp) |
184 | { | 192 | { |
185 | #ifdef WITH_OPENSSL | 193 | #ifdef WITH_OPENSSL |
186 | u_int maxbits; | 194 | u_int maxbits, nid; |
187 | int nid; | ||
188 | #endif | 195 | #endif |
189 | 196 | ||
190 | if (type == KEY_UNSPEC) { | 197 | if (type == KEY_UNSPEC) |
191 | fprintf(stderr, "unknown key type %s\n", key_type_name); | 198 | fatal("unknown key type %s", key_type_name); |
192 | exit(1); | ||
193 | } | ||
194 | if (*bitsp == 0) { | 199 | if (*bitsp == 0) { |
195 | #ifdef WITH_OPENSSL | 200 | #ifdef WITH_OPENSSL |
196 | if (type == KEY_DSA) | 201 | if (type == KEY_DSA) |
@@ -208,10 +213,8 @@ type_bits_valid(int type, const char *name, u_int32_t *bitsp) | |||
208 | #ifdef WITH_OPENSSL | 213 | #ifdef WITH_OPENSSL |
209 | maxbits = (type == KEY_DSA) ? | 214 | maxbits = (type == KEY_DSA) ? |
210 | OPENSSL_DSA_MAX_MODULUS_BITS : OPENSSL_RSA_MAX_MODULUS_BITS; | 215 | OPENSSL_DSA_MAX_MODULUS_BITS : OPENSSL_RSA_MAX_MODULUS_BITS; |
211 | if (*bitsp > maxbits) { | 216 | if (*bitsp > maxbits) |
212 | fprintf(stderr, "key bits exceeds maximum %d\n", maxbits); | 217 | fatal("key bits exceeds maximum %d", maxbits); |
213 | exit(1); | ||
214 | } | ||
215 | if (type == KEY_DSA && *bitsp != 1024) | 218 | if (type == KEY_DSA && *bitsp != 1024) |
216 | fatal("DSA keys must be 1024 bits"); | 219 | fatal("DSA keys must be 1024 bits"); |
217 | else if (type != KEY_ECDSA && type != KEY_ED25519 && *bitsp < 768) | 220 | else if (type != KEY_ECDSA && type != KEY_ED25519 && *bitsp < 768) |
@@ -256,13 +259,13 @@ ask_filename(struct passwd *pw, const char *prompt) | |||
256 | name = _PATH_SSH_CLIENT_ID_ED25519; | 259 | name = _PATH_SSH_CLIENT_ID_ED25519; |
257 | break; | 260 | break; |
258 | default: | 261 | default: |
259 | fprintf(stderr, "bad key type\n"); | 262 | fatal("bad key type"); |
260 | exit(1); | ||
261 | break; | ||
262 | } | 263 | } |
263 | } | 264 | } |
264 | snprintf(identity_file, sizeof(identity_file), "%s/%s", pw->pw_dir, name); | 265 | snprintf(identity_file, sizeof(identity_file), |
265 | fprintf(stderr, "%s (%s): ", prompt, identity_file); | 266 | "%s/%s", pw->pw_dir, name); |
267 | printf("%s (%s): ", prompt, identity_file); | ||
268 | fflush(stdout); | ||
266 | if (fgets(buf, sizeof(buf), stdin) == NULL) | 269 | if (fgets(buf, sizeof(buf), stdin) == NULL) |
267 | exit(1); | 270 | exit(1); |
268 | buf[strcspn(buf, "\n")] = '\0'; | 271 | buf[strcspn(buf, "\n")] = '\0'; |
@@ -308,14 +311,10 @@ do_convert_to_ssh2(struct passwd *pw, struct sshkey *k) | |||
308 | char comment[61]; | 311 | char comment[61]; |
309 | int r; | 312 | int r; |
310 | 313 | ||
311 | if (k->type == KEY_RSA1) { | 314 | if (k->type == KEY_RSA1) |
312 | fprintf(stderr, "version 1 keys are not supported\n"); | 315 | fatal("version 1 keys are not supported"); |
313 | exit(1); | 316 | if ((r = sshkey_to_blob(k, &blob, &len)) != 0) |
314 | } | 317 | fatal("key_to_blob failed: %s", ssh_err(r)); |
315 | if ((r = sshkey_to_blob(k, &blob, &len)) != 0) { | ||
316 | fprintf(stderr, "key_to_blob failed: %s\n", ssh_err(r)); | ||
317 | exit(1); | ||
318 | } | ||
319 | /* Comment + surrounds must fit into 72 chars (RFC 4716 sec 3.3) */ | 318 | /* Comment + surrounds must fit into 72 chars (RFC 4716 sec 3.3) */ |
320 | snprintf(comment, sizeof(comment), | 319 | snprintf(comment, sizeof(comment), |
321 | "%u-bit %s, converted by %s@%s from OpenSSH", | 320 | "%u-bit %s, converted by %s@%s from OpenSSH", |
@@ -544,17 +543,13 @@ get_line(FILE *fp, char *line, size_t len) | |||
544 | 543 | ||
545 | line[0] = '\0'; | 544 | line[0] = '\0'; |
546 | while ((c = fgetc(fp)) != EOF) { | 545 | while ((c = fgetc(fp)) != EOF) { |
547 | if (pos >= len - 1) { | 546 | if (pos >= len - 1) |
548 | fprintf(stderr, "input line too long.\n"); | 547 | fatal("input line too long."); |
549 | exit(1); | ||
550 | } | ||
551 | switch (c) { | 548 | switch (c) { |
552 | case '\r': | 549 | case '\r': |
553 | c = fgetc(fp); | 550 | c = fgetc(fp); |
554 | if (c != EOF && c != '\n' && ungetc(c, fp) == EOF) { | 551 | if (c != EOF && c != '\n' && ungetc(c, fp) == EOF) |
555 | fprintf(stderr, "unget: %s\n", strerror(errno)); | 552 | fatal("unget: %s", strerror(errno)); |
556 | exit(1); | ||
557 | } | ||
558 | return pos; | 553 | return pos; |
559 | case '\n': | 554 | case '\n': |
560 | return pos; | 555 | return pos; |
@@ -606,16 +601,12 @@ do_convert_from_ssh2(struct passwd *pw, struct sshkey **k, int *private) | |||
606 | (encoded[len-3] == '=')) | 601 | (encoded[len-3] == '=')) |
607 | encoded[len-3] = '\0'; | 602 | encoded[len-3] = '\0'; |
608 | blen = uudecode(encoded, blob, sizeof(blob)); | 603 | blen = uudecode(encoded, blob, sizeof(blob)); |
609 | if (blen < 0) { | 604 | if (blen < 0) |
610 | fprintf(stderr, "uudecode failed.\n"); | 605 | fatal("uudecode failed."); |
611 | exit(1); | ||
612 | } | ||
613 | if (*private) | 606 | if (*private) |
614 | *k = do_convert_private_ssh2_from_blob(blob, blen); | 607 | *k = do_convert_private_ssh2_from_blob(blob, blen); |
615 | else if ((r = sshkey_from_blob(blob, blen, k)) != 0) { | 608 | else if ((r = sshkey_from_blob(blob, blen, k)) != 0) |
616 | fprintf(stderr, "decode blob failed: %s\n", ssh_err(r)); | 609 | fatal("decode blob failed: %s", ssh_err(r)); |
617 | exit(1); | ||
618 | } | ||
619 | fclose(fp); | 610 | fclose(fp); |
620 | } | 611 | } |
621 | 612 | ||
@@ -749,10 +740,8 @@ do_convert_from(struct passwd *pw) | |||
749 | } | 740 | } |
750 | } | 741 | } |
751 | 742 | ||
752 | if (!ok) { | 743 | if (!ok) |
753 | fprintf(stderr, "key write failed\n"); | 744 | fatal("key write failed"); |
754 | exit(1); | ||
755 | } | ||
756 | sshkey_free(k); | 745 | sshkey_free(k); |
757 | exit(0); | 746 | exit(0); |
758 | } | 747 | } |
@@ -767,13 +756,11 @@ do_print_public(struct passwd *pw) | |||
767 | 756 | ||
768 | if (!have_identity) | 757 | if (!have_identity) |
769 | ask_filename(pw, "Enter file in which the key is"); | 758 | ask_filename(pw, "Enter file in which the key is"); |
770 | if (stat(identity_file, &st) < 0) { | 759 | if (stat(identity_file, &st) < 0) |
771 | perror(identity_file); | 760 | fatal("%s: %s", identity_file, strerror(errno)); |
772 | exit(1); | ||
773 | } | ||
774 | prv = load_identity(identity_file); | 761 | prv = load_identity(identity_file); |
775 | if ((r = sshkey_write(prv, stdout)) != 0) | 762 | if ((r = sshkey_write(prv, stdout)) != 0) |
776 | fprintf(stderr, "key_write failed: %s", ssh_err(r)); | 763 | error("key_write failed: %s", ssh_err(r)); |
777 | sshkey_free(prv); | 764 | sshkey_free(prv); |
778 | fprintf(stdout, "\n"); | 765 | fprintf(stdout, "\n"); |
779 | exit(0); | 766 | exit(0); |
@@ -838,10 +825,8 @@ do_fingerprint(struct passwd *pw) | |||
838 | rep = print_bubblebabble ? SSH_FP_BUBBLEBABBLE : SSH_FP_DEFAULT; | 825 | rep = print_bubblebabble ? SSH_FP_BUBBLEBABBLE : SSH_FP_DEFAULT; |
839 | if (!have_identity) | 826 | if (!have_identity) |
840 | ask_filename(pw, "Enter file in which the key is"); | 827 | ask_filename(pw, "Enter file in which the key is"); |
841 | if (stat(identity_file, &st) < 0) { | 828 | if (stat(identity_file, &st) < 0) |
842 | perror(identity_file); | 829 | fatal("%s: %s", identity_file, strerror(errno)); |
843 | exit(1); | ||
844 | } | ||
845 | if ((r = sshkey_load_public(identity_file, &public, &comment)) != 0) | 830 | if ((r = sshkey_load_public(identity_file, &public, &comment)) != 0) |
846 | debug2("Error loading public key \"%s\": %s", | 831 | debug2("Error loading public key \"%s\": %s", |
847 | identity_file, ssh_err(r)); | 832 | identity_file, ssh_err(r)); |
@@ -933,10 +918,8 @@ do_fingerprint(struct passwd *pw) | |||
933 | } | 918 | } |
934 | fclose(f); | 919 | fclose(f); |
935 | 920 | ||
936 | if (invalid) { | 921 | if (invalid) |
937 | printf("%s is not a public key file.\n", identity_file); | 922 | fatal("%s is not a public key file.", identity_file); |
938 | exit(1); | ||
939 | } | ||
940 | exit(0); | 923 | exit(0); |
941 | } | 924 | } |
942 | 925 | ||
@@ -948,12 +931,16 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
948 | char *key_type_display; | 931 | char *key_type_display; |
949 | char *path; | 932 | char *path; |
950 | } key_types[] = { | 933 | } key_types[] = { |
934 | #ifdef WITH_OPENSSL | ||
935 | #ifdef WITH_SSH1 | ||
951 | { "rsa1", "RSA1", _PATH_HOST_KEY_FILE }, | 936 | { "rsa1", "RSA1", _PATH_HOST_KEY_FILE }, |
937 | #endif /* WITH_SSH1 */ | ||
952 | { "rsa", "RSA" ,_PATH_HOST_RSA_KEY_FILE }, | 938 | { "rsa", "RSA" ,_PATH_HOST_RSA_KEY_FILE }, |
953 | { "dsa", "DSA", _PATH_HOST_DSA_KEY_FILE }, | 939 | { "dsa", "DSA", _PATH_HOST_DSA_KEY_FILE }, |
954 | #ifdef OPENSSL_HAS_ECC | 940 | #ifdef OPENSSL_HAS_ECC |
955 | { "ecdsa", "ECDSA",_PATH_HOST_ECDSA_KEY_FILE }, | 941 | { "ecdsa", "ECDSA",_PATH_HOST_ECDSA_KEY_FILE }, |
956 | #endif | 942 | #endif /* OPENSSL_HAS_ECC */ |
943 | #endif /* WITH_OPENSSL */ | ||
957 | { "ed25519", "ED25519",_PATH_HOST_ED25519_KEY_FILE }, | 944 | { "ed25519", "ED25519",_PATH_HOST_ED25519_KEY_FILE }, |
958 | { NULL, NULL, NULL } | 945 | { NULL, NULL, NULL } |
959 | }; | 946 | }; |
@@ -969,7 +956,7 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
969 | if (stat(key_types[i].path, &st) == 0) | 956 | if (stat(key_types[i].path, &st) == 0) |
970 | continue; | 957 | continue; |
971 | if (errno != ENOENT) { | 958 | if (errno != ENOENT) { |
972 | printf("Could not stat %s: %s", key_types[i].path, | 959 | error("Could not stat %s: %s", key_types[i].path, |
973 | strerror(errno)); | 960 | strerror(errno)); |
974 | first = 0; | 961 | first = 0; |
975 | continue; | 962 | continue; |
@@ -986,8 +973,7 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
986 | bits = 0; | 973 | bits = 0; |
987 | type_bits_valid(type, NULL, &bits); | 974 | type_bits_valid(type, NULL, &bits); |
988 | if ((r = sshkey_generate(type, bits, &private)) != 0) { | 975 | if ((r = sshkey_generate(type, bits, &private)) != 0) { |
989 | fprintf(stderr, "key_generate failed: %s\n", | 976 | error("key_generate failed: %s", ssh_err(r)); |
990 | ssh_err(r)); | ||
991 | first = 0; | 977 | first = 0; |
992 | continue; | 978 | continue; |
993 | } | 979 | } |
@@ -997,8 +983,8 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
997 | hostname); | 983 | hostname); |
998 | if ((r = sshkey_save_private(private, identity_file, "", | 984 | if ((r = sshkey_save_private(private, identity_file, "", |
999 | comment, use_new_format, new_format_cipher, rounds)) != 0) { | 985 | comment, use_new_format, new_format_cipher, rounds)) != 0) { |
1000 | printf("Saving key \"%s\" failed: %s\n", identity_file, | 986 | error("Saving key \"%s\" failed: %s", |
1001 | ssh_err(r)); | 987 | identity_file, ssh_err(r)); |
1002 | sshkey_free(private); | 988 | sshkey_free(private); |
1003 | sshkey_free(public); | 989 | sshkey_free(public); |
1004 | first = 0; | 990 | first = 0; |
@@ -1008,7 +994,7 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
1008 | strlcat(identity_file, ".pub", sizeof(identity_file)); | 994 | strlcat(identity_file, ".pub", sizeof(identity_file)); |
1009 | fd = open(identity_file, O_WRONLY | O_CREAT | O_TRUNC, 0644); | 995 | fd = open(identity_file, O_WRONLY | O_CREAT | O_TRUNC, 0644); |
1010 | if (fd == -1) { | 996 | if (fd == -1) { |
1011 | printf("Could not save your public key in %s\n", | 997 | error("Could not save your public key in %s", |
1012 | identity_file); | 998 | identity_file); |
1013 | sshkey_free(public); | 999 | sshkey_free(public); |
1014 | first = 0; | 1000 | first = 0; |
@@ -1016,14 +1002,14 @@ do_gen_all_hostkeys(struct passwd *pw) | |||
1016 | } | 1002 | } |
1017 | f = fdopen(fd, "w"); | 1003 | f = fdopen(fd, "w"); |
1018 | if (f == NULL) { | 1004 | if (f == NULL) { |
1019 | printf("fdopen %s failed\n", identity_file); | 1005 | error("fdopen %s failed", identity_file); |
1020 | close(fd); | 1006 | close(fd); |
1021 | sshkey_free(public); | 1007 | sshkey_free(public); |
1022 | first = 0; | 1008 | first = 0; |
1023 | continue; | 1009 | continue; |
1024 | } | 1010 | } |
1025 | if ((r = sshkey_write(public, f)) != 0) { | 1011 | if ((r = sshkey_write(public, f)) != 0) { |
1026 | fprintf(stderr, "write key failed: %s\n", ssh_err(r)); | 1012 | error("write key failed: %s", ssh_err(r)); |
1027 | fclose(f); | 1013 | fclose(f); |
1028 | sshkey_free(public); | 1014 | sshkey_free(public); |
1029 | first = 0; | 1015 | first = 0; |
@@ -1064,8 +1050,8 @@ known_hosts_hash(struct hostkey_foreach_line *l, void *_ctx) | |||
1064 | has_wild || l->marker != MRK_NONE) { | 1050 | has_wild || l->marker != MRK_NONE) { |
1065 | fprintf(ctx->out, "%s\n", l->line); | 1051 | fprintf(ctx->out, "%s\n", l->line); |
1066 | if (has_wild && !find_host) { | 1052 | if (has_wild && !find_host) { |
1067 | fprintf(stderr, "%s:%ld: ignoring host name " | 1053 | logit("%s:%ld: ignoring host name " |
1068 | "with wildcard: %.64s\n", l->path, | 1054 | "with wildcard: %.64s", l->path, |
1069 | l->linenum, l->hosts); | 1055 | l->linenum, l->hosts); |
1070 | } | 1056 | } |
1071 | return 0; | 1057 | return 0; |
@@ -1086,7 +1072,7 @@ known_hosts_hash(struct hostkey_foreach_line *l, void *_ctx) | |||
1086 | case HKF_STATUS_INVALID: | 1072 | case HKF_STATUS_INVALID: |
1087 | /* Retain invalid lines, but mark file as invalid. */ | 1073 | /* Retain invalid lines, but mark file as invalid. */ |
1088 | ctx->invalid = 1; | 1074 | ctx->invalid = 1; |
1089 | fprintf(stderr, "%s:%ld: invalid line\n", l->path, l->linenum); | 1075 | logit("%s:%ld: invalid line", l->path, l->linenum); |
1090 | /* FALLTHROUGH */ | 1076 | /* FALLTHROUGH */ |
1091 | default: | 1077 | default: |
1092 | fprintf(ctx->out, "%s\n", l->line); | 1078 | fprintf(ctx->out, "%s\n", l->line); |
@@ -1100,6 +1086,12 @@ static int | |||
1100 | known_hosts_find_delete(struct hostkey_foreach_line *l, void *_ctx) | 1086 | known_hosts_find_delete(struct hostkey_foreach_line *l, void *_ctx) |
1101 | { | 1087 | { |
1102 | struct known_hosts_ctx *ctx = (struct known_hosts_ctx *)_ctx; | 1088 | struct known_hosts_ctx *ctx = (struct known_hosts_ctx *)_ctx; |
1089 | enum sshkey_fp_rep rep; | ||
1090 | int fptype; | ||
1091 | char *fp; | ||
1092 | |||
1093 | fptype = print_bubblebabble ? SSH_DIGEST_SHA1 : fingerprint_hash; | ||
1094 | rep = print_bubblebabble ? SSH_FP_BUBBLEBABBLE : SSH_FP_DEFAULT; | ||
1103 | 1095 | ||
1104 | if (l->status == HKF_STATUS_MATCHED) { | 1096 | if (l->status == HKF_STATUS_MATCHED) { |
1105 | if (delete_host) { | 1097 | if (delete_host) { |
@@ -1128,7 +1120,12 @@ known_hosts_find_delete(struct hostkey_foreach_line *l, void *_ctx) | |||
1128 | } | 1120 | } |
1129 | if (hash_hosts) | 1121 | if (hash_hosts) |
1130 | known_hosts_hash(l, ctx); | 1122 | known_hosts_hash(l, ctx); |
1131 | else | 1123 | else if (print_fingerprint) { |
1124 | fp = sshkey_fingerprint(l->key, fptype, rep); | ||
1125 | printf("%s %s %s %s\n", ctx->host, | ||
1126 | sshkey_type(l->key), fp, l->comment); | ||
1127 | free(fp); | ||
1128 | } else | ||
1132 | fprintf(ctx->out, "%s\n", l->line); | 1129 | fprintf(ctx->out, "%s\n", l->line); |
1133 | return 0; | 1130 | return 0; |
1134 | } | 1131 | } |
@@ -1136,8 +1133,7 @@ known_hosts_find_delete(struct hostkey_foreach_line *l, void *_ctx) | |||
1136 | /* Retain non-matching hosts when deleting */ | 1133 | /* Retain non-matching hosts when deleting */ |
1137 | if (l->status == HKF_STATUS_INVALID) { | 1134 | if (l->status == HKF_STATUS_INVALID) { |
1138 | ctx->invalid = 1; | 1135 | ctx->invalid = 1; |
1139 | fprintf(stderr, "%s:%ld: invalid line\n", | 1136 | logit("%s:%ld: invalid line", l->path, l->linenum); |
1140 | l->path, l->linenum); | ||
1141 | } | 1137 | } |
1142 | fprintf(ctx->out, "%s\n", l->line); | 1138 | fprintf(ctx->out, "%s\n", l->line); |
1143 | } | 1139 | } |
@@ -1150,6 +1146,7 @@ do_known_hosts(struct passwd *pw, const char *name) | |||
1150 | char *cp, tmp[PATH_MAX], old[PATH_MAX]; | 1146 | char *cp, tmp[PATH_MAX], old[PATH_MAX]; |
1151 | int r, fd, oerrno, inplace = 0; | 1147 | int r, fd, oerrno, inplace = 0; |
1152 | struct known_hosts_ctx ctx; | 1148 | struct known_hosts_ctx ctx; |
1149 | u_int foreach_options; | ||
1153 | 1150 | ||
1154 | if (!have_identity) { | 1151 | if (!have_identity) { |
1155 | cp = tilde_expand_filename(_PATH_SSH_USER_HOSTFILE, pw->pw_uid); | 1152 | cp = tilde_expand_filename(_PATH_SSH_USER_HOSTFILE, pw->pw_uid); |
@@ -1186,26 +1183,26 @@ do_known_hosts(struct passwd *pw, const char *name) | |||
1186 | } | 1183 | } |
1187 | 1184 | ||
1188 | /* XXX support identity_file == "-" for stdin */ | 1185 | /* XXX support identity_file == "-" for stdin */ |
1186 | foreach_options = find_host ? HKF_WANT_MATCH : 0; | ||
1187 | foreach_options |= print_fingerprint ? HKF_WANT_PARSE_KEY : 0; | ||
1189 | if ((r = hostkeys_foreach(identity_file, | 1188 | if ((r = hostkeys_foreach(identity_file, |
1190 | hash_hosts ? known_hosts_hash : known_hosts_find_delete, &ctx, | 1189 | hash_hosts ? known_hosts_hash : known_hosts_find_delete, &ctx, |
1191 | name, NULL, find_host ? HKF_WANT_MATCH : 0)) != 0) | 1190 | name, NULL, foreach_options)) != 0) |
1192 | fatal("%s: hostkeys_foreach failed: %s", __func__, ssh_err(r)); | 1191 | fatal("%s: hostkeys_foreach failed: %s", __func__, ssh_err(r)); |
1193 | 1192 | ||
1194 | if (inplace) | 1193 | if (inplace) |
1195 | fclose(ctx.out); | 1194 | fclose(ctx.out); |
1196 | 1195 | ||
1197 | if (ctx.invalid) { | 1196 | if (ctx.invalid) { |
1198 | fprintf(stderr, "%s is not a valid known_hosts file.\n", | 1197 | error("%s is not a valid known_hosts file.", identity_file); |
1199 | identity_file); | ||
1200 | if (inplace) { | 1198 | if (inplace) { |
1201 | fprintf(stderr, "Not replacing existing known_hosts " | 1199 | error("Not replacing existing known_hosts " |
1202 | "file because of errors\n"); | 1200 | "file because of errors"); |
1203 | unlink(tmp); | 1201 | unlink(tmp); |
1204 | } | 1202 | } |
1205 | exit(1); | 1203 | exit(1); |
1206 | } else if (delete_host && !ctx.found_key) { | 1204 | } else if (delete_host && !ctx.found_key) { |
1207 | fprintf(stderr, "Host %s not found in %s\n", | 1205 | logit("Host %s not found in %s", name, identity_file); |
1208 | name, identity_file); | ||
1209 | unlink(tmp); | 1206 | unlink(tmp); |
1210 | } else if (inplace) { | 1207 | } else if (inplace) { |
1211 | /* Backup existing file */ | 1208 | /* Backup existing file */ |
@@ -1223,13 +1220,12 @@ do_known_hosts(struct passwd *pw, const char *name) | |||
1223 | exit(1); | 1220 | exit(1); |
1224 | } | 1221 | } |
1225 | 1222 | ||
1226 | fprintf(stderr, "%s updated.\n", identity_file); | 1223 | printf("%s updated.\n", identity_file); |
1227 | fprintf(stderr, "Original contents retained as %s\n", old); | 1224 | printf("Original contents retained as %s\n", old); |
1228 | if (ctx.has_unhashed) { | 1225 | if (ctx.has_unhashed) { |
1229 | fprintf(stderr, "WARNING: %s contains unhashed " | 1226 | logit("WARNING: %s contains unhashed entries", old); |
1230 | "entries\n", old); | 1227 | logit("Delete this file to ensure privacy " |
1231 | fprintf(stderr, "Delete this file to ensure privacy " | 1228 | "of hostnames"); |
1232 | "of hostnames\n"); | ||
1233 | } | 1229 | } |
1234 | } | 1230 | } |
1235 | 1231 | ||
@@ -1251,10 +1247,8 @@ do_change_passphrase(struct passwd *pw) | |||
1251 | 1247 | ||
1252 | if (!have_identity) | 1248 | if (!have_identity) |
1253 | ask_filename(pw, "Enter file in which the key is"); | 1249 | ask_filename(pw, "Enter file in which the key is"); |
1254 | if (stat(identity_file, &st) < 0) { | 1250 | if (stat(identity_file, &st) < 0) |
1255 | perror(identity_file); | 1251 | fatal("%s: %s", identity_file, strerror(errno)); |
1256 | exit(1); | ||
1257 | } | ||
1258 | /* Try to load the file with empty passphrase. */ | 1252 | /* Try to load the file with empty passphrase. */ |
1259 | r = sshkey_load_private(identity_file, "", &private, &comment); | 1253 | r = sshkey_load_private(identity_file, "", &private, &comment); |
1260 | if (r == SSH_ERR_KEY_WRONG_PASSPHRASE) { | 1254 | if (r == SSH_ERR_KEY_WRONG_PASSPHRASE) { |
@@ -1272,9 +1266,7 @@ do_change_passphrase(struct passwd *pw) | |||
1272 | goto badkey; | 1266 | goto badkey; |
1273 | } else if (r != 0) { | 1267 | } else if (r != 0) { |
1274 | badkey: | 1268 | badkey: |
1275 | fprintf(stderr, "Failed to load key \"%s\": %s\n", | 1269 | fatal("Failed to load key %s: %s", identity_file, ssh_err(r)); |
1276 | identity_file, ssh_err(r)); | ||
1277 | exit(1); | ||
1278 | } | 1270 | } |
1279 | if (comment) | 1271 | if (comment) |
1280 | printf("Key has comment '%s'\n", comment); | 1272 | printf("Key has comment '%s'\n", comment); |
@@ -1307,7 +1299,7 @@ do_change_passphrase(struct passwd *pw) | |||
1307 | /* Save the file using the new passphrase. */ | 1299 | /* Save the file using the new passphrase. */ |
1308 | if ((r = sshkey_save_private(private, identity_file, passphrase1, | 1300 | if ((r = sshkey_save_private(private, identity_file, passphrase1, |
1309 | comment, use_new_format, new_format_cipher, rounds)) != 0) { | 1301 | comment, use_new_format, new_format_cipher, rounds)) != 0) { |
1310 | printf("Saving key \"%s\" failed: %s.\n", | 1302 | error("Saving key \"%s\" failed: %s.", |
1311 | identity_file, ssh_err(r)); | 1303 | identity_file, ssh_err(r)); |
1312 | explicit_bzero(passphrase1, strlen(passphrase1)); | 1304 | explicit_bzero(passphrase1, strlen(passphrase1)); |
1313 | free(passphrase1); | 1305 | free(passphrase1); |
@@ -1341,14 +1333,11 @@ do_print_resource_record(struct passwd *pw, char *fname, char *hname) | |||
1341 | if (stat(fname, &st) < 0) { | 1333 | if (stat(fname, &st) < 0) { |
1342 | if (errno == ENOENT) | 1334 | if (errno == ENOENT) |
1343 | return 0; | 1335 | return 0; |
1344 | perror(fname); | 1336 | fatal("%s: %s", fname, strerror(errno)); |
1345 | exit(1); | ||
1346 | } | 1337 | } |
1347 | if ((r = sshkey_load_public(fname, &public, &comment)) != 0) { | 1338 | if ((r = sshkey_load_public(fname, &public, &comment)) != 0) |
1348 | printf("Failed to read v2 public key from \"%s\": %s.\n", | 1339 | fatal("Failed to read v2 public key from \"%s\": %s.", |
1349 | fname, ssh_err(r)); | 1340 | fname, ssh_err(r)); |
1350 | exit(1); | ||
1351 | } | ||
1352 | export_dns_rr(hname, public, stdout, print_generic); | 1341 | export_dns_rr(hname, public, stdout, print_generic); |
1353 | sshkey_free(public); | 1342 | sshkey_free(public); |
1354 | free(comment); | 1343 | free(comment); |
@@ -1370,18 +1359,15 @@ do_change_comment(struct passwd *pw) | |||
1370 | 1359 | ||
1371 | if (!have_identity) | 1360 | if (!have_identity) |
1372 | ask_filename(pw, "Enter file in which the key is"); | 1361 | ask_filename(pw, "Enter file in which the key is"); |
1373 | if (stat(identity_file, &st) < 0) { | 1362 | if (stat(identity_file, &st) < 0) |
1374 | perror(identity_file); | 1363 | fatal("%s: %s", identity_file, strerror(errno)); |
1375 | exit(1); | ||
1376 | } | ||
1377 | if ((r = sshkey_load_private(identity_file, "", | 1364 | if ((r = sshkey_load_private(identity_file, "", |
1378 | &private, &comment)) == 0) | 1365 | &private, &comment)) == 0) |
1379 | passphrase = xstrdup(""); | 1366 | passphrase = xstrdup(""); |
1380 | else if (r != SSH_ERR_KEY_WRONG_PASSPHRASE) { | 1367 | else if (r != SSH_ERR_KEY_WRONG_PASSPHRASE) |
1381 | printf("Cannot load private key \"%s\": %s.\n", | 1368 | fatal("Cannot load private key \"%s\": %s.", |
1382 | identity_file, ssh_err(r)); | 1369 | identity_file, ssh_err(r)); |
1383 | exit(1); | 1370 | else { |
1384 | } else { | ||
1385 | if (identity_passphrase) | 1371 | if (identity_passphrase) |
1386 | passphrase = xstrdup(identity_passphrase); | 1372 | passphrase = xstrdup(identity_passphrase); |
1387 | else if (identity_new_passphrase) | 1373 | else if (identity_new_passphrase) |
@@ -1394,13 +1380,14 @@ do_change_comment(struct passwd *pw) | |||
1394 | &private, &comment)) != 0) { | 1380 | &private, &comment)) != 0) { |
1395 | explicit_bzero(passphrase, strlen(passphrase)); | 1381 | explicit_bzero(passphrase, strlen(passphrase)); |
1396 | free(passphrase); | 1382 | free(passphrase); |
1397 | printf("Cannot load private key \"%s\": %s.\n", | 1383 | fatal("Cannot load private key \"%s\": %s.", |
1398 | identity_file, ssh_err(r)); | 1384 | identity_file, ssh_err(r)); |
1399 | exit(1); | ||
1400 | } | 1385 | } |
1401 | } | 1386 | } |
1387 | /* XXX what about new-format keys? */ | ||
1402 | if (private->type != KEY_RSA1) { | 1388 | if (private->type != KEY_RSA1) { |
1403 | fprintf(stderr, "Comments are only supported for RSA1 keys.\n"); | 1389 | error("Comments are only supported for RSA1 keys."); |
1390 | explicit_bzero(passphrase, strlen(passphrase)); | ||
1404 | sshkey_free(private); | 1391 | sshkey_free(private); |
1405 | exit(1); | 1392 | exit(1); |
1406 | } | 1393 | } |
@@ -1422,7 +1409,7 @@ do_change_comment(struct passwd *pw) | |||
1422 | /* Save the file using the new passphrase. */ | 1409 | /* Save the file using the new passphrase. */ |
1423 | if ((r = sshkey_save_private(private, identity_file, passphrase, | 1410 | if ((r = sshkey_save_private(private, identity_file, passphrase, |
1424 | new_comment, use_new_format, new_format_cipher, rounds)) != 0) { | 1411 | new_comment, use_new_format, new_format_cipher, rounds)) != 0) { |
1425 | printf("Saving key \"%s\" failed: %s\n", | 1412 | error("Saving key \"%s\" failed: %s", |
1426 | identity_file, ssh_err(r)); | 1413 | identity_file, ssh_err(r)); |
1427 | explicit_bzero(passphrase, strlen(passphrase)); | 1414 | explicit_bzero(passphrase, strlen(passphrase)); |
1428 | free(passphrase); | 1415 | free(passphrase); |
@@ -1438,17 +1425,13 @@ do_change_comment(struct passwd *pw) | |||
1438 | 1425 | ||
1439 | strlcat(identity_file, ".pub", sizeof(identity_file)); | 1426 | strlcat(identity_file, ".pub", sizeof(identity_file)); |
1440 | fd = open(identity_file, O_WRONLY | O_CREAT | O_TRUNC, 0644); | 1427 | fd = open(identity_file, O_WRONLY | O_CREAT | O_TRUNC, 0644); |
1441 | if (fd == -1) { | 1428 | if (fd == -1) |
1442 | printf("Could not save your public key in %s\n", identity_file); | 1429 | fatal("Could not save your public key in %s", identity_file); |
1443 | exit(1); | ||
1444 | } | ||
1445 | f = fdopen(fd, "w"); | 1430 | f = fdopen(fd, "w"); |
1446 | if (f == NULL) { | 1431 | if (f == NULL) |
1447 | printf("fdopen %s failed\n", identity_file); | 1432 | fatal("fdopen %s failed: %s", identity_file, strerror(errno)); |
1448 | exit(1); | ||
1449 | } | ||
1450 | if ((r = sshkey_write(public, f)) != 0) | 1433 | if ((r = sshkey_write(public, f)) != 0) |
1451 | fprintf(stderr, "write key failed: %s\n", ssh_err(r)); | 1434 | fatal("write key failed: %s", ssh_err(r)); |
1452 | sshkey_free(public); | 1435 | sshkey_free(public); |
1453 | fprintf(f, " %s\n", new_comment); | 1436 | fprintf(f, " %s\n", new_comment); |
1454 | fclose(f); | 1437 | fclose(f); |
@@ -1608,8 +1591,7 @@ do_ca_sign(struct passwd *pw, int argc, char **argv) | |||
1608 | break; | 1591 | break; |
1609 | /* FALLTHROUGH */ | 1592 | /* FALLTHROUGH */ |
1610 | default: | 1593 | default: |
1611 | fprintf(stderr, "unknown key type %s\n", key_type_name); | 1594 | fatal("unknown key type %s", key_type_name); |
1612 | exit(1); | ||
1613 | } | 1595 | } |
1614 | } | 1596 | } |
1615 | 1597 | ||
@@ -1631,7 +1613,7 @@ do_ca_sign(struct passwd *pw, int argc, char **argv) | |||
1631 | otmp = tmp = xstrdup(cert_principals); | 1613 | otmp = tmp = xstrdup(cert_principals); |
1632 | plist = NULL; | 1614 | plist = NULL; |
1633 | for (; (cp = strsep(&tmp, ",")) != NULL; n++) { | 1615 | for (; (cp = strsep(&tmp, ",")) != NULL; n++) { |
1634 | plist = xrealloc(plist, n + 1, sizeof(*plist)); | 1616 | plist = xreallocarray(plist, n + 1, sizeof(*plist)); |
1635 | if (*(plist[n] = xstrdup(cp)) == '\0') | 1617 | if (*(plist[n] = xstrdup(cp)) == '\0') |
1636 | fatal("Empty principal name"); | 1618 | fatal("Empty principal name"); |
1637 | } | 1619 | } |
@@ -2216,9 +2198,11 @@ usage(void) | |||
2216 | " ssh-keygen -H [-f known_hosts_file]\n" | 2198 | " ssh-keygen -H [-f known_hosts_file]\n" |
2217 | " ssh-keygen -R hostname [-f known_hosts_file]\n" | 2199 | " ssh-keygen -R hostname [-f known_hosts_file]\n" |
2218 | " ssh-keygen -r hostname [-f input_keyfile] [-g]\n" | 2200 | " ssh-keygen -r hostname [-f input_keyfile] [-g]\n" |
2201 | #ifdef WITH_OPENSSL | ||
2219 | " ssh-keygen -G output_file [-v] [-b bits] [-M memory] [-S start_point]\n" | 2202 | " ssh-keygen -G output_file [-v] [-b bits] [-M memory] [-S start_point]\n" |
2220 | " ssh-keygen -T output_file -f input_file [-v] [-a rounds] [-J num_lines]\n" | 2203 | " ssh-keygen -T output_file -f input_file [-v] [-a rounds] [-J num_lines]\n" |
2221 | " [-j start_line] [-K checkpt] [-W generator]\n" | 2204 | " [-j start_line] [-K checkpt] [-W generator]\n" |
2205 | #endif | ||
2222 | " ssh-keygen -s ca_key -I certificate_identity [-h] [-n principals]\n" | 2206 | " ssh-keygen -s ca_key -I certificate_identity [-h] [-n principals]\n" |
2223 | " [-O option] [-V validity_interval] [-z serial_number] file ...\n" | 2207 | " [-O option] [-V validity_interval] [-z serial_number] file ...\n" |
2224 | " ssh-keygen -L [-f input_keyfile]\n" | 2208 | " ssh-keygen -L [-f input_keyfile]\n" |
@@ -2236,19 +2220,22 @@ int | |||
2236 | main(int argc, char **argv) | 2220 | main(int argc, char **argv) |
2237 | { | 2221 | { |
2238 | char dotsshdir[PATH_MAX], comment[1024], *passphrase1, *passphrase2; | 2222 | char dotsshdir[PATH_MAX], comment[1024], *passphrase1, *passphrase2; |
2239 | char *checkpoint = NULL; | 2223 | char *rr_hostname = NULL, *ep, *fp, *ra; |
2240 | char out_file[PATH_MAX], *rr_hostname = NULL, *ep, *fp, *ra; | ||
2241 | struct sshkey *private, *public; | 2224 | struct sshkey *private, *public; |
2242 | struct passwd *pw; | 2225 | struct passwd *pw; |
2243 | struct stat st; | 2226 | struct stat st; |
2244 | int r, opt, type, fd; | 2227 | int r, opt, type, fd; |
2228 | int gen_all_hostkeys = 0, gen_krl = 0, update_krl = 0, check_krl = 0; | ||
2229 | FILE *f; | ||
2230 | const char *errstr; | ||
2231 | #ifdef WITH_OPENSSL | ||
2232 | /* Moduli generation/screening */ | ||
2233 | char out_file[PATH_MAX], *checkpoint = NULL; | ||
2245 | u_int32_t memory = 0, generator_wanted = 0; | 2234 | u_int32_t memory = 0, generator_wanted = 0; |
2246 | int do_gen_candidates = 0, do_screen_candidates = 0; | 2235 | int do_gen_candidates = 0, do_screen_candidates = 0; |
2247 | int gen_all_hostkeys = 0, gen_krl = 0, update_krl = 0, check_krl = 0; | ||
2248 | unsigned long start_lineno = 0, lines_to_process = 0; | 2236 | unsigned long start_lineno = 0, lines_to_process = 0; |
2249 | BIGNUM *start = NULL; | 2237 | BIGNUM *start = NULL; |
2250 | FILE *f; | 2238 | #endif |
2251 | const char *errstr; | ||
2252 | 2239 | ||
2253 | extern int optind; | 2240 | extern int optind; |
2254 | extern char *optarg; | 2241 | extern char *optarg; |
@@ -2267,14 +2254,10 @@ main(int argc, char **argv) | |||
2267 | 2254 | ||
2268 | /* we need this for the home * directory. */ | 2255 | /* we need this for the home * directory. */ |
2269 | pw = getpwuid(getuid()); | 2256 | pw = getpwuid(getuid()); |
2270 | if (!pw) { | 2257 | if (!pw) |
2271 | printf("No user exists for uid %lu\n", (u_long)getuid()); | 2258 | fatal("No user exists for uid %lu", (u_long)getuid()); |
2272 | exit(1); | 2259 | if (gethostname(hostname, sizeof(hostname)) < 0) |
2273 | } | 2260 | fatal("gethostname: %s", strerror(errno)); |
2274 | if (gethostname(hostname, sizeof(hostname)) < 0) { | ||
2275 | perror("gethostname"); | ||
2276 | exit(1); | ||
2277 | } | ||
2278 | 2261 | ||
2279 | /* Remaining characters: UYdw */ | 2262 | /* Remaining characters: UYdw */ |
2280 | while ((opt = getopt(argc, argv, "ABHLQXceghiklopquvxy" | 2263 | while ((opt = getopt(argc, argv, "ABHLQXceghiklopquvxy" |
@@ -2305,12 +2288,6 @@ main(int argc, char **argv) | |||
2305 | case 'I': | 2288 | case 'I': |
2306 | cert_key_id = optarg; | 2289 | cert_key_id = optarg; |
2307 | break; | 2290 | break; |
2308 | case 'J': | ||
2309 | lines_to_process = strtoul(optarg, NULL, 10); | ||
2310 | break; | ||
2311 | case 'j': | ||
2312 | start_lineno = strtoul(optarg, NULL, 10); | ||
2313 | break; | ||
2314 | case 'R': | 2291 | case 'R': |
2315 | delete_host = 1; | 2292 | delete_host = 1; |
2316 | rr_hostname = optarg; | 2293 | rr_hostname = optarg; |
@@ -2352,8 +2329,8 @@ main(int argc, char **argv) | |||
2352 | change_comment = 1; | 2329 | change_comment = 1; |
2353 | break; | 2330 | break; |
2354 | case 'f': | 2331 | case 'f': |
2355 | if (strlcpy(identity_file, optarg, sizeof(identity_file)) >= | 2332 | if (strlcpy(identity_file, optarg, |
2356 | sizeof(identity_file)) | 2333 | sizeof(identity_file)) >= sizeof(identity_file)) |
2357 | fatal("Identity filename too long"); | 2334 | fatal("Identity filename too long"); |
2358 | have_identity = 1; | 2335 | have_identity = 1; |
2359 | break; | 2336 | break; |
@@ -2425,20 +2402,31 @@ main(int argc, char **argv) | |||
2425 | case 'r': | 2402 | case 'r': |
2426 | rr_hostname = optarg; | 2403 | rr_hostname = optarg; |
2427 | break; | 2404 | break; |
2428 | case 'W': | ||
2429 | generator_wanted = (u_int32_t)strtonum(optarg, 1, | ||
2430 | UINT_MAX, &errstr); | ||
2431 | if (errstr) | ||
2432 | fatal("Desired generator has bad value: %s (%s)", | ||
2433 | optarg, errstr); | ||
2434 | break; | ||
2435 | case 'a': | 2405 | case 'a': |
2436 | rounds = (int)strtonum(optarg, 1, INT_MAX, &errstr); | 2406 | rounds = (int)strtonum(optarg, 1, INT_MAX, &errstr); |
2437 | if (errstr) | 2407 | if (errstr) |
2438 | fatal("Invalid number: %s (%s)", | 2408 | fatal("Invalid number: %s (%s)", |
2439 | optarg, errstr); | 2409 | optarg, errstr); |
2440 | break; | 2410 | break; |
2411 | case 'V': | ||
2412 | parse_cert_times(optarg); | ||
2413 | break; | ||
2414 | case 'z': | ||
2415 | errno = 0; | ||
2416 | cert_serial = strtoull(optarg, &ep, 10); | ||
2417 | if (*optarg < '0' || *optarg > '9' || *ep != '\0' || | ||
2418 | (errno == ERANGE && cert_serial == ULLONG_MAX)) | ||
2419 | fatal("Invalid serial number \"%s\"", optarg); | ||
2420 | break; | ||
2441 | #ifdef WITH_OPENSSL | 2421 | #ifdef WITH_OPENSSL |
2422 | /* Moduli generation/screening */ | ||
2423 | case 'W': | ||
2424 | generator_wanted = (u_int32_t)strtonum(optarg, 1, | ||
2425 | UINT_MAX, &errstr); | ||
2426 | if (errstr) | ||
2427 | fatal("Desired generator has bad value: %s (%s)", | ||
2428 | optarg, errstr); | ||
2429 | break; | ||
2442 | case 'M': | 2430 | case 'M': |
2443 | memory = (u_int32_t)strtonum(optarg, 1, UINT_MAX, &errstr); | 2431 | memory = (u_int32_t)strtonum(optarg, 1, UINT_MAX, &errstr); |
2444 | if (errstr) | 2432 | if (errstr) |
@@ -2467,16 +2455,6 @@ main(int argc, char **argv) | |||
2467 | fatal("Invalid start point."); | 2455 | fatal("Invalid start point."); |
2468 | break; | 2456 | break; |
2469 | #endif /* WITH_OPENSSL */ | 2457 | #endif /* WITH_OPENSSL */ |
2470 | case 'V': | ||
2471 | parse_cert_times(optarg); | ||
2472 | break; | ||
2473 | case 'z': | ||
2474 | errno = 0; | ||
2475 | cert_serial = strtoull(optarg, &ep, 10); | ||
2476 | if (*optarg < '0' || *optarg > '9' || *ep != '\0' || | ||
2477 | (errno == ERANGE && cert_serial == ULLONG_MAX)) | ||
2478 | fatal("Invalid serial number \"%s\"", optarg); | ||
2479 | break; | ||
2480 | case '?': | 2458 | case '?': |
2481 | default: | 2459 | default: |
2482 | usage(); | 2460 | usage(); |
@@ -2491,19 +2469,19 @@ main(int argc, char **argv) | |||
2491 | 2469 | ||
2492 | if (ca_key_path != NULL) { | 2470 | if (ca_key_path != NULL) { |
2493 | if (argc < 1 && !gen_krl) { | 2471 | if (argc < 1 && !gen_krl) { |
2494 | printf("Too few arguments.\n"); | 2472 | error("Too few arguments."); |
2495 | usage(); | 2473 | usage(); |
2496 | } | 2474 | } |
2497 | } else if (argc > 0 && !gen_krl && !check_krl) { | 2475 | } else if (argc > 0 && !gen_krl && !check_krl) { |
2498 | printf("Too many arguments.\n"); | 2476 | error("Too many arguments."); |
2499 | usage(); | 2477 | usage(); |
2500 | } | 2478 | } |
2501 | if (change_passphrase && change_comment) { | 2479 | if (change_passphrase && change_comment) { |
2502 | printf("Can only have one of -p and -c.\n"); | 2480 | error("Can only have one of -p and -c."); |
2503 | usage(); | 2481 | usage(); |
2504 | } | 2482 | } |
2505 | if (print_fingerprint && (delete_host || hash_hosts)) { | 2483 | if (print_fingerprint && (delete_host || hash_hosts)) { |
2506 | printf("Cannot use -l with -H or -R.\n"); | 2484 | error("Cannot use -l with -H or -R."); |
2507 | usage(); | 2485 | usage(); |
2508 | } | 2486 | } |
2509 | if (gen_krl) { | 2487 | if (gen_krl) { |
@@ -2545,10 +2523,8 @@ main(int argc, char **argv) | |||
2545 | if (have_identity) { | 2523 | if (have_identity) { |
2546 | n = do_print_resource_record(pw, | 2524 | n = do_print_resource_record(pw, |
2547 | identity_file, rr_hostname); | 2525 | identity_file, rr_hostname); |
2548 | if (n == 0) { | 2526 | if (n == 0) |
2549 | perror(identity_file); | 2527 | fatal("%s: %s", identity_file, strerror(errno)); |
2550 | exit(1); | ||
2551 | } | ||
2552 | exit(0); | 2528 | exit(0); |
2553 | } else { | 2529 | } else { |
2554 | 2530 | ||
@@ -2566,6 +2542,7 @@ main(int argc, char **argv) | |||
2566 | } | 2542 | } |
2567 | } | 2543 | } |
2568 | 2544 | ||
2545 | #ifdef WITH_OPENSSL | ||
2569 | if (do_gen_candidates) { | 2546 | if (do_gen_candidates) { |
2570 | FILE *out = fopen(out_file, "w"); | 2547 | FILE *out = fopen(out_file, "w"); |
2571 | 2548 | ||
@@ -2605,6 +2582,7 @@ main(int argc, char **argv) | |||
2605 | fatal("modulus screening failed"); | 2582 | fatal("modulus screening failed"); |
2606 | return (0); | 2583 | return (0); |
2607 | } | 2584 | } |
2585 | #endif | ||
2608 | 2586 | ||
2609 | if (gen_all_hostkeys) { | 2587 | if (gen_all_hostkeys) { |
2610 | do_gen_all_hostkeys(pw); | 2588 | do_gen_all_hostkeys(pw); |
@@ -2612,7 +2590,7 @@ main(int argc, char **argv) | |||
2612 | } | 2590 | } |
2613 | 2591 | ||
2614 | if (key_type_name == NULL) | 2592 | if (key_type_name == NULL) |
2615 | key_type_name = "rsa"; | 2593 | key_type_name = DEFAULT_KEY_TYPE_NAME; |
2616 | 2594 | ||
2617 | type = sshkey_type_from_name(key_type_name); | 2595 | type = sshkey_type_from_name(key_type_name); |
2618 | type_bits_valid(type, key_type_name, &bits); | 2596 | type_bits_valid(type, key_type_name, &bits); |
@@ -2620,14 +2598,10 @@ main(int argc, char **argv) | |||
2620 | if (!quiet) | 2598 | if (!quiet) |
2621 | printf("Generating public/private %s key pair.\n", | 2599 | printf("Generating public/private %s key pair.\n", |
2622 | key_type_name); | 2600 | key_type_name); |
2623 | if ((r = sshkey_generate(type, bits, &private)) != 0) { | 2601 | if ((r = sshkey_generate(type, bits, &private)) != 0) |
2624 | fprintf(stderr, "key_generate failed\n"); | 2602 | fatal("key_generate failed"); |
2625 | exit(1); | 2603 | if ((r = sshkey_from_private(private, &public)) != 0) |
2626 | } | 2604 | fatal("key_from_private failed: %s\n", ssh_err(r)); |
2627 | if ((r = sshkey_from_private(private, &public)) != 0) { | ||
2628 | fprintf(stderr, "key_from_private failed: %s\n", ssh_err(r)); | ||
2629 | exit(1); | ||
2630 | } | ||
2631 | 2605 | ||
2632 | if (!have_identity) | 2606 | if (!have_identity) |
2633 | ask_filename(pw, "Enter file in which to save the key"); | 2607 | ask_filename(pw, "Enter file in which to save the key"); |
@@ -2697,7 +2671,7 @@ passphrase_again: | |||
2697 | /* Save the key with the given passphrase and comment. */ | 2671 | /* Save the key with the given passphrase and comment. */ |
2698 | if ((r = sshkey_save_private(private, identity_file, passphrase1, | 2672 | if ((r = sshkey_save_private(private, identity_file, passphrase1, |
2699 | comment, use_new_format, new_format_cipher, rounds)) != 0) { | 2673 | comment, use_new_format, new_format_cipher, rounds)) != 0) { |
2700 | printf("Saving key \"%s\" failed: %s\n", | 2674 | error("Saving key \"%s\" failed: %s", |
2701 | identity_file, ssh_err(r)); | 2675 | identity_file, ssh_err(r)); |
2702 | explicit_bzero(passphrase1, strlen(passphrase1)); | 2676 | explicit_bzero(passphrase1, strlen(passphrase1)); |
2703 | free(passphrase1); | 2677 | free(passphrase1); |
@@ -2714,18 +2688,13 @@ passphrase_again: | |||
2714 | printf("Your identification has been saved in %s.\n", identity_file); | 2688 | printf("Your identification has been saved in %s.\n", identity_file); |
2715 | 2689 | ||
2716 | strlcat(identity_file, ".pub", sizeof(identity_file)); | 2690 | strlcat(identity_file, ".pub", sizeof(identity_file)); |
2717 | fd = open(identity_file, O_WRONLY | O_CREAT | O_TRUNC, 0644); | 2691 | if ((fd = open(identity_file, O_WRONLY|O_CREAT|O_TRUNC, 0644)) == -1) |
2718 | if (fd == -1) { | 2692 | fatal("Unable to save public key to %s: %s", |
2719 | printf("Could not save your public key in %s\n", identity_file); | 2693 | identity_file, strerror(errno)); |
2720 | exit(1); | 2694 | if ((f = fdopen(fd, "w")) == NULL) |
2721 | } | 2695 | fatal("fdopen %s failed: %s", identity_file, strerror(errno)); |
2722 | f = fdopen(fd, "w"); | ||
2723 | if (f == NULL) { | ||
2724 | printf("fdopen %s failed\n", identity_file); | ||
2725 | exit(1); | ||
2726 | } | ||
2727 | if ((r = sshkey_write(public, f)) != 0) | 2696 | if ((r = sshkey_write(public, f)) != 0) |
2728 | fprintf(stderr, "write key failed: %s\n", ssh_err(r)); | 2697 | error("write key failed: %s", ssh_err(r)); |
2729 | fprintf(f, " %s\n", comment); | 2698 | fprintf(f, " %s\n", comment); |
2730 | fclose(f); | 2699 | fclose(f); |
2731 | 2700 | ||
diff --git a/ssh-keyscan.c b/ssh-keyscan.c index c5fb3b524..57d88429b 100644 --- a/ssh-keyscan.c +++ b/ssh-keyscan.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-keyscan.c,v 1.99 2015/01/30 10:44:49 djm Exp $ */ | 1 | /* $OpenBSD: ssh-keyscan.c,v 1.101 2015/04/10 00:08:55 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright 1995, 1996 by David Mazieres <dm@lcs.mit.edu>. | 3 | * Copyright 1995, 1996 by David Mazieres <dm@lcs.mit.edu>. |
4 | * | 4 | * |
@@ -94,7 +94,7 @@ typedef struct Connection { | |||
94 | int c_len; /* Total bytes which must be read. */ | 94 | int c_len; /* Total bytes which must be read. */ |
95 | int c_off; /* Length of data read so far. */ | 95 | int c_off; /* Length of data read so far. */ |
96 | int c_keytype; /* Only one of KT_RSA1, KT_DSA, or KT_RSA */ | 96 | int c_keytype; /* Only one of KT_RSA1, KT_DSA, or KT_RSA */ |
97 | int c_done; /* SSH2 done */ | 97 | sig_atomic_t c_done; /* SSH2 done */ |
98 | char *c_namebase; /* Address to free for c_name and c_namelist */ | 98 | char *c_namebase; /* Address to free for c_name and c_namelist */ |
99 | char *c_name; /* Hostname of connection for errors */ | 99 | char *c_name; /* Hostname of connection for errors */ |
100 | char *c_namelist; /* Pointer to other possible addresses */ | 100 | char *c_namelist; /* Pointer to other possible addresses */ |
@@ -299,15 +299,18 @@ static void | |||
299 | keyprint(con *c, struct sshkey *key) | 299 | keyprint(con *c, struct sshkey *key) |
300 | { | 300 | { |
301 | char *host = c->c_output_name ? c->c_output_name : c->c_name; | 301 | char *host = c->c_output_name ? c->c_output_name : c->c_name; |
302 | char *hostport = NULL; | ||
302 | 303 | ||
303 | if (!key) | 304 | if (!key) |
304 | return; | 305 | return; |
305 | if (hash_hosts && (host = host_hash(host, NULL, 0)) == NULL) | 306 | if (hash_hosts && (host = host_hash(host, NULL, 0)) == NULL) |
306 | fatal("host_hash failed"); | 307 | fatal("host_hash failed"); |
307 | 308 | ||
308 | fprintf(stdout, "%s ", host); | 309 | hostport = put_host_port(host, ssh_port); |
310 | fprintf(stdout, "%s ", hostport); | ||
309 | sshkey_write(key, stdout); | 311 | sshkey_write(key, stdout); |
310 | fputs("\n", stdout); | 312 | fputs("\n", stdout); |
313 | free(hostport); | ||
311 | } | 314 | } |
312 | 315 | ||
313 | static int | 316 | static int |
@@ -488,7 +491,7 @@ congreet(int s) | |||
488 | confree(s); | 491 | confree(s); |
489 | return; | 492 | return; |
490 | } | 493 | } |
491 | fprintf(stderr, "# %s %s\n", c->c_name, chop(buf)); | 494 | fprintf(stderr, "# %s:%d %s\n", c->c_name, ssh_port, chop(buf)); |
492 | n = snprintf(buf, sizeof buf, "SSH-%d.%d-OpenSSH-keyscan\r\n", | 495 | n = snprintf(buf, sizeof buf, "SSH-%d.%d-OpenSSH-keyscan\r\n", |
493 | c->c_keytype == KT_RSA1? PROTOCOL_MAJOR_1 : PROTOCOL_MAJOR_2, | 496 | c->c_keytype == KT_RSA1? PROTOCOL_MAJOR_1 : PROTOCOL_MAJOR_2, |
494 | c->c_keytype == KT_RSA1? PROTOCOL_MINOR_1 : PROTOCOL_MINOR_2); | 497 | c->c_keytype == KT_RSA1? PROTOCOL_MINOR_1 : PROTOCOL_MINOR_2); |
diff --git a/ssh-keysign.c b/ssh-keysign.c index bcf897a05..56882027e 100644 --- a/ssh-keysign.c +++ b/ssh-keysign.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-keysign.c,v 1.47 2015/01/28 22:36:00 djm Exp $ */ | 1 | /* $OpenBSD: ssh-keysign.c,v 1.48 2015/03/24 20:09:11 markus Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2002 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2002 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -157,7 +157,7 @@ valid_request(struct passwd *pw, char *host, struct sshkey **ret, | |||
157 | 157 | ||
158 | if (fail && key != NULL) | 158 | if (fail && key != NULL) |
159 | sshkey_free(key); | 159 | sshkey_free(key); |
160 | else | 160 | else if (ret != NULL) |
161 | *ret = key; | 161 | *ret = key; |
162 | 162 | ||
163 | return (fail ? -1 : 0); | 163 | return (fail ? -1 : 0); |
diff --git a/ssh-pkcs11.c b/ssh-pkcs11.c index c3a112fa1..e074175bb 100644 --- a/ssh-pkcs11.c +++ b/ssh-pkcs11.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-pkcs11.c,v 1.17 2015/02/03 08:07:20 deraadt Exp $ */ | 1 | /* $OpenBSD: ssh-pkcs11.c,v 1.19 2015/05/27 05:15:02 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2010 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2010 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -237,7 +237,7 @@ pkcs11_rsa_private_encrypt(int flen, const u_char *from, u_char *to, RSA *rsa, | |||
237 | {CKA_ID, NULL, 0}, | 237 | {CKA_ID, NULL, 0}, |
238 | {CKA_SIGN, NULL, sizeof(true_val) } | 238 | {CKA_SIGN, NULL, sizeof(true_val) } |
239 | }; | 239 | }; |
240 | char *pin, prompt[1024]; | 240 | char *pin = NULL, prompt[1024]; |
241 | int rval = -1; | 241 | int rval = -1; |
242 | 242 | ||
243 | key_filter[0].pValue = &private_key_class; | 243 | key_filter[0].pValue = &private_key_class; |
@@ -255,22 +255,30 @@ pkcs11_rsa_private_encrypt(int flen, const u_char *from, u_char *to, RSA *rsa, | |||
255 | si = &k11->provider->slotinfo[k11->slotidx]; | 255 | si = &k11->provider->slotinfo[k11->slotidx]; |
256 | if ((si->token.flags & CKF_LOGIN_REQUIRED) && !si->logged_in) { | 256 | if ((si->token.flags & CKF_LOGIN_REQUIRED) && !si->logged_in) { |
257 | if (!pkcs11_interactive) { | 257 | if (!pkcs11_interactive) { |
258 | error("need pin"); | 258 | error("need pin entry%s", (si->token.flags & |
259 | CKF_PROTECTED_AUTHENTICATION_PATH) ? | ||
260 | " on reader keypad" : ""); | ||
259 | return (-1); | 261 | return (-1); |
260 | } | 262 | } |
261 | snprintf(prompt, sizeof(prompt), "Enter PIN for '%s': ", | 263 | if (si->token.flags & CKF_PROTECTED_AUTHENTICATION_PATH) |
262 | si->token.label); | 264 | verbose("Deferring PIN entry to reader keypad."); |
263 | pin = read_passphrase(prompt, RP_ALLOW_EOF); | 265 | else { |
264 | if (pin == NULL) | 266 | snprintf(prompt, sizeof(prompt), |
265 | return (-1); /* bail out */ | 267 | "Enter PIN for '%s': ", si->token.label); |
266 | rv = f->C_Login(si->session, CKU_USER, | 268 | pin = read_passphrase(prompt, RP_ALLOW_EOF); |
267 | (u_char *)pin, strlen(pin)); | 269 | if (pin == NULL) |
268 | if (rv != CKR_OK && rv != CKR_USER_ALREADY_LOGGED_IN) { | 270 | return (-1); /* bail out */ |
271 | } | ||
272 | rv = f->C_Login(si->session, CKU_USER, (u_char *)pin, | ||
273 | (pin != NULL) ? strlen(pin) : 0); | ||
274 | if (pin != NULL) { | ||
275 | explicit_bzero(pin, strlen(pin)); | ||
269 | free(pin); | 276 | free(pin); |
277 | } | ||
278 | if (rv != CKR_OK && rv != CKR_USER_ALREADY_LOGGED_IN) { | ||
270 | error("C_Login failed: %lu", rv); | 279 | error("C_Login failed: %lu", rv); |
271 | return (-1); | 280 | return (-1); |
272 | } | 281 | } |
273 | free(pin); | ||
274 | si->logged_in = 1; | 282 | si->logged_in = 1; |
275 | } | 283 | } |
276 | key_filter[1].pValue = k11->keyid; | 284 | key_filter[1].pValue = k11->keyid; |
@@ -527,7 +535,7 @@ pkcs11_fetch_keys_filter(struct pkcs11_provider *p, CK_ULONG slotidx, | |||
527 | sshkey_free(key); | 535 | sshkey_free(key); |
528 | } else { | 536 | } else { |
529 | /* expand key array and add key */ | 537 | /* expand key array and add key */ |
530 | *keysp = xrealloc(*keysp, *nkeys + 1, | 538 | *keysp = xreallocarray(*keysp, *nkeys + 1, |
531 | sizeof(struct sshkey *)); | 539 | sizeof(struct sshkey *)); |
532 | (*keysp)[*nkeys] = key; | 540 | (*keysp)[*nkeys] = key; |
533 | *nkeys = *nkeys + 1; | 541 | *nkeys = *nkeys + 1; |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-rsa.c,v 1.52 2014/06/24 01:13:21 djm Exp $ */ | 1 | /* $OpenBSD: ssh-rsa.c,v 1.53 2015/06/15 01:32:50 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000, 2003 Markus Friedl <markus@openbsd.org> | 3 | * Copyright (c) 2000, 2003 Markus Friedl <markus@openbsd.org> |
4 | * | 4 | * |
@@ -113,7 +113,7 @@ ssh_rsa_sign(const struct sshkey *key, u_char **sigp, size_t *lenp, | |||
113 | } | 113 | } |
114 | if (b != NULL) | 114 | if (b != NULL) |
115 | sshbuf_free(b); | 115 | sshbuf_free(b); |
116 | return 0; | 116 | return ret; |
117 | } | 117 | } |
118 | 118 | ||
119 | int | 119 | int |
@@ -354,9 +354,9 @@ DESCRIPTION | |||
354 | applications (eg. sftp(1)). The subsystem is specified as the | 354 | applications (eg. sftp(1)). The subsystem is specified as the |
355 | remote command. | 355 | remote command. |
356 | 356 | ||
357 | -T Disable pseudo-tty allocation. | 357 | -T Disable pseudo-terminal allocation. |
358 | 358 | ||
359 | -t Force pseudo-tty allocation. This can be used to execute | 359 | -t Force pseudo-terminal allocation. This can be used to execute |
360 | arbitrary screen-based programs on a remote machine, which can be | 360 | arbitrary screen-based programs on a remote machine, which can be |
361 | very useful, e.g. when implementing menu services. Multiple -t | 361 | very useful, e.g. when implementing menu services. Multiple -t |
362 | options force tty allocation, even if ssh has no local tty. | 362 | options force tty allocation, even if ssh has no local tty. |
@@ -510,17 +510,22 @@ AUTHENTICATION | |||
510 | whose host key is not known or has changed. | 510 | whose host key is not known or has changed. |
511 | 511 | ||
512 | When the user's identity has been accepted by the server, the server | 512 | When the user's identity has been accepted by the server, the server |
513 | either executes the given command, or logs into the machine and gives the | 513 | either executes the given command in a non-interactive session or, if no |
514 | user a normal shell on the remote machine. All communication with the | 514 | command has been specified, logs into the machine and gives the user a |
515 | normal shell as an interactive session. All communication with the | ||
515 | remote command or shell will be automatically encrypted. | 516 | remote command or shell will be automatically encrypted. |
516 | 517 | ||
517 | If a pseudo-terminal has been allocated (normal login session), the user | 518 | If an interactive session is requested ssh by default will only request a |
518 | may use the escape characters noted below. | 519 | pseudo-terminal (pty) for interactive sessions when the client has one. |
520 | The flags -T and -t can be used to override this behaviour. | ||
519 | 521 | ||
520 | If no pseudo-tty has been allocated, the session is transparent and can | 522 | If a pseudo-terminal has been allocated the user may use the escape |
521 | be used to reliably transfer binary data. On most systems, setting the | 523 | characters noted below. |
522 | escape character to M-bM-^@M-^\noneM-bM-^@M-^] will also make the session transparent even if | 524 | |
523 | a tty is used. | 525 | If no pseudo-terminal has been allocated, the session is transparent and |
526 | can be used to reliably transfer binary data. On most systems, setting | ||
527 | the escape character to M-bM-^@M-^\noneM-bM-^@M-^] will also make the session transparent | ||
528 | even if a tty is used. | ||
524 | 529 | ||
525 | The session terminates when the command or shell on the remote machine | 530 | The session terminates when the command or shell on the remote machine |
526 | exits and all X11 and TCP connections have been closed. | 531 | exits and all X11 and TCP connections have been closed. |
@@ -638,16 +643,20 @@ VERIFYING HOST KEYS | |||
638 | $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key | 643 | $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key |
639 | 644 | ||
640 | If the fingerprint is already known, it can be matched and the key can be | 645 | If the fingerprint is already known, it can be matched and the key can be |
641 | accepted or rejected. Because of the difficulty of comparing host keys | 646 | accepted or rejected. If only legacy (MD5) fingerprints for the server |
642 | just by looking at fingerprint strings, there is also support to compare | 647 | are available, the ssh-keygen(1) -E option may be used to downgrade the |
643 | host keys visually, using random art. By setting the VisualHostKey | 648 | fingerprint algorithm to match. |
644 | option to M-bM-^@M-^\yesM-bM-^@M-^], a small ASCII graphic gets displayed on every login to a | 649 | |
645 | server, no matter if the session itself is interactive or not. By | 650 | Because of the difficulty of comparing host keys just by looking at |
646 | learning the pattern a known server produces, a user can easily find out | 651 | fingerprint strings, there is also support to compare host keys visually, |
647 | that the host key has changed when a completely different pattern is | 652 | using random art. By setting the VisualHostKey option to M-bM-^@M-^\yesM-bM-^@M-^], a small |
648 | displayed. Because these patterns are not unambiguous however, a pattern | 653 | ASCII graphic gets displayed on every login to a server, no matter if the |
649 | that looks similar to the pattern remembered only gives a good | 654 | session itself is interactive or not. By learning the pattern a known |
650 | probability that the host key is the same, not guaranteed proof. | 655 | server produces, a user can easily find out that the host key has changed |
656 | when a completely different pattern is displayed. Because these patterns | ||
657 | are not unambiguous however, a pattern that looks similar to the pattern | ||
658 | remembered only gives a good probability that the host key is the same, | ||
659 | not guaranteed proof. | ||
651 | 660 | ||
652 | To get a listing of the fingerprints along with their random art for all | 661 | To get a listing of the fingerprints along with their random art for all |
653 | known hosts, the following command line can be used: | 662 | known hosts, the following command line can be used: |
@@ -948,4 +957,4 @@ AUTHORS | |||
948 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | 957 | created OpenSSH. Markus Friedl contributed the support for SSH protocol |
949 | versions 1.5 and 2.0. | 958 | versions 1.5 and 2.0. |
950 | 959 | ||
951 | OpenBSD 5.7 March 3, 2015 OpenBSD 5.7 | 960 | OpenBSD 5.7 May 22, 2015 OpenBSD 5.7 |
@@ -33,8 +33,8 @@ | |||
33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
35 | .\" | 35 | .\" |
36 | .\" $OpenBSD: ssh.1,v 1.356 2015/03/03 06:48:58 djm Exp $ | 36 | .\" $OpenBSD: ssh.1,v 1.358 2015/05/22 05:28:45 djm Exp $ |
37 | .Dd $Mdocdate: March 3 2015 $ | 37 | .Dd $Mdocdate: May 22 2015 $ |
38 | .Dt SSH 1 | 38 | .Dt SSH 1 |
39 | .Os | 39 | .Os |
40 | .Sh NAME | 40 | .Sh NAME |
@@ -584,9 +584,9 @@ of SSH as a secure transport for other applications (eg.\& | |||
584 | .Xr sftp 1 ) . | 584 | .Xr sftp 1 ) . |
585 | The subsystem is specified as the remote command. | 585 | The subsystem is specified as the remote command. |
586 | .It Fl T | 586 | .It Fl T |
587 | Disable pseudo-tty allocation. | 587 | Disable pseudo-terminal allocation. |
588 | .It Fl t | 588 | .It Fl t |
589 | Force pseudo-tty allocation. | 589 | Force pseudo-terminal allocation. |
590 | This can be used to execute arbitrary | 590 | This can be used to execute arbitrary |
591 | screen-based programs on a remote machine, which can be very useful, | 591 | screen-based programs on a remote machine, which can be very useful, |
592 | e.g. when implementing menu services. | 592 | e.g. when implementing menu services. |
@@ -880,15 +880,26 @@ option can be used to control logins to machines whose | |||
880 | host key is not known or has changed. | 880 | host key is not known or has changed. |
881 | .Pp | 881 | .Pp |
882 | When the user's identity has been accepted by the server, the server | 882 | When the user's identity has been accepted by the server, the server |
883 | either executes the given command, or logs into the machine and gives | 883 | either executes the given command in a non-interactive session or, |
884 | the user a normal shell on the remote machine. | 884 | if no command has been specified, logs into the machine and gives |
885 | the user a normal shell as an interactive session. | ||
885 | All communication with | 886 | All communication with |
886 | the remote command or shell will be automatically encrypted. | 887 | the remote command or shell will be automatically encrypted. |
887 | .Pp | 888 | .Pp |
888 | If a pseudo-terminal has been allocated (normal login session), the | 889 | If an interactive session is requested |
890 | .Nm | ||
891 | by default will only request a pseudo-terminal (pty) for interactive | ||
892 | sessions when the client has one. | ||
893 | The flags | ||
894 | .Fl T | ||
895 | and | ||
896 | .Fl t | ||
897 | can be used to override this behaviour. | ||
898 | .Pp | ||
899 | If a pseudo-terminal has been allocated the | ||
889 | user may use the escape characters noted below. | 900 | user may use the escape characters noted below. |
890 | .Pp | 901 | .Pp |
891 | If no pseudo-tty has been allocated, | 902 | If no pseudo-terminal has been allocated, |
892 | the session is transparent and can be used to reliably transfer binary data. | 903 | the session is transparent and can be used to reliably transfer binary data. |
893 | On most systems, setting the escape character to | 904 | On most systems, setting the escape character to |
894 | .Dq none | 905 | .Dq none |
@@ -1099,6 +1110,11 @@ Fingerprints can be determined using | |||
1099 | .Pp | 1110 | .Pp |
1100 | If the fingerprint is already known, it can be matched | 1111 | If the fingerprint is already known, it can be matched |
1101 | and the key can be accepted or rejected. | 1112 | and the key can be accepted or rejected. |
1113 | If only legacy (MD5) fingerprints for the server are available, the | ||
1114 | .Xr ssh-keygen 1 | ||
1115 | .Fl E | ||
1116 | option may be used to downgrade the fingerprint algorithm to match. | ||
1117 | .Pp | ||
1102 | Because of the difficulty of comparing host keys | 1118 | Because of the difficulty of comparing host keys |
1103 | just by looking at fingerprint strings, | 1119 | just by looking at fingerprint strings, |
1104 | there is also support to compare host keys visually, | 1120 | there is also support to compare host keys visually, |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh.c,v 1.416 2015/03/03 06:48:58 djm Exp $ */ | 1 | /* $OpenBSD: ssh.c,v 1.418 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -356,10 +356,8 @@ check_follow_cname(char **namep, const char *cname) | |||
356 | debug3("%s: check \"%s\" CNAME \"%s\"", __func__, *namep, cname); | 356 | debug3("%s: check \"%s\" CNAME \"%s\"", __func__, *namep, cname); |
357 | for (i = 0; i < options.num_permitted_cnames; i++) { | 357 | for (i = 0; i < options.num_permitted_cnames; i++) { |
358 | rule = options.permitted_cnames + i; | 358 | rule = options.permitted_cnames + i; |
359 | if (match_pattern_list(*namep, rule->source_list, | 359 | if (match_pattern_list(*namep, rule->source_list, 1) != 1 || |
360 | strlen(rule->source_list), 1) != 1 || | 360 | match_pattern_list(cname, rule->target_list, 1) != 1) |
361 | match_pattern_list(cname, rule->target_list, | ||
362 | strlen(rule->target_list), 1) != 1) | ||
363 | continue; | 361 | continue; |
364 | verbose("Canonicalized DNS aliased hostname " | 362 | verbose("Canonicalized DNS aliased hostname " |
365 | "\"%s\" => \"%s\"", *namep, cname); | 363 | "\"%s\" => \"%s\"", *namep, cname); |
@@ -1673,6 +1671,8 @@ ssh_session(void) | |||
1673 | } | 1671 | } |
1674 | /* Request X11 forwarding if enabled and DISPLAY is set. */ | 1672 | /* Request X11 forwarding if enabled and DISPLAY is set. */ |
1675 | display = getenv("DISPLAY"); | 1673 | display = getenv("DISPLAY"); |
1674 | if (display == NULL && options.forward_x11) | ||
1675 | debug("X11 forwarding requested but DISPLAY not set"); | ||
1676 | if (options.forward_x11 && display != NULL) { | 1676 | if (options.forward_x11 && display != NULL) { |
1677 | char *proto, *data; | 1677 | char *proto, *data; |
1678 | /* Get reasonable local authentication information. */ | 1678 | /* Get reasonable local authentication information. */ |
@@ -1774,6 +1774,8 @@ ssh_session2_setup(int id, int success, void *arg) | |||
1774 | return; /* No need for error message, channels code sens one */ | 1774 | return; /* No need for error message, channels code sens one */ |
1775 | 1775 | ||
1776 | display = getenv("DISPLAY"); | 1776 | display = getenv("DISPLAY"); |
1777 | if (display == NULL && options.forward_x11) | ||
1778 | debug("X11 forwarding requested but DISPLAY not set"); | ||
1777 | if (options.forward_x11 && display != NULL) { | 1779 | if (options.forward_x11 && display != NULL) { |
1778 | char *proto, *data; | 1780 | char *proto, *data; |
1779 | /* Get reasonable local authentication information. */ | 1781 | /* Get reasonable local authentication information. */ |
diff --git a/ssh_config.0 b/ssh_config.0 index 3bdd75237..b0a614b8a 100644 --- a/ssh_config.0 +++ b/ssh_config.0 | |||
@@ -67,7 +67,7 @@ DESCRIPTION | |||
67 | require an argument. Criteria may be negated by prepending an | 67 | require an argument. Criteria may be negated by prepending an |
68 | exclamation mark (M-bM-^@M-^X!M-bM-^@M-^Y). | 68 | exclamation mark (M-bM-^@M-^X!M-bM-^@M-^Y). |
69 | 69 | ||
70 | The canonical keywork matches only when the configuration file is | 70 | The canonical keyword matches only when the configuration file is |
71 | being re-parsed after hostname canonicalization (see the | 71 | being re-parsed after hostname canonicalization (see the |
72 | CanonicalizeHostname option.) This may be useful to specify | 72 | CanonicalizeHostname option.) This may be useful to specify |
73 | conditions that work with canonical host names only. The exec | 73 | conditions that work with canonical host names only. The exec |
@@ -165,9 +165,11 @@ DESCRIPTION | |||
165 | CheckHostIP | 165 | CheckHostIP |
166 | If this flag is set to M-bM-^@M-^\yesM-bM-^@M-^], ssh(1) will additionally check the | 166 | If this flag is set to M-bM-^@M-^\yesM-bM-^@M-^], ssh(1) will additionally check the |
167 | host IP address in the known_hosts file. This allows ssh to | 167 | host IP address in the known_hosts file. This allows ssh to |
168 | detect if a host key changed due to DNS spoofing. If the option | 168 | detect if a host key changed due to DNS spoofing and will add |
169 | is set to M-bM-^@M-^\noM-bM-^@M-^], the check will not be executed. The default is | 169 | addresses of destination hosts to ~/.ssh/known_hosts in the |
170 | M-bM-^@M-^\yesM-bM-^@M-^]. | 170 | process, regardless of the setting of StrictHostKeyChecking. If |
171 | the option is set to M-bM-^@M-^\noM-bM-^@M-^], the check will not be executed. The | ||
172 | default is M-bM-^@M-^\yesM-bM-^@M-^]. | ||
171 | 173 | ||
172 | Cipher Specifies the cipher to use for encrypting the session in | 174 | Cipher Specifies the cipher to use for encrypting the session in |
173 | protocol version 1. Currently, M-bM-^@M-^\blowfishM-bM-^@M-^], M-bM-^@M-^\3desM-bM-^@M-^], and M-bM-^@M-^\desM-bM-^@M-^] are | 175 | protocol version 1. Currently, M-bM-^@M-^\blowfishM-bM-^@M-^], M-bM-^@M-^\3desM-bM-^@M-^], and M-bM-^@M-^\desM-bM-^@M-^] are |
@@ -252,9 +254,8 @@ DESCRIPTION | |||
252 | or is not listening. | 254 | or is not listening. |
253 | 255 | ||
254 | Setting this to M-bM-^@M-^\askM-bM-^@M-^] will cause ssh to listen for control | 256 | Setting this to M-bM-^@M-^\askM-bM-^@M-^] will cause ssh to listen for control |
255 | connections, but require confirmation using the SSH_ASKPASS | 257 | connections, but require confirmation using ssh-askpass(1). If |
256 | program before they are accepted (see ssh-add(1) for details). | 258 | the ControlPath cannot be opened, ssh will continue without |
257 | If the ControlPath cannot be opened, ssh will continue without | ||
258 | connecting to a master instance. | 259 | connecting to a master instance. |
259 | 260 | ||
260 | X11 and ssh-agent(1) forwarding is supported over these | 261 | X11 and ssh-agent(1) forwarding is supported over these |
@@ -552,8 +553,8 @@ DESCRIPTION | |||
552 | curve25519-sha256@libssh.org, | 553 | curve25519-sha256@libssh.org, |
553 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | 554 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, |
554 | diffie-hellman-group-exchange-sha256, | 555 | diffie-hellman-group-exchange-sha256, |
555 | diffie-hellman-group14-sha1, | ||
556 | diffie-hellman-group-exchange-sha1, | 556 | diffie-hellman-group-exchange-sha1, |
557 | diffie-hellman-group14-sha1, | ||
557 | diffie-hellman-group1-sha1 | 558 | diffie-hellman-group1-sha1 |
558 | 559 | ||
559 | The list of available key exchange algorithms may also be | 560 | The list of available key exchange algorithms may also be |
@@ -768,12 +769,15 @@ DESCRIPTION | |||
768 | Specifies what variables from the local environ(7) should be sent | 769 | Specifies what variables from the local environ(7) should be sent |
769 | to the server. Note that environment passing is only supported | 770 | to the server. Note that environment passing is only supported |
770 | for protocol 2. The server must also support it, and the server | 771 | for protocol 2. The server must also support it, and the server |
771 | must be configured to accept these environment variables. Refer | 772 | must be configured to accept these environment variables. Note |
772 | to AcceptEnv in sshd_config(5) for how to configure the server. | 773 | that the TERM environment variable is always sent whenever a |
773 | Variables are specified by name, which may contain wildcard | 774 | pseudo-terminal is requested as it is required by the protocol. |
774 | characters. Multiple environment variables may be separated by | 775 | Refer to AcceptEnv in sshd_config(5) for how to configure the |
775 | whitespace or spread across multiple SendEnv directives. The | 776 | server. Variables are specified by name, which may contain |
776 | default is not to send any environment variables. | 777 | wildcard characters. Multiple environment variables may be |
778 | separated by whitespace or spread across multiple SendEnv | ||
779 | directives. The default is not to send any environment | ||
780 | variables. | ||
777 | 781 | ||
778 | See PATTERNS for more information on patterns. | 782 | See PATTERNS for more information on patterns. |
779 | 783 | ||
@@ -978,4 +982,4 @@ AUTHORS | |||
978 | created OpenSSH. Markus Friedl contributed the support for SSH protocol | 982 | created OpenSSH. Markus Friedl contributed the support for SSH protocol |
979 | versions 1.5 and 2.0. | 983 | versions 1.5 and 2.0. |
980 | 984 | ||
981 | OpenBSD 5.7 February 20, 2015 OpenBSD 5.7 | 985 | OpenBSD 5.7 June 2, 2015 OpenBSD 5.7 |
diff --git a/ssh_config.5 b/ssh_config.5 index da8e54428..844d1a0f5 100644 --- a/ssh_config.5 +++ b/ssh_config.5 | |||
@@ -33,8 +33,8 @@ | |||
33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
35 | .\" | 35 | .\" |
36 | .\" $OpenBSD: ssh_config.5,v 1.205 2015/02/20 22:17:21 djm Exp $ | 36 | .\" $OpenBSD: ssh_config.5,v 1.211 2015/06/02 09:10:40 djm Exp $ |
37 | .Dd $Mdocdate: February 20 2015 $ | 37 | .Dd $Mdocdate: June 2 2015 $ |
38 | .Dt SSH_CONFIG 5 | 38 | .Dt SSH_CONFIG 5 |
39 | .Os | 39 | .Os |
40 | .Sh NAME | 40 | .Sh NAME |
@@ -182,7 +182,7 @@ Criteria may be negated by prepending an exclamation mark | |||
182 | .Pp | 182 | .Pp |
183 | The | 183 | The |
184 | .Cm canonical | 184 | .Cm canonical |
185 | keywork matches only when the configuration file is being re-parsed | 185 | keyword matches only when the configuration file is being re-parsed |
186 | after hostname canonicalization (see the | 186 | after hostname canonicalization (see the |
187 | .Cm CanonicalizeHostname | 187 | .Cm CanonicalizeHostname |
188 | option.) | 188 | option.) |
@@ -360,7 +360,11 @@ If this flag is set to | |||
360 | will additionally check the host IP address in the | 360 | will additionally check the host IP address in the |
361 | .Pa known_hosts | 361 | .Pa known_hosts |
362 | file. | 362 | file. |
363 | This allows ssh to detect if a host key changed due to DNS spoofing. | 363 | This allows ssh to detect if a host key changed due to DNS spoofing |
364 | and will add addresses of destination hosts to | ||
365 | .Pa ~/.ssh/known_hosts | ||
366 | in the process, regardless of the setting of | ||
367 | .Cm StrictHostKeyChecking . | ||
364 | If the option is set to | 368 | If the option is set to |
365 | .Dq no , | 369 | .Dq no , |
366 | the check will not be executed. | 370 | the check will not be executed. |
@@ -504,11 +508,8 @@ if the control socket does not exist, or is not listening. | |||
504 | Setting this to | 508 | Setting this to |
505 | .Dq ask | 509 | .Dq ask |
506 | will cause ssh | 510 | will cause ssh |
507 | to listen for control connections, but require confirmation using the | 511 | to listen for control connections, but require confirmation using |
508 | .Ev SSH_ASKPASS | 512 | .Xr ssh-askpass 1 . |
509 | program before they are accepted (see | ||
510 | .Xr ssh-add 1 | ||
511 | for details). | ||
512 | If the | 513 | If the |
513 | .Cm ControlPath | 514 | .Cm ControlPath |
514 | cannot be opened, | 515 | cannot be opened, |
@@ -1034,8 +1035,8 @@ The default is: | |||
1034 | curve25519-sha256@libssh.org, | 1035 | curve25519-sha256@libssh.org, |
1035 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, | 1036 | ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, |
1036 | diffie-hellman-group-exchange-sha256, | 1037 | diffie-hellman-group-exchange-sha256, |
1037 | diffie-hellman-group14-sha1, | ||
1038 | diffie-hellman-group-exchange-sha1, | 1038 | diffie-hellman-group-exchange-sha1, |
1039 | diffie-hellman-group14-sha1, | ||
1039 | diffie-hellman-group1-sha1 | 1040 | diffie-hellman-group1-sha1 |
1040 | .Ed | 1041 | .Ed |
1041 | .Pp | 1042 | .Pp |
@@ -1392,6 +1393,10 @@ should be sent to the server. | |||
1392 | Note that environment passing is only supported for protocol 2. | 1393 | Note that environment passing is only supported for protocol 2. |
1393 | The server must also support it, and the server must be configured to | 1394 | The server must also support it, and the server must be configured to |
1394 | accept these environment variables. | 1395 | accept these environment variables. |
1396 | Note that the | ||
1397 | .Ev TERM | ||
1398 | environment variable is always sent whenever a | ||
1399 | pseudo-terminal is requested as it is required by the protocol. | ||
1395 | Refer to | 1400 | Refer to |
1396 | .Cm AcceptEnv | 1401 | .Cm AcceptEnv |
1397 | in | 1402 | in |
diff --git a/sshbuf-misc.c b/sshbuf-misc.c index f1c2d03c9..d022065f9 100644 --- a/sshbuf-misc.c +++ b/sshbuf-misc.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshbuf-misc.c,v 1.3 2015/02/05 12:59:57 millert Exp $ */ | 1 | /* $OpenBSD: sshbuf-misc.c,v 1.4 2015/03/24 20:03:44 markus Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2011 Damien Miller | 3 | * Copyright (c) 2011 Damien Miller |
4 | * | 4 | * |
@@ -42,7 +42,7 @@ sshbuf_dump_data(const void *s, size_t len, FILE *f) | |||
42 | const u_char *p = (const u_char *)s; | 42 | const u_char *p = (const u_char *)s; |
43 | 43 | ||
44 | for (i = 0; i < len; i += 16) { | 44 | for (i = 0; i < len; i += 16) { |
45 | fprintf(f, "%.4zd: ", i); | 45 | fprintf(f, "%.4zu: ", i); |
46 | for (j = i; j < i + 16; j++) { | 46 | for (j = i; j < i + 16; j++) { |
47 | if (j < len) | 47 | if (j < len) |
48 | fprintf(f, "%02x ", p[j]); | 48 | fprintf(f, "%02x ", p[j]); |
diff --git a/sshconnect.c b/sshconnect.c index a6c9e20ed..988f4efe6 100644 --- a/sshconnect.c +++ b/sshconnect.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshconnect.c,v 1.259 2015/01/28 22:36:00 djm Exp $ */ | 1 | /* $OpenBSD: sshconnect.c,v 1.262 2015/05/28 05:41:29 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -912,7 +912,7 @@ check_host_key(char *hostname, struct sockaddr *hostaddr, u_short port, | |||
912 | host_key, options.hash_known_hosts)) | 912 | host_key, options.hash_known_hosts)) |
913 | logit("Failed to add the %s host key for IP " | 913 | logit("Failed to add the %s host key for IP " |
914 | "address '%.128s' to the list of known " | 914 | "address '%.128s' to the list of known " |
915 | "hosts (%.30s).", type, ip, | 915 | "hosts (%.500s).", type, ip, |
916 | user_hostfiles[0]); | 916 | user_hostfiles[0]); |
917 | else | 917 | else |
918 | logit("Warning: Permanently added the %s host " | 918 | logit("Warning: Permanently added the %s host " |
@@ -1355,6 +1355,7 @@ ssh_login(Sensitive *sensitive, const char *orighost, | |||
1355 | 1355 | ||
1356 | /* key exchange */ | 1356 | /* key exchange */ |
1357 | /* authenticate user */ | 1357 | /* authenticate user */ |
1358 | debug("Authenticating to %s:%d as '%s'", host, port, server_user); | ||
1358 | if (compat20) { | 1359 | if (compat20) { |
1359 | ssh_kex2(host, hostaddr, port); | 1360 | ssh_kex2(host, hostaddr, port); |
1360 | ssh_userauth2(local_user, server_user, host, sensitive); | 1361 | ssh_userauth2(local_user, server_user, host, sensitive); |
@@ -1363,7 +1364,7 @@ ssh_login(Sensitive *sensitive, const char *orighost, | |||
1363 | ssh_kex(host, hostaddr); | 1364 | ssh_kex(host, hostaddr); |
1364 | ssh_userauth1(local_user, server_user, host, sensitive); | 1365 | ssh_userauth1(local_user, server_user, host, sensitive); |
1365 | #else | 1366 | #else |
1366 | fatal("ssh1 is not unsupported"); | 1367 | fatal("ssh1 is not supported"); |
1367 | #endif | 1368 | #endif |
1368 | } | 1369 | } |
1369 | free(local_user); | 1370 | free(local_user); |
diff --git a/sshconnect2.c b/sshconnect2.c index faa8ec589..44c89e691 100644 --- a/sshconnect2.c +++ b/sshconnect2.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshconnect2.c,v 1.223 2015/01/30 11:43:14 djm Exp $ */ | 1 | /* $OpenBSD: sshconnect2.c,v 1.224 2015/05/04 06:10:48 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2008 Damien Miller. All rights reserved. | 4 | * Copyright (c) 2008 Damien Miller. All rights reserved. |
@@ -1726,8 +1726,7 @@ userauth_hostbased(Authctxt *authctxt) | |||
1726 | continue; | 1726 | continue; |
1727 | if (match_pattern_list( | 1727 | if (match_pattern_list( |
1728 | sshkey_ssh_name(authctxt->sensitive->keys[i]), | 1728 | sshkey_ssh_name(authctxt->sensitive->keys[i]), |
1729 | authctxt->active_ktype, | 1729 | authctxt->active_ktype, 0) != 1) |
1730 | strlen(authctxt->active_ktype), 0) != 1) | ||
1731 | continue; | 1730 | continue; |
1732 | /* we take and free the key */ | 1731 | /* we take and free the key */ |
1733 | private = authctxt->sensitive->keys[i]; | 1732 | private = authctxt->sensitive->keys[i]; |
@@ -233,7 +233,9 @@ LOGIN PROCESS | |||
233 | authentication protocol and cookie in standard input. See | 233 | authentication protocol and cookie in standard input. See |
234 | SSHRC, below. | 234 | SSHRC, below. |
235 | 235 | ||
236 | 9. Runs user's shell or command. | 236 | 9. Runs user's shell or command. All commands are run under the |
237 | user's login shell as specified in the system password | ||
238 | database. | ||
237 | 239 | ||
238 | SSHRC | 240 | SSHRC |
239 | If the file ~/.ssh/rc exists, sh(1) runs it after reading the environment | 241 | If the file ~/.ssh/rc exists, sh(1) runs it after reading the environment |
@@ -631,4 +633,4 @@ AUTHORS | |||
631 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | 633 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support |
632 | for privilege separation. | 634 | for privilege separation. |
633 | 635 | ||
634 | OpenBSD 5.7 November 15, 2014 OpenBSD 5.7 | 636 | OpenBSD 5.7 May 1, 2015 OpenBSD 5.7 |
@@ -33,8 +33,8 @@ | |||
33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
35 | .\" | 35 | .\" |
36 | .\" $OpenBSD: sshd.8,v 1.278 2014/11/15 14:41:03 bentley Exp $ | 36 | .\" $OpenBSD: sshd.8,v 1.279 2015/05/01 07:11:47 djm Exp $ |
37 | .Dd $Mdocdate: November 15 2014 $ | 37 | .Dd $Mdocdate: May 1 2015 $ |
38 | .Dt SSHD 8 | 38 | .Dt SSHD 8 |
39 | .Os | 39 | .Os |
40 | .Sh NAME | 40 | .Sh NAME |
@@ -427,6 +427,8 @@ See | |||
427 | below. | 427 | below. |
428 | .It | 428 | .It |
429 | Runs user's shell or command. | 429 | Runs user's shell or command. |
430 | All commands are run under the user's login shell as specified in the | ||
431 | system password database. | ||
430 | .El | 432 | .El |
431 | .Sh SSHRC | 433 | .Sh SSHRC |
432 | If the file | 434 | If the file |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshd.c,v 1.444 2015/02/20 22:17:21 djm Exp $ */ | 1 | /* $OpenBSD: sshd.c,v 1.450 2015/05/24 23:39:16 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -940,6 +940,10 @@ notify_hostkeys(struct ssh *ssh) | |||
940 | int i, nkeys, r; | 940 | int i, nkeys, r; |
941 | char *fp; | 941 | char *fp; |
942 | 942 | ||
943 | /* Some clients cannot cope with the hostkeys message, skip those. */ | ||
944 | if (datafellows & SSH_BUG_HOSTKEYS) | ||
945 | return; | ||
946 | |||
943 | if ((buf = sshbuf_new()) == NULL) | 947 | if ((buf = sshbuf_new()) == NULL) |
944 | fatal("%s: sshbuf_new", __func__); | 948 | fatal("%s: sshbuf_new", __func__); |
945 | for (i = nkeys = 0; i < options.num_host_key_files; i++) { | 949 | for (i = nkeys = 0; i < options.num_host_key_files; i++) { |
@@ -1104,8 +1108,6 @@ recv_rexec_state(int fd, Buffer *conf) | |||
1104 | sensitive_data.server_key->rsa) != 0) | 1108 | sensitive_data.server_key->rsa) != 0) |
1105 | fatal("%s: rsa_generate_additional_parameters " | 1109 | fatal("%s: rsa_generate_additional_parameters " |
1106 | "error", __func__); | 1110 | "error", __func__); |
1107 | #else | ||
1108 | fatal("ssh1 not supported"); | ||
1109 | #endif | 1111 | #endif |
1110 | } | 1112 | } |
1111 | 1113 | ||
@@ -1465,7 +1467,7 @@ main(int ac, char **av) | |||
1465 | int sock_in = -1, sock_out = -1, newsock = -1; | 1467 | int sock_in = -1, sock_out = -1, newsock = -1; |
1466 | const char *remote_ip; | 1468 | const char *remote_ip; |
1467 | int remote_port; | 1469 | int remote_port; |
1468 | char *fp, *line, *logfile = NULL; | 1470 | char *fp, *line, *laddr, *logfile = NULL; |
1469 | int config_s[2] = { -1 , -1 }; | 1471 | int config_s[2] = { -1 , -1 }; |
1470 | u_int n; | 1472 | u_int n; |
1471 | u_int64_t ibytes, obytes; | 1473 | u_int64_t ibytes, obytes; |
@@ -1505,7 +1507,8 @@ main(int ac, char **av) | |||
1505 | initialize_server_options(&options); | 1507 | initialize_server_options(&options); |
1506 | 1508 | ||
1507 | /* Parse command-line arguments. */ | 1509 | /* Parse command-line arguments. */ |
1508 | while ((opt = getopt(ac, av, "f:p:b:k:h:g:u:o:C:dDeE:iqrtQRT46")) != -1) { | 1510 | while ((opt = getopt(ac, av, |
1511 | "C:E:b:c:f:g:h:k:o:p:u:46DQRTdeiqrt")) != -1) { | ||
1509 | switch (opt) { | 1512 | switch (opt) { |
1510 | case '4': | 1513 | case '4': |
1511 | options.address_family = AF_INET; | 1514 | options.address_family = AF_INET; |
@@ -1687,7 +1690,7 @@ main(int ac, char **av) | |||
1687 | buffer_init(&cfg); | 1690 | buffer_init(&cfg); |
1688 | if (rexeced_flag) | 1691 | if (rexeced_flag) |
1689 | recv_rexec_state(REEXEC_CONFIG_PASS_FD, &cfg); | 1692 | recv_rexec_state(REEXEC_CONFIG_PASS_FD, &cfg); |
1690 | else | 1693 | else if (strcasecmp(config_file_name, "none") != 0) |
1691 | load_server_config(config_file_name, &cfg); | 1694 | load_server_config(config_file_name, &cfg); |
1692 | 1695 | ||
1693 | parse_server_config(&options, rexeced_flag ? "rexec" : config_file_name, | 1696 | parse_server_config(&options, rexeced_flag ? "rexec" : config_file_name, |
@@ -1708,6 +1711,11 @@ main(int ac, char **av) | |||
1708 | strcasecmp(options.authorized_keys_command, "none") != 0)) | 1711 | strcasecmp(options.authorized_keys_command, "none") != 0)) |
1709 | fatal("AuthorizedKeysCommand set without " | 1712 | fatal("AuthorizedKeysCommand set without " |
1710 | "AuthorizedKeysCommandUser"); | 1713 | "AuthorizedKeysCommandUser"); |
1714 | if (options.authorized_principals_command_user == NULL && | ||
1715 | (options.authorized_principals_command != NULL && | ||
1716 | strcasecmp(options.authorized_principals_command, "none") != 0)) | ||
1717 | fatal("AuthorizedPrincipalsCommand set without " | ||
1718 | "AuthorizedPrincipalsCommandUser"); | ||
1711 | 1719 | ||
1712 | /* | 1720 | /* |
1713 | * Check whether there is any path through configured auth methods. | 1721 | * Check whether there is any path through configured auth methods. |
@@ -2171,9 +2179,10 @@ main(int ac, char **av) | |||
2171 | #endif /* LIBWRAP */ | 2179 | #endif /* LIBWRAP */ |
2172 | 2180 | ||
2173 | /* Log the connection. */ | 2181 | /* Log the connection. */ |
2182 | laddr = get_local_ipaddr(sock_in); | ||
2174 | verbose("Connection from %s port %d on %s port %d", | 2183 | verbose("Connection from %s port %d on %s port %d", |
2175 | remote_ip, remote_port, | 2184 | remote_ip, remote_port, laddr, get_local_port()); |
2176 | get_local_ipaddr(sock_in), get_local_port()); | 2185 | free(laddr); |
2177 | 2186 | ||
2178 | #ifdef USE_SECURITY_SESSION_API | 2187 | #ifdef USE_SECURITY_SESSION_API |
2179 | /* | 2188 | /* |
diff --git a/sshd_config b/sshd_config index 339123329..23a338fa3 100644 --- a/sshd_config +++ b/sshd_config | |||
@@ -1,4 +1,4 @@ | |||
1 | # $OpenBSD: sshd_config,v 1.94 2015/02/02 01:57:44 deraadt Exp $ | 1 | # $OpenBSD: sshd_config,v 1.95 2015/04/27 21:42:48 djm Exp $ |
2 | 2 | ||
3 | # This is the sshd server system-wide configuration file. See | 3 | # This is the sshd server system-wide configuration file. See |
4 | # sshd_config(5) for more information. | 4 | # sshd_config(5) for more information. |
@@ -42,7 +42,7 @@ | |||
42 | 42 | ||
43 | #LoginGraceTime 2m | 43 | #LoginGraceTime 2m |
44 | # See /usr/share/doc/openssh-server/README.Debian.gz. | 44 | # See /usr/share/doc/openssh-server/README.Debian.gz. |
45 | #PermitRootLogin yes | 45 | #PermitRootLogin without-password |
46 | #StrictModes yes | 46 | #StrictModes yes |
47 | #MaxAuthTries 6 | 47 | #MaxAuthTries 6 |
48 | #MaxSessions 10 | 48 | #MaxSessions 10 |
diff --git a/sshd_config.0 b/sshd_config.0 index be48e1364..641041852 100644 --- a/sshd_config.0 +++ b/sshd_config.0 | |||
@@ -20,14 +20,16 @@ DESCRIPTION | |||
20 | Specifies what environment variables sent by the client will be | 20 | Specifies what environment variables sent by the client will be |
21 | copied into the session's environ(7). See SendEnv in | 21 | copied into the session's environ(7). See SendEnv in |
22 | ssh_config(5) for how to configure the client. Note that | 22 | ssh_config(5) for how to configure the client. Note that |
23 | environment passing is only supported for protocol 2. Variables | 23 | environment passing is only supported for protocol 2, and that |
24 | are specified by name, which may contain the wildcard characters | 24 | the TERM environment variable is always sent whenever the client |
25 | M-bM-^@M-^X*M-bM-^@M-^Y and M-bM-^@M-^X?M-bM-^@M-^Y. Multiple environment variables may be separated by | 25 | requests a pseudo-terminal as it is required by the protocol. |
26 | whitespace or spread across multiple AcceptEnv directives. Be | 26 | Variables are specified by name, which may contain the wildcard |
27 | warned that some environment variables could be used to bypass | 27 | characters M-bM-^@M-^X*M-bM-^@M-^Y and M-bM-^@M-^X?M-bM-^@M-^Y. Multiple environment variables may be |
28 | restricted user environments. For this reason, care should be | 28 | separated by whitespace or spread across multiple AcceptEnv |
29 | taken in the use of this directive. The default is not to accept | 29 | directives. Be warned that some environment variables could be |
30 | any environment variables. | 30 | used to bypass restricted user environments. For this reason, |
31 | care should be taken in the use of this directive. The default | ||
32 | is not to accept any environment variables. | ||
31 | 33 | ||
32 | AddressFamily | 34 | AddressFamily |
33 | Specifies which address family should be used by sshd(8). Valid | 35 | Specifies which address family should be used by sshd(8). Valid |
@@ -122,15 +124,25 @@ DESCRIPTION | |||
122 | 124 | ||
123 | AuthorizedKeysCommand | 125 | AuthorizedKeysCommand |
124 | Specifies a program to be used to look up the user's public keys. | 126 | Specifies a program to be used to look up the user's public keys. |
125 | The program must be owned by root and not writable by group or | 127 | The program must be owned by root, not writable by group or |
126 | others. It will be invoked with a single argument of the | 128 | others and specified by an absolute path. |
127 | username being authenticated, and should produce on standard | 129 | |
128 | output zero or more lines of authorized_keys output (see | 130 | Arguments to AuthorizedKeysCommand may be provided using the |
129 | AUTHORIZED_KEYS in sshd(8)). If a key supplied by | 131 | following tokens, which will be expanded at runtime: %% is |
130 | AuthorizedKeysCommand does not successfully authenticate and | 132 | replaced by a literal '%', %u is replaced by the username being |
131 | authorize the user then public key authentication continues using | 133 | authenticated, %h is replaced by the home directory of the user |
132 | the usual AuthorizedKeysFile files. By default, no | 134 | being authenticated, %t is replaced with the key type offered for |
133 | AuthorizedKeysCommand is run. | 135 | authentication, %f is replaced with the fingerprint of the key, |
136 | and %k is replaced with the key being offered for authentication. | ||
137 | If no arguments are specified then the username of the target | ||
138 | user will be supplied. | ||
139 | |||
140 | The program should produce on standard output zero or more lines | ||
141 | of authorized_keys output (see AUTHORIZED_KEYS in sshd(8)). If a | ||
142 | key supplied by AuthorizedKeysCommand does not successfully | ||
143 | authenticate and authorize the user then public key | ||
144 | authentication continues using the usual AuthorizedKeysFile | ||
145 | files. By default, no AuthorizedKeysCommand is run. | ||
134 | 146 | ||
135 | AuthorizedKeysCommandUser | 147 | AuthorizedKeysCommandUser |
136 | Specifies the user under whose account the AuthorizedKeysCommand | 148 | Specifies the user under whose account the AuthorizedKeysCommand |
@@ -153,6 +165,33 @@ DESCRIPTION | |||
153 | listed, separated by whitespace. The default is | 165 | listed, separated by whitespace. The default is |
154 | M-bM-^@M-^\.ssh/authorized_keys .ssh/authorized_keys2M-bM-^@M-^]. | 166 | M-bM-^@M-^\.ssh/authorized_keys .ssh/authorized_keys2M-bM-^@M-^]. |
155 | 167 | ||
168 | AuthorizedPrincipalsCommand | ||
169 | Specifies a program to be used to generate the list of allowed | ||
170 | certificate principals as per AuthorizedPrincipalsFile. The | ||
171 | program must be owned by root, not writable by group or others | ||
172 | and specified by an absolute path. | ||
173 | |||
174 | Arguments to AuthorizedPrincipalsCommand may be provided using | ||
175 | the following tokens, which will be expanded at runtime: %% is | ||
176 | replaced by a literal '%', %u is replaced by the username being | ||
177 | authenticated and %h is replaced by the home directory of the | ||
178 | user being authenticated. | ||
179 | |||
180 | The program should produce on standard output zero or more lines | ||
181 | of AuthorizedPrincipalsFile output. If either | ||
182 | AuthorizedPrincipalsCommand or AuthorizedPrincipalsFile is | ||
183 | specified, then certificates offered by the client for | ||
184 | authentication must contain a principal that is listed. By | ||
185 | default, no AuthorizedPrincipalsCommand is run. | ||
186 | |||
187 | AuthorizedPrincipalsCommandUser | ||
188 | Specifies the user under whose account the | ||
189 | AuthorizedPrincipalsCommand is run. It is recommended to use a | ||
190 | dedicated user that has no other role on the host than running | ||
191 | authorized principals commands. If AuthorizedPrincipalsCommand | ||
192 | is specified but AuthorizedPrincipalsCommandUser is not, then | ||
193 | sshd(8) will refuse to start. | ||
194 | |||
156 | AuthorizedPrincipalsFile | 195 | AuthorizedPrincipalsFile |
157 | Specifies a file that lists principal names that are accepted for | 196 | Specifies a file that lists principal names that are accepted for |
158 | certificate authentication. When using certificates signed by a | 197 | certificate authentication. When using certificates signed by a |
@@ -344,6 +383,15 @@ DESCRIPTION | |||
344 | cache on logout. The default is M-bM-^@M-^\yesM-bM-^@M-^]. Note that this option | 383 | cache on logout. The default is M-bM-^@M-^\yesM-bM-^@M-^]. Note that this option |
345 | applies to protocol version 2 only. | 384 | applies to protocol version 2 only. |
346 | 385 | ||
386 | GSSAPIStrictAcceptorCheck | ||
387 | Determines whether to be strict about the identity of the GSSAPI | ||
388 | acceptor a client authenticates against. If set to M-bM-^@M-^\yesM-bM-^@M-^] then | ||
389 | the client must authenticate against the host service on the | ||
390 | current hostname. If set to M-bM-^@M-^\noM-bM-^@M-^] then the client may | ||
391 | authenticate against any service key stored in the machine's | ||
392 | default store. This facility is provided to assist with | ||
393 | operation on multi homed machines. The default is M-bM-^@M-^\yesM-bM-^@M-^]. | ||
394 | |||
347 | HostbasedAcceptedKeyTypes | 395 | HostbasedAcceptedKeyTypes |
348 | Specifies the key types that will be accepted for hostbased | 396 | Specifies the key types that will be accepted for hostbased |
349 | authentication as a comma-separated pattern list. The default | 397 | authentication as a comma-separated pattern list. The default |
@@ -484,10 +532,8 @@ DESCRIPTION | |||
484 | ListenAddress [host|IPv6_addr]:port | 532 | ListenAddress [host|IPv6_addr]:port |
485 | 533 | ||
486 | If port is not specified, sshd will listen on the address and all | 534 | If port is not specified, sshd will listen on the address and all |
487 | prior Port options specified. The default is to listen on all | 535 | Port options specified. The default is to listen on all local |
488 | local addresses. Multiple ListenAddress options are permitted. | 536 | addresses. Multiple ListenAddress options are permitted. |
489 | Additionally, any Port options must precede this option for non- | ||
490 | port qualified addresses. | ||
491 | 537 | ||
492 | LoginGraceTime | 538 | LoginGraceTime |
493 | The server disconnects after this time if the user has not | 539 | The server disconnects after this time if the user has not |
@@ -628,7 +674,7 @@ DESCRIPTION | |||
628 | PermitRootLogin | 674 | PermitRootLogin |
629 | Specifies whether root can log in using ssh(1). The argument | 675 | Specifies whether root can log in using ssh(1). The argument |
630 | must be M-bM-^@M-^\yesM-bM-^@M-^], M-bM-^@M-^\without-passwordM-bM-^@M-^], M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^], or | 676 | must be M-bM-^@M-^\yesM-bM-^@M-^], M-bM-^@M-^\without-passwordM-bM-^@M-^], M-bM-^@M-^\forced-commands-onlyM-bM-^@M-^], or |
631 | M-bM-^@M-^\noM-bM-^@M-^]. The default is M-bM-^@M-^\yesM-bM-^@M-^]. | 677 | M-bM-^@M-^\noM-bM-^@M-^]. The default is M-bM-^@M-^\noM-bM-^@M-^]. |
632 | 678 | ||
633 | If this option is set to M-bM-^@M-^\without-passwordM-bM-^@M-^], password | 679 | If this option is set to M-bM-^@M-^\without-passwordM-bM-^@M-^], password |
634 | authentication is disabled for root. | 680 | authentication is disabled for root. |
@@ -667,7 +713,8 @@ DESCRIPTION | |||
667 | 713 | ||
668 | PidFile | 714 | PidFile |
669 | Specifies the file that contains the process ID of the SSH | 715 | Specifies the file that contains the process ID of the SSH |
670 | daemon. The default is /var/run/sshd.pid. | 716 | daemon, or M-bM-^@M-^\noneM-bM-^@M-^] to not write one. The default is |
717 | /var/run/sshd.pid. | ||
671 | 718 | ||
672 | Port Specifies the port number that sshd(8) listens on. The default | 719 | Port Specifies the port number that sshd(8) listens on. The default |
673 | is 22. Multiple options of this type are permitted. See also | 720 | is 22. Multiple options of this type are permitted. See also |
@@ -718,13 +765,14 @@ DESCRIPTION | |||
718 | applies to protocol version 2 only. | 765 | applies to protocol version 2 only. |
719 | 766 | ||
720 | RevokedKeys | 767 | RevokedKeys |
721 | Specifies revoked public keys. Keys listed in this file will be | 768 | Specifies revoked public keys file, or M-bM-^@M-^\noneM-bM-^@M-^] to not use one. |
722 | refused for public key authentication. Note that if this file is | 769 | Keys listed in this file will be refused for public key |
723 | not readable, then public key authentication will be refused for | 770 | authentication. Note that if this file is not readable, then |
724 | all users. Keys may be specified as a text file, listing one | 771 | public key authentication will be refused for all users. Keys |
725 | public key per line, or as an OpenSSH Key Revocation List (KRL) | 772 | may be specified as a text file, listing one public key per line, |
726 | as generated by ssh-keygen(1). For more information on KRLs, see | 773 | or as an OpenSSH Key Revocation List (KRL) as generated by |
727 | the KEY REVOCATION LISTS section in ssh-keygen(1). | 774 | ssh-keygen(1). For more information on KRLs, see the KEY |
775 | REVOCATION LISTS section in ssh-keygen(1). | ||
728 | 776 | ||
729 | RhostsRSAAuthentication | 777 | RhostsRSAAuthentication |
730 | Specifies whether rhosts or /etc/hosts.equiv authentication | 778 | Specifies whether rhosts or /etc/hosts.equiv authentication |
@@ -810,14 +858,15 @@ DESCRIPTION | |||
810 | TrustedUserCAKeys | 858 | TrustedUserCAKeys |
811 | Specifies a file containing public keys of certificate | 859 | Specifies a file containing public keys of certificate |
812 | authorities that are trusted to sign user certificates for | 860 | authorities that are trusted to sign user certificates for |
813 | authentication. Keys are listed one per line; empty lines and | 861 | authentication, or M-bM-^@M-^\noneM-bM-^@M-^] to not use one. Keys are listed one |
814 | comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. If a certificate is | 862 | per line; empty lines and comments starting with M-bM-^@M-^X#M-bM-^@M-^Y are allowed. |
815 | presented for authentication and has its signing CA key listed in | 863 | If a certificate is presented for authentication and has its |
816 | this file, then it may be used for authentication for any user | 864 | signing CA key listed in this file, then it may be used for |
817 | listed in the certificate's principals list. Note that | 865 | authentication for any user listed in the certificate's |
818 | certificates that lack a list of principals will not be permitted | 866 | principals list. Note that certificates that lack a list of |
819 | for authentication using TrustedUserCAKeys. For more details on | 867 | principals will not be permitted for authentication using |
820 | certificates, see the CERTIFICATES section in ssh-keygen(1). | 868 | TrustedUserCAKeys. For more details on certificates, see the |
869 | CERTIFICATES section in ssh-keygen(1). | ||
821 | 870 | ||
822 | UseDNS Specifies whether sshd(8) should look up the remote host name and | 871 | UseDNS Specifies whether sshd(8) should look up the remote host name and |
823 | check that the resolved host name for the remote IP address maps | 872 | check that the resolved host name for the remote IP address maps |
@@ -901,8 +950,8 @@ DESCRIPTION | |||
901 | default is M-bM-^@M-^\yesM-bM-^@M-^]. | 950 | default is M-bM-^@M-^\yesM-bM-^@M-^]. |
902 | 951 | ||
903 | XAuthLocation | 952 | XAuthLocation |
904 | Specifies the full pathname of the xauth(1) program. The default | 953 | Specifies the full pathname of the xauth(1) program, or M-bM-^@M-^\noneM-bM-^@M-^] to |
905 | is /usr/X11R6/bin/xauth. | 954 | not use one. The default is /usr/X11R6/bin/xauth. |
906 | 955 | ||
907 | TIME FORMATS | 956 | TIME FORMATS |
908 | sshd(8) command-line arguments and configuration file options that | 957 | sshd(8) command-line arguments and configuration file options that |
@@ -943,4 +992,4 @@ AUTHORS | |||
943 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support | 992 | versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support |
944 | for privilege separation. | 993 | for privilege separation. |
945 | 994 | ||
946 | OpenBSD 5.7 February 20, 2015 OpenBSD 5.7 | 995 | OpenBSD 5.7 June 5, 2015 OpenBSD 5.7 |
diff --git a/sshd_config.5 b/sshd_config.5 index db1f2fd69..eb6bff85f 100644 --- a/sshd_config.5 +++ b/sshd_config.5 | |||
@@ -33,8 +33,8 @@ | |||
33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 33 | .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 34 | .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
35 | .\" | 35 | .\" |
36 | .\" $OpenBSD: sshd_config.5,v 1.194 2015/02/20 23:46:01 djm Exp $ | 36 | .\" $OpenBSD: sshd_config.5,v 1.204 2015/06/05 03:44:14 djm Exp $ |
37 | .Dd $Mdocdate: February 20 2015 $ | 37 | .Dd $Mdocdate: June 5 2015 $ |
38 | .Dt SSHD_CONFIG 5 | 38 | .Dt SSHD_CONFIG 5 |
39 | .Os | 39 | .Os |
40 | .Sh NAME | 40 | .Sh NAME |
@@ -95,7 +95,11 @@ See | |||
95 | in | 95 | in |
96 | .Xr ssh_config 5 | 96 | .Xr ssh_config 5 |
97 | for how to configure the client. | 97 | for how to configure the client. |
98 | Note that environment passing is only supported for protocol 2. | 98 | Note that environment passing is only supported for protocol 2, and |
99 | that the | ||
100 | .Ev TERM | ||
101 | environment variable is always sent whenever the client | ||
102 | requests a pseudo-terminal as it is required by the protocol. | ||
99 | Variables are specified by name, which may contain the wildcard characters | 103 | Variables are specified by name, which may contain the wildcard characters |
100 | .Ql * | 104 | .Ql * |
101 | and | 105 | and |
@@ -255,9 +259,21 @@ The default is not to require multiple authentication; successful completion | |||
255 | of a single authentication method is sufficient. | 259 | of a single authentication method is sufficient. |
256 | .It Cm AuthorizedKeysCommand | 260 | .It Cm AuthorizedKeysCommand |
257 | Specifies a program to be used to look up the user's public keys. | 261 | Specifies a program to be used to look up the user's public keys. |
258 | The program must be owned by root and not writable by group or others. | 262 | The program must be owned by root, not writable by group or others and |
259 | It will be invoked with a single argument of the username | 263 | specified by an absolute path. |
260 | being authenticated, and should produce on standard output zero or | 264 | .Pp |
265 | Arguments to | ||
266 | .Cm AuthorizedKeysCommand | ||
267 | may be provided using the following tokens, which will be expanded | ||
268 | at runtime: %% is replaced by a literal '%', %u is replaced by the | ||
269 | username being authenticated, %h is replaced by the home directory | ||
270 | of the user being authenticated, %t is replaced with the key type | ||
271 | offered for authentication, %f is replaced with the fingerprint of | ||
272 | the key, and %k is replaced with the key being offered for authentication. | ||
273 | If no arguments are specified then the username of the target user | ||
274 | will be supplied. | ||
275 | .Pp | ||
276 | The program should produce on standard output zero or | ||
261 | more lines of authorized_keys output (see AUTHORIZED_KEYS in | 277 | more lines of authorized_keys output (see AUTHORIZED_KEYS in |
262 | .Xr sshd 8 ) . | 278 | .Xr sshd 8 ) . |
263 | If a key supplied by AuthorizedKeysCommand does not successfully authenticate | 279 | If a key supplied by AuthorizedKeysCommand does not successfully authenticate |
@@ -296,6 +312,42 @@ directory. | |||
296 | Multiple files may be listed, separated by whitespace. | 312 | Multiple files may be listed, separated by whitespace. |
297 | The default is | 313 | The default is |
298 | .Dq .ssh/authorized_keys .ssh/authorized_keys2 . | 314 | .Dq .ssh/authorized_keys .ssh/authorized_keys2 . |
315 | .It Cm AuthorizedPrincipalsCommand | ||
316 | Specifies a program to be used to generate the list of allowed | ||
317 | certificate principals as per | ||
318 | .Cm AuthorizedPrincipalsFile . | ||
319 | The program must be owned by root, not writable by group or others and | ||
320 | specified by an absolute path. | ||
321 | .Pp | ||
322 | Arguments to | ||
323 | .Cm AuthorizedPrincipalsCommand | ||
324 | may be provided using the following tokens, which will be expanded | ||
325 | at runtime: %% is replaced by a literal '%', %u is replaced by the | ||
326 | username being authenticated and %h is replaced by the home directory | ||
327 | of the user being authenticated. | ||
328 | .Pp | ||
329 | The program should produce on standard output zero or | ||
330 | more lines of | ||
331 | .Cm AuthorizedPrincipalsFile | ||
332 | output. | ||
333 | If either | ||
334 | .Cm AuthorizedPrincipalsCommand | ||
335 | or | ||
336 | .Cm AuthorizedPrincipalsFile | ||
337 | is specified, then certificates offered by the client for authentication | ||
338 | must contain a principal that is listed. | ||
339 | By default, no AuthorizedPrincipalsCommand is run. | ||
340 | .It Cm AuthorizedPrincipalsCommandUser | ||
341 | Specifies the user under whose account the AuthorizedPrincipalsCommand is run. | ||
342 | It is recommended to use a dedicated user that has no other role on the host | ||
343 | than running authorized principals commands. | ||
344 | If | ||
345 | .Cm AuthorizedPrincipalsCommand | ||
346 | is specified but | ||
347 | .Cm AuthorizedPrincipalsCommandUser | ||
348 | is not, then | ||
349 | .Xr sshd 8 | ||
350 | will refuse to start. | ||
299 | .It Cm AuthorizedPrincipalsFile | 351 | .It Cm AuthorizedPrincipalsFile |
300 | Specifies a file that lists principal names that are accepted for | 352 | Specifies a file that lists principal names that are accepted for |
301 | certificate authentication. | 353 | certificate authentication. |
@@ -606,22 +658,20 @@ The default is | |||
606 | .Dq yes . | 658 | .Dq yes . |
607 | Note that this option applies to protocol version 2 only. | 659 | Note that this option applies to protocol version 2 only. |
608 | .It Cm GSSAPIStrictAcceptorCheck | 660 | .It Cm GSSAPIStrictAcceptorCheck |
609 | Determines whether to be strict about the identity of the GSSAPI acceptor | 661 | Determines whether to be strict about the identity of the GSSAPI acceptor |
610 | a client authenticates against. If | 662 | a client authenticates against. |
663 | If set to | ||
611 | .Dq yes | 664 | .Dq yes |
612 | then the client must authenticate against the | 665 | then the client must authenticate against the |
613 | .Pa host | 666 | .Pa host |
614 | service on the current hostname. If | 667 | service on the current hostname. |
668 | If set to | ||
615 | .Dq no | 669 | .Dq no |
616 | then the client may authenticate against any service key stored in the | 670 | then the client may authenticate against any service key stored in the |
617 | machine's default store. This facility is provided to assist with operation | 671 | machine's default store. |
618 | on multi homed machines. | 672 | This facility is provided to assist with operation on multi homed machines. |
619 | The default is | 673 | The default is |
620 | .Dq yes . | 674 | .Dq yes . |
621 | Note that this option applies only to protocol version 2 GSSAPI connections, | ||
622 | and setting it to | ||
623 | .Dq no | ||
624 | may only work with recent Kerberos GSSAPI libraries. | ||
625 | .It Cm GSSAPIStoreCredentialsOnRekey | 675 | .It Cm GSSAPIStoreCredentialsOnRekey |
626 | Controls whether the user's GSSAPI credentials should be updated following a | 676 | Controls whether the user's GSSAPI credentials should be updated following a |
627 | successful connection rekeying. This option can be used to accepted renewed | 677 | successful connection rekeying. This option can be used to accepted renewed |
@@ -883,16 +933,13 @@ The following forms may be used: | |||
883 | If | 933 | If |
884 | .Ar port | 934 | .Ar port |
885 | is not specified, | 935 | is not specified, |
886 | sshd will listen on the address and all prior | 936 | sshd will listen on the address and all |
887 | .Cm Port | 937 | .Cm Port |
888 | options specified. | 938 | options specified. |
889 | The default is to listen on all local addresses. | 939 | The default is to listen on all local addresses. |
890 | Multiple | 940 | Multiple |
891 | .Cm ListenAddress | 941 | .Cm ListenAddress |
892 | options are permitted. | 942 | options are permitted. |
893 | Additionally, any | ||
894 | .Cm Port | ||
895 | options must precede this option for non-port qualified addresses. | ||
896 | .It Cm LoginGraceTime | 943 | .It Cm LoginGraceTime |
897 | The server disconnects after this time if the user has not | 944 | The server disconnects after this time if the user has not |
898 | successfully logged in. | 945 | successfully logged in. |
@@ -1150,7 +1197,7 @@ The argument must be | |||
1150 | or | 1197 | or |
1151 | .Dq no . | 1198 | .Dq no . |
1152 | The default is | 1199 | The default is |
1153 | .Dq yes . | 1200 | .Dq no . |
1154 | .Pp | 1201 | .Pp |
1155 | If this option is set to | 1202 | If this option is set to |
1156 | .Dq without-password , | 1203 | .Dq without-password , |
@@ -1220,7 +1267,9 @@ The default is | |||
1220 | .Dq yes . | 1267 | .Dq yes . |
1221 | .It Cm PidFile | 1268 | .It Cm PidFile |
1222 | Specifies the file that contains the process ID of the | 1269 | Specifies the file that contains the process ID of the |
1223 | SSH daemon. | 1270 | SSH daemon, or |
1271 | .Dq none | ||
1272 | to not write one. | ||
1224 | The default is | 1273 | The default is |
1225 | .Pa /var/run/sshd.pid . | 1274 | .Pa /var/run/sshd.pid . |
1226 | .It Cm Port | 1275 | .It Cm Port |
@@ -1310,7 +1359,9 @@ which means that rekeying is performed after the cipher's default amount | |||
1310 | of data has been sent or received and no time based rekeying is done. | 1359 | of data has been sent or received and no time based rekeying is done. |
1311 | This option applies to protocol version 2 only. | 1360 | This option applies to protocol version 2 only. |
1312 | .It Cm RevokedKeys | 1361 | .It Cm RevokedKeys |
1313 | Specifies revoked public keys. | 1362 | Specifies revoked public keys file, or |
1363 | .Dq none | ||
1364 | to not use one. | ||
1314 | Keys listed in this file will be refused for public key authentication. | 1365 | Keys listed in this file will be refused for public key authentication. |
1315 | Note that if this file is not readable, then public key authentication will | 1366 | Note that if this file is not readable, then public key authentication will |
1316 | be refused for all users. | 1367 | be refused for all users. |
@@ -1426,7 +1477,9 @@ This option was formerly called | |||
1426 | .Cm KeepAlive . | 1477 | .Cm KeepAlive . |
1427 | .It Cm TrustedUserCAKeys | 1478 | .It Cm TrustedUserCAKeys |
1428 | Specifies a file containing public keys of certificate authorities that are | 1479 | Specifies a file containing public keys of certificate authorities that are |
1429 | trusted to sign user certificates for authentication. | 1480 | trusted to sign user certificates for authentication, or |
1481 | .Dq none | ||
1482 | to not use one. | ||
1430 | Keys are listed one per line; empty lines and comments starting with | 1483 | Keys are listed one per line; empty lines and comments starting with |
1431 | .Ql # | 1484 | .Ql # |
1432 | are allowed. | 1485 | are allowed. |
@@ -1579,7 +1632,9 @@ The default is | |||
1579 | .It Cm XAuthLocation | 1632 | .It Cm XAuthLocation |
1580 | Specifies the full pathname of the | 1633 | Specifies the full pathname of the |
1581 | .Xr xauth 1 | 1634 | .Xr xauth 1 |
1582 | program. | 1635 | program, or |
1636 | .Dq none | ||
1637 | to not use one. | ||
1583 | The default is | 1638 | The default is |
1584 | .Pa /usr/X11R6/bin/xauth . | 1639 | .Pa /usr/X11R6/bin/xauth . |
1585 | .El | 1640 | .El |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshkey.c,v 1.15 2015/03/06 01:40:56 djm Exp $ */ | 1 | /* $OpenBSD: sshkey.c,v 1.19 2015/05/21 04:55:51 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. |
4 | * Copyright (c) 2008 Alexander von Gernler. All rights reserved. | 4 | * Copyright (c) 2008 Alexander von Gernler. All rights reserved. |
@@ -252,7 +252,7 @@ sshkey_names_valid2(const char *names, int allow_wildcard) | |||
252 | if (kt->type == KEY_RSA1) | 252 | if (kt->type == KEY_RSA1) |
253 | continue; | 253 | continue; |
254 | if (match_pattern_list(kt->name, | 254 | if (match_pattern_list(kt->name, |
255 | p, strlen(p), 0) != 0) | 255 | p, 0) != 0) |
256 | break; | 256 | break; |
257 | } | 257 | } |
258 | if (kt->type != -1) | 258 | if (kt->type != -1) |
@@ -762,6 +762,12 @@ to_blob_buf(const struct sshkey *key, struct sshbuf *b, int force_plain) | |||
762 | if (key == NULL) | 762 | if (key == NULL) |
763 | return SSH_ERR_INVALID_ARGUMENT; | 763 | return SSH_ERR_INVALID_ARGUMENT; |
764 | 764 | ||
765 | if (sshkey_is_cert(key)) { | ||
766 | if (key->cert == NULL) | ||
767 | return SSH_ERR_EXPECTED_CERT; | ||
768 | if (sshbuf_len(key->cert->certblob) == 0) | ||
769 | return SSH_ERR_KEY_LACKS_CERTBLOB; | ||
770 | } | ||
765 | type = force_plain ? sshkey_type_plain(key->type) : key->type; | 771 | type = force_plain ? sshkey_type_plain(key->type) : key->type; |
766 | typename = sshkey_ssh_name_from_type_nid(type, key->ecdsa_nid); | 772 | typename = sshkey_ssh_name_from_type_nid(type, key->ecdsa_nid); |
767 | 773 | ||
@@ -1410,98 +1416,116 @@ sshkey_read(struct sshkey *ret, char **cpp) | |||
1410 | } | 1416 | } |
1411 | 1417 | ||
1412 | int | 1418 | int |
1413 | sshkey_write(const struct sshkey *key, FILE *f) | 1419 | sshkey_to_base64(const struct sshkey *key, char **b64p) |
1414 | { | 1420 | { |
1415 | int ret = SSH_ERR_INTERNAL_ERROR; | 1421 | int r = SSH_ERR_INTERNAL_ERROR; |
1416 | struct sshbuf *b = NULL, *bb = NULL; | 1422 | struct sshbuf *b = NULL; |
1417 | char *uu = NULL; | 1423 | char *uu = NULL; |
1424 | |||
1425 | if (b64p != NULL) | ||
1426 | *b64p = NULL; | ||
1427 | if ((b = sshbuf_new()) == NULL) | ||
1428 | return SSH_ERR_ALLOC_FAIL; | ||
1429 | if ((r = sshkey_putb(key, b)) != 0) | ||
1430 | goto out; | ||
1431 | if ((uu = sshbuf_dtob64(b)) == NULL) { | ||
1432 | r = SSH_ERR_ALLOC_FAIL; | ||
1433 | goto out; | ||
1434 | } | ||
1435 | /* Success */ | ||
1436 | if (b64p != NULL) { | ||
1437 | *b64p = uu; | ||
1438 | uu = NULL; | ||
1439 | } | ||
1440 | r = 0; | ||
1441 | out: | ||
1442 | sshbuf_free(b); | ||
1443 | free(uu); | ||
1444 | return r; | ||
1445 | } | ||
1446 | |||
1447 | static int | ||
1448 | sshkey_format_rsa1(const struct sshkey *key, struct sshbuf *b) | ||
1449 | { | ||
1450 | int r = SSH_ERR_INTERNAL_ERROR; | ||
1418 | #ifdef WITH_SSH1 | 1451 | #ifdef WITH_SSH1 |
1419 | u_int bits = 0; | 1452 | u_int bits = 0; |
1420 | char *dec_e = NULL, *dec_n = NULL; | 1453 | char *dec_e = NULL, *dec_n = NULL; |
1421 | #endif /* WITH_SSH1 */ | ||
1422 | 1454 | ||
1423 | if (sshkey_is_cert(key)) { | 1455 | if (key->rsa == NULL || key->rsa->e == NULL || |
1424 | if (key->cert == NULL) | 1456 | key->rsa->n == NULL) { |
1425 | return SSH_ERR_EXPECTED_CERT; | 1457 | r = SSH_ERR_INVALID_ARGUMENT; |
1426 | if (sshbuf_len(key->cert->certblob) == 0) | 1458 | goto out; |
1427 | return SSH_ERR_KEY_LACKS_CERTBLOB; | ||
1428 | } | 1459 | } |
1429 | if ((b = sshbuf_new()) == NULL) | 1460 | if ((dec_e = BN_bn2dec(key->rsa->e)) == NULL || |
1430 | return SSH_ERR_ALLOC_FAIL; | 1461 | (dec_n = BN_bn2dec(key->rsa->n)) == NULL) { |
1431 | switch (key->type) { | 1462 | r = SSH_ERR_ALLOC_FAIL; |
1432 | #ifdef WITH_SSH1 | 1463 | goto out; |
1433 | case KEY_RSA1: | 1464 | } |
1434 | if (key->rsa == NULL || key->rsa->e == NULL || | 1465 | /* size of modulus 'n' */ |
1435 | key->rsa->n == NULL) { | 1466 | if ((bits = BN_num_bits(key->rsa->n)) <= 0) { |
1436 | ret = SSH_ERR_INVALID_ARGUMENT; | 1467 | r = SSH_ERR_INVALID_ARGUMENT; |
1437 | goto out; | 1468 | goto out; |
1438 | } | 1469 | } |
1439 | if ((dec_e = BN_bn2dec(key->rsa->e)) == NULL || | 1470 | if ((r = sshbuf_putf(b, "%u %s %s", bits, dec_e, dec_n)) != 0) |
1440 | (dec_n = BN_bn2dec(key->rsa->n)) == NULL) { | 1471 | goto out; |
1441 | ret = SSH_ERR_ALLOC_FAIL; | 1472 | |
1442 | goto out; | 1473 | /* Success */ |
1443 | } | 1474 | r = 0; |
1444 | /* size of modulus 'n' */ | 1475 | out: |
1445 | if ((bits = BN_num_bits(key->rsa->n)) <= 0) { | 1476 | if (dec_e != NULL) |
1446 | ret = SSH_ERR_INVALID_ARGUMENT; | 1477 | OPENSSL_free(dec_e); |
1447 | goto out; | 1478 | if (dec_n != NULL) |
1448 | } | 1479 | OPENSSL_free(dec_n); |
1449 | if ((ret = sshbuf_putf(b, "%u %s %s", bits, dec_e, dec_n)) != 0) | ||
1450 | goto out; | ||
1451 | #endif /* WITH_SSH1 */ | 1480 | #endif /* WITH_SSH1 */ |
1452 | break; | 1481 | |
1453 | #ifdef WITH_OPENSSL | 1482 | return r; |
1454 | case KEY_DSA: | 1483 | } |
1455 | case KEY_DSA_CERT_V00: | 1484 | |
1456 | case KEY_DSA_CERT: | 1485 | static int |
1457 | case KEY_ECDSA: | 1486 | sshkey_format_text(const struct sshkey *key, struct sshbuf *b) |
1458 | case KEY_ECDSA_CERT: | 1487 | { |
1459 | case KEY_RSA: | 1488 | int r = SSH_ERR_INTERNAL_ERROR; |
1460 | case KEY_RSA_CERT_V00: | 1489 | char *uu = NULL; |
1461 | case KEY_RSA_CERT: | 1490 | |
1462 | #endif /* WITH_OPENSSL */ | 1491 | if (key->type == KEY_RSA1) { |
1463 | case KEY_ED25519: | 1492 | if ((r = sshkey_format_rsa1(key, b)) != 0) |
1464 | case KEY_ED25519_CERT: | ||
1465 | if ((bb = sshbuf_new()) == NULL) { | ||
1466 | ret = SSH_ERR_ALLOC_FAIL; | ||
1467 | goto out; | ||
1468 | } | ||
1469 | if ((ret = sshkey_putb(key, bb)) != 0) | ||
1470 | goto out; | ||
1471 | if ((uu = sshbuf_dtob64(bb)) == NULL) { | ||
1472 | ret = SSH_ERR_ALLOC_FAIL; | ||
1473 | goto out; | 1493 | goto out; |
1474 | } | 1494 | } else { |
1475 | if ((ret = sshbuf_putf(b, "%s ", sshkey_ssh_name(key))) != 0) | 1495 | /* Unsupported key types handled in sshkey_to_base64() */ |
1496 | if ((r = sshkey_to_base64(key, &uu)) != 0) | ||
1476 | goto out; | 1497 | goto out; |
1477 | if ((ret = sshbuf_put(b, uu, strlen(uu))) != 0) | 1498 | if ((r = sshbuf_putf(b, "%s %s", |
1499 | sshkey_ssh_name(key), uu)) != 0) | ||
1478 | goto out; | 1500 | goto out; |
1479 | break; | ||
1480 | default: | ||
1481 | ret = SSH_ERR_KEY_TYPE_UNKNOWN; | ||
1482 | goto out; | ||
1483 | } | 1501 | } |
1502 | r = 0; | ||
1503 | out: | ||
1504 | free(uu); | ||
1505 | return r; | ||
1506 | } | ||
1507 | |||
1508 | int | ||
1509 | sshkey_write(const struct sshkey *key, FILE *f) | ||
1510 | { | ||
1511 | struct sshbuf *b = NULL; | ||
1512 | int r = SSH_ERR_INTERNAL_ERROR; | ||
1513 | |||
1514 | if ((b = sshbuf_new()) == NULL) | ||
1515 | return SSH_ERR_ALLOC_FAIL; | ||
1516 | if ((r = sshkey_format_text(key, b)) != 0) | ||
1517 | goto out; | ||
1484 | if (fwrite(sshbuf_ptr(b), sshbuf_len(b), 1, f) != 1) { | 1518 | if (fwrite(sshbuf_ptr(b), sshbuf_len(b), 1, f) != 1) { |
1485 | if (feof(f)) | 1519 | if (feof(f)) |
1486 | errno = EPIPE; | 1520 | errno = EPIPE; |
1487 | ret = SSH_ERR_SYSTEM_ERROR; | 1521 | r = SSH_ERR_SYSTEM_ERROR; |
1488 | goto out; | 1522 | goto out; |
1489 | } | 1523 | } |
1490 | ret = 0; | 1524 | /* Success */ |
1525 | r = 0; | ||
1491 | out: | 1526 | out: |
1492 | if (b != NULL) | 1527 | sshbuf_free(b); |
1493 | sshbuf_free(b); | 1528 | return r; |
1494 | if (bb != NULL) | ||
1495 | sshbuf_free(bb); | ||
1496 | if (uu != NULL) | ||
1497 | free(uu); | ||
1498 | #ifdef WITH_SSH1 | ||
1499 | if (dec_e != NULL) | ||
1500 | OPENSSL_free(dec_e); | ||
1501 | if (dec_n != NULL) | ||
1502 | OPENSSL_free(dec_n); | ||
1503 | #endif /* WITH_SSH1 */ | ||
1504 | return ret; | ||
1505 | } | 1529 | } |
1506 | 1530 | ||
1507 | const char * | 1531 | const char * |
@@ -2014,8 +2038,8 @@ sshkey_from_blob_internal(struct sshbuf *b, struct sshkey **keyp, | |||
2014 | ret = SSH_ERR_ALLOC_FAIL; | 2038 | ret = SSH_ERR_ALLOC_FAIL; |
2015 | goto out; | 2039 | goto out; |
2016 | } | 2040 | } |
2017 | if (sshbuf_get_bignum2(b, key->rsa->e) == -1 || | 2041 | if (sshbuf_get_bignum2(b, key->rsa->e) != 0 || |
2018 | sshbuf_get_bignum2(b, key->rsa->n) == -1) { | 2042 | sshbuf_get_bignum2(b, key->rsa->n) != 0) { |
2019 | ret = SSH_ERR_INVALID_FORMAT; | 2043 | ret = SSH_ERR_INVALID_FORMAT; |
2020 | goto out; | 2044 | goto out; |
2021 | } | 2045 | } |
@@ -2036,10 +2060,10 @@ sshkey_from_blob_internal(struct sshbuf *b, struct sshkey **keyp, | |||
2036 | ret = SSH_ERR_ALLOC_FAIL; | 2060 | ret = SSH_ERR_ALLOC_FAIL; |
2037 | goto out; | 2061 | goto out; |
2038 | } | 2062 | } |
2039 | if (sshbuf_get_bignum2(b, key->dsa->p) == -1 || | 2063 | if (sshbuf_get_bignum2(b, key->dsa->p) != 0 || |
2040 | sshbuf_get_bignum2(b, key->dsa->q) == -1 || | 2064 | sshbuf_get_bignum2(b, key->dsa->q) != 0 || |
2041 | sshbuf_get_bignum2(b, key->dsa->g) == -1 || | 2065 | sshbuf_get_bignum2(b, key->dsa->g) != 0 || |
2042 | sshbuf_get_bignum2(b, key->dsa->pub_key) == -1) { | 2066 | sshbuf_get_bignum2(b, key->dsa->pub_key) != 0) { |
2043 | ret = SSH_ERR_INVALID_FORMAT; | 2067 | ret = SSH_ERR_INVALID_FORMAT; |
2044 | goto out; | 2068 | goto out; |
2045 | } | 2069 | } |
@@ -3202,7 +3226,7 @@ sshkey_parse_private2(struct sshbuf *blob, int type, const char *passphrase, | |||
3202 | const u_char *cp; | 3226 | const u_char *cp; |
3203 | int r = SSH_ERR_INTERNAL_ERROR; | 3227 | int r = SSH_ERR_INTERNAL_ERROR; |
3204 | size_t encoded_len; | 3228 | size_t encoded_len; |
3205 | size_t i, keylen = 0, ivlen = 0, slen = 0; | 3229 | size_t i, keylen = 0, ivlen = 0, authlen = 0, slen = 0; |
3206 | struct sshbuf *encoded = NULL, *decoded = NULL; | 3230 | struct sshbuf *encoded = NULL, *decoded = NULL; |
3207 | struct sshbuf *kdf = NULL, *decrypted = NULL; | 3231 | struct sshbuf *kdf = NULL, *decrypted = NULL; |
3208 | struct sshcipher_ctx ciphercontext; | 3232 | struct sshcipher_ctx ciphercontext; |
@@ -3312,6 +3336,7 @@ sshkey_parse_private2(struct sshbuf *blob, int type, const char *passphrase, | |||
3312 | /* setup key */ | 3336 | /* setup key */ |
3313 | keylen = cipher_keylen(cipher); | 3337 | keylen = cipher_keylen(cipher); |
3314 | ivlen = cipher_ivlen(cipher); | 3338 | ivlen = cipher_ivlen(cipher); |
3339 | authlen = cipher_authlen(cipher); | ||
3315 | if ((key = calloc(1, keylen + ivlen)) == NULL) { | 3340 | if ((key = calloc(1, keylen + ivlen)) == NULL) { |
3316 | r = SSH_ERR_ALLOC_FAIL; | 3341 | r = SSH_ERR_ALLOC_FAIL; |
3317 | goto out; | 3342 | goto out; |
@@ -3327,19 +3352,25 @@ sshkey_parse_private2(struct sshbuf *blob, int type, const char *passphrase, | |||
3327 | } | 3352 | } |
3328 | } | 3353 | } |
3329 | 3354 | ||
3355 | /* check that an appropriate amount of auth data is present */ | ||
3356 | if (sshbuf_len(decoded) < encrypted_len + authlen) { | ||
3357 | r = SSH_ERR_INVALID_FORMAT; | ||
3358 | goto out; | ||
3359 | } | ||
3360 | |||
3330 | /* decrypt private portion of key */ | 3361 | /* decrypt private portion of key */ |
3331 | if ((r = sshbuf_reserve(decrypted, encrypted_len, &dp)) != 0 || | 3362 | if ((r = sshbuf_reserve(decrypted, encrypted_len, &dp)) != 0 || |
3332 | (r = cipher_init(&ciphercontext, cipher, key, keylen, | 3363 | (r = cipher_init(&ciphercontext, cipher, key, keylen, |
3333 | key + keylen, ivlen, 0)) != 0) | 3364 | key + keylen, ivlen, 0)) != 0) |
3334 | goto out; | 3365 | goto out; |
3335 | if ((r = cipher_crypt(&ciphercontext, 0, dp, sshbuf_ptr(decoded), | 3366 | if ((r = cipher_crypt(&ciphercontext, 0, dp, sshbuf_ptr(decoded), |
3336 | sshbuf_len(decoded), 0, cipher_authlen(cipher))) != 0) { | 3367 | encrypted_len, 0, authlen)) != 0) { |
3337 | /* an integrity error here indicates an incorrect passphrase */ | 3368 | /* an integrity error here indicates an incorrect passphrase */ |
3338 | if (r == SSH_ERR_MAC_INVALID) | 3369 | if (r == SSH_ERR_MAC_INVALID) |
3339 | r = SSH_ERR_KEY_WRONG_PASSPHRASE; | 3370 | r = SSH_ERR_KEY_WRONG_PASSPHRASE; |
3340 | goto out; | 3371 | goto out; |
3341 | } | 3372 | } |
3342 | if ((r = sshbuf_consume(decoded, encrypted_len)) != 0) | 3373 | if ((r = sshbuf_consume(decoded, encrypted_len + authlen)) != 0) |
3343 | goto out; | 3374 | goto out; |
3344 | /* there should be no trailing data */ | 3375 | /* there should be no trailing data */ |
3345 | if (sshbuf_len(decoded) != 0) { | 3376 | if (sshbuf_len(decoded) != 0) { |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshkey.h,v 1.5 2015/01/26 02:59:11 djm Exp $ */ | 1 | /* $OpenBSD: sshkey.h,v 1.6 2015/05/21 04:55:51 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. |
@@ -164,6 +164,7 @@ int sshkey_from_blob(const u_char *, size_t, struct sshkey **); | |||
164 | int sshkey_fromb(struct sshbuf *, struct sshkey **); | 164 | int sshkey_fromb(struct sshbuf *, struct sshkey **); |
165 | int sshkey_froms(struct sshbuf *, struct sshkey **); | 165 | int sshkey_froms(struct sshbuf *, struct sshkey **); |
166 | int sshkey_to_blob(const struct sshkey *, u_char **, size_t *); | 166 | int sshkey_to_blob(const struct sshkey *, u_char **, size_t *); |
167 | int sshkey_to_base64(const struct sshkey *, char **); | ||
167 | int sshkey_putb(const struct sshkey *, struct sshbuf *); | 168 | int sshkey_putb(const struct sshkey *, struct sshbuf *); |
168 | int sshkey_puts(const struct sshkey *, struct sshbuf *); | 169 | int sshkey_puts(const struct sshkey *, struct sshbuf *); |
169 | int sshkey_plain_to_blob(const struct sshkey *, u_char **, size_t *); | 170 | int sshkey_plain_to_blob(const struct sshkey *, u_char **, size_t *); |
@@ -85,12 +85,12 @@ pty_allocate(int *ptyfd, int *ttyfd, char *namebuf, size_t namebuflen) | |||
85 | void | 85 | void |
86 | pty_release(const char *tty) | 86 | pty_release(const char *tty) |
87 | { | 87 | { |
88 | #ifndef __APPLE_PRIVPTY__ | 88 | #if !defined(__APPLE_PRIVPTY__) && !defined(HAVE_OPENPTY) |
89 | if (chown(tty, (uid_t) 0, (gid_t) 0) < 0) | 89 | if (chown(tty, (uid_t) 0, (gid_t) 0) < 0) |
90 | error("chown %.100s 0 0 failed: %.100s", tty, strerror(errno)); | 90 | error("chown %.100s 0 0 failed: %.100s", tty, strerror(errno)); |
91 | if (chmod(tty, (mode_t) 0666) < 0) | 91 | if (chmod(tty, (mode_t) 0666) < 0) |
92 | error("chmod %.100s 0666 failed: %.100s", tty, strerror(errno)); | 92 | error("chmod %.100s 0666 failed: %.100s", tty, strerror(errno)); |
93 | #endif /* __APPLE_PRIVPTY__ */ | 93 | #endif /* !__APPLE_PRIVPTY__ && !HAVE_OPENPTY */ |
94 | } | 94 | } |
95 | 95 | ||
96 | /* Makes the tty the process's controlling tty and sets it to sane modes. */ | 96 | /* Makes the tty the process's controlling tty and sets it to sane modes. */ |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: uidswap.c,v 1.37 2015/01/16 06:40:12 deraadt Exp $ */ | 1 | /* $OpenBSD: uidswap.c,v 1.39 2015/06/24 01:49:19 dtucker Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -86,7 +86,7 @@ temporarily_use_uid(struct passwd *pw) | |||
86 | if (saved_egroupslen < 0) | 86 | if (saved_egroupslen < 0) |
87 | fatal("getgroups: %.100s", strerror(errno)); | 87 | fatal("getgroups: %.100s", strerror(errno)); |
88 | if (saved_egroupslen > 0) { | 88 | if (saved_egroupslen > 0) { |
89 | saved_egroups = xrealloc(saved_egroups, | 89 | saved_egroups = xreallocarray(saved_egroups, |
90 | saved_egroupslen, sizeof(gid_t)); | 90 | saved_egroupslen, sizeof(gid_t)); |
91 | if (getgroups(saved_egroupslen, saved_egroups) < 0) | 91 | if (getgroups(saved_egroupslen, saved_egroups) < 0) |
92 | fatal("getgroups: %.100s", strerror(errno)); | 92 | fatal("getgroups: %.100s", strerror(errno)); |
@@ -104,7 +104,7 @@ temporarily_use_uid(struct passwd *pw) | |||
104 | if (user_groupslen < 0) | 104 | if (user_groupslen < 0) |
105 | fatal("getgroups: %.100s", strerror(errno)); | 105 | fatal("getgroups: %.100s", strerror(errno)); |
106 | if (user_groupslen > 0) { | 106 | if (user_groupslen > 0) { |
107 | user_groups = xrealloc(user_groups, | 107 | user_groups = xreallocarray(user_groups, |
108 | user_groupslen, sizeof(gid_t)); | 108 | user_groupslen, sizeof(gid_t)); |
109 | if (getgroups(user_groupslen, user_groups) < 0) | 109 | if (getgroups(user_groupslen, user_groups) < 0) |
110 | fatal("getgroups: %.100s", strerror(errno)); | 110 | fatal("getgroups: %.100s", strerror(errno)); |
diff --git a/uuencode.c b/uuencode.c index 294c74304..7fc867a11 100644 --- a/uuencode.c +++ b/uuencode.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: uuencode.c,v 1.27 2013/05/17 00:13:14 djm Exp $ */ | 1 | /* $OpenBSD: uuencode.c,v 1.28 2015/04/24 01:36:24 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -82,7 +82,7 @@ dump_base64(FILE *fp, const u_char *data, u_int len) | |||
82 | fprintf(fp, "dump_base64: len > 65536\n"); | 82 | fprintf(fp, "dump_base64: len > 65536\n"); |
83 | return; | 83 | return; |
84 | } | 84 | } |
85 | buf = xmalloc(2*len); | 85 | buf = xreallocarray(NULL, 2, len); |
86 | n = uuencode(data, len, buf, 2*len); | 86 | n = uuencode(data, len, buf, 2*len); |
87 | for (i = 0; i < n; i++) { | 87 | for (i = 0; i < n; i++) { |
88 | fprintf(fp, "%c", buf[i]); | 88 | fprintf(fp, "%c", buf[i]); |
@@ -1,6 +1,6 @@ | |||
1 | /* $OpenBSD: version.h,v 1.72 2015/03/04 18:53:53 djm Exp $ */ | 1 | /* $OpenBSD: version.h,v 1.73 2015/07/01 01:55:13 djm Exp $ */ |
2 | 2 | ||
3 | #define SSH_VERSION "OpenSSH_6.8" | 3 | #define SSH_VERSION "OpenSSH_6.9" |
4 | 4 | ||
5 | #define SSH_PORTABLE "p1" | 5 | #define SSH_PORTABLE "p1" |
6 | #define SSH_RELEASE_MINIMUM SSH_VERSION SSH_PORTABLE | 6 | #define SSH_RELEASE_MINIMUM SSH_VERSION SSH_PORTABLE |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: xmalloc.c,v 1.31 2015/02/06 23:21:59 millert Exp $ */ | 1 | /* $OpenBSD: xmalloc.c,v 1.32 2015/04/24 01:36:01 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -56,22 +56,14 @@ xcalloc(size_t nmemb, size_t size) | |||
56 | } | 56 | } |
57 | 57 | ||
58 | void * | 58 | void * |
59 | xrealloc(void *ptr, size_t nmemb, size_t size) | 59 | xreallocarray(void *ptr, size_t nmemb, size_t size) |
60 | { | 60 | { |
61 | void *new_ptr; | 61 | void *new_ptr; |
62 | size_t new_size = nmemb * size; | ||
63 | 62 | ||
64 | if (new_size == 0) | 63 | new_ptr = reallocarray(ptr, nmemb, size); |
65 | fatal("xrealloc: zero size"); | ||
66 | if (SIZE_MAX / nmemb < size) | ||
67 | fatal("xrealloc: nmemb * size > SIZE_MAX"); | ||
68 | if (ptr == NULL) | ||
69 | new_ptr = malloc(new_size); | ||
70 | else | ||
71 | new_ptr = realloc(ptr, new_size); | ||
72 | if (new_ptr == NULL) | 64 | if (new_ptr == NULL) |
73 | fatal("xrealloc: out of memory (new_size %zu bytes)", | 65 | fatal("xreallocarray: out of memory (%zu elements of %zu bytes)", |
74 | new_size); | 66 | nmemb, size); |
75 | return new_ptr; | 67 | return new_ptr; |
76 | } | 68 | } |
77 | 69 | ||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: xmalloc.h,v 1.14 2013/05/17 00:13:14 djm Exp $ */ | 1 | /* $OpenBSD: xmalloc.h,v 1.15 2015/04/24 01:36:01 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
@@ -18,7 +18,7 @@ | |||
18 | 18 | ||
19 | void *xmalloc(size_t); | 19 | void *xmalloc(size_t); |
20 | void *xcalloc(size_t, size_t); | 20 | void *xcalloc(size_t, size_t); |
21 | void *xrealloc(void *, size_t, size_t); | 21 | void *xreallocarray(void *, size_t, size_t); |
22 | char *xstrdup(const char *); | 22 | char *xstrdup(const char *); |
23 | int xasprintf(char **, const char *, ...) | 23 | int xasprintf(char **, const char *, ...) |
24 | __attribute__((__format__ (printf, 2, 3))) | 24 | __attribute__((__format__ (printf, 2, 3))) |