mirror of
https://github.com/ossrs/srs.git
synced 2025-02-13 20:01:56 +00:00
For the DJI M30, there is a bug where empty NALU packets with a size of zero are causing issues with HLS streaming. This bug leads to random unpublish events due to the SRS disconnecting the connection for the HLS module when it fails to handle empty NALU packets. To address this bug, we have patched the system to ignore any empty NALU packets with a size of zero. Additionally, we have created a tool in the srs-bench to replay pcapng files captured by tcpdump or Wireshark. We have also added utest using mprotect and asan to detect any memory corruption. It is important to note that this bug has been fixed in versions 4.0.2716477f31004
and 5.0.170939f6b484b
. This patch specifically addresses the issue in SRS 6.0. Please be aware that there is another commit related to this bug that partially fixes the issue but still leaves a small problem for asan to detect memory corruption. This commit,577cd299e1
, only ignores empty NALU packets but still reads beyond the memory. --------- Co-authored-by: chundonglinlin <chundonglinlin@163.com>
51 lines
2 KiB
Modula-2
51 lines
2 KiB
Modula-2
module github.com/ossrs/srs-bench
|
|
|
|
go 1.17
|
|
|
|
require (
|
|
github.com/ghettovoice/gosip v0.0.0-20220929080231-de8ba881be83
|
|
github.com/google/gopacket v1.1.19
|
|
github.com/ossrs/go-oryx-lib v0.0.9
|
|
github.com/pion/ice/v2 v2.3.6
|
|
github.com/pion/interceptor v0.1.17
|
|
github.com/pion/logging v0.2.2
|
|
github.com/pion/rtcp v1.2.10
|
|
github.com/pion/rtp v1.7.13
|
|
github.com/pion/sdp/v3 v3.0.6
|
|
github.com/pion/transport/v2 v2.2.1
|
|
github.com/pion/webrtc/v3 v3.2.9
|
|
github.com/pkg/errors v0.9.1
|
|
github.com/yapingcat/gomedia/codec v0.0.0-20220617074658-94762898dc25
|
|
github.com/yapingcat/gomedia/mpeg2 v0.0.0-20220617074658-94762898dc25
|
|
)
|
|
|
|
require (
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/gobwas/httphead v0.1.0 // indirect
|
|
github.com/gobwas/pool v0.2.1 // indirect
|
|
github.com/gobwas/ws v1.1.0-rc.1 // indirect
|
|
github.com/google/uuid v1.3.0 // indirect
|
|
github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect
|
|
github.com/mattn/go-colorable v0.1.4 // indirect
|
|
github.com/mattn/go-isatty v0.0.8 // indirect
|
|
github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect
|
|
github.com/pion/datachannel v1.5.5 // indirect
|
|
github.com/pion/dtls/v2 v2.2.7 // indirect
|
|
github.com/pion/mdns v0.0.7 // indirect
|
|
github.com/pion/randutil v0.1.0 // indirect
|
|
github.com/pion/sctp v1.8.7 // indirect
|
|
github.com/pion/srtp/v2 v2.0.15 // indirect
|
|
github.com/pion/stun v0.6.0 // indirect
|
|
github.com/pion/turn/v2 v2.1.0 // indirect
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
|
github.com/satori/go.uuid v1.2.1-0.20181028125025-b2ce2384e17b // indirect
|
|
github.com/sirupsen/logrus v1.4.2 // indirect
|
|
github.com/stretchr/testify v1.8.4 // indirect
|
|
github.com/tevino/abool v0.0.0-20170917061928-9b9efcf221b5 // indirect
|
|
github.com/x-cray/logrus-prefixed-formatter v0.5.2 // indirect
|
|
golang.org/x/crypto v0.9.0 // indirect
|
|
golang.org/x/net v0.10.0 // indirect
|
|
golang.org/x/sys v0.8.0 // indirect
|
|
golang.org/x/term v0.8.0 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|