linuxdcpp-team team mailing list archive
-
linuxdcpp-team team
-
Mailing list archive
-
Message #08819
[Bug 1722364] Re: Invalid ADC commands sent via UDP will crash the app
what a nice patch! thanks, applied.
I especially liked the variadic template... ;)
- has anyting changed in the NMDC parsing part? hard to catch that from
the patch.
- as I'm a bit rusty... could the "x[x.length() - 1] != 0x0a" check
crash on empty data? it was after a "x.compare(1, 4, "RES ") == 0" check
before your patch but that clause has been removed.
** Changed in: dcplusplus
Status: New => Fix Committed
--
You received this bug notification because you are a member of
Dcplusplus-team, which is subscribed to DC++.
https://bugs.launchpad.net/bugs/1722364
Title:
Invalid ADC commands sent via UDP will crash the app
Status in AirDC++:
Fix Released
Status in ApexDC++:
New
Status in DC++:
Fix Committed
Status in FlylinkDC++:
New
Bug description:
The AdcCommand parsing function will throw ParseException on invalid
commands:
https://sourceforge.net/p/dcplusplus/code/ci/default/tree/dcpp/AdcCommand.cpp#l37
However, SearchManager (UDPServer in AirDC++) won't catch those
exceptions at all:
https://sourceforge.net/p/dcplusplus/code/ci/default/tree/dcpp/SearchManager.cpp#l286
As a result, you should be able to crash the app by sending the following raw text to the UDP port:
ARES T\n
(I used https://packetsender.com for testing)
To manage notifications about this bug go to:
https://bugs.launchpad.net/airdcpp/+bug/1722364/+subscriptions
References