librtmp potential segmentation fault
Hello, GStreamer uses librtmp on plugins bad rtmp and it seems that librtmp under some schenarios it fails with segmentation fault. Here is the description of one of the bugs related with that: "...a crash in rtmpsrc which happens due to RTMP_Close() being called in gst_rtmp_src_unlock() while RTMP_Read() is being run in gst_rtmp_src_create() in another thread. librtmp isn't thread safe so this case is bad." Is there any "safe" way to cleanup rtmp while read is going on? Here are the related bugs: https://bugzilla.gnome.org/show_bug.cgi?id=729099 https://bugzilla.gnome.org/show_bug.cgi?id=739263
Αθανάσιος Οικονόμου wrote:
Hello,
GStreamer uses librtmp on plugins bad rtmp and it seems that librtmp under some schenarios it fails with segmentation fault.
Here is the description of one of the bugs related with that:
"...a crash in rtmpsrc which happens due to RTMP_Close() being called in gst_rtmp_src_unlock() while RTMP_Read() is being run in gst_rtmp_src_create() in another thread. librtmp isn't thread safe so this case is bad."
Is there any "safe" way to cleanup rtmp while read is going on?
Here are the related bugs:
https://bugzilla.gnome.org/show_bug.cgi?id=729099 https://bugzilla.gnome.org/show_bug.cgi?id=739263
None of this is an RTMPdump issue. It's the responsibility of the plugin authors using librtmp to implement proper locking around librtmp calls - any RTMP session may only be used by a single thread at a time.
participants (2)
-
Howard Chu -
Αθανάσιος Οικονόμου