MCPcopy Create free account
hub / github.com/XTLS/Go / marshal

Method marshal

ticket.go:35–51  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

33}
34
35func (m *sessionState) marshal() []byte {
36 var b cryptobyte.Builder
37 b.AddUint16(m.vers)
38 b.AddUint16(m.cipherSuite)
39 addUint64(&b, m.createdAt)
40 b.AddUint16LengthPrefixed(func(b *cryptobyte.Builder) {
41 b.AddBytes(m.masterSecret)
42 })
43 b.AddUint24LengthPrefixed(func(b *cryptobyte.Builder) {
44 for _, cert := range m.certificates {
45 b.AddUint24LengthPrefixed(func(b *cryptobyte.Builder) {
46 b.AddBytes(cert)
47 })
48 }
49 })
50 return b.BytesOrPanic()
51}
52
53func (m *sessionState) unmarshal(data []byte) bool {
54 *m = sessionState{usedOldKey: m.usedOldKey}

Callers 1

sendSessionTicketMethod · 0.95

Calls 1

addUint64Function · 0.85

Tested by

no test coverage detected