MCPcopy
hub / github.com/google/gopacket / Put

Method Put

parser.go:77–93  ·  view source on GitHub ↗

Put implements DecodingLayerContainer interface.

(d DecodingLayer)

Source from the content-addressed store, hash-verified

75
76// Put implements DecodingLayerContainer interface.
77func (dl DecodingLayerSparse) Put(d DecodingLayer) DecodingLayerContainer {
78 maxLayerType := LayerType(len(dl) - 1)
79 for _, typ := range d.CanDecode().LayerTypes() {
80 if typ > maxLayerType {
81 maxLayerType = typ
82 }
83 }
84
85 if extra := maxLayerType - LayerType(len(dl)) + 1; extra > 0 {
86 dl = append(dl, make([]DecodingLayer, extra)...)
87 }
88
89 for _, typ := range d.CanDecode().LayerTypes() {
90 dl[typ] = d
91 }
92 return dl
93}
94
95// LayersDecoder implements DecodingLayerContainer interface.
96func (dl DecodingLayerSparse) LayersDecoder(first LayerType, df DecodeFeedback) DecodingLayerFunc {

Callers

nothing calls this directly

Calls 3

LayerTypeTypeAlias · 0.85
LayerTypesMethod · 0.65
CanDecodeMethod · 0.65

Tested by

no test coverage detected