saprus update

This commit is contained in:
Pin
2023-03-06 23:42:53 -05:00
parent bb04d99823
commit 13790469a7
2 changed files with 15 additions and 15 deletions

View File

@@ -1,13 +1,17 @@
package utils
import (
"log"
"net"
"unicode/utf8"
//"bytes"
//"encoding/binary"
"log"
"net"
"unicode/utf8"
"github.com/google/gopacket"
"github.com/google/gopacket/layers"
"github.com/mdlayher/packet"
"github.com/google/gopacket"
"github.com/google/gopacket/layers"
"github.com/mdlayher/packet"
"saprusserver/structs"
)
type SocketCall struct {
@@ -44,11 +48,6 @@ func (c* SocketCall)init(data string) {
iface, _ := net.InterfaceByName("virbr0")
conn, err := packet.Listen(iface, packet.Raw, int(layers.EthernetTypeIPv4), nil)
payload := []byte(data)
if len(payload) > 1500 {
log.Printf("Larger than 1500 -- %d", len(payload))
}
if err != nil {
log.Panic(err)
}
@@ -72,6 +71,10 @@ func (c* SocketCall)init(data string) {
SrcPort: 6868,
DstPort: 6767,
}
saprus := structs.SaprusHeaderFrame{
MagicNumber: 132,
Payload: []byte(data),
}
buf := gopacket.NewSerializeBuffer()
opts := gopacket.SerializeOptions{
@@ -80,7 +83,7 @@ func (c* SocketCall)init(data string) {
}
udp.SetNetworkLayerForChecksum(&ip)
err = gopacket.SerializeLayers(buf, opts, &eth, &ip, &udp, gopacket.Payload(payload))
err = gopacket.SerializeLayers(buf, opts, &eth, &ip, &udp, gopacket.Payload(saprus.Bytes()))
if err != nil {
log.Panic(err)
}