diff options
Diffstat (limited to 'pkg/linux_amd64/crypto/tls.a')
-rw-r--r-- | pkg/linux_amd64/crypto/tls.a | 1857 |
1 files changed, 1857 insertions, 0 deletions
diff --git a/pkg/linux_amd64/crypto/tls.a b/pkg/linux_amd64/crypto/tls.a new file mode 100644 index 000000000..534a1b364 --- /dev/null +++ b/pkg/linux_amd64/crypto/tls.a @@ -0,0 +1,1857 @@ +!<arch> +__.PKGDEF 0 0 0 644 52720 ` +go object linux amd64 go1.4.1 X:precisestack + +$$ +package tls + import ioutil "io/ioutil" + import net "net" + import md5 "crypto/md5" + import cipher "crypto/cipher" + import rand "crypto/rand" + import sha1 "crypto/sha1" + import crypto "crypto" + import rsa "crypto/rsa" + import pem "encoding/pem" + import sync "sync" + import runtime "runtime" + import time "time" + import sha256 "crypto/sha256" + import hash "hash" + import errors "errors" + import io "io" + import elliptic "crypto/elliptic" + import rc4 "crypto/rc4" + import x509 "crypto/x509" + import hmac "crypto/hmac" + import asn1 "encoding/asn1" + import strconv "strconv" + import strings "strings" + import fmt "fmt" + import aes "crypto/aes" + import list "container/list" + import ecdsa "crypto/ecdsa" + import des "crypto/des" + import big "math/big" + import bytes "bytes" + import subtle "crypto/subtle" + const @"".TLS_RSA_WITH_RC4_128_SHA uint16 = 0x5 + const @"".TLS_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xA + const @"".TLS_RSA_WITH_AES_128_CBC_SHA uint16 = 0x2F + const @"".TLS_RSA_WITH_AES_256_CBC_SHA uint16 = 0x35 + const @"".TLS_ECDHE_ECDSA_WITH_RC4_128_SHA uint16 = 0xC007 + const @"".TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA uint16 = 0xC009 + const @"".TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA uint16 = 0xC00A + const @"".TLS_ECDHE_RSA_WITH_RC4_128_SHA uint16 = 0xC011 + const @"".TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC012 + const @"".TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA uint16 = 0xC013 + const @"".TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA uint16 = 0xC014 + const @"".TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC02F + const @"".TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC02B + const @"".TLS_FALLBACK_SCSV uint16 = 0x5600 + const @"".VersionSSL30 = 0x300 + const @"".VersionTLS10 = 0x301 + const @"".VersionTLS11 = 0x302 + const @"".VersionTLS12 = 0x303 + type @"".CurveID uint16 + const @"".CurveP256 @"".CurveID = 0x17 + const @"".CurveP384 @"".CurveID = 0x18 + const @"".CurveP521 @"".CurveID = 0x19 + type @"crypto/x509".SignatureAlgorithm int + type @"crypto/x509".PublicKeyAlgorithm int + type @"math/big".Word uintptr + type @"math/big".divisor struct { @"math/big".bbb @"math/big".nat; @"math/big".nbits int; @"math/big".ndigits int } + import rand "math/rand" // indirect + type @"math/rand".Source interface { Int63() (? int64); Seed(@"math/rand".seed int64) } + type @"math/rand".Rand struct { @"math/rand".src @"math/rand".Source } + func (@"math/rand".r·2 *@"math/rand".Rand) ExpFloat64 () (? float64) + func (@"math/rand".r·2 *@"math/rand".Rand) Float32 () (? float32) + func (@"math/rand".r·2 *@"math/rand".Rand) Float64 () (? float64) + func (@"math/rand".r·2 *@"math/rand".Rand) Int () (? int) + func (@"math/rand".r·2 *@"math/rand".Rand) Int31 () (? int32) + func (@"math/rand".r·2 *@"math/rand".Rand) Int31n (@"math/rand".n·3 int32) (? int32) + func (@"math/rand".r·2 *@"math/rand".Rand) Int63 () (? int64) + func (@"math/rand".r·2 *@"math/rand".Rand) Int63n (@"math/rand".n·3 int64) (? int64) + func (@"math/rand".r·2 *@"math/rand".Rand) Intn (@"math/rand".n·3 int) (? int) + func (@"math/rand".r·2 *@"math/rand".Rand) NormFloat64 () (? float64) + func (@"math/rand".r·2 *@"math/rand".Rand) Perm (@"math/rand".n·3 int) (? []int) + func (@"math/rand".r·1 *@"math/rand".Rand) Seed (@"math/rand".seed·2 int64) + func (@"math/rand".r·2 *@"math/rand".Rand) Uint32 () (? uint32) + type @"io".RuneScanner interface { ReadRune() (@"io".r rune, @"io".size int, @"io".err error); UnreadRune() (? error) } + type @"math/big".nat []@"math/big".Word + func (@"math/big".z·2 @"math/big".nat) @"math/big".add (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".and (@"math/big".x·3 @"math/big".nat "esc:0x0", @"math/big".y·4 @"math/big".nat "esc:0x0") (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".andNot (@"math/big".x·3 @"math/big".nat "esc:0x0", @"math/big".y·4 @"math/big".nat "esc:0x0") (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x0") @"math/big".bit (@"math/big".i·3 uint) (? uint) { var @"math/big".j·4 int; ; @"math/big".j·4 = int(@"math/big".i·3 / 0x40); if @"math/big".j·4 >= len(@"math/big".z·2) { return 0x0 }; return uint(@"math/big".z·2[@"math/big".j·4] >> (@"math/big".i·3 % 0x40) & @"math/big".Word(0x1)) } + func (@"math/big".x·2 @"math/big".nat "esc:0x0") @"math/big".bitLen () (? int) + func (@"math/big".z·2 @"math/big".nat "esc:0x0") @"math/big".bytes (@"math/big".buf·3 []byte "esc:0x0") (@"math/big".i·1 int) + func (@"math/big".z·1 @"math/big".nat "esc:0x0") @"math/big".clear () + func (@"math/big".x·2 @"math/big".nat "esc:0x0") @"math/big".cmp (@"math/big".y·3 @"math/big".nat "esc:0x0") (@"math/big".r·1 int) + func (@"math/big".q·1 @"math/big".nat) @"math/big".convertWords (@"math/big".s·2 []byte "esc:0x0", @"math/big".charset·3 string "esc:0x0", @"math/big".b·4 @"math/big".Word, @"math/big".ndigits·5 int, @"math/big".bb·6 @"math/big".Word, @"math/big".table·7 []@"math/big".divisor "esc:0x0") + func (@"math/big".x·2 @"math/big".nat "esc:0x0") @"math/big".decimalString () (? string) + func (@"math/big".z·3 @"math/big".nat) @"math/big".div (@"math/big".z2·4 @"math/big".nat, @"math/big".u·5 @"math/big".nat, @"math/big".v·6 @"math/big".nat) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".nat) + func (@"math/big".z·3 @"math/big".nat "esc:0x2") @"math/big".divLarge (@"math/big".u·4 @"math/big".nat, @"math/big".uIn·5 @"math/big".nat, @"math/big".v·6 @"math/big".nat) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".nat) + func (@"math/big".z·3 @"math/big".nat) @"math/big".divW (@"math/big".x·4 @"math/big".nat, @"math/big".y·5 @"math/big".Word) (@"math/big".q·1 @"math/big".nat, @"math/big".r·2 @"math/big".Word) + func (@"math/big".z·2 @"math/big".nat) @"math/big".expNN (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x0", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".expNNWindowed (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x0", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".expWW (@"math/big".x·3 @"math/big".Word, @"math/big".y·4 @"math/big".Word) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".make (@"math/big".n·3 int) (? @"math/big".nat) + func (@"math/big".x·2 @"math/big".nat) @"math/big".modW (@"math/big".d·3 @"math/big".Word) (@"math/big".r·1 @"math/big".Word) + func (@"math/big".z·2 @"math/big".nat) @"math/big".mul (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".mulAddWW (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".Word, @"math/big".r·5 @"math/big".Word) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".mulRange (@"math/big".a·3 uint64, @"math/big".b·4 uint64) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".norm () (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".or (@"math/big".x·3 @"math/big".nat "esc:0x0", @"math/big".y·4 @"math/big".nat "esc:0x0") (? @"math/big".nat) + func (@"math/big".n·2 @"math/big".nat) @"math/big".probablyPrime (@"math/big".reps·3 int) (? bool) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".random (@"math/big".rand·3 *@"math/rand".Rand, @"math/big".limit·4 @"math/big".nat "esc:0x0", @"math/big".n·5 int) (? @"math/big".nat) + func (@"math/big".z·4 @"math/big".nat) @"math/big".scan (@"math/big".r·5 @"io".RuneScanner, @"math/big".base·6 int) (? @"math/big".nat, ? int, ? error) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".set (@"math/big".x·3 @"math/big".nat "esc:0x0") (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".setBit (@"math/big".x·3 @"math/big".nat "esc:0x0", @"math/big".i·4 uint, @"math/big".b·5 uint) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".setBytes (@"math/big".buf·3 []byte "esc:0x0") (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".setUint64 (@"math/big".x·3 uint64) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".setWord (@"math/big".x·3 @"math/big".Word) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".shl (@"math/big".x·3 @"math/big".nat, @"math/big".s·4 uint) (? @"math/big".nat) + func (@"math/big".z·2 @"math/big".nat) @"math/big".shr (@"math/big".x·3 @"math/big".nat, @"math/big".s·4 uint) (? @"math/big".nat) + func (@"math/big".x·2 @"math/big".nat "esc:0x0") @"math/big".string (@"math/big".charset·3 string "esc:0x0") (? string) + func (@"math/big".z·2 @"math/big".nat) @"math/big".sub (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat) (? @"math/big".nat) + func (@"math/big".x·2 @"math/big".nat "esc:0x0") @"math/big".trailingZeroBits () (? uint) + func (@"math/big".z·2 @"math/big".nat "esc:0x2") @"math/big".xor (@"math/big".x·3 @"math/big".nat "esc:0x0", @"math/big".y·4 @"math/big".nat "esc:0x0") (? @"math/big".nat) + type @"fmt".State interface { Flag(@"fmt".c int) (? bool); Precision() (@"fmt".prec int, @"fmt".ok bool); Width() (@"fmt".wid int, @"fmt".ok bool); Write(@"fmt".b []byte) (@"fmt".ret int, @"fmt".err error) } + type @"fmt".ScanState interface { Read(@"fmt".buf []byte) (@"fmt".n int, @"fmt".err error); ReadRune() (@"fmt".r rune, @"fmt".size int, @"fmt".err error); SkipSpace(); Token(@"fmt".skipSpace bool, @"fmt".f func(? rune) (? bool)) (@"fmt".token []byte, @"fmt".err error); UnreadRune() (? error); Width() (@"fmt".wid int, @"fmt".ok bool) } + type @"math/big".Int struct { @"math/big".neg bool; @"math/big".abs @"math/big".nat } + func (@"math/big".z·2 *@"math/big".Int) Abs (@"math/big".x·3 *@"math/big".Int "esc:0x0") (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Add (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) And (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) AndNot (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Binomial (@"math/big".n·3 int64, @"math/big".k·4 int64) (? *@"math/big".Int) + func (@"math/big".x·2 *@"math/big".Int) Bit (@"math/big".i·3 int) (? uint) + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") BitLen () (? int) + func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Bits () (? []@"math/big".Word) { return @"math/big".x·2.@"math/big".abs } + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") Bytes () (? []byte) + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") Cmp (@"math/big".y·3 *@"math/big".Int "esc:0x0") (@"math/big".r·1 int) + func (@"math/big".z·2 *@"math/big".Int) Div (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·3 *@"math/big".Int) DivMod (@"math/big".x·4 *@"math/big".Int, @"math/big".y·5 *@"math/big".Int, @"math/big".m·6 *@"math/big".Int) (? *@"math/big".Int, ? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Exp (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int "esc:0x0", @"math/big".m·5 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".x·1 *@"math/big".Int "esc:0x0") Format (@"math/big".s·2 @"fmt".State, @"math/big".ch·3 rune) + func (@"math/big".z·2 *@"math/big".Int) GCD (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int, @"math/big".a·5 *@"math/big".Int, @"math/big".b·6 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) GobDecode (@"math/big".buf·3 []byte "esc:0x0") (? error) + func (@"math/big".x·3 *@"math/big".Int "esc:0x0") GobEncode () (? []byte, ? error) + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") Int64 () (? int64) + func (@"math/big".z·2 *@"math/big".Int) Lsh (@"math/big".x·3 *@"math/big".Int, @"math/big".n·4 uint) (? *@"math/big".Int) + func (@"math/big".z·3 *@"math/big".Int "esc:0x0") MarshalJSON () (? []byte, ? error) + func (@"math/big".z·3 *@"math/big".Int "esc:0x0") MarshalText () (@"math/big".text·1 []byte, @"math/big".err·2 error) + func (@"math/big".z·2 *@"math/big".Int) Mod (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) ModInverse (@"math/big".g·3 *@"math/big".Int, @"math/big".n·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Mul (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) MulRange (@"math/big".a·3 int64, @"math/big".b·4 int64) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Neg (@"math/big".x·3 *@"math/big".Int "esc:0x0") (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Not (@"math/big".x·3 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Or (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".x·2 *@"math/big".Int) ProbablyPrime (@"math/big".n·3 int) (? bool) + func (@"math/big".z·2 *@"math/big".Int) Quo (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·3 *@"math/big".Int) QuoRem (@"math/big".x·4 *@"math/big".Int, @"math/big".y·5 *@"math/big".Int, @"math/big".r·6 *@"math/big".Int) (? *@"math/big".Int, ? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Rand (@"math/big".rnd·3 *@"math/rand".Rand, @"math/big".n·4 *@"math/big".Int "esc:0x0") (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Rem (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Rsh (@"math/big".x·3 *@"math/big".Int, @"math/big".n·4 uint) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) Scan (@"math/big".s·3 @"fmt".ScanState, @"math/big".ch·4 rune) (? error) + func (@"math/big".z·2 *@"math/big".Int) Set (@"math/big".x·3 *@"math/big".Int "esc:0x0") (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) SetBit (@"math/big".x·3 *@"math/big".Int, @"math/big".i·4 int, @"math/big".b·5 uint) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int "esc:0x2") SetBits (@"math/big".abs·3 []@"math/big".Word) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) SetBytes (@"math/big".buf·3 []byte "esc:0x0") (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) SetInt64 (@"math/big".x·3 int64) (? *@"math/big".Int) + func (@"math/big".z·3 *@"math/big".Int) SetString (@"math/big".s·4 string, @"math/big".base·5 int) (? *@"math/big".Int, ? bool) + func (@"math/big".z·2 *@"math/big".Int) SetUint64 (@"math/big".x·3 uint64) (? *@"math/big".Int) + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") Sign () (? int) { if len(@"math/big".x·2.@"math/big".abs) == 0x0 { return 0x0 }; if @"math/big".x·2.@"math/big".neg { return -0x1 }; return 0x1 } + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") String () (? string) + func (@"math/big".z·2 *@"math/big".Int) Sub (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".x·2 *@"math/big".Int "esc:0x0") Uint64 () (? uint64) + func (@"math/big".z·2 *@"math/big".Int) UnmarshalJSON (@"math/big".text·3 []byte) (? error) + func (@"math/big".z·2 *@"math/big".Int) UnmarshalText (@"math/big".text·3 []byte) (? error) + func (@"math/big".z·2 *@"math/big".Int) Xor (@"math/big".x·3 *@"math/big".Int, @"math/big".y·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·2 *@"math/big".Int) @"math/big".binaryGCD (@"math/big".a·3 *@"math/big".Int, @"math/big".b·4 *@"math/big".Int) (? *@"math/big".Int) + func (@"math/big".z·4 *@"math/big".Int) @"math/big".scan (@"math/big".r·5 @"io".RuneScanner, @"math/big".base·6 int) (? *@"math/big".Int, ? int, ? error) + import pkix "crypto/x509/pkix" // indirect + type @"encoding/asn1".ObjectIdentifier []int + func (@"encoding/asn1".oi·2 @"encoding/asn1".ObjectIdentifier "esc:0x0") Equal (@"encoding/asn1".other·3 @"encoding/asn1".ObjectIdentifier "esc:0x0") (? bool) + func (@"encoding/asn1".oi·2 @"encoding/asn1".ObjectIdentifier "esc:0x0") String () (? string) + type @"crypto/x509/pkix".AttributeTypeAndValue struct { Type @"encoding/asn1".ObjectIdentifier; Value interface {} } + type @"crypto/x509/pkix".RelativeDistinguishedNameSET []@"crypto/x509/pkix".AttributeTypeAndValue + type @"crypto/x509/pkix".RDNSequence []@"crypto/x509/pkix".RelativeDistinguishedNameSET + type @"crypto/x509/pkix".Name struct { Country []string; Organization []string; OrganizationalUnit []string; Locality []string; Province []string; StreetAddress []string; PostalCode []string; SerialNumber string; CommonName string; Names []@"crypto/x509/pkix".AttributeTypeAndValue } + func (@"crypto/x509/pkix".n·1 *@"crypto/x509/pkix".Name) FillFromRDNSequence (@"crypto/x509/pkix".rdns·2 *@"crypto/x509/pkix".RDNSequence "esc:0x0") + func (@"crypto/x509/pkix".n·2 @"crypto/x509/pkix".Name) ToRDNSequence () (@"crypto/x509/pkix".ret·1 @"crypto/x509/pkix".RDNSequence) + type @"time".zone struct { @"time".name string; @"time".offset int; @"time".isDST bool } + type @"time".zoneTrans struct { @"time".when int64; @"time".index uint8; @"time".isstd bool; @"time".isutc bool } + type @"time".Location struct { @"time".name string; @"time".zone []@"time".zone; @"time".tx []@"time".zoneTrans; @"time".cacheStart int64; @"time".cacheEnd int64; @"time".cacheZone *@"time".zone } + func (@"time".l·2 *@"time".Location "esc:0x0") String () (? string) + func (@"time".l·2 *@"time".Location "esc:0x0") @"time".firstZoneUsed () (? bool) + func (@"time".l·2 *@"time".Location "esc:0x2") @"time".get () (? *@"time".Location) + func (@"time".l·6 *@"time".Location "esc:0x1") @"time".lookup (@"time".sec·7 int64) (@"time".name·1 string, @"time".offset·2 int, @"time".isDST·3 bool, @"time".start·4 int64, @"time".end·5 int64) + func (@"time".l·2 *@"time".Location "esc:0x0") @"time".lookupFirstZone () (? int) + func (@"time".l·4 *@"time".Location "esc:0x0") @"time".lookupName (@"time".name·5 string "esc:0x0", @"time".unix·6 int64) (@"time".offset·1 int, @"time".isDST·2 bool, @"time".ok·3 bool) + type @"time".Duration int64 + func (@"time".d·2 @"time".Duration) Hours () (? float64) { var @"time".hour·3 @"time".Duration; ; @"time".hour·3 = @"time".d·2 / @"time".Duration(0x34630B8A000); var @"time".nsec·4 @"time".Duration; ; @"time".nsec·4 = @"time".d·2 % @"time".Duration(0x34630B8A000); return float64(@"time".hour·3) + float64(@"time".nsec·4) * 0x9C5FFF26ED75Fp-93 } + func (@"time".d·2 @"time".Duration) Minutes () (? float64) { var @"time".min·3 @"time".Duration; ; @"time".min·3 = @"time".d·2 / @"time".Duration(0xDF8475800); var @"time".nsec·4 @"time".Duration; ; @"time".nsec·4 = @"time".d·2 % @"time".Duration(0xDF8475800); return float64(@"time".min·3) + float64(@"time".nsec·4) * 0x9299FF347E9E9p-87 } + func (@"time".d·2 @"time".Duration) Nanoseconds () (? int64) { return int64(@"time".d·2) } + func (@"time".d·2 @"time".Duration) Seconds () (? float64) { var @"time".sec·3 @"time".Duration; ; @"time".sec·3 = @"time".d·2 / @"time".Duration(0x3B9ACA00); var @"time".nsec·4 @"time".Duration; ; @"time".nsec·4 = @"time".d·2 % @"time".Duration(0x3B9ACA00); return float64(@"time".sec·3) + float64(@"time".nsec·4) * 0x112E0BE826D695p-82 } + func (@"time".d·2 @"time".Duration) String () (? string) + type @"time".Month int + func (@"time".m·2 @"time".Month) String () (? string) { return @"time".months[@"time".m·2 - @"time".Month(0x1)] } + type @"time".Weekday int + func (@"time".d·2 @"time".Weekday) String () (? string) { return @"time".days[@"time".d·2] } + type @"time".Time struct { @"time".sec int64; @"time".nsec int32; @"time".loc *@"time".Location } + func (@"time".t·2 @"time".Time "esc:0x2") Add (@"time".d·3 @"time".Duration) (? @"time".Time) + func (@"time".t·2 @"time".Time "esc:0x2") AddDate (@"time".years·3 int, @"time".months·4 int, @"time".days·5 int) (? @"time".Time) + func (@"time".t·2 @"time".Time "esc:0x0") After (@"time".u·3 @"time".Time "esc:0x0") (? bool) { return @"time".t·2.@"time".sec > @"time".u·3.@"time".sec || @"time".t·2.@"time".sec == @"time".u·3.@"time".sec && @"time".t·2.@"time".nsec > @"time".u·3.@"time".nsec } + func (@"time".t·2 @"time".Time "esc:0x0") Before (@"time".u·3 @"time".Time "esc:0x0") (? bool) { return @"time".t·2.@"time".sec < @"time".u·3.@"time".sec || @"time".t·2.@"time".sec == @"time".u·3.@"time".sec && @"time".t·2.@"time".nsec < @"time".u·3.@"time".nsec } + func (@"time".t·4 @"time".Time "esc:0x0") Clock () (@"time".hour·1 int, @"time".min·2 int, @"time".sec·3 int) + func (@"time".t·4 @"time".Time "esc:0x0") Date () (@"time".year·1 int, @"time".month·2 @"time".Month, @"time".day·3 int) + func (@"time".t·2 @"time".Time "esc:0x0") Day () (? int) + func (@"time".t·2 @"time".Time "esc:0x0") Equal (@"time".u·3 @"time".Time "esc:0x0") (? bool) { return @"time".t·2.@"time".sec == @"time".u·3.@"time".sec && @"time".t·2.@"time".nsec == @"time".u·3.@"time".nsec } + func (@"time".t·2 @"time".Time "esc:0x0") Format (@"time".layout·3 string "esc:0x0") (? string) + func (@"time".t·2 *@"time".Time "esc:0x0") GobDecode (@"time".data·3 []byte "esc:0x0") (? error) + func (@"time".t·3 @"time".Time "esc:0x0") GobEncode () (? []byte, ? error) + func (@"time".t·2 @"time".Time "esc:0x0") Hour () (? int) + func (@"time".t·3 @"time".Time "esc:0x0") ISOWeek () (@"time".year·1 int, @"time".week·2 int) + func (@"time".t·2 @"time".Time "esc:0x2") In (@"time".loc·3 *@"time".Location "esc:0x2") (? @"time".Time) + func (@"time".t·2 @"time".Time "esc:0x0") IsZero () (? bool) { return @"time".t·2.@"time".sec == 0x0 && @"time".t·2.@"time".nsec == 0x0 } + func (@"time".t·2 @"time".Time "esc:0x2") Local () (? @"time".Time) { @"time".t·2.@"time".loc = @"time".Local; return @"time".t·2 } + func (@"time".t·2 @"time".Time "esc:0x2") Location () (? *@"time".Location) { var @"time".l·3 *@"time".Location; ; @"time".l·3 = @"time".t·2.@"time".loc; if @"time".l·3 == nil { @"time".l·3 = @"time".UTC }; return @"time".l·3 } + func (@"time".t·3 @"time".Time "esc:0x0") MarshalBinary () (? []byte, ? error) + func (@"time".t·3 @"time".Time "esc:0x0") MarshalJSON () (? []byte, ? error) + func (@"time".t·3 @"time".Time "esc:0x0") MarshalText () (? []byte, ? error) + func (@"time".t·2 @"time".Time "esc:0x0") Minute () (? int) + func (@"time".t·2 @"time".Time "esc:0x0") Month () (? @"time".Month) + func (@"time".t·2 @"time".Time "esc:0x0") Nanosecond () (? int) { return int(@"time".t·2.@"time".nsec) } + func (@"time".t·2 @"time".Time "esc:0x2") Round (@"time".d·3 @"time".Duration) (? @"time".Time) + func (@"time".t·2 @"time".Time "esc:0x0") Second () (? int) + func (@"time".t·2 @"time".Time "esc:0x0") String () (? string) + func (@"time".t·2 @"time".Time "esc:0x0") Sub (@"time".u·3 @"time".Time "esc:0x0") (? @"time".Duration) + func (@"time".t·2 @"time".Time "esc:0x2") Truncate (@"time".d·3 @"time".Duration) (? @"time".Time) + func (@"time".t·2 @"time".Time "esc:0x2") UTC () (? @"time".Time) { @"time".t·2.@"time".loc = @"time".UTC; return @"time".t·2 } + func (@"time".t·2 @"time".Time "esc:0x0") Unix () (? int64) { return @"time".t·2.@"time".sec + -0xE7791F700 } + func (@"time".t·2 @"time".Time "esc:0x0") UnixNano () (? int64) { return (@"time".t·2.@"time".sec + -0xE7791F700) * 0x3B9ACA00 + int64(@"time".t·2.@"time".nsec) } + func (@"time".t·2 *@"time".Time "esc:0x0") UnmarshalBinary (@"time".data·3 []byte "esc:0x0") (? error) + func (@"time".t·2 *@"time".Time "esc:0x0") UnmarshalJSON (@"time".data·3 []byte "esc:0x0") (@"time".err·1 error) + func (@"time".t·2 *@"time".Time "esc:0x0") UnmarshalText (@"time".data·3 []byte "esc:0x0") (@"time".err·1 error) + func (@"time".t·2 @"time".Time "esc:0x0") Weekday () (? @"time".Weekday) + func (@"time".t·2 @"time".Time "esc:0x0") Year () (? int) + func (@"time".t·2 @"time".Time "esc:0x0") YearDay () (? int) + func (@"time".t·3 @"time".Time "esc:0x0") Zone () (@"time".name·1 string, @"time".offset·2 int) + func (@"time".t·2 @"time".Time "esc:0x0") @"time".abs () (? uint64) + func (@"time".t·5 @"time".Time "esc:0x0") @"time".date (@"time".full·6 bool) (@"time".year·1 int, @"time".month·2 @"time".Month, @"time".day·3 int, @"time".yday·4 int) + func (@"time".t·4 @"time".Time "esc:0x1") @"time".locabs () (@"time".name·1 string, @"time".offset·2 int, @"time".abs·3 uint64) + type @"crypto/x509".KeyUsage int + type @"crypto/x509/pkix".Extension struct { Id @"encoding/asn1".ObjectIdentifier; Critical bool "asn1:\"optional\""; Value []byte } + type @"crypto/x509".ExtKeyUsage int + type @"net".IPMask []byte + func (@"net".m·3 @"net".IPMask "esc:0x0") Size () (@"net".ones·1 int, @"net".bits·2 int) + func (@"net".m·2 @"net".IPMask "esc:0x0") String () (? string) + type @"net".IP []byte + func (@"net".ip·2 @"net".IP "esc:0x0") DefaultMask () (? @"net".IPMask) + func (@"net".ip·2 @"net".IP "esc:0x0") Equal (@"net".x·3 @"net".IP "esc:0x0") (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsGlobalUnicast () (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsInterfaceLocalMulticast () (? bool) { return len(@"net".ip·2) == 0x10 && @"net".ip·2[0x0] == byte(0xFF) && @"net".ip·2[0x1] & byte(0xF) == byte(0x1) } + func (@"net".ip·2 @"net".IP "esc:0x0") IsLinkLocalMulticast () (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsLinkLocalUnicast () (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsLoopback () (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsMulticast () (? bool) + func (@"net".ip·2 @"net".IP "esc:0x0") IsUnspecified () (? bool) + func (@"net".ip·3 @"net".IP "esc:0x0") MarshalText () (? []byte, ? error) + func (@"net".ip·2 @"net".IP "esc:0x0") Mask (@"net".mask·3 @"net".IPMask "esc:0x0") (? @"net".IP) + func (@"net".ip·2 @"net".IP "esc:0x0") String () (? string) + func (@"net".ip·2 @"net".IP "esc:0x2") To16 () (? @"net".IP) + func (@"net".ip·2 @"net".IP "esc:0x2") To4 () (? @"net".IP) + func (@"net".ip·2 *@"net".IP "esc:0x0") UnmarshalText (@"net".text·3 []byte "esc:0x0") (? error) + type @"encoding/asn1".RawContent []byte + type @"encoding/asn1".RawValue struct { Class int; Tag int; IsCompound bool; Bytes []byte; FullBytes []byte } + type @"crypto/x509/pkix".AlgorithmIdentifier struct { Algorithm @"encoding/asn1".ObjectIdentifier; Parameters @"encoding/asn1".RawValue "asn1:\"optional\"" } + type @"crypto/x509/pkix".RevokedCertificate struct { SerialNumber *@"math/big".Int; RevocationTime @"time".Time; Extensions []@"crypto/x509/pkix".Extension "asn1:\"optional\"" } + type @"crypto/x509/pkix".TBSCertificateList struct { Raw @"encoding/asn1".RawContent; Version int "asn1:\"optional,default:2\""; Signature @"crypto/x509/pkix".AlgorithmIdentifier; Issuer @"crypto/x509/pkix".RDNSequence; ThisUpdate @"time".Time; NextUpdate @"time".Time "asn1:\"optional\""; RevokedCertificates []@"crypto/x509/pkix".RevokedCertificate "asn1:\"optional\""; Extensions []@"crypto/x509/pkix".Extension "asn1:\"tag:0,optional,explicit\"" } + type @"encoding/asn1".BitString struct { Bytes []byte; BitLength int } + func (@"encoding/asn1".b·2 @"encoding/asn1".BitString "esc:0x0") At (@"encoding/asn1".i·3 int) (? int) { if @"encoding/asn1".i·3 < 0x0 || @"encoding/asn1".i·3 >= @"encoding/asn1".b·2.BitLength { return 0x0 }; var @"encoding/asn1".x·4 int; ; @"encoding/asn1".x·4 = @"encoding/asn1".i·3 / 0x8; var @"encoding/asn1".y·5 uint; ; @"encoding/asn1".y·5 = 0x7 - uint(@"encoding/asn1".i·3 % 0x8); return int(@"encoding/asn1".b·2.Bytes[@"encoding/asn1".x·4] >> @"encoding/asn1".y·5) & 0x1 } + func (@"encoding/asn1".b·2 @"encoding/asn1".BitString "esc:0x2") RightAlign () (? []byte) + type @"crypto/x509/pkix".CertificateList struct { TBSCertList @"crypto/x509/pkix".TBSCertificateList; SignatureAlgorithm @"crypto/x509/pkix".AlgorithmIdentifier; SignatureValue @"encoding/asn1".BitString } + func (@"crypto/x509/pkix".certList·2 *@"crypto/x509/pkix".CertificateList "esc:0x0") HasExpired (@"crypto/x509/pkix".now·3 @"time".Time "esc:0x0") (? bool) + type @"io".Reader interface { Read(@"io".p []byte) (@"io".n int, @"io".err error) } + type @"crypto/x509".CertPool struct { @"crypto/x509".bySubjectKeyId map[string][]int; @"crypto/x509".byName map[string][]int; @"crypto/x509".certs []*@"crypto/x509".Certificate } + func (@"crypto/x509".s·1 *@"crypto/x509".CertPool) AddCert (@"crypto/x509".cert·2 *@"crypto/x509".Certificate) + func (@"crypto/x509".s·2 *@"crypto/x509".CertPool) AppendCertsFromPEM (@"crypto/x509".pemCerts·3 []byte) (@"crypto/x509".ok·1 bool) + func (@"crypto/x509".s·2 *@"crypto/x509".CertPool "esc:0x0") Subjects () (@"crypto/x509".res·1 [][]byte) + func (@"crypto/x509".s·4 *@"crypto/x509".CertPool "esc:0x0") @"crypto/x509".findVerifiedParents (@"crypto/x509".cert·5 *@"crypto/x509".Certificate) (@"crypto/x509".parents·1 []int, @"crypto/x509".errCert·2 *@"crypto/x509".Certificate, @"crypto/x509".err·3 error) + type @"crypto/x509".VerifyOptions struct { DNSName string; Intermediates *@"crypto/x509".CertPool; Roots *@"crypto/x509".CertPool; CurrentTime @"time".Time; KeyUsages []@"crypto/x509".ExtKeyUsage } + type @"crypto/x509".Certificate struct { Raw []byte; RawTBSCertificate []byte; RawSubjectPublicKeyInfo []byte; RawSubject []byte; RawIssuer []byte; Signature []byte; SignatureAlgorithm @"crypto/x509".SignatureAlgorithm; PublicKeyAlgorithm @"crypto/x509".PublicKeyAlgorithm; PublicKey interface {}; Version int; SerialNumber *@"math/big".Int; Issuer @"crypto/x509/pkix".Name; Subject @"crypto/x509/pkix".Name; NotBefore @"time".Time; NotAfter @"time".Time; KeyUsage @"crypto/x509".KeyUsage; Extensions []@"crypto/x509/pkix".Extension; ExtraExtensions []@"crypto/x509/pkix".Extension; ExtKeyUsage []@"crypto/x509".ExtKeyUsage; UnknownExtKeyUsage []@"encoding/asn1".ObjectIdentifier; BasicConstraintsValid bool; IsCA bool; MaxPathLen int; MaxPathLenZero bool; SubjectKeyId []byte; AuthorityKeyId []byte; OCSPServer []string; IssuingCertificateURL []string; DNSNames []string; EmailAddresses []string; IPAddresses []@"net".IP; PermittedDNSDomainsCritical bool; PermittedDNSDomains []string; CRLDistributionPoints []string; PolicyIdentifiers []@"encoding/asn1".ObjectIdentifier } + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate) CheckCRLSignature (@"crypto/x509".crl·3 *@"crypto/x509/pkix".CertificateList) (@"crypto/x509".err·1 error) + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate) CheckSignature (@"crypto/x509".algo·3 @"crypto/x509".SignatureAlgorithm, @"crypto/x509".signed·4 []byte, @"crypto/x509".signature·5 []byte) (@"crypto/x509".err·1 error) + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate) CheckSignatureFrom (@"crypto/x509".parent·3 *@"crypto/x509".Certificate) (@"crypto/x509".err·1 error) + func (@"crypto/x509".c·3 *@"crypto/x509".Certificate) CreateCRL (@"crypto/x509".rand·4 @"io".Reader, @"crypto/x509".priv·5 interface {}, @"crypto/x509".revokedCerts·6 []@"crypto/x509/pkix".RevokedCertificate, @"crypto/x509".now·7 @"time".Time, @"crypto/x509".expiry·8 @"time".Time) (@"crypto/x509".crlBytes·1 []byte, @"crypto/x509".err·2 error) + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x0") Equal (@"crypto/x509".other·3 *@"crypto/x509".Certificate "esc:0x0") (? bool) + func (@"crypto/x509".c·3 *@"crypto/x509".Certificate) Verify (@"crypto/x509".opts·4 @"crypto/x509".VerifyOptions "esc:0x4") (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error) + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x2") VerifyHostname (@"crypto/x509".h·3 string "esc:0x2") (? error) + func (@"crypto/x509".c·3 *@"crypto/x509".Certificate) @"crypto/x509".buildChains (@"crypto/x509".cache·4 map[int][][]*@"crypto/x509".Certificate "esc:0x0", @"crypto/x509".currentChain·5 []*@"crypto/x509".Certificate "esc:0x0", @"crypto/x509".opts·6 *@"crypto/x509".VerifyOptions "esc:0x0") (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error) + func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x2") @"crypto/x509".isValid (@"crypto/x509".certType·3 int, @"crypto/x509".currentChain·4 []*@"crypto/x509".Certificate "esc:0x0", @"crypto/x509".opts·5 *@"crypto/x509".VerifyOptions "esc:0x0") (? error) + func (@"crypto/x509".c·3 *@"crypto/x509".Certificate "esc:0x0") @"crypto/x509".systemVerify (@"crypto/x509".opts·4 *@"crypto/x509".VerifyOptions "esc:0x0") (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error) { return nil, nil } + type @"".ConnectionState struct { Version uint16; HandshakeComplete bool; DidResume bool; CipherSuite uint16; NegotiatedProtocol string; NegotiatedProtocolIsMutual bool; ServerName string; PeerCertificates []*@"crypto/x509".Certificate; VerifiedChains [][]*@"crypto/x509".Certificate; TLSUnique []byte } + type @"".ClientAuthType int + const @"".NoClientCert @"".ClientAuthType = 0x0 + const @"".RequestClientCert @"".ClientAuthType = 0x1 + const @"".RequireAnyClientCert @"".ClientAuthType = 0x2 + const @"".VerifyClientCertIfGiven @"".ClientAuthType = 0x3 + const @"".RequireAndVerifyClientCert @"".ClientAuthType = 0x4 + type @"".ClientSessionState struct { @"".sessionTicket []uint8; @"".vers uint16; @"".cipherSuite uint16; @"".masterSecret []byte; @"".serverCertificates []*@"crypto/x509".Certificate } + type @"".ClientSessionCache interface { Get(@"".sessionKey string) (@"".session *@"".ClientSessionState, @"".ok bool); Put(@"".sessionKey string, @"".cs *@"".ClientSessionState) } + type @"".ClientHelloInfo struct { CipherSuites []uint16; ServerName string; SupportedCurves []@"".CurveID; SupportedPoints []uint8 } + type @"crypto".PrivateKey interface {} + type @"".Certificate struct { Certificate [][]byte; PrivateKey @"crypto".PrivateKey; OCSPStaple []byte; Leaf *@"crypto/x509".Certificate } + type @"sync".Mutex struct { @"sync".state int32; @"sync".sema uint32 } + func (@"sync".m·1 *@"sync".Mutex) Lock () + func (@"sync".m·1 *@"sync".Mutex) Unlock () + type @"sync".Once struct { @"sync".m @"sync".Mutex; @"sync".done uint32 } + func (@"sync".o·1 *@"sync".Once) Do (@"sync".f·2 func() "esc:0x0") + type @"".Config struct { Rand @"io".Reader; Time func() (? @"time".Time); Certificates []@"".Certificate; NameToCertificate map[string]*@"".Certificate; GetCertificate func(@"".clientHello *@"".ClientHelloInfo) (? *@"".Certificate, ? error); RootCAs *@"crypto/x509".CertPool; NextProtos []string; ServerName string; ClientAuth @"".ClientAuthType; ClientCAs *@"crypto/x509".CertPool; InsecureSkipVerify bool; CipherSuites []uint16; PreferServerCipherSuites bool; SessionTicketsDisabled bool; SessionTicketKey [32]byte; ClientSessionCache @"".ClientSessionCache; MinVersion uint16; MaxVersion uint16; CurvePreferences []@"".CurveID; @"".serverInitOnce @"sync".Once } + func (@"".c·1 *@"".Config) BuildNameToCertificate () + func (@"".c·2 *@"".Config "esc:0x1") @"".cipherSuites () (? []uint16) + func (@"".c·2 *@"".Config "esc:0x1") @"".curvePreferences () (? []@"".CurveID) { if @"".c·2 == nil || len(@"".c·2.CurvePreferences) == 0x0 { return @"".defaultCurvePreferences }; return @"".c·2.CurvePreferences } + func (@"".c·3 *@"".Config "esc:0x1") @"".getCertificate (@"".clientHello·4 *@"".ClientHelloInfo) (? *@"".Certificate, ? error) + func (@"".c·2 *@"".Config "esc:0x0") @"".maxVersion () (? uint16) { if @"".c·2 == nil || @"".c·2.MaxVersion == 0x0 { return 0x303 }; return @"".c·2.MaxVersion } + func (@"".c·2 *@"".Config "esc:0x0") @"".minVersion () (? uint16) { if @"".c·2 == nil || @"".c·2.MinVersion == 0x0 { return 0x300 }; return @"".c·2.MinVersion } + func (@"".c·3 *@"".Config "esc:0x0") @"".mutualVersion (@"".vers·4 uint16) (? uint16, ? bool) + func (@"".c·2 *@"".Config "esc:0x1") @"".rand () (? @"io".Reader) { var @"".r·3 @"io".Reader; @"".r·3 = @"".c·2.Rand; if @"".r·3 == nil { return @"crypto/rand".Reader }; return @"".r·3 } + func (@"".c·1 *@"".Config) @"".serverInit () + func (@"".c·2 *@"".Config "esc:0x0") @"".time () (? @"time".Time) + func @"".NewLRUClientSessionCache (@"".capacity·2 int) (? @"".ClientSessionCache) + type @"net".Addr interface { Network() (? string); String() (? string) } + type @"net".Conn interface { Close() (? error); LocalAddr() (? @"net".Addr); Read(@"net".b []byte) (@"net".n int, @"net".err error); RemoteAddr() (? @"net".Addr); SetDeadline(@"net".t @"time".Time) (? error); SetReadDeadline(@"net".t @"time".Time) (? error); SetWriteDeadline(@"net".t @"time".Time) (? error); Write(@"net".b []byte) (@"net".n int, @"net".err error) } + type @"".macFunction interface { MAC(@"".digestBuf []byte, @"".seq []byte, @"".header []byte, @"".data []byte) (? []byte); Size() (? int) } + type @"".block struct { @"".data []byte; @"".off int; @"".link *@"".block } + func (@"".b·3 *@"".block "esc:0x0") Read (@"".p·4 []byte "esc:0x0") (@"".n·1 int, @"".err·2 error) { @"".n·1 = copy(@"".p·4, @"".b·3.@"".data[@"".b·3.@"".off:]); @"".b·3.@"".off += @"".n·1; return } + func (@"".b·2 *@"".block) @"".readFromUntil (@"".r·3 @"io".Reader, @"".n·4 int) (? error) + func (@"".b·1 *@"".block "esc:0x0") @"".reserve (@"".n·2 int) + func (@"".b·1 *@"".block) @"".resize (@"".n·2 int) + type @"".alert uint8 + func (@"".e·2 @"".alert) Error () (? string) + func (@"".e·2 @"".alert) String () (? string) + type @"".halfConn struct { ? @"sync".Mutex; @"".err error; @"".version uint16; @"".cipher interface {}; @"".mac @"".macFunction; @"".seq [8]byte; @"".bfree *@"".block; @"".nextCipher interface {}; @"".nextMac @"".macFunction; @"".inDigestBuf []byte; @"".outDigestBuf []byte } + func (@"".hc·2 *@"".halfConn) @"".changeCipherSpec () (? error) + func (@"".hc·4 *@"".halfConn) @"".decrypt (@"".b·5 *@"".block) (@"".ok·1 bool, @"".prefixLen·2 int, @"".alertValue·3 @"".alert) + func (@"".hc·3 *@"".halfConn) @"".encrypt (@"".b·4 *@"".block, @"".explicitIVLen·5 int) (? bool, ? @"".alert) + func (@"".hc·2 *@"".halfConn) @"".error () (? error) + func (@"".hc·1 *@"".halfConn) @"".freeBlock (@"".b·2 *@"".block) { @"".b·2.@"".link = @"".hc·1.@"".bfree; @"".hc·1.@"".bfree = @"".b·2 } + func (@"".hc·1 *@"".halfConn "esc:0x0") @"".incSeq () + func (@"".hc·2 *@"".halfConn) @"".newBlock () (? *@"".block) + func (@"".hc·1 *@"".halfConn "esc:0x0") @"".prepareCipherSpec (@"".version·2 uint16, @"".cipher·3 interface {}, @"".mac·4 @"".macFunction) { @"".hc·1.@"".version = @"".version·2; @"".hc·1.@"".nextCipher = @"".cipher·3; @"".hc·1.@"".nextMac = @"".mac·4 } + func (@"".hc·1 *@"".halfConn "esc:0x0") @"".resetSeq () + func (@"".hc·2 *@"".halfConn "esc:0x0") @"".setErrorLocked (@"".err·3 error) (? error) { @"".hc·2.@"".err = @"".err·3; return @"".err·3 } + func (@"".hc·3 *@"".halfConn) @"".splitBlock (@"".b·4 *@"".block, @"".n·5 int) (? *@"".block, ? *@"".block) + type @"bytes".readOp int + type @"io".Writer interface { Write(@"io".p []byte) (@"io".n int, @"io".err error) } + type @"bytes".Buffer struct { @"bytes".buf []byte; @"bytes".off int; @"bytes".runeBytes [4]byte; @"bytes".bootstrap [64]byte; @"bytes".lastRead @"bytes".readOp } + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x1") Bytes () (? []byte) { return @"bytes".b·2.@"bytes".buf[@"bytes".b·2.@"bytes".off:] } + func (@"bytes".b·1 *@"bytes".Buffer) Grow (@"bytes".n·2 int) + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x0") Len () (? int) { return len(@"bytes".b·2.@"bytes".buf) - @"bytes".b·2.@"bytes".off } + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x1") Next (@"bytes".n·3 int) (? []byte) + func (@"bytes".b·3 *@"bytes".Buffer) Read (@"bytes".p·4 []byte "esc:0x0") (@"bytes".n·1 int, @"bytes".err·2 error) + func (@"bytes".b·3 *@"bytes".Buffer) ReadByte () (@"bytes".c·1 byte, @"bytes".err·2 error) + func (@"bytes".b·3 *@"bytes".Buffer "esc:0x0") ReadBytes (@"bytes".delim·4 byte) (@"bytes".line·1 []byte, @"bytes".err·2 error) + func (@"bytes".b·3 *@"bytes".Buffer) ReadFrom (@"bytes".r·4 @"io".Reader) (@"bytes".n·1 int64, @"bytes".err·2 error) + func (@"bytes".b·4 *@"bytes".Buffer) ReadRune () (@"bytes".r·1 rune, @"bytes".size·2 int, @"bytes".err·3 error) + func (@"bytes".b·3 *@"bytes".Buffer "esc:0x0") ReadString (@"bytes".delim·4 byte) (@"bytes".line·1 string, @"bytes".err·2 error) + func (@"bytes".b·1 *@"bytes".Buffer) Reset () + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x0") String () (? string) { if @"bytes".b·2 == nil { return "<nil>" }; return string(@"bytes".b·2.@"bytes".buf[@"bytes".b·2.@"bytes".off:]) } + func (@"bytes".b·1 *@"bytes".Buffer) Truncate (@"bytes".n·2 int) + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x0") UnreadByte () (? error) + func (@"bytes".b·2 *@"bytes".Buffer "esc:0x0") UnreadRune () (? error) + func (@"bytes".b·3 *@"bytes".Buffer) Write (@"bytes".p·4 []byte "esc:0x0") (@"bytes".n·1 int, @"bytes".err·2 error) + func (@"bytes".b·2 *@"bytes".Buffer) WriteByte (@"bytes".c·3 byte) (? error) + func (@"bytes".b·3 *@"bytes".Buffer) WriteRune (@"bytes".r·4 rune) (@"bytes".n·1 int, @"bytes".err·2 error) + func (@"bytes".b·3 *@"bytes".Buffer) WriteString (@"bytes".s·4 string "esc:0x0") (@"bytes".n·1 int, @"bytes".err·2 error) + func (@"bytes".b·3 *@"bytes".Buffer) WriteTo (@"bytes".w·4 @"io".Writer) (@"bytes".n·1 int64, @"bytes".err·2 error) + func (@"bytes".b·2 *@"bytes".Buffer) @"bytes".grow (@"bytes".n·3 int) (? int) + func (@"bytes".b·3 *@"bytes".Buffer "esc:0x1") @"bytes".readSlice (@"bytes".delim·4 byte) (@"bytes".line·1 []byte, @"bytes".err·2 error) + type @"".recordType uint8 + type @"".clientKeyExchangeMsg struct { @"".raw []byte; @"".ciphertext []byte } + func (@"".m·2 *@"".clientKeyExchangeMsg "esc:0x0") @"".equal (@"".i·3 interface {} "esc:0x0") (? bool) + func (@"".m·2 *@"".clientKeyExchangeMsg "esc:0x1") @"".marshal () (? []byte) + func (@"".m·2 *@"".clientKeyExchangeMsg "esc:0x0") @"".unmarshal (@"".data·3 []byte) (? bool) + type @"".signatureAndHash struct { @"".hash uint8; @"".signature uint8 } + type @"".clientHelloMsg struct { @"".raw []byte; @"".vers uint16; @"".random []byte; @"".sessionId []byte; @"".cipherSuites []uint16; @"".compressionMethods []uint8; @"".nextProtoNeg bool; @"".serverName string; @"".ocspStapling bool; @"".supportedCurves []@"".CurveID; @"".supportedPoints []uint8; @"".ticketSupported bool; @"".sessionTicket []uint8; @"".signatureAndHashes []@"".signatureAndHash; @"".secureRenegotiation bool; @"".alpnProtocols []string } + func (@"".m·2 *@"".clientHelloMsg "esc:0x0") @"".equal (@"".i·3 interface {} "esc:0x0") (? bool) + func (@"".m·2 *@"".clientHelloMsg "esc:0x1") @"".marshal () (? []byte) + func (@"".m·2 *@"".clientHelloMsg) @"".unmarshal (@"".data·3 []byte) (? bool) + type @"".serverKeyExchangeMsg struct { @"".raw []byte; @"".key []byte } + func (@"".m·2 *@"".serverKeyExchangeMsg "esc:0x0") @"".equal (@"".i·3 interface {} "esc:0x0") (? bool) + func (@"".m·2 *@"".serverKeyExchangeMsg "esc:0x1") @"".marshal () (? []byte) + func (@"".m·2 *@"".serverKeyExchangeMsg "esc:0x0") @"".unmarshal (@"".data·3 []byte) (? bool) { @"".m·2.@"".raw = @"".data·3; if len(@"".data·3) < 0x4 { return false }; @"".m·2.@"".key = @"".data·3[0x4:]; return true } + type @"".serverHelloMsg struct { @"".raw []byte; @"".vers uint16; @"".random []byte; @"".sessionId []byte; @"".cipherSuite uint16; @"".compressionMethod uint8; @"".nextProtoNeg bool; @"".nextProtos []string; @"".ocspStapling bool; @"".ticketSupported bool; @"".secureRenegotiation bool; @"".alpnProtocol string } + func (@"".m·2 *@"".serverHelloMsg "esc:0x0") @"".equal (@"".i·3 interface {} "esc:0x0") (? bool) + func (@"".m·2 *@"".serverHelloMsg "esc:0x1") @"".marshal () (? []byte) + func (@"".m·2 *@"".serverHelloMsg) @"".unmarshal (@"".data·3 []byte) (? bool) + type @"".keyAgreement interface { @"".generateClientKeyExchange(? *@"".Config, ? *@"".clientHelloMsg, ? *@"crypto/x509".Certificate) (? []byte, ? *@"".clientKeyExchangeMsg, ? error); @"".generateServerKeyExchange(? *@"".Config, ? *@"".Certificate, ? *@"".clientHelloMsg, ? *@"".serverHelloMsg) (? *@"".serverKeyExchangeMsg, ? error); @"".processClientKeyExchange(? *@"".Config, ? *@"".Certificate, ? *@"".clientKeyExchangeMsg, ? uint16) (? []byte, ? error); @"".processServerKeyExchange(? *@"".Config, ? *@"".clientHelloMsg, ? *@"".serverHelloMsg, ? *@"crypto/x509".Certificate, ? *@"".serverKeyExchangeMsg) (? error) } + type @"crypto/cipher".AEAD interface { NonceSize() (? int); Open(@"crypto/cipher".dst []byte, @"crypto/cipher".nonce []byte, @"crypto/cipher".ciphertext []byte, @"crypto/cipher".data []byte) (? []byte, ? error); Overhead() (? int); Seal(@"crypto/cipher".dst []byte, @"crypto/cipher".nonce []byte, @"crypto/cipher".plaintext []byte, @"crypto/cipher".data []byte) (? []byte) } + type @"".cipherSuite struct { @"".id uint16; @"".keyLen int; @"".macLen int; @"".ivLen int; @"".ka func(@"".version uint16) (? @"".keyAgreement); @"".flags int; @"".cipher func(@"".key []byte, @"".iv []byte, @"".isRead bool) (? interface {}); @"".mac func(@"".version uint16, @"".macKey []byte) (? @"".macFunction); @"".aead func(@"".key []byte, @"".fixedNonce []byte) (? @"crypto/cipher".AEAD) } + type @"".sessionState struct { @"".vers uint16; @"".cipherSuite uint16; @"".masterSecret []byte; @"".certificates [][]byte } + func (@"".s·2 *@"".sessionState "esc:0x0") @"".equal (@"".i·3 interface {} "esc:0x0") (? bool) + func (@"".s·2 *@"".sessionState "esc:0x0") @"".marshal () (? []byte) + func (@"".s·2 *@"".sessionState "esc:0x0") @"".unmarshal (@"".data·3 []byte) (? bool) + type @"".Conn struct { @"".conn @"net".Conn; @"".isClient bool; @"".handshakeMutex @"sync".Mutex; @"".handshakeErr error; @"".vers uint16; @"".haveVers bool; @"".config *@"".Config; @"".handshakeComplete bool; @"".didResume bool; @"".cipherSuite uint16; @"".ocspResponse []byte; @"".peerCertificates []*@"crypto/x509".Certificate; @"".verifiedChains [][]*@"crypto/x509".Certificate; @"".serverName string; @"".firstFinished [12]byte; @"".clientProtocol string; @"".clientProtocolFallback bool; @"".in @"".halfConn; @"".out @"".halfConn; @"".rawInput *@"".block; @"".input *@"".block; @"".hand @"bytes".Buffer; @"".tmp [16]byte } + func (@"".c·2 *@"".Conn) Close () (? error) + func (@"".c·2 *@"".Conn) ConnectionState () (? @"".ConnectionState) + func (@"".c·2 *@"".Conn) Handshake () (? error) + func (@"".c·2 *@"".Conn) LocalAddr () (? @"net".Addr) + func (@"".c·2 *@"".Conn) OCSPResponse () (? []byte) + func (@"".c·3 *@"".Conn) Read (@"".b·4 []byte "esc:0x0") (@"".n·1 int, @"".err·2 error) + func (@"".c·2 *@"".Conn) RemoteAddr () (? @"net".Addr) + func (@"".c·2 *@"".Conn) SetDeadline (@"".t·3 @"time".Time) (? error) + func (@"".c·2 *@"".Conn) SetReadDeadline (@"".t·3 @"time".Time) (? error) + func (@"".c·2 *@"".Conn) SetWriteDeadline (@"".t·3 @"time".Time) (? error) + func (@"".c·2 *@"".Conn) VerifyHostname (@"".host·3 string "esc:0x2") (? error) + func (@"".c·3 *@"".Conn) Write (@"".b·4 []byte "esc:0x0") (? int, ? error) + func (@"".c·2 *@"".Conn) @"".clientHandshake () (? error) + func (@"".c·3 *@"".Conn) @"".decryptTicket (@"".encrypted·4 []byte) (? *@"".sessionState, ? bool) + func (@"".c·3 *@"".Conn) @"".encryptTicket (@"".state·4 *@"".sessionState "esc:0x0") (? []byte, ? error) + func (@"".c·3 *@"".Conn) @"".readHandshake () (? interface {}, ? error) + func (@"".c·2 *@"".Conn) @"".readRecord (@"".want·3 @"".recordType) (? error) + func (@"".c·2 *@"".Conn) @"".sendAlert (@"".err·3 @"".alert) (? error) + func (@"".c·2 *@"".Conn) @"".sendAlertLocked (@"".err·3 @"".alert) (? error) + func (@"".c·2 *@"".Conn) @"".serverHandshake () (? error) + func (@"".c·2 *@"".Conn "esc:0x0") @"".tryCipherSuite (@"".id·3 uint16, @"".supportedCipherSuites·4 []uint16 "esc:0x0", @"".version·5 uint16, @"".ellipticOk·6 bool, @"".ecdsaOk·7 bool) (? *@"".cipherSuite) + func (@"".c·3 *@"".Conn) @"".writeRecord (@"".typ·4 @"".recordType, @"".data·5 []byte "esc:0x0") (@"".n·1 int, @"".err·2 error) + func @"".Server (@"".conn·2 @"net".Conn, @"".config·3 *@"".Config) (? *@"".Conn) { return (&@"".Conn{ @"".conn:@"".conn·2, @"".config:@"".config·3 }) } + func @"".Client (@"".conn·2 @"net".Conn, @"".config·3 *@"".Config) (? *@"".Conn) { return (&@"".Conn{ @"".conn:@"".conn·2, @"".config:@"".config·3, @"".isClient:true }) } + type @"net".Listener interface { Accept() (@"net".c @"net".Conn, @"net".err error); Addr() (? @"net".Addr); Close() (? error) } + func @"".NewListener (@"".inner·2 @"net".Listener, @"".config·3 *@"".Config) (? @"net".Listener) { var @"".l·4 *@"".listener; @"".l·4 = new(@"".listener); @"".l·4.Listener = @"".inner·2; @"".l·4.@"".config = @"".config·3; return @"".l·4 } + func @"".Listen (@"".network·3 string, @"".laddr·4 string, @"".config·5 *@"".Config) (? @"net".Listener, ? error) + type @"net".dnsMsgHdr struct { @"net".id uint16; @"net".response bool; @"net".opcode int; @"net".authoritative bool; @"net".truncated bool; @"net".recursion_desired bool; @"net".recursion_available bool; @"net".rcode int } + func (@"net".h·2 *@"net".dnsMsgHdr) Walk (@"net".f·3 func(@"net".v interface {}, @"net".name string, @"net".tag string) (? bool) "esc:0x0") (? bool) + type @"net".dnsQuestion struct { Name string "net:\"domain-name\""; Qtype uint16; Qclass uint16 } + func (@"net".q·2 *@"net".dnsQuestion) Walk (@"net".f·3 func(@"net".v interface {}, @"net".name string, @"net".tag string) (? bool) "esc:0x0") (? bool) + type @"net".dnsRR_Header struct { Name string "net:\"domain-name\""; Rrtype uint16; Class uint16; Ttl uint32; Rdlength uint16 } + func (@"net".h·2 *@"net".dnsRR_Header "esc:0x2") Header () (? *@"net".dnsRR_Header) { return @"net".h·2 } + func (@"net".h·2 *@"net".dnsRR_Header) Walk (@"net".f·3 func(@"net".v interface {}, @"net".name string, @"net".tag string) (? bool) "esc:0x0") (? bool) + type @"net".dnsRR interface { Header() (? *@"net".dnsRR_Header); Walk(@"net".f func(@"net".v interface {}, @"net".name string, @"net".tag string) (@"net".ok bool)) (@"net".ok bool) } + type @"net".dnsMsg struct { @"net".? @"net".dnsMsgHdr; @"net".question []@"net".dnsQuestion; @"net".answer []@"net".dnsRR; @"net".ns []@"net".dnsRR; @"net".extra []@"net".dnsRR } + func (@"net".dns·3 *@"net".dnsMsg) Pack () (@"net".msg·1 []byte, @"net".ok·2 bool) + func (@"net".dns·2 *@"net".dnsMsg) String () (? string) + func (@"net".dns·2 *@"net".dnsMsg) Unpack (@"net".msg·3 []byte) (? bool) + type @"net".dnsConn interface { Close() (? error); LocalAddr() (? @"net".Addr); Read(@"net".b []byte) (@"net".n int, @"net".err error); RemoteAddr() (? @"net".Addr); SetDeadline(@"net".t @"time".Time) (? error); SetReadDeadline(@"net".t @"time".Time) (? error); SetWriteDeadline(@"net".t @"time".Time) (? error); Write(@"net".b []byte) (@"net".n int, @"net".err error); @"net".readDNSResponse() (? *@"net".dnsMsg, ? error); @"net".writeDNSQuery(? *@"net".dnsMsg) (? error) } + type @"net".Dialer struct { Timeout @"time".Duration; Deadline @"time".Time; LocalAddr @"net".Addr; DualStack bool; KeepAlive @"time".Duration } + func (@"net".d·3 *@"net".Dialer) Dial (@"net".network·4 string, @"net".address·5 string) (? @"net".Conn, ? error) + func (@"net".d·2 *@"net".Dialer "esc:0x1") @"net".deadline () (? @"time".Time) + func (@"net".d·3 *@"net".Dialer) @"net".dialDNS (@"net".network·4 string, @"net".server·5 string) (? @"net".dnsConn, ? error) + func @"".DialWithDialer (@"".dialer·3 *@"net".Dialer, @"".network·4 string, @"".addr·5 string, @"".config·6 *@"".Config) (? *@"".Conn, ? error) + func @"".Dial (@"".network·3 string, @"".addr·4 string, @"".config·5 *@"".Config) (? *@"".Conn, ? error) + func @"".LoadX509KeyPair (@"".certFile·3 string, @"".keyFile·4 string) (@"".cert·1 @"".Certificate, @"".err·2 error) + func @"".X509KeyPair (@"".certPEMBlock·3 []byte, @"".keyPEMBlock·4 []byte) (@"".cert·1 @"".Certificate, @"".err·2 error) + func @"".init () + var @"time".months [12]string + var @"time".days [7]string + var @"time".Local *@"time".Location + var @"time".UTC *@"time".Location + var @"".defaultCurvePreferences []@"".CurveID + const @"".maxVersion = 0x303 + const @"".minVersion = 0x300 + var @"crypto/rand".Reader @"io".Reader + type @"".listener struct { ? @"net".Listener; @"".config *@"".Config } + func (@"".l·3 *@"".listener) Accept () (@"".c·1 @"net".Conn, @"".err·2 error) + +$$ +_go_.6 0 0 0 644 932579 ` +go object linux amd64 go1.4.1 X:precisestack + +! + +fmt.aio.amath/big.astrings.async.atime.abytes.acrypto/subtle.aerrors.a +net.acrypto/ecdsa.acrypto/rsa.aencoding/asn1.a"crypto/elliptic.acrypto/md5.acrypto/sha256.aencoding/pem.aio/ioutil.a + +"".autotmp_0011 + + + +"".iv + + +"".iv +hk + +"".iv +hk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"".autotmp_0155 + +
+ + + + + + + + + + + +0!T( +B'Hd(SN) + + + + + +"".cs +473+Y +<^xm + +& + + + + +"".autotmp_0232 + + + + + + + + + + + + + + + + +"".hc + + +"".hc + +"".hc +). + + +"".hc + +"".hc + +"".hc + + + +
)
+ +6 + + + + + + + + + + +"".ok +"".hc + +
+ +HH)LH)H + + + + + + + + + +"".hc +JRv@
U?! + + + + + + + + +"".hc + +"".hc + + +"".bb +"".hc + +H|$XHl$PHt$`H)Hl$PH)H + + + + + +% + + + + + + +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +"".hc +type.error +"".hc +type.error +"".hc +type.error +"".hc +type.error +Lb({
zU t($0 K6&8!'0/) XW&PO|>=h:9
`_P ? [-! +
+dH% + +"".hc +J _ + +_` +,!.@ + + + +"".hc +"".hc +I6 ^D 1*,#4A8ol6-WNop
+
+ + + + + + +"".hc +"".hc +"".hc + +GDWXM2C@?/C<;/0-C87/C('/
+Q(0// +"C$#/ +Q(/ +C /=/C,+/ +=/3 +! >`!
8`Z`!ZI + + + + + +"".hc + +3*(*l 0GRH
! + + +"".autotmp_0875 + +"".autotmp_0878 + + + B& + + + + + + + + + + + +type.string +type.io.Reader +type.io.Reader +"".hs +"".ok +"".id +4type."".ClientSessionCache +i[
+:yU=H> +
nX&rr,6(6((R((=H ;6(6((6(V(
5O#+3 +
p-
+;EB; +w";7g%A('f*(O..%; + + + + + + + + + + + + + + + +*type.crypto.PublicKey +(type.[1]interface {} +type.string +type.[]uint8 +"".ok +"".ca +"".cs +"".hs +(H-<in 3=@4 v(54 n@ +@N=< y +%<n](n]$gXlHn] ,Dl, +!
Y"t@14#L
+ 9@
&
x +>&.. q!x-G+A$3
1, +|1W3x2g!L$nJvAJUr~9X;SL +YH:rvKU0OHh+b.;)Z$VAAE+@-^G]6 + + + + + + + + +"".hc +"".hc +"".hs +D$HH8D$H + +"".hs + + + + + +"".hs +8 + + + + +"".hs + + + +"".hs + + + + +"".hs + + + +. + + + +"".m1 + +@WW + + +H + + + + + + + +B
!J!G^I
I
4*\
I
I2I
+I*
F +
+^
4FII
I
=Iqc %!78 */") )U + + +-36
+*K2(
+1 +J . +% +53
HoE +t\[e +z +-E<N< & +-\%S
; +vTSI/(+# + +"".m1 + + + + + + +HRLD$XHH + +
U +B
!DCL
Lb b
+
L +
L
L
]78 ; + + + + +-36
+8.o +v!,.
"y .W1%G
RC($'9 +D$` +D$`H@D$` + +"".autotmp_1947 +"".m1 +Lf + + +D$` +D$`H@D$` + +"".autotmp_2029 +"".m1 +Lf + +D$` + + +` + +D$` +D$`H@D$` + +"".autotmp_2050 +"".m1 +V~ + + + + + + + + +6, V +D$` +D$` +D$` + +"".autotmp_2073 +#
+J +Y +
+ + + + + +D$` +D$`H@D$` + +"".autotmp_2083 +"".m1 +Lf + +D$` +D$` + +N +a + +D$` +D$`H@D$` + +"".autotmp_2105 +"".m1 +Lf + +D$` + + +` + + +"".m1 + +D$p +D$p +D$p +D$p + +2( + +lA +! + + +D$` +D$`H@D$` + +"".m1 +L KKu + +"".ca +"".ca +E
K1B1=r.}S 7 + +-%8 +
+D$` +D$`H@D$` + +"".autotmp_2359 +"".m1 +V + + +D$H +D$H +D$H +D$H + +I +3 1 ++$ +3 + +D$` +D$`H@D$` + +"".autotmp_2406 +"".m1 +Lf + +HH +H +HHHL$hH\$xH + +} +D$` +D$` +H9t +D$` +rcH\$@H$H<$ +HH +H +HD$ HD$HT$(HT$HL$0HL$ + +"".autotmp_2421 +I +3 +^ + + +"".autotmp_2432 + + + +"".autotmp_2439 + + + +
+ + + + +"".autotmp_2462 +
+ + + + + + + + + + + + +"".hs +| + + + + + + + + + + + + + + + + + + + +b + + +- +,$ + + +}Jx'Fa +iF(HD2\ +A(
6DL!*>
+ F;
>4F;
sH! FgF";F$; +D$p +D$p +D$p +D$p +D$p +D$p +D$p + +"".ok +"".hs +n + +M( + + + + + +! + + +"".hs + + + + + + + + + + + + + +type.uint32 +type.[4]uint8 +4type."".serverHelloDoneMsg +:type.*"".serverKeyExchangeMsg +"".hs +R + +-Ain + +Y- +<in%<i v( #;CW
;;@Q @[!! +;cl-G+-GPmYV#,;"b7`T;;Gn^) + + + + + + + + +"".hc +"".hc +"".hs + + + + + +"".hs +n{ + + +"".hs + + +"".hs +E + + + + +"".hs + +( +D@
@ 8
+;>&..\
a ;F";zkDA\) +"".id + +8 + +"".ka + +"".ka + +J$X
JF<P' + +"".ka + + +"".ka + + + + + + + + + + + + +co + + + +"".autotmp_2896 +"".id + + + + + +type.error +type.error +type.error +type.error +"".ok +"".ok +"".ka +i,_F
]$$$ +@- ~"Y!0, +4 #&3 % +g;X;5!Y;;;; + + + + + + + +"".ka + + + + + + + + + +"".ok +"".ka +O + + + + + + + + + +x + + + + + +M + +V + + + + + + + + + + + + + + + + + + + + +&:^j*&&S&0:&&"&( &@ +7 q +< v;T!@.9
& +uNY;
^;VT;;; + + + +"".my +"".mx +"".ka + +"".s2 +"".s1 + + + + + + + + + + + + +"".s2 +"".s1 +"".s2 +"".s1 + + + + + + + + + + + + +"".&b +$
f;;W;;$ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"".s1 +j
+ + + + + + + + + +"".iv + + + + + +"".iv + + + + + + + + +H +% + + + + +"".&c +1_q$F! +K0#40~Z
+ + +"".~r4 + + +1 + + + +L +f. ;V;%N. ;(;& ;-
+ !b + +~Y8 +Y8<Y8U88| +, d jI + + + + + + + + + +@ + + +` + + +p + + + + + + + + + + + + + + + + + + + +"".ka + + + + + + +"".ok + + + +"".cs + + + + + + + + + + + +"".autotmp_3912 + +D$h + + + + + + + + + + + + + + + + + + + + + + + + + +D$h + + + + + +"".~r3 + +"".autotmp_3953 + +D$h + + + + + + + + + + + + + + + + + + + + + +"".autotmp_3965 + +D$h +D$hHHD$h + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +, + + + + + + +- + + + + + +- + +- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +type.[5]uint8 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +J + + + + +2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +0 + + + + + + + + + + + + + + + + + + + + + + + + |