maeqtt/mqtt/packets/Ping.go

40 lines
674 B
Go
Raw Normal View History

2021-08-26 15:08:24 +02:00
package packets
import (
"bytes"
"errors"
"io"
)
type PingreqPacket struct {}
2021-09-28 12:30:32 +02:00
func parsePingreq(control controlPacket) (PingreqPacket, error) {
2021-08-26 15:08:24 +02:00
packet := PingreqPacket{}
if control.packetType != PacketTypePingreq {
panic("Wrong packet type for parsePingreq")
}
if control.flags != 0 {
return packet, errors.New("Malformed connect packet")
}
return packet, nil
}
2021-09-28 12:30:32 +02:00
func (r PingreqPacket) Visit(p PacketVisitor) {
p.VisitPing(r)
}
2021-08-26 15:08:24 +02:00
type PingrespPacket struct {}
func (p PingrespPacket) Write(w io.Writer) error {
control := controlPacket {
packetType: PacketTypePingresp,
flags: 0,
reader: bytes.NewReader([]byte{}),
}
return control.write(w)
}