X7ROOT File Manager
Current Path:
/opt/golang/1.22.0/src/crypto/x509
opt
/
golang
/
1.22.0
/
src
/
crypto
/
x509
/
📁
..
📄
boring.go
(993 B)
📄
boring_test.go
(3.75 KB)
📄
cert_pool.go
(8.93 KB)
📄
cert_pool_test.go
(2.25 KB)
📄
example_test.go
(5.32 KB)
📄
hybrid_pool_test.go
(3.72 KB)
📁
internal
📄
name_constraints_test.go
(44.92 KB)
📄
notboring.go
(258 B)
📄
oid.go
(5.75 KB)
📄
oid_test.go
(3.7 KB)
📄
parser.go
(36.57 KB)
📄
parser_test.go
(2.63 KB)
📄
pem_decrypt.go
(7.2 KB)
📄
pem_decrypt_test.go
(8.92 KB)
📄
pkcs1.go
(4.66 KB)
📄
pkcs8.go
(5.8 KB)
📄
pkcs8_test.go
(8.95 KB)
📁
pkix
📄
platform_root_cert.pem
(749 B)
📄
platform_root_key.pem
(227 B)
📄
platform_test.go
(7.28 KB)
📄
root.go
(2.03 KB)
📄
root_aix.go
(410 B)
📄
root_bsd.go
(748 B)
📄
root_darwin.go
(3.48 KB)
📄
root_darwin_test.go
(3.7 KB)
📄
root_linux.go
(1.11 KB)
📄
root_plan9.go
(828 B)
📄
root_solaris.go
(538 B)
📄
root_test.go
(2.62 KB)
📄
root_unix.go
(2.67 KB)
📄
root_unix_test.go
(6.07 KB)
📄
root_wasm.go
(373 B)
📄
root_windows.go
(8.74 KB)
📄
root_windows_test.go
(3.43 KB)
📄
sec1.go
(4.58 KB)
📄
sec1_test.go
(5.36 KB)
📄
test-file.crt
(1.9 KB)
📁
testdata
📄
verify.go
(35.3 KB)
📄
verify_test.go
(108.97 KB)
📄
x509.go
(82.3 KB)
📄
x509_test.go
(159.96 KB)
📄
x509_test_import.go
(1.7 KB)
Editing: oid_test.go
// Copyright 2023 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package x509 import ( "encoding/asn1" "math" "testing" ) func TestOID(t *testing.T) { var tests = []struct { raw []byte valid bool str string ints []uint64 }{ {[]byte{}, false, "", nil}, {[]byte{0x80, 0x01}, false, "", nil}, {[]byte{0x01, 0x80, 0x01}, false, "", nil}, {[]byte{1, 2, 3}, true, "0.1.2.3", []uint64{0, 1, 2, 3}}, {[]byte{41, 2, 3}, true, "1.1.2.3", []uint64{1, 1, 2, 3}}, {[]byte{86, 2, 3}, true, "2.6.2.3", []uint64{2, 6, 2, 3}}, {[]byte{41, 255, 255, 255, 127}, true, "1.1.268435455", []uint64{1, 1, 268435455}}, {[]byte{41, 0x87, 255, 255, 255, 127}, true, "1.1.2147483647", []uint64{1, 1, 2147483647}}, {[]byte{41, 255, 255, 255, 255, 127}, true, "1.1.34359738367", []uint64{1, 1, 34359738367}}, {[]byte{42, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "1.2.9223372036854775807", []uint64{1, 2, 9223372036854775807}}, {[]byte{43, 0x81, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "1.3.18446744073709551615", []uint64{1, 3, 18446744073709551615}}, {[]byte{44, 0x83, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "1.4.36893488147419103231", nil}, {[]byte{85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.5.1180591620717411303423", nil}, {[]byte{85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.5.19342813113834066795298815", nil}, {[]byte{255, 255, 255, 127}, true, "2.268435375", []uint64{2, 268435375}}, {[]byte{0x87, 255, 255, 255, 127}, true, "2.2147483567", []uint64{2, 2147483567}}, {[]byte{255, 127}, true, "2.16303", []uint64{2, 16303}}, {[]byte{255, 255, 255, 255, 127}, true, "2.34359738287", []uint64{2, 34359738287}}, {[]byte{255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.9223372036854775727", []uint64{2, 9223372036854775727}}, {[]byte{0x81, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.18446744073709551535", []uint64{2, 18446744073709551535}}, {[]byte{0x83, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.36893488147419103151", nil}, {[]byte{255, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.1180591620717411303343", nil}, {[]byte{255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127}, true, "2.19342813113834066795298735", nil}, } for _, v := range tests { oid, ok := newOIDFromDER(v.raw) if ok != v.valid { if ok { t.Errorf("%v: unexpected success while parsing: %v", v.raw, oid) } else { t.Errorf("%v: unexpected failure while parsing", v.raw) } continue } if !ok { continue } if str := oid.String(); str != v.str { t.Errorf("%v: oid.String() = %v, want; %v", v.raw, str, v.str) } var asn1OID asn1.ObjectIdentifier for _, v := range v.ints { if v > math.MaxInt32 { asn1OID = nil break } asn1OID = append(asn1OID, int(v)) } o, ok := oid.toASN1OID() if shouldOk := asn1OID != nil; shouldOk != ok { if ok { t.Errorf("%v: oid.toASN1OID() unexpected success", v.raw) } else { t.Errorf("%v: oid.toASN1OID() unexpected fauilure", v.raw) } continue } if asn1OID != nil { if !o.Equal(asn1OID) { t.Errorf("%v: oid.toASN1OID(asn1OID).Equal(oid) = false, want: true", v.raw) } } if v.ints != nil { oid2, err := OIDFromInts(v.ints) if err != nil { t.Errorf("%v: OIDFromInts() unexpected error: %v", v.raw, err) } if !oid2.Equal(oid) { t.Errorf("%v: %#v.Equal(%#v) = false, want: true", v.raw, oid2, oid) } } } } func mustNewOIDFromInts(t *testing.T, ints []uint64) OID { oid, err := OIDFromInts(ints) if err != nil { t.Fatalf("OIDFromInts(%v) unexpected error: %v", ints, err) } return oid }
Upload File
Create Folder