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

Function Example_captureEthernet

pcapgo/capture_test.go:19–41  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

17)
18
19func Example_captureEthernet() {
20 f, err := os.Create("/tmp/lo.pcap")
21 if err != nil {
22 log.Fatal(err)
23 }
24 defer f.Close()
25 pcapw := pcapgo.NewWriter(f)
26 if err := pcapw.WriteFileHeader(1600, layers.LinkTypeEthernet); err != nil {
27 log.Fatalf("WriteFileHeader: %v", err)
28 }
29
30 handle, err := pcapgo.NewEthernetHandle("lo")
31 if err != nil {
32 log.Fatalf("OpenEthernet: %v", err)
33 }
34
35 pkgsrc := gopacket.NewPacketSource(handle, layers.LayerTypeEthernet)
36 for packet := range pkgsrc.Packets() {
37 if err := pcapw.WritePacket(packet.Metadata().CaptureInfo, packet.Data()); err != nil {
38 log.Fatalf("pcap.WritePacket(): %v", err)
39 }
40 }
41}

Callers

nothing calls this directly

Calls 9

WriteFileHeaderMethod · 0.95
PacketsMethod · 0.95
WritePacketMethod · 0.95
NewWriterFunction · 0.92
NewEthernetHandleFunction · 0.92
NewPacketSourceFunction · 0.92
MetadataMethod · 0.65
DataMethod · 0.65
CloseMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…