diff --git a/main.go b/main.go index 35ca358..a7af0d9 100644 --- a/main.go +++ b/main.go @@ -198,12 +198,11 @@ func main() { switch ethFrame.SNAPProto { case ethertalk.AARPProto: - log.Print("Got an AARP frame") + // log.Print("Got an AARP frame") aarpCh <- ethFrame case ethertalk.AppleTalkProto: - log.Print("Got an AppleTalk frame") - + // log.Print("Got an AppleTalk frame") var ddpkt ddp.ExtPacket if err := ddp.ExtUnmarshal(ethFrame.Payload, &ddpkt); err != nil { log.Printf("Couldn't unmarshal DDP packet: %v", err) diff --git a/rtmp.go b/rtmp.go index bfaf1dd..044a412 100644 --- a/rtmp.go +++ b/rtmp.go @@ -60,7 +60,8 @@ func (m *RTMPMachine) Run(ctx context.Context) error { ddpPkt := ddp.ExtPacket{ ExtHeader: ddp.ExtHeader{ Size: uint16(len(dataPktRaw)), - DstNet: 0, + Cksum: 0, + DstNet: 0, // this network DstNode: 0xff, // broadcast packet DstSocket: 1, // the special RTMP socket SrcNet: myAddr.Proto.Network, @@ -71,10 +72,11 @@ func (m *RTMPMachine) Run(ctx context.Context) error { Data: dataPktRaw, } - ethFrame, err := ethertalk.AppleTalk(ethertalk.AppleTalkBroadcast, ddpPkt) + ethFrame, err := ethertalk.AppleTalk(myAddr.Hardware, ddpPkt) if err != nil { log.Printf("RTMP: Couldn't create EtherTalk frame: %v", err) } + ethFrame.Dst = ethertalk.AppleTalkBroadcast ethFrameRaw, err := ethertalk.Marshal(*ethFrame) if err != nil {