nx_x509_parse_globalsign_test.nx source
↩ module page · 939 lines · 17729 B
1// nx_x509_parse_globalsign_test.nx -- isolated x509_parse on hardcoded
2// GlobalSign Root CA DER (889 bytes), extracted from Mozilla bundle
3// 2026-05-20. Compares parse rc between C-bootstrap (RV64) and
4// self-host (x86_64) builds to pin LO=-4 root cause.
5//
6// expect_exit: 0 on success, non-zero rc on failure.
7import "nx_syscalls.nx"
8import "nx_x509.nx"
9
10func dump_dec(label0: i64, label1: i64, v: i64) -> i64 {
11 let lab: *u8 = sys_mmap(8)
12 lab[0] = label0 as u8; lab[1] = label1 as u8; lab[2] = 0x3D
13 sys_write(2, lab, 3)
14 var av: i64 = v
15 if av < 0 {
16 let neg: *u8 = sys_mmap(8); neg[0]=0x2D; sys_write(2, neg, 1)
17 av = 0 - av
18 }
19 if av == 0 {
20 let z: *u8 = sys_mmap(8); z[0]=0x30; sys_write(2, z, 1)
21 } else {
22 let buf: *u8 = sys_mmap(16)
23 var pos: i64 = 0
24 var x: i64 = av
25 while x > 0 { buf[pos] = (0x30 + (x % 10)) as u8; x = x / 10; pos = pos + 1 }
26 let out: *u8 = sys_mmap(16)
27 var oi: i64 = 0
28 while oi < pos { out[oi] = buf[pos - 1 - oi]; oi = oi + 1 }
29 sys_write(2, out, pos)
30 }
31 let nl: *u8 = sys_mmap(8); nl[0]=0x0A; sys_write(2, nl, 1)
32 return 0
33}
34
35// 889 bytes
36func _gs_init(buf: *u8) -> i64 {
37 buf[0] = 48
38 buf[1] = 130
39 buf[2] = 3
40 buf[3] = 117
41 buf[4] = 48
42 buf[5] = 130
43 buf[6] = 2
44 buf[7] = 93
45 buf[8] = 160
46 buf[9] = 3
47 buf[10] = 2
48 buf[11] = 1
49 buf[12] = 2
50 buf[13] = 2
51 buf[14] = 11
52 buf[15] = 4
53 buf[16] = 0
54 buf[17] = 0
55 buf[18] = 0
56 buf[19] = 0
57 buf[20] = 1
58 buf[21] = 21
59 buf[22] = 75
60 buf[23] = 90
61 buf[24] = 195
62 buf[25] = 148
63 buf[26] = 48
64 buf[27] = 13
65 buf[28] = 6
66 buf[29] = 9
67 buf[30] = 42
68 buf[31] = 134
69 buf[32] = 72
70 buf[33] = 134
71 buf[34] = 247
72 buf[35] = 13
73 buf[36] = 1
74 buf[37] = 1
75 buf[38] = 5
76 buf[39] = 5
77 buf[40] = 0
78 buf[41] = 48
79 buf[42] = 87
80 buf[43] = 49
81 buf[44] = 11
82 buf[45] = 48
83 buf[46] = 9
84 buf[47] = 6
85 buf[48] = 3
86 buf[49] = 85
87 buf[50] = 4
88 buf[51] = 6
89 buf[52] = 19
90 buf[53] = 2
91 buf[54] = 66
92 buf[55] = 69
93 buf[56] = 49
94 buf[57] = 25
95 buf[58] = 48
96 buf[59] = 23
97 buf[60] = 6
98 buf[61] = 3
99 buf[62] = 85
100 buf[63] = 4
101 buf[64] = 10
102 buf[65] = 19
103 buf[66] = 16
104 buf[67] = 71
105 buf[68] = 108
106 buf[69] = 111
107 buf[70] = 98
108 buf[71] = 97
109 buf[72] = 108
110 buf[73] = 83
111 buf[74] = 105
112 buf[75] = 103
113 buf[76] = 110
114 buf[77] = 32
115 buf[78] = 110
116 buf[79] = 118
117 buf[80] = 45
118 buf[81] = 115
119 buf[82] = 97
120 buf[83] = 49
121 buf[84] = 16
122 buf[85] = 48
123 buf[86] = 14
124 buf[87] = 6
125 buf[88] = 3
126 buf[89] = 85
127 buf[90] = 4
128 buf[91] = 11
129 buf[92] = 19
130 buf[93] = 7
131 buf[94] = 82
132 buf[95] = 111
133 buf[96] = 111
134 buf[97] = 116
135 buf[98] = 32
136 buf[99] = 67
137 buf[100] = 65
138 buf[101] = 49
139 buf[102] = 27
140 buf[103] = 48
141 buf[104] = 25
142 buf[105] = 6
143 buf[106] = 3
144 buf[107] = 85
145 buf[108] = 4
146 buf[109] = 3
147 buf[110] = 19
148 buf[111] = 18
149 buf[112] = 71
150 buf[113] = 108
151 buf[114] = 111
152 buf[115] = 98
153 buf[116] = 97
154 buf[117] = 108
155 buf[118] = 83
156 buf[119] = 105
157 buf[120] = 103
158 buf[121] = 110
159 buf[122] = 32
160 buf[123] = 82
161 buf[124] = 111
162 buf[125] = 111
163 buf[126] = 116
164 buf[127] = 32
165 buf[128] = 67
166 buf[129] = 65
167 buf[130] = 48
168 buf[131] = 30
169 buf[132] = 23
170 buf[133] = 13
171 buf[134] = 57
172 buf[135] = 56
173 buf[136] = 48
174 buf[137] = 57
175 buf[138] = 48
176 buf[139] = 49
177 buf[140] = 49
178 buf[141] = 50
179 buf[142] = 48
180 buf[143] = 48
181 buf[144] = 48
182 buf[145] = 48
183 buf[146] = 90
184 buf[147] = 23
185 buf[148] = 13
186 buf[149] = 50
187 buf[150] = 56
188 buf[151] = 48
189 buf[152] = 49
190 buf[153] = 50
191 buf[154] = 56
192 buf[155] = 49
193 buf[156] = 50
194 buf[157] = 48
195 buf[158] = 48
196 buf[159] = 48
197 buf[160] = 48
198 buf[161] = 90
199 buf[162] = 48
200 buf[163] = 87
201 buf[164] = 49
202 buf[165] = 11
203 buf[166] = 48
204 buf[167] = 9
205 buf[168] = 6
206 buf[169] = 3
207 buf[170] = 85
208 buf[171] = 4
209 buf[172] = 6
210 buf[173] = 19
211 buf[174] = 2
212 buf[175] = 66
213 buf[176] = 69
214 buf[177] = 49
215 buf[178] = 25
216 buf[179] = 48
217 buf[180] = 23
218 buf[181] = 6
219 buf[182] = 3
220 buf[183] = 85
221 buf[184] = 4
222 buf[185] = 10
223 buf[186] = 19
224 buf[187] = 16
225 buf[188] = 71
226 buf[189] = 108
227 buf[190] = 111
228 buf[191] = 98
229 buf[192] = 97
230 buf[193] = 108
231 buf[194] = 83
232 buf[195] = 105
233 buf[196] = 103
234 buf[197] = 110
235 buf[198] = 32
236 buf[199] = 110
237 buf[200] = 118
238 buf[201] = 45
239 buf[202] = 115
240 buf[203] = 97
241 buf[204] = 49
242 buf[205] = 16
243 buf[206] = 48
244 buf[207] = 14
245 buf[208] = 6
246 buf[209] = 3
247 buf[210] = 85
248 buf[211] = 4
249 buf[212] = 11
250 buf[213] = 19
251 buf[214] = 7
252 buf[215] = 82
253 buf[216] = 111
254 buf[217] = 111
255 buf[218] = 116
256 buf[219] = 32
257 buf[220] = 67
258 buf[221] = 65
259 buf[222] = 49
260 buf[223] = 27
261 buf[224] = 48
262 buf[225] = 25
263 buf[226] = 6
264 buf[227] = 3
265 buf[228] = 85
266 buf[229] = 4
267 buf[230] = 3
268 buf[231] = 19
269 buf[232] = 18
270 buf[233] = 71
271 buf[234] = 108
272 buf[235] = 111
273 buf[236] = 98
274 buf[237] = 97
275 buf[238] = 108
276 buf[239] = 83
277 buf[240] = 105
278 buf[241] = 103
279 buf[242] = 110
280 buf[243] = 32
281 buf[244] = 82
282 buf[245] = 111
283 buf[246] = 111
284 buf[247] = 116
285 buf[248] = 32
286 buf[249] = 67
287 buf[250] = 65
288 buf[251] = 48
289 buf[252] = 130
290 buf[253] = 1
291 buf[254] = 34
292 buf[255] = 48
293 buf[256] = 13
294 buf[257] = 6
295 buf[258] = 9
296 buf[259] = 42
297 buf[260] = 134
298 buf[261] = 72
299 buf[262] = 134
300 buf[263] = 247
301 buf[264] = 13
302 buf[265] = 1
303 buf[266] = 1
304 buf[267] = 1
305 buf[268] = 5
306 buf[269] = 0
307 buf[270] = 3
308 buf[271] = 130
309 buf[272] = 1
310 buf[273] = 15
311 buf[274] = 0
312 buf[275] = 48
313 buf[276] = 130
314 buf[277] = 1
315 buf[278] = 10
316 buf[279] = 2
317 buf[280] = 130
318 buf[281] = 1
319 buf[282] = 1
320 buf[283] = 0
321 buf[284] = 218
322 buf[285] = 14
323 buf[286] = 230
324 buf[287] = 153
325 buf[288] = 141
326 buf[289] = 206
327 buf[290] = 163
328 buf[291] = 227
329 buf[292] = 79
330 buf[293] = 138
331 buf[294] = 126
332 buf[295] = 251
333 buf[296] = 241
334 buf[297] = 139
335 buf[298] = 131
336 buf[299] = 37
337 buf[300] = 107
338 buf[301] = 234
339 buf[302] = 72
340 buf[303] = 31
341 buf[304] = 241
342 buf[305] = 42
343 buf[306] = 176
344 buf[307] = 185
345 buf[308] = 149
346 buf[309] = 17
347 buf[310] = 4
348 buf[311] = 189
349 buf[312] = 240
350 buf[313] = 99
351 buf[314] = 209
352 buf[315] = 226
353 buf[316] = 103
354 buf[317] = 102
355 buf[318] = 207
356 buf[319] = 28
357 buf[320] = 221
358 buf[321] = 207
359 buf[322] = 27
360 buf[323] = 72
361 buf[324] = 43
362 buf[325] = 238
363 buf[326] = 141
364 buf[327] = 137
365 buf[328] = 142
366 buf[329] = 154
367 buf[330] = 175
368 buf[331] = 41
369 buf[332] = 128
370 buf[333] = 101
371 buf[334] = 171
372 buf[335] = 233
373 buf[336] = 199
374 buf[337] = 45
375 buf[338] = 18
376 buf[339] = 203
377 buf[340] = 171
378 buf[341] = 28
379 buf[342] = 76
380 buf[343] = 112
381 buf[344] = 7
382 buf[345] = 161
383 buf[346] = 61
384 buf[347] = 10
385 buf[348] = 48
386 buf[349] = 205
387 buf[350] = 21
388 buf[351] = 141
389 buf[352] = 79
390 buf[353] = 248
391 buf[354] = 221
392 buf[355] = 212
393 buf[356] = 140
394 buf[357] = 80
395 buf[358] = 21
396 buf[359] = 28
397 buf[360] = 239
398 buf[361] = 80
399 buf[362] = 238
400 buf[363] = 196
401 buf[364] = 46
402 buf[365] = 247
403 buf[366] = 252
404 buf[367] = 233
405 buf[368] = 82
406 buf[369] = 242
407 buf[370] = 145
408 buf[371] = 125
409 buf[372] = 224
410 buf[373] = 109
411 buf[374] = 213
412 buf[375] = 53
413 buf[376] = 48
414 buf[377] = 142
415 buf[378] = 94
416 buf[379] = 67
417 buf[380] = 115
418 buf[381] = 242
419 buf[382] = 65
420 buf[383] = 233
421 buf[384] = 213
422 buf[385] = 106
423 buf[386] = 227
424 buf[387] = 178
425 buf[388] = 137
426 buf[389] = 58
427 buf[390] = 86
428 buf[391] = 57
429 buf[392] = 56
430 buf[393] = 111
431 buf[394] = 6
432 buf[395] = 60
433 buf[396] = 136
434 buf[397] = 105
435 buf[398] = 91
436 buf[399] = 42
437 buf[400] = 77
438 buf[401] = 197
439 buf[402] = 167
440 buf[403] = 84
441 buf[404] = 184
442 buf[405] = 108
443 buf[406] = 137
444 buf[407] = 204
445 buf[408] = 155
446 buf[409] = 249
447 buf[410] = 60
448 buf[411] = 202
449 buf[412] = 229
450 buf[413] = 253
451 buf[414] = 137
452 buf[415] = 245
453 buf[416] = 18
454 buf[417] = 60
455 buf[418] = 146
456 buf[419] = 120
457 buf[420] = 150
458 buf[421] = 214
459 buf[422] = 220
460 buf[423] = 116
461 buf[424] = 110
462 buf[425] = 147
463 buf[426] = 68
464 buf[427] = 97
465 buf[428] = 209
466 buf[429] = 141
467 buf[430] = 199
468 buf[431] = 70
469 buf[432] = 178
470 buf[433] = 117
471 buf[434] = 14
472 buf[435] = 134
473 buf[436] = 232
474 buf[437] = 25
475 buf[438] = 138
476 buf[439] = 213
477 buf[440] = 109
478 buf[441] = 108
479 buf[442] = 213
480 buf[443] = 120
481 buf[444] = 22
482 buf[445] = 149
483 buf[446] = 162
484 buf[447] = 233
485 buf[448] = 200
486 buf[449] = 10
487 buf[450] = 56
488 buf[451] = 235
489 buf[452] = 242
490 buf[453] = 36
491 buf[454] = 19
492 buf[455] = 79
493 buf[456] = 115
494 buf[457] = 84
495 buf[458] = 147
496 buf[459] = 19
497 buf[460] = 133
498 buf[461] = 58
499 buf[462] = 27
500 buf[463] = 188
501 buf[464] = 30
502 buf[465] = 52
503 buf[466] = 181
504 buf[467] = 139
505 buf[468] = 5
506 buf[469] = 140
507 buf[470] = 185
508 buf[471] = 119
509 buf[472] = 139
510 buf[473] = 177
511 buf[474] = 219
512 buf[475] = 31
513 buf[476] = 32
514 buf[477] = 145
515 buf[478] = 171
516 buf[479] = 9
517 buf[480] = 83
518 buf[481] = 110
519 buf[482] = 144
520 buf[483] = 206
521 buf[484] = 123
522 buf[485] = 55
523 buf[486] = 116
524 buf[487] = 185
525 buf[488] = 112
526 buf[489] = 71
527 buf[490] = 145
528 buf[491] = 34
529 buf[492] = 81
530 buf[493] = 99
531 buf[494] = 22
532 buf[495] = 121
533 buf[496] = 174
534 buf[497] = 177
535 buf[498] = 174
536 buf[499] = 65
537 buf[500] = 38
538 buf[501] = 8
539 buf[502] = 200
540 buf[503] = 25
541 buf[504] = 43
542 buf[505] = 209
543 buf[506] = 70
544 buf[507] = 170
545 buf[508] = 72
546 buf[509] = 214
547 buf[510] = 100
548 buf[511] = 42
549 buf[512] = 215
550 buf[513] = 131
551 buf[514] = 52
552 buf[515] = 255
553 buf[516] = 44
554 buf[517] = 42
555 buf[518] = 193
556 buf[519] = 108
557 buf[520] = 25
558 buf[521] = 67
559 buf[522] = 74
560 buf[523] = 7
561 buf[524] = 133
562 buf[525] = 231
563 buf[526] = 211
564 buf[527] = 124
565 buf[528] = 246
566 buf[529] = 33
567 buf[530] = 104
568 buf[531] = 239
569 buf[532] = 234
570 buf[533] = 242
571 buf[534] = 82
572 buf[535] = 159
573 buf[536] = 127
574 buf[537] = 147
575 buf[538] = 144
576 buf[539] = 207
577 buf[540] = 2
578 buf[541] = 3
579 buf[542] = 1
580 buf[543] = 0
581 buf[544] = 1
582 buf[545] = 163
583 buf[546] = 66
584 buf[547] = 48
585 buf[548] = 64
586 buf[549] = 48
587 buf[550] = 14
588 buf[551] = 6
589 buf[552] = 3
590 buf[553] = 85
591 buf[554] = 29
592 buf[555] = 15
593 buf[556] = 1
594 buf[557] = 1
595 buf[558] = 255
596 buf[559] = 4
597 buf[560] = 4
598 buf[561] = 3
599 buf[562] = 2
600 buf[563] = 1
601 buf[564] = 6
602 buf[565] = 48
603 buf[566] = 15
604 buf[567] = 6
605 buf[568] = 3
606 buf[569] = 85
607 buf[570] = 29
608 buf[571] = 19
609 buf[572] = 1
610 buf[573] = 1
611 buf[574] = 255
612 buf[575] = 4
613 buf[576] = 5
614 buf[577] = 48
615 buf[578] = 3
616 buf[579] = 1
617 buf[580] = 1
618 buf[581] = 255
619 buf[582] = 48
620 buf[583] = 29
621 buf[584] = 6
622 buf[585] = 3
623 buf[586] = 85
624 buf[587] = 29
625 buf[588] = 14
626 buf[589] = 4
627 buf[590] = 22
628 buf[591] = 4
629 buf[592] = 20
630 buf[593] = 96
631 buf[594] = 123
632 buf[595] = 102
633 buf[596] = 26
634 buf[597] = 69
635 buf[598] = 13
636 buf[599] = 151
637 buf[600] = 202
638 buf[601] = 137
639 buf[602] = 80
640 buf[603] = 47
641 buf[604] = 125
642 buf[605] = 4
643 buf[606] = 205
644 buf[607] = 52
645 buf[608] = 168
646 buf[609] = 255
647 buf[610] = 252
648 buf[611] = 253
649 buf[612] = 75
650 buf[613] = 48
651 buf[614] = 13
652 buf[615] = 6
653 buf[616] = 9
654 buf[617] = 42
655 buf[618] = 134
656 buf[619] = 72
657 buf[620] = 134
658 buf[621] = 247
659 buf[622] = 13
660 buf[623] = 1
661 buf[624] = 1
662 buf[625] = 5
663 buf[626] = 5
664 buf[627] = 0
665 buf[628] = 3
666 buf[629] = 130
667 buf[630] = 1
668 buf[631] = 1
669 buf[632] = 0
670 buf[633] = 214
671 buf[634] = 115
672 buf[635] = 231
673 buf[636] = 124
674 buf[637] = 79
675 buf[638] = 118
676 buf[639] = 208
677 buf[640] = 141
678 buf[641] = 191
679 buf[642] = 236
680 buf[643] = 186
681 buf[644] = 162
682 buf[645] = 190
683 buf[646] = 52
684 buf[647] = 197
685 buf[648] = 40
686 buf[649] = 50
687 buf[650] = 181
688 buf[651] = 124
689 buf[652] = 252
690 buf[653] = 108
691 buf[654] = 156
692 buf[655] = 44
693 buf[656] = 43
694 buf[657] = 189
695 buf[658] = 9
696 buf[659] = 158
697 buf[660] = 83
698 buf[661] = 191
699 buf[662] = 107
700 buf[663] = 94
701 buf[664] = 170
702 buf[665] = 17
703 buf[666] = 72
704 buf[667] = 182
705 buf[668] = 229
706 buf[669] = 8
707 buf[670] = 163
708 buf[671] = 179
709 buf[672] = 202
710 buf[673] = 61
711 buf[674] = 97
712 buf[675] = 77
713 buf[676] = 211
714 buf[677] = 70
715 buf[678] = 9
716 buf[679] = 179
717 buf[680] = 62
718 buf[681] = 195
719 buf[682] = 160
720 buf[683] = 227
721 buf[684] = 99
722 buf[685] = 85
723 buf[686] = 27
724 buf[687] = 242
725 buf[688] = 186
726 buf[689] = 239
727 buf[690] = 173
728 buf[691] = 57
729 buf[692] = 225
730 buf[693] = 67
731 buf[694] = 185
732 buf[695] = 56
733 buf[696] = 163
734 buf[697] = 230
735 buf[698] = 47
736 buf[699] = 138
737 buf[700] = 38
738 buf[701] = 59
739 buf[702] = 239
740 buf[703] = 160
741 buf[704] = 80
742 buf[705] = 86
743 buf[706] = 249
744 buf[707] = 198
745 buf[708] = 10
746 buf[709] = 253
747 buf[710] = 56
748 buf[711] = 205
749 buf[712] = 196
750 buf[713] = 11
751 buf[714] = 112
752 buf[715] = 81
753 buf[716] = 148
754 buf[717] = 151
755 buf[718] = 152
756 buf[719] = 4
757 buf[720] = 223
758 buf[721] = 195
759 buf[722] = 95
760 buf[723] = 148
761 buf[724] = 213
762 buf[725] = 21
763 buf[726] = 201
764 buf[727] = 20
765 buf[728] = 65
766 buf[729] = 156
767 buf[730] = 196
768 buf[731] = 93
769 buf[732] = 117
770 buf[733] = 100
771 buf[734] = 21
772 buf[735] = 13
773 buf[736] = 255
774 buf[737] = 85
775 buf[738] = 48
776 buf[739] = 236
777 buf[740] = 134
778 buf[741] = 143
779 buf[742] = 255
780 buf[743] = 13
781 buf[744] = 239
782 buf[745] = 44
783 buf[746] = 185
784 buf[747] = 99
785 buf[748] = 70
786 buf[749] = 246
787 buf[750] = 170
788 buf[751] = 252
789 buf[752] = 223
790 buf[753] = 188
791 buf[754] = 105
792 buf[755] = 253
793 buf[756] = 46
794 buf[757] = 18
795 buf[758] = 72
796 buf[759] = 100
797 buf[760] = 154
798 buf[761] = 224
799 buf[762] = 149
800 buf[763] = 240
801 buf[764] = 166
802 buf[765] = 239
803 buf[766] = 41
804 buf[767] = 143
805 buf[768] = 1
806 buf[769] = 177
807 buf[770] = 21
808 buf[771] = 181
809 buf[772] = 12
810 buf[773] = 29
811 buf[774] = 165
812 buf[775] = 254
813 buf[776] = 105
814 buf[777] = 44
815 buf[778] = 105
816 buf[779] = 36
817 buf[780] = 120
818 buf[781] = 30
819 buf[782] = 179
820 buf[783] = 167
821 buf[784] = 28
822 buf[785] = 113
823 buf[786] = 98
824 buf[787] = 238
825 buf[788] = 202
826 buf[789] = 200
827 buf[790] = 151
828 buf[791] = 172
829 buf[792] = 23
830 buf[793] = 93
831 buf[794] = 138
832 buf[795] = 194
833 buf[796] = 248
834 buf[797] = 71
835 buf[798] = 134
836 buf[799] = 110
837 buf[800] = 42
838 buf[801] = 196
839 buf[802] = 86
840 buf[803] = 49
841 buf[804] = 149
842 buf[805] = 208
843 buf[806] = 103
844 buf[807] = 137
845 buf[808] = 133
846 buf[809] = 43
847 buf[810] = 249
848 buf[811] = 108
849 buf[812] = 166
850 buf[813] = 93
851 buf[814] = 70
852 buf[815] = 157
853 buf[816] = 12
854 buf[817] = 170
855 buf[818] = 130
856 buf[819] = 228
857 buf[820] = 153
858 buf[821] = 81
859 buf[822] = 221
860 buf[823] = 112
861 buf[824] = 183
862 buf[825] = 219
863 buf[826] = 86
864 buf[827] = 61
865 buf[828] = 97
866 buf[829] = 228
867 buf[830] = 106
868 buf[831] = 225
869 buf[832] = 92
870 buf[833] = 214
871 buf[834] = 246
872 buf[835] = 254
873 buf[836] = 61
874 buf[837] = 222
875 buf[838] = 65
876 buf[839] = 204
877 buf[840] = 7
878 buf[841] = 174
879 buf[842] = 99
880 buf[843] = 82
881 buf[844] = 191
882 buf[845] = 83
883 buf[846] = 83
884 buf[847] = 244
885 buf[848] = 43
886 buf[849] = 233
887 buf[850] = 199
888 buf[851] = 253
889 buf[852] = 182
890 buf[853] = 247
891 buf[854] = 130
892 buf[855] = 95
893 buf[856] = 133
894 buf[857] = 210
895 buf[858] = 65
896 buf[859] = 24
897 buf[860] = 219
898 buf[861] = 129
899 buf[862] = 179
900 buf[863] = 4
901 buf[864] = 28
902 buf[865] = 197
903 buf[866] = 31
904 buf[867] = 164
905 buf[868] = 128
906 buf[869] = 111
907 buf[870] = 21
908 buf[871] = 32
909 buf[872] = 201
910 buf[873] = 222
911 buf[874] = 12
912 buf[875] = 136
913 buf[876] = 10
914 buf[877] = 29
915 buf[878] = 214
916 buf[879] = 102
917 buf[880] = 85
918 buf[881] = 226
919 buf[882] = 252
920 buf[883] = 72
921 buf[884] = 201
922 buf[885] = 41
923 buf[886] = 38
924 buf[887] = 105
925 buf[888] = 224
926 return 889
927}
928
929func main() -> i64 {
930 let buf: *u8 = sys_mmap(1024)
931 let n: i64 = _gs_init(buf)
932 dump_dec(0x4C, 0x4E, n)
933 let cert_raw: *u8 = sys_mmap(256)
934 let cert: *X509Cert = cert_raw as *X509Cert
935 let rc: i64 = x509_parse(buf, n, cert)
936 dump_dec(0x52, 0x43, rc)
937 if rc < 0 { return 0 - rc }
938 return 0
939}