sdrangel/qrtplib
Jason Gerecke 7c67b7de7c qrtplib: clear buffer fed to RTPSession::CreateCNAME
The RTPSession::CreateCNAME function checks to see if the buffer that
it is provided already has any data in it, and appends to it if so. The
RTPSession::InternalCreate function calls this function with an uninitialized
buffer, which results in indeterminate behavior. To ensure that the CNAME
is properly created, we clear the buffer before use.

==30323== Conditional jump or move depends on uninitialised value(s)
==30323==    at 0x4C30109: __strlen_sse2 (vg_replace_strmem.c:460)
==30323==    by 0x85647A4: qrtplib::RTPSession::CreateCNAME(unsigned char*, unsigned long*, bool) (rtpsession.cpp:1150)
==30323==    by 0x8564B35: qrtplib::RTPSession::InternalCreate(qrtplib::RTPSessionParams const&) (rtpsession.cpp:218)
==30323==    by 0x5499159: RTPSink::RTPSink(QUdpSocket*, int, bool) (rtpsink.cpp:48)
==30323==    by 0x5420B6A: AudioNetSink::AudioNetSink(QObject*, int, bool) (audionetsink.cpp:42)
==30323==    by 0x541F465: AudioOutput::start(int, int) (audiooutput.cpp:114)
==30323==    by 0x5412763: AudioDeviceManager::startAudioOutput(int) (audiodevicemanager.cpp:361)
==30323==    by 0x5412B0C: AudioDeviceManager::addAudioSink(AudioFifo*, MessageQueue*, int) (audiodevicemanager.cpp:229)
==30323==    by 0x33F96DE7: BFMDemod::BFMDemod(DeviceSourceAPI*) (bfmdemod.cpp:56)
==30323==    by 0x33FB03F2: non-virtual thunk to BFMPlugin::createRxChannelBS(DeviceSourceAPI*) (bfmplugin.cpp:62)
==30323==    by 0x4F47F25: DeviceUISet::loadRxChannelSettings(Preset const*, PluginAPI*) (deviceuiset.cpp:199)
==30323==    by 0x4EA51EA: MainWindow::loadPresetSettings(Preset const*, int) (mainwindow.cpp:575)
==30323==    by 0x4EAC81B: MainWindow::MainWindow(qtwebapp::LoggerWithFile*, MainParser const&, QWidget*) (mainwindow.cpp:176)
==30323==    by 0x10A49B: runQtApplication(int, char**, qtwebapp::LoggerWithFile*) (main.cpp:120)
==30323==    by 0x109B38: main (main.cpp:131)
2018-04-21 18:52:20 -07:00
..
CMakeLists.txt Avoid useless sdrbase dependency by moving the exports header in its own folder 2018-03-09 13:48:14 +01:00
qrtplib.pro Windows build: new location for export header 2018-03-10 20:32:46 +01:00
rtcpapppacket.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpapppacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpbyepacket.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpbyepacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpcompoundpacket.cpp qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtcpcompoundpacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpcompoundpacketbuilder.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpcompoundpacketbuilder.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcppacket.h qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcppacketbuilder.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcppacketbuilder.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcprrpacket.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcprrpacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpscheduler.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpscheduler.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpsdesinfo.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpsdesinfo.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpsdespacket.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpsdespacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpsrpacket.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtcpsrpacket.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtcpunknownpacket.h qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtpaddress.cpp qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtpaddress.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpcollisionlist.cpp qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtpcollisionlist.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpconfig.h qrtplib: removed JRTPLIB_UNUSED 2018-02-27 23:54:23 +01:00
rtpdefines.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtpendian.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtperrors.cpp qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtperrors.h qrtplib: removed JRTPLIB_IMPORTEXPORT 2018-02-27 23:26:03 +01:00
rtpinternalsourcedata.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtpinternalsourcedata.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpinternalutils.h qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtpkeyhashtable.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtplibraryversioninternal.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtppacket.cpp qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtppacket.h qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtppacketbuilder.cpp qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtppacketbuilder.h qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtprandom.cpp qrtplib: simplify random functions 2018-03-05 01:43:22 +01:00
rtprandom.h qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtprandomrand48.cpp qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtprandomrand48.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtprandomrands.cpp qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtprandomrands.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtprandomurandom.cpp qrtplib: fixed urandom calls 2018-03-29 19:55:03 +02:00
rtprandomurandom.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtprawpacket.h qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtpsession.cpp qrtplib: clear buffer fed to RTPSession::CreateCNAME 2018-04-21 18:52:20 -07:00
rtpsession.h PVS-Studio static analysis corrections (4) 2018-04-04 23:39:31 +02:00
rtpsessionparams.cpp qrtplib: removed JRTPLIB_UNUSED 2018-02-27 23:54:23 +01:00
rtpsessionparams.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpsessionsources.cpp qrtplib: replaced size_t by std::size_t 2018-02-28 13:31:44 +01:00
rtpsessionsources.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpsocketutil.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtpsourcedata.cpp qrtplib: removed JRTPLIB_UNUSED 2018-02-27 23:54:23 +01:00
rtpsourcedata.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpsources.cpp qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtpsources.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtpstructs.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtptimeutilities.cpp qrtplib: removed JRTPLIB_UNUSED 2018-02-27 23:54:23 +01:00
rtptimeutilities.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
rtptransmitter.h qrtplib: new RTPUDPTransmitter 2018-03-05 01:17:19 +01:00
rtptypes.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtptypes_win.h qrtplib: removed memory management 2018-02-27 23:05:46 +01:00
rtpudptransmitter.cpp PVS-Studio static analysis corrections (4) 2018-04-04 23:39:31 +02:00
rtpudptransmitter.h Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00