Repository URL to install this package:
|
Version:
1.0 ▾
|
!<arch>
__.PKGDEF 0 0 0 644 58341 `
go object linux amd64 go1.6 X:none
build id "4b39b9730445462c0e8978411fd39feee3170618"
$$
package smtp
import hmac "crypto/hmac"
import io "io"
import md5 "crypto/md5"
import errors "errors"
import fmt "fmt"
import tls "crypto/tls"
import strings "strings"
import net "net"
import base64 "encoding/base64"
import textproto "net/textproto"
type @"".ServerInfo struct { Name string; TLS bool; Auth []string }
type @"".Auth interface { Next(@"".fromServer []byte, @"".more bool) (@"".toServer []byte, @"".err error); Start(@"".server *@"".ServerInfo) (@"".proto string, @"".toServer []byte, @"".err error) }
func @"".PlainAuth (@"".identity·2 string, @"".username·3 string, @"".password·4 string, @"".host·5 string) (? @"".Auth) { return (&@"".plainAuth{ @"".identity:@"".identity·2, @"".username:@"".username·3, @"".password:@"".password·4, @"".host:@"".host·5 }) }
func @"".CRAMMD5Auth (@"".username·2 string, @"".secret·3 string) (? @"".Auth) { return (&@"".cramMD5Auth{ @"".username:@"".username·2, @"".secret:@"".secret·3 }) }
import bufio "bufio" // indirect
type @"io".Reader interface { Read(@"io".p []byte) (@"io".n int, @"io".err error) }
type @"io".Writer interface { Write(@"io".p []byte) (@"io".n int, @"io".err error) }
type @"bufio".Reader struct { @"bufio".buf []byte; @"bufio".rd @"io".Reader; @"bufio".r int; @"bufio".w int; @"bufio".err error; @"bufio".lastByte int; @"bufio".lastRuneSize int }
func (@"bufio".b·2 *@"bufio".Reader "esc:0x1") Buffered () (? int) { return @"bufio".b·2.@"bufio".w - @"bufio".b·2.@"bufio".r }
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") Discard (@"bufio".n·4 int) (@"bufio".discarded·1 int, @"bufio".err·2 error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x12a") Peek (@"bufio".n·4 int) (? []byte, ? error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") Read (@"bufio".p·4 []byte) (@"bufio".n·1 int, @"bufio".err·2 error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") ReadByte () (@"bufio".c·1 byte, @"bufio".err·2 error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") ReadBytes (@"bufio".delim·4 byte) (@"bufio".line·1 []byte, @"bufio".err·2 error)
func (@"bufio".b·4 *@"bufio".Reader "esc:0x82a") ReadLine () (@"bufio".line·1 []byte, @"bufio".isPrefix·2 bool, @"bufio".err·3 error)
func (@"bufio".b·4 *@"bufio".Reader "esc:0x80a") ReadRune () (@"bufio".r·1 rune, @"bufio".size·2 int, @"bufio".err·3 error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x12a") ReadSlice (@"bufio".delim·4 byte) (@"bufio".line·1 []byte, @"bufio".err·2 error)
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") ReadString (@"bufio".delim·4 byte) (@"bufio".line·1 string, @"bufio".err·2 error)
func (@"bufio".b·1 *@"bufio".Reader "esc:0x9") Reset (@"bufio".r·2 @"io".Reader) { @"bufio".b·1.@"bufio".reset(@"bufio".b·1.@"bufio".buf, @"bufio".r·2) }
func (@"bufio".b·2 *@"bufio".Reader "esc:0x1") UnreadByte () (? error) { if @"bufio".b·2.@"bufio".lastByte < int(0x0) || @"bufio".b·2.@"bufio".r == int(0x0) && @"bufio".b·2.@"bufio".w > int(0x0) { return @"bufio".ErrInvalidUnreadByte }; if @"bufio".b·2.@"bufio".r > int(0x0) { @"bufio".b·2.@"bufio".r-- } else { @"bufio".b·2.@"bufio".w = int(0x1) }; @"bufio".b·2.@"bufio".buf[@"bufio".b·2.@"bufio".r] = byte(@"bufio".b·2.@"bufio".lastByte); @"bufio".b·2.@"bufio".lastByte = int(-0x1); @"bufio".b·2.@"bufio".lastRuneSize = int(-0x1); return nil }
func (@"bufio".b·2 *@"bufio".Reader "esc:0x1") UnreadRune () (? error) { if @"bufio".b·2.@"bufio".lastRuneSize < int(0x0) || @"bufio".b·2.@"bufio".r < @"bufio".b·2.@"bufio".lastRuneSize { return @"bufio".ErrInvalidUnreadRune }; @"bufio".b·2.@"bufio".r -= @"bufio".b·2.@"bufio".lastRuneSize; @"bufio".b·2.@"bufio".lastByte = int(-0x1); @"bufio".b·2.@"bufio".lastRuneSize = int(-0x1); return nil }
func (@"bufio".b·3 *@"bufio".Reader "esc:0x10a") WriteTo (@"bufio".w·4 @"io".Writer) (@"bufio".n·1 int64, @"bufio".err·2 error)
func (@"bufio".b·1 *@"bufio".Reader "esc:0x9") @"bufio".fill ()
func (@"bufio".b·2 *@"bufio".Reader "esc:0x22") @"bufio".readErr () (? error) { var @"bufio".err·3 error; ; @"bufio".err·3 = @"bufio".b·2.@"bufio".err; @"bufio".b·2.@"bufio".err = nil; return @"bufio".err·3 }
func (@"bufio".b·1 *@"bufio".Reader "esc:0x1") @"bufio".reset (@"bufio".buf·2 []byte, @"bufio".r·3 @"io".Reader) { *@"bufio".b·1 = (@"bufio".Reader{ @"bufio".buf:@"bufio".buf·2, @"bufio".rd:@"bufio".r·3, @"bufio".lastByte:int(-0x1), @"bufio".lastRuneSize:int(-0x1) }) }
func (@"bufio".b·3 *@"bufio".Reader "esc:0x9") @"bufio".writeBuf (@"bufio".w·4 @"io".Writer) (? int64, ? error)
type @"net/textproto".dotReader struct { @"net/textproto".r *@"net/textproto".Reader; @"net/textproto".state int }
func (@"net/textproto".d·3 *@"net/textproto".dotReader "esc:0x20a") Read (@"net/textproto".b·4 []byte "esc:0x1") (@"net/textproto".n·1 int, @"net/textproto".err·2 error)
type @"net/textproto".MIMEHeader map[string][]string
func (@"net/textproto".h·1 @"net/textproto".MIMEHeader "esc:0x9") Add (@"net/textproto".key·2 string, @"net/textproto".value·3 string)
func (@"net/textproto".h·1 @"net/textproto".MIMEHeader "esc:0x1") Del (@"net/textproto".key·2 string "esc:0x1")
func (@"net/textproto".h·2 @"net/textproto".MIMEHeader "esc:0x1") Get (@"net/textproto".key·3 string "esc:0x1") (? string)
func (@"net/textproto".h·1 @"net/textproto".MIMEHeader "esc:0x1") Set (@"net/textproto".key·2 string, @"net/textproto".value·3 string)
type @"net/textproto".Reader struct { R *@"bufio".Reader; @"net/textproto".dot *@"net/textproto".dotReader; @"net/textproto".buf []byte }
func (@"net/textproto".r·2 *@"net/textproto".Reader) DotReader () (? @"io".Reader)
func (@"net/textproto".r·4 *@"net/textproto".Reader "esc:0xc0a") ReadCodeLine (@"net/textproto".expectCode·5 int) (@"net/textproto".code·1 int, @"net/textproto".message·2 string, @"net/textproto".err·3 error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x18a") ReadContinuedLine () (? string, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x1aa") ReadContinuedLineBytes () (? []byte, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader) ReadDotBytes () (? []byte, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x18a") ReadDotLines () (? []string, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x18a") ReadLine () (? string, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x1ba") ReadLineBytes () (? []byte, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x18a") ReadMIMEHeader () (? @"net/textproto".MIMEHeader, ? error)
func (@"net/textproto".r·4 *@"net/textproto".Reader "esc:0xc0a") ReadResponse (@"net/textproto".expectCode·5 int) (@"net/textproto".code·1 int, @"net/textproto".message·2 string, @"net/textproto".err·3 error)
func (@"net/textproto".r·1 *@"net/textproto".Reader "esc:0x9") @"net/textproto".closeDot ()
func (@"net/textproto".r·5 *@"net/textproto".Reader "esc:0x600a") @"net/textproto".readCodeLine (@"net/textproto".expectCode·6 int) (@"net/textproto".code·1 int, @"net/textproto".continued·2 bool, @"net/textproto".message·3 string, @"net/textproto".err·4 error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x1aa") @"net/textproto".readContinuedLineSlice () (? []byte, ? error)
func (@"net/textproto".r·3 *@"net/textproto".Reader "esc:0x1ba") @"net/textproto".readLineSlice () (? []byte, ? error)
func (@"net/textproto".r·2 *@"net/textproto".Reader "esc:0x9") @"net/textproto".skipSpace () (? int)
func (@"net/textproto".r·2 *@"net/textproto".Reader "esc:0x9") @"net/textproto".upcomingHeaderNewlines () (@"net/textproto".n·1 int)
type @"bufio".Writer struct { @"bufio".err error; @"bufio".buf []byte; @"bufio".n int; @"bufio".wr @"io".Writer }
func (@"bufio".b·2 *@"bufio".Writer "esc:0x1") Available () (? int) { return len(@"bufio".b·2.@"bufio".buf) - @"bufio".b·2.@"bufio".n }
func (@"bufio".b·2 *@"bufio".Writer "esc:0x1") Buffered () (? int) { return @"bufio".b·2.@"bufio".n }
func (@"bufio".b·2 *@"bufio".Writer "esc:0x2a") Flush () (? error)
func (@"bufio".b·3 *@"bufio".Writer "esc:0x10a") ReadFrom (@"bufio".r·4 @"io".Reader) (@"bufio".n·1 int64, @"bufio".err·2 error)
func (@"bufio".b·1 *@"bufio".Writer "esc:0x1") Reset (@"bufio".w·2 @"io".Writer) { @"bufio".b·1.@"bufio".err = nil; @"bufio".b·1.@"bufio".n = int(0x0); @"bufio".b·1.@"bufio".wr = @"bufio".w·2 }
func (@"bufio".b·3 *@"bufio".Writer "esc:0x10a") Write (@"bufio".p·4 []byte) (@"bufio".nn·1 int, @"bufio".err·2 error)
func (@"bufio".b·2 *@"bufio".Writer "esc:0x2a") WriteByte (@"bufio".c·3 byte) (? error)
func (@"bufio".b·3 *@"bufio".Writer "esc:0x10a") WriteRune (@"bufio".r·4 rune) (@"bufio".size·1 int, @"bufio".err·2 error)
func (@"bufio".b·3 *@"bufio".Writer "esc:0x10a") WriteString (@"bufio".s·4 string "esc:0x9") (? int, ? error)
func (@"bufio".b·2 *@"bufio".Writer "esc:0x2a") @"bufio".flush () (? error)
type @"net/textproto".dotWriter struct { @"net/textproto".w *@"net/textproto".Writer; @"net/textproto".state int }
func (@"net/textproto".d·2 *@"net/textproto".dotWriter "esc:0x4a") Close () (? error)
func (@"net/textproto".d·3 *@"net/textproto".dotWriter "esc:0x20a") Write (@"net/textproto".b·4 []byte "esc:0x1") (@"net/textproto".n·1 int, @"net/textproto".err·2 error)
type @"io".WriteCloser interface { Close() (? error); Write(@"io".p []byte) (@"io".n int, @"io".err error) }
type @"net/textproto".Writer struct { W *@"bufio".Writer; @"net/textproto".dot *@"net/textproto".dotWriter }
func (@"net/textproto".w·2 *@"net/textproto".Writer) DotWriter () (? @"io".WriteCloser)
func (@"net/textproto".w·2 *@"net/textproto".Writer "esc:0x3a") PrintfLine (@"net/textproto".format·3 string "esc:0x9", @"net/textproto".args·4 ...interface {} "esc:0x9") (? error)
func (@"net/textproto".w·1 *@"net/textproto".Writer "esc:0x9") @"net/textproto".closeDot ()
import sync "sync" // indirect
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 @"net/textproto".sequencer struct { @"net/textproto".mu @"sync".Mutex; @"net/textproto".id uint; @"net/textproto".wait map[uint]chan uint }
func (@"net/textproto".s·1 *@"net/textproto".sequencer) End (@"net/textproto".id·2 uint)
func (@"net/textproto".s·1 *@"net/textproto".sequencer) Start (@"net/textproto".id·2 uint)
type @"net/textproto".Pipeline struct { @"net/textproto".mu @"sync".Mutex; @"net/textproto".id uint; @"net/textproto".request @"net/textproto".sequencer; @"net/textproto".response @"net/textproto".sequencer }
func (@"net/textproto".p·1 *@"net/textproto".Pipeline) EndRequest (@"net/textproto".id·2 uint)
func (@"net/textproto".p·1 *@"net/textproto".Pipeline) EndResponse (@"net/textproto".id·2 uint)
func (@"net/textproto".p·2 *@"net/textproto".Pipeline) Next () (? uint)
func (@"net/textproto".p·1 *@"net/textproto".Pipeline) StartRequest (@"net/textproto".id·2 uint)
func (@"net/textproto".p·1 *@"net/textproto".Pipeline) StartResponse (@"net/textproto".id·2 uint)
type @"io".ReadWriteCloser interface { Close() (? error); Read(@"io".p []byte) (@"io".n int, @"io".err error); Write(@"io".p []byte) (@"io".n int, @"io".err error) }
type @"net/textproto".Conn struct { ? @"net/textproto".Reader; ? @"net/textproto".Writer; ? @"net/textproto".Pipeline; @"net/textproto".conn @"io".ReadWriteCloser }
func (@"net/textproto".c·2 *@"net/textproto".Conn "esc:0x9") Close () (? error)
func (@"net/textproto".c·3 *@"net/textproto".Conn) Cmd (@"net/textproto".format·4 string "esc:0x9", @"net/textproto".args·5 ...interface {} "esc:0x9") (@"net/textproto".id·1 uint, @"net/textproto".err·2 error)
type @"net".Addr interface { Network() (? string); String() (? string) }
import time "time" // indirect
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:0x22") String () (? string)
func (@"time".l·2 *@"time".Location "esc:0x1") @"time".firstZoneUsed () (? bool)
func (@"time".l·2 *@"time".Location "esc:0x12") @"time".get () (? *@"time".Location)
func (@"time".l·6 *@"time".Location "esc:0x32") @"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:0x1") @"time".lookupFirstZone () (? int)
func (@"time".l·4 *@"time".Location "esc:0x1") @"time".lookupName (@"time".name·5 string "esc:0x1", @"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) * float64(8190022623310637111963488201822504381538623676021880892417778544696899264837610290203272971060556344039023584360473938041055625214280336402169897364226048p-553) }
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) * float64(7678146209353722106395056769533233877065564876941352542109479049699919628723768656821910653339403201031675627614471533358284117434246264392176261853609984p-547) }
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) * float64(7198262071269114660816079141112770740375861891461678802759824945047098083990024106014198994535558872472104883612039846078596891298747423852523262413111296p-541) }
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:0x12") Add (@"time".d·3 @"time".Duration) (? @"time".Time) { @"time".t·2.@"time".sec += int64(@"time".d·3 / @"time".Duration(0x3b9aca00)); var @"time".nsec·4 int32; ; @"time".nsec·4 = int32(@"time".t·2.@"time".nsec) + int32(@"time".d·3 % @"time".Duration(0x3b9aca00)); if @"time".nsec·4 >= int32(0x3b9aca00) { @"time".t·2.@"time".sec++; @"time".nsec·4 -= int32(0x3b9aca00) } else { if @"time".nsec·4 < int32(0x0) { @"time".t·2.@"time".sec--; @"time".nsec·4 += int32(0x3b9aca00) } }; @"time".t·2.@"time".nsec = @"time".nsec·4; return @"time".t·2 }
func (@"time".t·2 @"time".Time "esc:0x12") AddDate (@"time".years·3 int, @"time".months·4 int, @"time".days·5 int) (? @"time".Time)
func (@"time".t·2 @"time".Time "esc:0x1") After (@"time".u·3 @"time".Time "esc:0x1") (? 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:0x9") AppendFormat (@"time".b·3 []byte "esc:0x1a", @"time".layout·4 string "esc:0x9") (? []byte)
func (@"time".t·2 @"time".Time "esc:0x1") Before (@"time".u·3 @"time".Time "esc:0x1") (? 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:0x1") Clock () (@"time".hour·1 int, @"time".min·2 int, @"time".sec·3 int)
func (@"time".t·4 @"time".Time "esc:0x1") Date () (@"time".year·1 int, @"time".month·2 @"time".Month, @"time".day·3 int)
func (@"time".t·2 @"time".Time "esc:0x1") Day () (? int)
func (@"time".t·2 @"time".Time "esc:0x1") Equal (@"time".u·3 @"time".Time "esc:0x1") (? 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:0x9") Format (@"time".layout·3 string "esc:0x9") (? string)
func (@"time".t·2 *@"time".Time "esc:0x1") GobDecode (@"time".data·3 []byte "esc:0x1") (? error)
func (@"time".t·3 @"time".Time "esc:0x1") GobEncode () (? []byte, ? error)
func (@"time".t·2 @"time".Time "esc:0x1") Hour () (? int)
func (@"time".t·3 @"time".Time "esc:0x1") ISOWeek () (@"time".year·1 int, @"time".week·2 int)
func (@"time".t·2 @"time".Time "esc:0x12") In (@"time".loc·3 *@"time".Location "esc:0x12") (? @"time".Time)
func (@"time".t·2 @"time".Time "esc:0x1") IsZero () (? bool) { return @"time".t·2.@"time".sec == int64(0x0) && @"time".t·2.@"time".nsec == int32(0x0) }
func (@"time".t·2 @"time".Time "esc:0x12") Local () (? @"time".Time) { @"time".t·2.@"time".loc = @"time".Local; return @"time".t·2 }
func (@"time".t·2 @"time".Time "esc:0x12") 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:0x1") MarshalBinary () (? []byte, ? error)
func (@"time".t·3 @"time".Time "esc:0x9") MarshalJSON () (? []byte, ? error)
func (@"time".t·3 @"time".Time "esc:0x9") MarshalText () (? []byte, ? error)
func (@"time".t·2 @"time".Time "esc:0x1") Minute () (? int)
func (@"time".t·2 @"time".Time "esc:0x1") Month () (? @"time".Month)
func (@"time".t·2 @"time".Time "esc:0x1") Nanosecond () (? int) { return int(@"time".t·2.@"time".nsec) }
func (@"time".t·2 @"time".Time "esc:0x12") Round (@"time".d·3 @"time".Duration) (? @"time".Time)
func (@"time".t·2 @"time".Time "esc:0x1") Second () (? int)
func (@"time".t·2 @"time".Time "esc:0x9") String () (? string)
func (@"time".t·2 @"time".Time "esc:0x1") Sub (@"time".u·3 @"time".Time "esc:0x1") (? @"time".Duration)
func (@"time".t·2 @"time".Time "esc:0x12") Truncate (@"time".d·3 @"time".Duration) (? @"time".Time)
func (@"time".t·2 @"time".Time "esc:0x12") UTC () (? @"time".Time) { @"time".t·2.@"time".loc = @"time".UTC; return @"time".t·2 }
func (@"time".t·2 @"time".Time "esc:0x1") Unix () (? int64) { return @"time".t·2.@"time".sec + int64(-0xe7791f700) }
func (@"time".t·2 @"time".Time "esc:0x1") UnixNano () (? int64) { return (@"time".t·2.@"time".sec + int64(-0xe7791f700)) * int64(0x3b9aca00) + int64(@"time".t·2.@"time".nsec) }
func (@"time".t·2 *@"time".Time "esc:0x1") UnmarshalBinary (@"time".data·3 []byte "esc:0x1") (? error)
func (@"time".t·2 *@"time".Time "esc:0x1") UnmarshalJSON (@"time".data·3 []byte "esc:0x1") (@"time".err·1 error)
func (@"time".t·2 *@"time".Time "esc:0x1") UnmarshalText (@"time".data·3 []byte "esc:0x1") (@"time".err·1 error)
func (@"time".t·2 @"time".Time "esc:0x1") Weekday () (? @"time".Weekday)
func (@"time".t·2 @"time".Time "esc:0x1") Year () (? int)
func (@"time".t·2 @"time".Time "esc:0x1") YearDay () (? int)
func (@"time".t·3 @"time".Time "esc:0x32") Zone () (@"time".name·1 string, @"time".offset·2 int)
func (@"time".t·2 @"time".Time "esc:0x1") @"time".abs () (? uint64)
func (@"time".t·5 @"time".Time "esc:0x1") @"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:0x32") @"time".locabs () (@"time".name·1 string, @"time".offset·2 int, @"time".abs·3 uint64)
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) }
import crypto "crypto" // indirect
type @"crypto".PrivateKey interface {}
import x509 "crypto/x509" // indirect
type @"crypto/x509".SignatureAlgorithm int
func (@"crypto/x509".algo·2 @"crypto/x509".SignatureAlgorithm) String () (? string)
type @"crypto/x509".PublicKeyAlgorithm int
import big "math/big" // indirect
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 "esc:0x9") ExpFloat64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Float32 () (? float32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Float64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int () (? int)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int31 () (? int32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int31n (@"math/rand".n·3 int32) (? int32)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int63 () (? int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Int63n (@"math/rand".n·3 int64) (? int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Intn (@"math/rand".n·3 int) (? int)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") NormFloat64 () (? float64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Perm (@"math/rand".n·3 int) (? []int)
func (@"math/rand".r·3 *@"math/rand".Rand "esc:0x9") Read (@"math/rand".p·4 []byte "esc:0x1") (@"math/rand".n·1 int, @"math/rand".err·2 error)
func (@"math/rand".r·1 *@"math/rand".Rand "esc:0x9") Seed (@"math/rand".seed·2 int64)
func (@"math/rand".r·2 *@"math/rand".Rand "esc:0x9") Uint32 () (? uint32)
type @"io".ByteScanner interface { ReadByte() (@"io".c byte, @"io".err error); UnreadByte() (? 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:0x12") @"math/big".and (@"math/big".x·3 @"math/big".nat "esc:0x1", @"math/big".y·4 @"math/big".nat "esc:0x1") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".andNot (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x1") (? @"math/big".nat)
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".bit (@"math/big".i·3 uint) (? uint) { var @"math/big".j·4 uint; ; @"math/big".j·4 = @"math/big".i·3 / uint(0x40); if @"math/big".j·4 >= uint(len(@"math/big".x·2)) { return uint(0x0) }; return uint(@"math/big".x·2[@"math/big".j·4] >> (@"math/big".i·3 % uint(0x40)) & @"math/big".Word(0x1)) }
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".bitLen () (? int)
func (@"math/big".z·2 @"math/big".nat "esc:0x1") @"math/big".bytes (@"math/big".buf·3 []byte "esc:0x1") (@"math/big".i·1 int)
func (@"math/big".z·1 @"math/big".nat "esc:0x1") @"math/big".clear ()
func (@"math/big".x·2 @"math/big".nat "esc:0x1") @"math/big".cmp (@"math/big".y·3 @"math/big".nat "esc:0x1") (@"math/big".r·1 int)
func (@"math/big".q·1 @"math/big".nat) @"math/big".convertWords (@"math/big".s·2 []byte "esc:0x1", @"math/big".b·3 @"math/big".Word, @"math/big".ndigits·4 int, @"math/big".bb·5 @"math/big".Word, @"math/big".table·6 []@"math/big".divisor "esc:0x9")
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:0x12") @"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:0x1", @"math/big".m·5 @"math/big".nat) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat) @"math/big".expNNMontgomery (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"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:0x1", @"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".x·2 @"math/big".nat "esc:0x9") @"math/big".itoa (@"math/big".neg·3 bool, @"math/big".base·4 int) (? []byte)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"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".montgomery (@"math/big".x·3 @"math/big".nat, @"math/big".y·4 @"math/big".nat "esc:0x1", @"math/big".m·5 @"math/big".nat, @"math/big".k·6 @"math/big".Word, @"math/big".n·7 int) (? @"math/big".nat)
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:0x12") @"math/big".norm () (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".or (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x9") (? @"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:0x12") @"math/big".random (@"math/big".rand·3 *@"math/rand".Rand "esc:0x9", @"math/big".limit·4 @"math/big".nat "esc:0x1", @"math/big".n·5 int) (? @"math/big".nat)
func (@"math/big".z·5 @"math/big".nat) @"math/big".scan (@"math/big".r·6 @"io".ByteScanner, @"math/big".base·7 int, @"math/big".fracOk·8 bool) (@"math/big".res·1 @"math/big".nat, @"math/big".b·2 int, @"math/big".count·3 int, @"math/big".err·4 error)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".set (@"math/big".x·3 @"math/big".nat "esc:0x9") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setBit (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".i·4 uint, @"math/big".b·5 uint) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setBytes (@"math/big".buf·3 []byte "esc:0x1") (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".setUint64 (@"math/big".x·3 uint64) (? @"math/big".nat)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"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:0x1") @"math/big".sticky (@"math/big".i·3 uint) (? uint)
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:0x1") @"math/big".trailingZeroBits () (? uint)
func (@"math/big".x·2 @"math/big".nat "esc:0x9") @"math/big".utoa (@"math/big".base·3 int) (? []byte)
func (@"math/big".z·2 @"math/big".nat "esc:0x12") @"math/big".xor (@"math/big".x·3 @"math/big".nat "esc:0x9", @"math/big".y·4 @"math/big".nat "esc:0x9") (? @"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 "esc:0x1a") Abs (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Add (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") And (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") AndNot (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") Append (@"math/big".buf·3 []byte "esc:0x1a", @"math/big".base·4 int) (? []byte)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Binomial (@"math/big".n·3 int64, @"math/big".k·4 int64) (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") Bit (@"math/big".i·3 int) (? uint)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") BitLen () (? int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x22") Bits () (? []@"math/big".Word) { return @"math/big".x·2.@"math/big".abs }
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Bytes () (? []byte)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Cmp (@"math/big".y·3 *@"math/big".Int "esc:0x1") (@"math/big".r·1 int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Div (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") DivMod (@"math/big".x·4 *@"math/big".Int "esc:0x9", @"math/big".y·5 *@"math/big".Int "esc:0x9", @"math/big".m·6 *@"math/big".Int "esc:0x8a") (? *@"math/big".Int, ? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Exp (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x1", @"math/big".m·5 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·1 *@"math/big".Int "esc:0x9") Format (@"math/big".s·2 @"fmt".State, @"math/big".ch·3 rune)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") GCD (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9", @"math/big".a·5 *@"math/big".Int "esc:0x9", @"math/big".b·6 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") GobDecode (@"math/big".buf·3 []byte "esc:0x1") (? error)
func (@"math/big".x·3 *@"math/big".Int "esc:0x1") GobEncode () (? []byte, ? error)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Int64 () (? int64) { var @"math/big".v·3 int64; ; @"math/big".v·3 = int64(@"math/big".low64(@"math/big".x·2.@"math/big".abs)); if @"math/big".x·2.@"math/big".neg { @"math/big".v·3 = -@"math/big".v·3 }; return @"math/big".v·3 }
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Lsh (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 uint) (? *@"math/big".Int)
func (@"math/big".x·3 *@"math/big".Int "esc:0x9") MarshalJSON () (? []byte, ? error)
func (@"math/big".x·3 *@"math/big".Int "esc:0x9") MarshalText () (@"math/big".text·1 []byte, @"math/big".err·2 error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Mod (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") ModInverse (@"math/big".g·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") ModSqrt (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".p·4 *@"math/big".Int) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Mul (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") MulRange (@"math/big".a·3 int64, @"math/big".b·4 int64) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Neg (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Not (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Or (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") ProbablyPrime (@"math/big".n·3 int) (? bool)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Quo (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") QuoRem (@"math/big".x·4 *@"math/big".Int "esc:0x9", @"math/big".y·5 *@"math/big".Int "esc:0x9", @"math/big".r·6 *@"math/big".Int "esc:0x8a") (? *@"math/big".Int, ? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rand (@"math/big".rnd·3 *@"math/rand".Rand "esc:0x9", @"math/big".n·4 *@"math/big".Int "esc:0x1") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rem (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Rsh (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".n·4 uint) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") Scan (@"math/big".s·3 @"fmt".ScanState, @"math/big".ch·4 rune) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Set (@"math/big".x·3 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetBit (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".i·4 int, @"math/big".b·5 uint) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x12") SetBits (@"math/big".abs·3 []@"math/big".Word) (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetBytes (@"math/big".buf·3 []byte "esc:0x1") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetInt64 (@"math/big".x·3 int64) (? *@"math/big".Int)
func (@"math/big".z·3 *@"math/big".Int "esc:0x1a") SetString (@"math/big".s·4 string, @"math/big".base·5 int) (? *@"math/big".Int, ? bool)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") SetUint64 (@"math/big".x·3 uint64) (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Sign () (? int) { if len(@"math/big".x·2.@"math/big".abs) == int(0x0) { return int(0x0) }; if @"math/big".x·2.@"math/big".neg { return int(-0x1) }; return int(0x1) }
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") String () (? string)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Sub (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".x·2 *@"math/big".Int "esc:0x9") Text (@"math/big".base·3 int) (? string)
func (@"math/big".x·2 *@"math/big".Int "esc:0x1") Uint64 () (? uint64) { return @"math/big".low64(@"math/big".x·2.@"math/big".abs) }
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") UnmarshalJSON (@"math/big".text·3 []byte) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x9") UnmarshalText (@"math/big".text·3 []byte) (? error)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") Xor (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".y·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") @"math/big".binaryGCD (@"math/big".a·3 *@"math/big".Int "esc:0x9", @"math/big".b·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") @"math/big".modSqrt3Mod4Prime (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".p·4 *@"math/big".Int "esc:0x9") (? *@"math/big".Int)
func (@"math/big".z·2 *@"math/big".Int "esc:0x1a") @"math/big".modSqrtTonelliShanks (@"math/big".x·3 *@"math/big".Int "esc:0x9", @"math/big".p·4 *@"math/big".Int) (? *@"math/big".Int)
func (@"math/big".z·4 *@"math/big".Int "esc:0x1a") @"math/big".scan (@"math/big".r·5 @"io".ByteScanner, @"math/big".base·6 int) (? *@"math/big".Int, ? int, ? error)
import pkix "crypto/x509/pkix" // indirect
import asn1 "encoding/asn1" // indirect
type @"encoding/asn1".ObjectIdentifier []int
func (@"encoding/asn1".oi·2 @"encoding/asn1".ObjectIdentifier "esc:0x1") Equal (@"encoding/asn1".other·3 @"encoding/asn1".ObjectIdentifier "esc:0x1") (? bool)
func (@"encoding/asn1".oi·2 @"encoding/asn1".ObjectIdentifier "esc:0x1") 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; ExtraNames []@"crypto/x509/pkix".AttributeTypeAndValue }
func (@"crypto/x509/pkix".n·1 *@"crypto/x509/pkix".Name "esc:0x9") FillFromRDNSequence (@"crypto/x509/pkix".rdns·2 *@"crypto/x509/pkix".RDNSequence "esc:0x9")
func (@"crypto/x509/pkix".n·2 @"crypto/x509/pkix".Name) ToRDNSequence () (@"crypto/x509/pkix".ret·1 @"crypto/x509/pkix".RDNSequence)
func (@"crypto/x509/pkix".n·2 @"crypto/x509/pkix".Name "esc:0x1") @"crypto/x509/pkix".appendRDNs (@"crypto/x509/pkix".in·3 @"crypto/x509/pkix".RDNSequence "esc:0x1a", @"crypto/x509/pkix".values·4 []string "esc:0x9", @"crypto/x509/pkix".oid·5 @"encoding/asn1".ObjectIdentifier) (? @"crypto/x509/pkix".RDNSequence)
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:0x1") Size () (@"net".ones·1 int, @"net".bits·2 int)
func (@"net".m·2 @"net".IPMask "esc:0x1") String () (? string)
type @"net".IP []byte
func (@"net".ip·2 @"net".IP "esc:0x1") DefaultMask () (? @"net".IPMask)
func (@"net".ip·2 @"net".IP "esc:0x1") Equal (@"net".x·3 @"net".IP "esc:0x1") (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsGlobalUnicast () (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsInterfaceLocalMulticast () (? bool) { return len(@"net".ip·2) == int(0x10) && @"net".ip·2[int(0x0)] == byte(0xff) && @"net".ip·2[int(0x1)] & byte(0xf) == byte(0x1) }
func (@"net".ip·2 @"net".IP "esc:0x1") IsLinkLocalMulticast () (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsLinkLocalUnicast () (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsLoopback () (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsMulticast () (? bool)
func (@"net".ip·2 @"net".IP "esc:0x1") IsUnspecified () (? bool)
func (@"net".ip·3 @"net".IP "esc:0x1") MarshalText () (? []byte, ? error)
func (@"net".ip·2 @"net".IP "esc:0x1") Mask (@"net".mask·3 @"net".IPMask "esc:0x1") (? @"net".IP)
func (@"net".ip·2 @"net".IP "esc:0x1") String () (? string)
func (@"net".ip·2 @"net".IP "esc:0x12") To16 () (? @"net".IP) { if len(@"net".ip·2) == int(0x4) { return @"net".IPv4(@"net".ip·2[int(0x0)], @"net".ip·2[int(0x1)], @"net".ip·2[int(0x2)], @"net".ip·2[int(0x3)]) }; if len(@"net".ip·2) == int(0x10) { return @"net".ip·2 }; return nil }
func (@"net".ip·2 @"net".IP "esc:0x12") To4 () (? @"net".IP)
func (@"net".ip·2 *@"net".IP "esc:0x1") UnmarshalText (@"net".text·3 []byte "esc:0x1") (? 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:1\""; 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:0x1") At (@"encoding/asn1".i·3 int) (? int) { if @"encoding/asn1".i·3 < int(0x0) || @"encoding/asn1".i·3 >= @"encoding/asn1".b·2.BitLength { return int(0x0) }; var @"encoding/asn1".x·4 int; ; @"encoding/asn1".x·4 = @"encoding/asn1".i·3 / int(0x8); var @"encoding/asn1".y·5 uint; ; @"encoding/asn1".y·5 = uint(0x7) - uint(@"encoding/asn1".i·3 % int(0x8)); return int(@"encoding/asn1".b·2.Bytes[@"encoding/asn1".x·4] >> @"encoding/asn1".y·5) & int(0x1) }
func (@"encoding/asn1".b·2 @"encoding/asn1".BitString "esc:0x12") 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:0x1") HasExpired (@"crypto/x509/pkix".now·3 @"time".Time "esc:0x1") (? bool) { return @"crypto/x509/pkix".now·3.After(@"crypto/x509/pkix".certList·2.TBSCertList.NextUpdate) }
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 "esc:0x9") AddCert (@"crypto/x509".cert·2 *@"crypto/x509".Certificate)
func (@"crypto/x509".s·2 *@"crypto/x509".CertPool "esc:0x9") AppendCertsFromPEM (@"crypto/x509".pemCerts·3 []byte) (@"crypto/x509".ok·1 bool)
func (@"crypto/x509".s·2 *@"crypto/x509".CertPool "esc:0x9") Subjects () (@"crypto/x509".res·1 [][]byte)
func (@"crypto/x509".s·4 *@"crypto/x509".CertPool "esc:0x18a") @"crypto/x509".findVerifiedParents (@"crypto/x509".cert·5 *@"crypto/x509".Certificate "esc:0x9") (@"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; UnhandledCriticalExtensions []@"encoding/asn1".ObjectIdentifier; 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 "esc:0x9") CheckCRLSignature (@"crypto/x509".crl·3 *@"crypto/x509/pkix".CertificateList "esc:0x9") (@"crypto/x509".err·1 error)
func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x9") 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 "esc:0x9") CheckSignatureFrom (@"crypto/x509".parent·3 *@"crypto/x509".Certificate "esc:0x9") (@"crypto/x509".err·1 error)
func (@"crypto/x509".c·3 *@"crypto/x509".Certificate "esc:0x9") 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:0x1") Equal (@"crypto/x509".other·3 *@"crypto/x509".Certificate "esc:0x1") (? bool)
func (@"crypto/x509".c·3 *@"crypto/x509".Certificate) Verify (@"crypto/x509".opts·4 @"crypto/x509".VerifyOptions) (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error)
func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x1a") VerifyHostname (@"crypto/x509".h·3 string) (? error)
func (@"crypto/x509".c·3 *@"crypto/x509".Certificate) @"crypto/x509".buildChains (@"crypto/x509".cache·4 map[int][][]*@"crypto/x509".Certificate "esc:0x1", @"crypto/x509".currentChain·5 []*@"crypto/x509".Certificate "esc:0x9", @"crypto/x509".opts·6 *@"crypto/x509".VerifyOptions "esc:0x20a") (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error)
func (@"crypto/x509".c·2 *@"crypto/x509".Certificate "esc:0x12") @"crypto/x509".isValid (@"crypto/x509".certType·3 int, @"crypto/x509".currentChain·4 []*@"crypto/x509".Certificate "esc:0x1", @"crypto/x509".opts·5 *@"crypto/x509".VerifyOptions "esc:0x1") (? error)
func (@"crypto/x509".c·3 *@"crypto/x509".Certificate "esc:0x1") @"crypto/x509".systemVerify (@"crypto/x509".opts·4 *@"crypto/x509".VerifyOptions "esc:0x1") (@"crypto/x509".chains·1 [][]*@"crypto/x509".Certificate, @"crypto/x509".err·2 error) { return nil, nil }
type @"crypto/tls".Certificate struct { Certificate [][]byte; PrivateKey @"crypto".PrivateKey; OCSPStaple []byte; SignedCertificateTimestamps [][]byte; Leaf *@"crypto/x509".Certificate }
type @"crypto/tls".CurveID uint16
type @"crypto/tls".ClientHelloInfo struct { CipherSuites []uint16; ServerName string; SupportedCurves []@"crypto/tls".CurveID; SupportedPoints []uint8 }
type @"crypto/tls".ClientAuthType int
type @"crypto/tls".ClientSessionState struct { @"crypto/tls".sessionTicket []uint8; @"crypto/tls".vers uint16; @"crypto/tls".cipherSuite uint16; @"crypto/tls".masterSecret []byte; @"crypto/tls".serverCertificates []*@"crypto/x509".Certificate; @"crypto/tls".verifiedChains [][]*@"crypto/x509".Certificate }
type @"crypto/tls".ClientSessionCache interface { Get(@"crypto/tls".sessionKey string) (@"crypto/tls".session *@"crypto/tls".ClientSessionState, @"crypto/tls".ok bool); Put(@"crypto/tls".sessionKey string, @"crypto/tls".cs *@"crypto/tls".ClientSessionState) }
type @"sync".Once struct { @"sync".m @"sync".Mutex; @"sync".done uint32 }
func (@"sync".o·1 *@"sync".Once) Do (@"sync".f·2 func() "esc:0x1")
type @"sync".Locker interface { Lock(); Unlock() }
type @"sync".RWMutex struct { @"sync".w @"sync".Mutex; @"sync".writerSem uint32; @"sync".readerSem uint32; @"sync".readerCount int32; @"sync".readerWait int32 }
func (@"sync".rw·1 *@"sync".RWMutex) Lock ()
func (@"sync".rw·1 *@"sync".RWMutex) RLock ()
func (@"sync".rw·2 *@"sync".RWMutex "esc:0x12") RLocker () (? @"sync".Locker) { return (*@"sync".rlocker)(@"sync".rw·2) }
func (@"sync".rw·1 *@"sync".RWMutex) RUnlock ()
func (@"sync".rw·1 *@"sync".RWMutex) Unlock ()
type @"crypto/tls".ticketKey struct { @"crypto/tls".keyName [16]byte; @"crypto/tls".aesKey [16]byte; @"crypto/tls".hmacKey [16]byte }
type @"crypto/tls".Config struct { Rand @"io".Reader; Time func() (? @"time".Time); Certificates []@"crypto/tls".Certificate; NameToCertificate map[string]*@"crypto/tls".Certificate; GetCertificate func(@"crypto/tls".clientHello *@"crypto/tls".ClientHelloInfo) (? *@"crypto/tls".Certificate, ? error); RootCAs *@"crypto/x509".CertPool; NextProtos []string; ServerName string; ClientAuth @"crypto/tls".ClientAuthType; ClientCAs *@"crypto/x509".CertPool; InsecureSkipVerify bool; CipherSuites []uint16; PreferServerCipherSuites bool; SessionTicketsDisabled bool; SessionTicketKey [32]byte; ClientSessionCache @"crypto/tls".ClientSessionCache; MinVersion uint16; MaxVersion uint16; CurvePreferences []@"crypto/tls".CurveID; @"crypto/tls".serverInitOnce @"sync".Once; @"crypto/tls".mutex @"sync".RWMutex; @"crypto/tls".sessionTicketKeys []@"crypto/tls".ticketKey }
func (@"crypto/tls".c·1 *@"crypto/tls".Config "esc:0x9") BuildNameToCertificate ()
func (@"crypto/tls".c·1 *@"crypto/tls".Config) SetSessionTicketKeys (@"crypto/tls".keys·2 [][32]byte "esc:0x1")
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x22") @"crypto/tls".cipherSuites () (? []uint16)
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x22") @"crypto/tls".curvePreferences () (? []@"crypto/tls".CurveID) { if @"crypto/tls".c·2 == nil || len(@"crypto/tls".c·2.CurvePreferences) == int(0x0) { return @"crypto/tls".defaultCurvePreferences }; return @"crypto/tls".c·2.CurvePreferences }
func (@"crypto/tls".c·3 *@"crypto/tls".Config "esc:0x22") @"crypto/tls".getCertificate (@"crypto/tls".clientHello·4 *@"crypto/tls".ClientHelloInfo) (? *@"crypto/tls".Certificate, ? error)
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x1") @"crypto/tls".maxVersion () (? uint16) { if @"crypto/tls".c·2 == nil || @"crypto/tls".c·2.MaxVersion == uint16(0x0) { return uint16(0x303) }; return @"crypto/tls".c·2.MaxVersion }
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x1") @"crypto/tls".minVersion () (? uint16) { if @"crypto/tls".c·2 == nil || @"crypto/tls".c·2.MinVersion == uint16(0x0) { return uint16(0x301) }; return @"crypto/tls".c·2.MinVersion }
func (@"crypto/tls".c·3 *@"crypto/tls".Config "esc:0x1") @"crypto/tls".mutualVersion (@"crypto/tls".vers·4 uint16) (? uint16, ? bool) { var @"crypto/tls".minVersion·5 uint16; ; @"crypto/tls".minVersion·5 = @"crypto/tls".c·3.@"crypto/tls".minVersion(); var @"crypto/tls".maxVersion·6 uint16; ; @"crypto/tls".maxVersion·6 = @"crypto/tls".c·3.@"crypto/tls".maxVersion(); if @"crypto/tls".vers·4 < @"crypto/tls".minVersion·5 { return uint16(0x0), bool(false) }; if @"crypto/tls".vers·4 > @"crypto/tls".maxVersion·6 { @"crypto/tls".vers·4 = @"crypto/tls".maxVersion·6 }; return @"crypto/tls".vers·4, bool(true) }
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x22") @"crypto/tls".rand () (? @"io".Reader) { var @"crypto/tls".r·3 @"io".Reader; ; @"crypto/tls".r·3 = @"crypto/tls".c·2.Rand; if @"crypto/tls".r·3 == nil { return @"crypto/rand".Reader }; return @"crypto/tls".r·3 }
func (@"crypto/tls".c·1 *@"crypto/tls".Config) @"crypto/tls".serverInit ()
func (@"crypto/tls".c·2 *@"crypto/tls".Config) @"crypto/tls".ticketKeys () (? []@"crypto/tls".ticketKey)
func (@"crypto/tls".c·2 *@"crypto/tls".Config "esc:0x1") @"crypto/tls".time () (? @"time".Time)
type @"crypto/tls".ConnectionState struct { Version uint16; HandshakeComplete bool; DidResume bool; CipherSuite uint16; NegotiatedProtocol string; NegotiatedProtocolIsMutual bool; ServerName string; PeerCertificates []*@"crypto/x509".Certificate; VerifiedChains [][]*@"crypto/x509".Certificate; SignedCertificateTimestamps [][]byte; OCSPResponse []byte; TLSUnique []byte }
type @"".Client struct { Text *@"net/textproto".Conn; @"".conn @"net".Conn; @"".tls bool; @"".serverName string; @"".ext map[string]string; @"".auth []string; @"".localName string; @"".didHello bool; @"".helloError error }
func (@"".c·2 *@"".Client "esc:0x2a") Auth (@"".a·3 @"".Auth) (? error)
func (@"".c·2 *@"".Client "esc:0x9") Close () (? error)
func (@"".c·3 *@"".Client) Data () (? @"io".WriteCloser, ? error)
func (@"".c·3 *@"".Client "esc:0x9") Extension (@"".ext·4 string "esc:0x9") (? bool, ? string)
func (@"".c·2 *@"".Client "esc:0x2a") Hello (@"".localName·3 string) (? error)
func (@"".c·2 *@"".Client "esc:0x2a") Mail (@"".from·3 string) (? error)
func (@"".c·2 *@"".Client "esc:0x2a") Quit () (? error)
func (@"".c·2 *@"".Client "esc:0x4a") Rcpt (@"".to·3 string) (? error)
func (@"".c·2 *@"".Client "esc:0x2a") Reset () (? error)
func (@"".c·2 *@"".Client) StartTLS (@"".config·3 *@"crypto/tls".Config) (? error)
func (@"".c·3 *@"".Client "esc:0x9") TLSConnectionState () (@"".state·1 @"crypto/tls".ConnectionState, @"".ok·2 bool)
func (@"".c·2 *@"".Client "esc:0x2a") Verify (@"".addr·3 string) (? error)
func (@"".c·4 *@"".Client "esc:0x100a") @"".cmd (@"".expectCode·5 int, @"".format·6 string "esc:0x9", @"".args·7 ...interface {} "esc:0x9") (? int, ? string, ? error)
func (@"".c·2 *@"".Client "esc:0x4a") @"".ehlo () (? error)
func (@"".c·2 *@"".Client "esc:0x2a") @"".hello () (? error)
func (@"".c·2 *@"".Client "esc:0x4a") @"".helo () (? error)
func @"".Dial (@"".addr·3 string) (? *@"".Client, ? error)
func @"".NewClient (@"".conn·3 @"net".Conn, @"".host·4 string) (? *@"".Client, ? error)
func @"".SendMail (@"".addr·2 string, @"".a·3 @"".Auth, @"".from·4 string, @"".to·5 []string "esc:0x9", @"".msg·6 []byte) (? error)
func @"".init ()
type @"".plainAuth struct { @"".identity string; @"".username string; @"".password string; @"".host string }
func (@"".a·3 *@"".plainAuth "esc:0x1") Next (@"".fromServer·4 []byte "esc:0x1", @"".more·5 bool) (? []byte, ? error) { if @"".more·5 { return nil, @"errors".New(string("unexpected server challenge")) }; return nil, nil }
func (@"".a·4 *@"".plainAuth "esc:0x1") Start (@"".server·5 *@"".ServerInfo "esc:0x1") (? string, ? []byte, ? error)
type @"".cramMD5Auth struct { @"".username string; @"".secret string }
func (@"".a·3 *@"".cramMD5Auth "esc:0x9") Next (@"".fromServer·4 []byte, @"".more·5 bool) (? []byte, ? error)
func (@"".a·4 *@"".cramMD5Auth "esc:0x1") Start (@"".server·5 *@"".ServerInfo "esc:0x1") (? string, ? []byte, ? error) { return string("CRAM-MD5"), nil, nil }
var @"bufio".ErrInvalidUnreadByte error
var @"bufio".ErrInvalidUnreadRune error
var @"time".months [12]string
var @"time".days [7]string
var @"time".Local *@"time".Location
var @"time".UTC *@"time".Location
func @"math/big".low64 (@"math/big".z·2 @"math/big".nat "esc:0x1") (? uint64) { if len(@"math/big".z·2) == int(0x0) { return uint64(0x0) }; var @"math/big".v·3 uint64; ; @"math/big".v·3 = uint64(@"math/big".z·2[int(0x0)]); if false && len(@"math/big".z·2) > int(0x1) { @"math/big".v·3 |= uint64(@"math/big".z·2[int(0x1)]) << uint(0x20) }; return @"math/big".v·3 }
func @"net".IPv4 (@"net".a·2 byte, @"net".b·3 byte, @"net".c·4 byte, @"net".d·5 byte) (? @"net".IP) { var @"net".p·6 @"net".IP; ; @"net".p·6 = make(@"net".IP, 0x10); copy(@"net".p·6, @"net".v4InV6Prefix); @"net".p·6[int(0xc)] = @"net".a·2; @"net".p·6[int(0xd)] = @"net".b·3; @"net".p·6[int(0xe)] = @"net".c·4; @"net".p·6[int(0xf)] = @"net".d·5; return @"net".p·6 }
type @"sync".rlocker struct { @"sync".w @"sync".Mutex; @"sync".writerSem uint32; @"sync".readerSem uint32; @"sync".readerCount int32; @"sync".readerWait int32 }
func (@"sync".r·1 *@"sync".rlocker) Lock ()
func (@"sync".r·1 *@"sync".rlocker) Unlock ()
var @"crypto/tls".defaultCurvePreferences []@"crypto/tls".CurveID
import rand "crypto/rand" // indirect
var @"crypto/rand".Reader @"io".Reader
func @"errors".New (@"errors".text·2 string) (? error) { return (&@"errors".errorString{ @"errors".s:@"errors".text·2 }) }
var @"net".v4InV6Prefix []byte
type @"errors".errorString struct { @"errors".s string }
func (@"errors".e·2 *@"errors".errorString "esc:0x22") Error () (? string) { return @"errors".e·2.@"errors".s }
$$
_go_.o 0 0 0 644 128400 `
go object linux amd64 go1.6 X:none
!
go13ldcrypto/hmac.acrypto/md5.aerrors.a
fmt.acrypto/tls.a"encoding/base64.aio.a
net.anet/textproto.astrings.a þ"".PlainAuth dH% H;a` Hì(1ÛH\$pH\$xH H$è HD$HD$ Hl$8HhHl$0=
H(Hl$HHhHl$@=
É HhHl$XHh(Hl$P=
Hh Hl$hHh8Hl$`= uZHh0HD$ H 1íH9ètH\$ H\$xHD$pHÄ(ÃH H$H H\$H H\$è HD$ë½L@0L$Hl$è HD$ ëL@ L$Hl$è HD$ éZÿÿÿL@L$Hl$è HD$ éÿÿÿH$Hl$è HD$ éèþÿÿè éþÿÿÌÌÌ"
L "type."".plainAuth ^ "runtime.newobject (runtime.writeBarrier Ö (runtime.writeBarrier (runtime.writeBarrier Ò (runtime.writeBarrier ø :go.itab.*"".plainAuth."".Auth ¼ $type.*"".plainAuth Ò type."".Auth ê :go.itab.*"".plainAuth."".Auth þ runtime.typ2Itab ° .runtime.writebarrierptr â .runtime.writebarrierptr .runtime.writebarrierptr Ê .runtime.writebarrierptr è 0runtime.morestack_noctxt P "".autotmp_0001 $type.*"".plainAuth "".autotmp_0000 $type.*"".plainAuth "".~r4 type."".Auth "".host `type.string "".password @type.string "".username type.string "".identity type.string PÃOPO
h#Ð
.Ð Tgclocals·00aca069dd0de4d6687267ddb97a24d9 Tgclocals·0c8aa8e80191a30eac23f1a218103f16 8$GOROOT/src/net/smtp/auth.goþ*"".(*plainAuth).Start dH% H$HÿÿÿH;A# Hì8 1ÛH$P H$X 1ÛH$` H$h H$p 1ÛH$x H$ H¬$H ¶]û
ÆD$o H$H Hû « HKHC Hk(H¬$0 1ÒH$( HD$pH$ Hl$pH9ê H$¨ Hù Y H1HAHT$xH´$ H´$ð H$ H$ø Hø
H4$HD$H- Hl$HÇD$ è HT$xH$¨ ¶\$ û Ù ÆD$o|$o
H H$Ð HDŽ$Ø 1ÛH$° H$¸ H H$è HD$H$ H¬$Ø HhH¬$Ð =
H(H$ H 1íH9ètLH$ 1ÛH$P H$X 1ÛH$` H$h H$p H$x H$ HÄ8 ÃH H$H H\$H H\$è HD$ë
H$Hl$è H$ éTÿÿÿH$H Hû H3H´$ HKH$@ Hû n HS0H$ HC8H$ H$ H9Á
+ H4$HL$HT$HD$è H$@ ¶\$ û ý H$ H$H|$HHHHHOH H\$HÇD$ HXH|$(HHHKHOH H\$8HÇD$@ HX H|$HHHHKHOè H\$XH|$HHHKHOHÇ$ è HT$HL$ HD$(H H$P HDŽ$X H$` H$h H$p 1ÛH$x H$ HÄ8 ÃH H$à HDŽ$è 1ÛH$À H$È H H$è HD$H$ H¬$è HhH¬$à =
H(H$ H 1íH9ètLH$ 1ÛH$P H$X 1ÛH$` H$h H$p H$x H$ HÄ8 ÃH H$H H\$H H\$è HD$ë
H$Hl$è H$ éTÿÿÿéýÿÿécýÿÿHÁHÿÂéûÿÿé ûÿÿéNûÿÿè é¸úÿÿÌÌÌÌÌÌÌÌ<
² "go.string."PLAIN" Ø runtime.eqstring ¼ Dgo.string."unencrypted connection" .type.errors.errorString ¨ "runtime.newobject ö (runtime.writeBarrier ¨ Bgo.itab.*errors.errorString.error Ü 0type.*errors.errorString ò type.error Bgo.itab.*errors.errorString.error runtime.typ2Itab È .runtime.writebarrierptr Ê runtime.eqstring  go.string."\x00"
go.string."\x00" î
*runtime.concatstring5 ¸ 2runtime.stringtoslicebyte ä "go.string."PLAIN" þ 6go.string."wrong host name" Ø .type.errors.errorString ê "runtime.newobject ¸ (runtime.writeBarrier ê Bgo.itab.*errors.errorString.error 0type.*errors.errorString ´ type.error Ì Bgo.itab.*errors.errorString.error à runtime.typ2Itab .runtime.writebarrierptr þ 0runtime.morestack_noctxt ð 2"".autotmp_0019 ïtype.[32]uint8 "".autotmp_0018 type.*uint8 "".autotmp_0017 type.error "".autotmp_0016 0type.*errors.errorString "".autotmp_0015 otype.string "".autotmp_0014 type.string "".autotmp_0011 ¯0type.*errors.errorString "".autotmp_0010 Otype.string "".autotmp_0009 type.*string "".autotmp_0008 type.int "".autotmp_0007 ÿtype.int "".autotmp_0006 0type.*errors.errorString "".autotmp_0005 0type.*errors.errorString "".autotmp_0004 /type.[]string "".~r0 ïtype.error errors.text·2 ¯type.string "".~r0 type.error errors.text·2 Ïtype.string "".mechanism type.string "".advertised type.bool "".~r3 ptype.error "".~r2 @type.[]uint8 "".~r1 type.string "".server &type.*"".ServerInfo "".a $type.*"".plainAuth <"ðïðÐïðÏïðrï Ð
Hp`P°M ( «h»Ð»a Tgclocals·1a94cf2d8f5e00668da7a1b4c0fe2126 Tgclocals·9a9a37670773d1c5f424c6af67f17c94 8$GOROOT/src/net/smtp/auth.goþ("".(*plainAuth).Next à àdH% H;aF HìH1ÛH\$xH$ H$ 1ÛH$ H$ |$p à H H\$8HÇD$@ 1ÛH\$(H\$0H H$è HD$HD$ Hl$@HhHl$8= uvH(HD$ H 1íH9èt1HL$ 1ÛH\$xH$ H$ H$ H$ HÄHÃH H$H H\$H H\$è HD$ë H$Hl$è HD$ éuÿÿÿ1ÛH\$xH$ H$ 1ÛH$ H$ HÄHÃè éþÿÿÌÌÌÌÌÌÌÌÌÌÌÌÌ
Ngo.string."unexpected server challenge" Þ .type.errors.errorString ð "runtime.newobject ¬ (runtime.writeBarrier Ð Bgo.itab.*errors.errorString.error Î 0type.*errors.errorString ä type.error ü Bgo.itab.*errors.errorString.error runtime.typ2Itab º .runtime.writebarrierptr ´ 0runtime.morestack_noctxt "".autotmp_0023 O0type.*errors.errorString "".autotmp_0022 0type.*errors.errorString "".~r0 ?type.error errors.text·2 type.string "".~r3 type.error "".~r2 Ptype.[]uint8 "".more @type.bool "".fromServer type.[]uint8 "".a $type.*"".plainAuth Ìt ð @à. wi Tgclocals·5b3cb3f294534a3016b654e497969c26 Tgclocals·11d28ee4a7546638afa514476454a63e 8$GOROOT/src/net/smtp/auth.goþ"".CRAMMD5Auth dH% H;aê Hì(1ÛH\$PH\$XH H$è HD$HD$ Hl$8HhHl$0=
H(Hl$HHhHl$@= uZHhHD$ H 1íH9ètH\$ H\$XHD$PHÄ(ÃH H$H H\$H H\$è HD$ë½L@L$Hl$è HD$ ëH$Hl$è HD$ é^ÿÿÿè éùþÿÿÌÌÌÌÌÌÌÌÌ
L &type."".cramMD5Auth ^ "runtime.newobject (runtime.writeBarrier Ö (runtime.writeBarrier ü >go.itab.*"".cramMD5Auth."".Auth À (type.*"".cramMD5Auth Ö type."".Auth î >go.itab.*"".cramMD5Auth."".Auth runtime.typ2Itab ´ .runtime.writebarrierptr Þ .runtime.writebarrierptr ü 0runtime.morestack_noctxt `P
"".autotmp_0028 (type.*"".cramMD5Auth "".autotmp_0027 (type.*"".cramMD5Auth "".~r2 @type."".Auth "".secret type.string "".username type.string P
OP`O ¸#Ú .P Tgclocals·9ba22629e9611c66625b3db4800944b7 Tgclocals·0c8aa8e80191a30eac23f1a218103f16 8$GOROOT/src/net/smtp/auth.goþ."".(*cramMD5Auth).Start 1Û1Û1ÛH H\$HÇD$ 1ÛH\$(H\$0H\$81ÛH\$@H\$HÃÌÌÌÌÌÌÌ (go.string."CRAM-MD5"
"".~r3 ptype.error "".~r2 @type.[]uint8 "".~r1 type.string "".server &type.*"".ServerInfo "".a (type.*"".cramMD5Auth @ @ À: Tgclocals·ceeeaa06de8d2a5a22a0a9e77901485d Tgclocals·33cdeccccebe80329f1fdbee7f5874cb 8$GOROOT/src/net/smtp/auth.goþ,"".(*cramMD5Auth).Next dH% HD$H;AÙ Hìè 1ÛH$ H$ H$( 1ÛH$0 H$8 ¼$ d HÇ$ H´$ð Hþ C H^H|$HHHKHOè HT$HL$ HD$(H H$H$° HT$H$¸ HL$H$À HD$è HL$ HD$(H$ø H\$H$ H\$H$ H\$HD$@H$HL$8HY@ÿÓH\$@H$H\$8H[0ÿÓHD$H H$HÇD$ HD$è HT$HL$ HD$(HT$hHT$HL$pHL$HD$xHD$H\$@H$H\$8H[8ÿÓH\$ H$ H\$(H$ H\$0H$¨ 1ÛH$È H$Ð H$Ø H$à H$È Hû Â HDŽ$ HDŽ$ H$ H H$H$ð H\$H|$ r HÇD$ è HL$HD$ H$ HL$HHHD$P=
! HCH H$H$ H\$HÇD$ è HL$HD$ H$ HÃHL$HHHD$P=
° HCH H$HÇD$ H$ H\$H$ H\$H$ H\$ è HL$(HD$0HÇ$ HL$XHL$HD$`HD$è HT$HL$ HD$(H$ H$ H$( 1ÛH$0 H$8 HÄè ÃLCL$HD$è é=ÿÿÿLCL$HD$è éÌþÿÿ% éþÿÿé7þÿÿé¶üÿÿ1ÛH$ H$ H$( 1ÛH$0 H$8 HÄè Ãè éüÿÿÌÌÌÌÌ*
2runtime.stringtoslicebyte  "crypto/md5.New·f ¢ crypto/hmac.New ° Ø ì type.[]uint8 "runtime.makeslice type.string ö runtime.convT2E À (runtime.writeBarrier ä type.[]uint8 ¢
runtime.convT2E ô
(runtime.writeBarrier "go.string."%s %x" fmt.Sprintf à 2runtime.stringtoslicebyte .runtime.writebarrierptr ´ .runtime.writebarrierptr ä 0runtime.morestack_noctxt Ð "".autotmp_0041 "type.interface {} "".autotmp_0040 ¿"type.interface {} "".autotmp_0039 ?(type.[2]interface {} "".autotmp_0036 Ï&type.[]interface {} "".autotmp_0035 type.[]uint8 "".autotmp_0034 type.string "".autotmp_0033 type.[]uint8 "".autotmp_0031 otype.[]uint8 "".s ÿtype.[]uint8 "".d ßtype.hash.Hash "".~r3 type.error "".~r2 Ptype.[]uint8 "".more @type.bool "".fromServer type.[]uint8 "".a (type.*"".cramMD5Auth ÐÕÏÐ{Ï ,ÈK;FÖ
4
&