代码拉取完成,页面将自动刷新
package sctp
import (
"encoding/binary"
"fmt"
"math/rand"
"time"
)
type paramStateCookie struct {
paramHeader
cookie []byte
}
func newRandomStateCookie() *paramStateCookie {
rs := rand.NewSource(time.Now().UnixNano())
r := rand.New(rs)
randCookie := make([]byte, 32)
i := 0
for i < 4 {
binary.BigEndian.PutUint64(randCookie[i*4:], r.Uint64())
i++
}
s := ¶mStateCookie{
cookie: randCookie,
}
return s
}
func (s *paramStateCookie) marshal() ([]byte, error) {
s.typ = stateCookie
s.raw = s.cookie
return s.paramHeader.marshal()
}
func (s *paramStateCookie) unmarshal(raw []byte) (param, error) {
s.paramHeader.unmarshal(raw)
s.cookie = s.raw
return s, nil
}
// String makes paramStateCookie printable
func (s *paramStateCookie) String() string {
return fmt.Sprintf("%s: %s", s.paramHeader, s.cookie)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。