Crash when creating bloom filter
Bug #571914 reported by
eMTee
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
DC++ |
Fix Released
|
High
|
Unassigned |
Bug Description
[2010-04-20 23:18] <Sulan> http://
[2010-04-20 23:18] <Sulan> DC++ didnt like my buggy bloom filter
[2010-04-21 16:26] <eMTee> Sulan, does this crash depend on a specific GET BLOM command parameters or on a certain share the filter made from?
[2010-04-21 16:34] <Sulan> dont know, i only got it once
[2010-04-21 16:34] <Sulan> no time to test it more atm
[2010-04-21 16:35] <eMTee> if its reproducible it'd worth to test on a build made with other than gcc 4.4.1 because the crash is in the 64bit modulo function in ver. 4.4.1 gcc runtime lib...
Changed in dcplusplus: | |
status: | Confirmed → Fix Committed |
To post a comment you must log in.
The crash is actually because of an unhandled exception caused by a modulo by zero operation, and is reproducible if DC++ receives a GET BLOM command with zero filter size (m) specified (or if parameter #3 of the GET command is invalid).
As far as I see the (current) protocol extension does not restrict m=0, however getting a zero sized filter seems illogical to me... so if m=0 is invalid then the fix is easy (send "Unsupported m"). If m=0 is a valid value then some other action must be taken.