Retransmit pkts twice to make sure they are received

This commit is contained in:
Nonoo 2020-11-07 15:27:52 +01:00
parent fab63cf746
commit 6c0135ed30

12
pkt0.go
View file

@ -35,6 +35,9 @@ func (p *pkt0Type) retransmitRange(s *streamCommon, start, end uint16) error {
if err := s.send(d); err != nil {
return err
}
if err := s.send(d); err != nil {
return err
}
} else {
log.Debug(s.name+"/can't retransmit #", start, " - not found ")
@ -42,6 +45,9 @@ func (p *pkt0Type) retransmitRange(s *streamCommon, start, end uint16) error {
if err := p.sendIdle(s, false, start); err != nil {
return err
}
if err := p.sendIdle(s, false, start); err != nil {
return err
}
}
if start == end {
@ -67,6 +73,9 @@ func (p *pkt0Type) handle(s *streamCommon, r []byte) error {
if err := s.send(d); err != nil {
return err
}
if err := s.send(d); err != nil {
return err
}
} else {
log.Debug(s.name+"/can't retransmit #", seq, " - not found")
@ -74,6 +83,9 @@ func (p *pkt0Type) handle(s *streamCommon, r []byte) error {
if err := p.sendIdle(s, false, seq); err != nil {
return err
}
if err := p.sendIdle(s, false, seq); err != nil {
return err
}
}
} else if bytes.Equal(r[:6], []byte{0x18, 0x00, 0x00, 0x00, 0x01, 0x00}) {
r = r[16:]