Coverity SECURE_CODING - CID 12526 - src/action.cpp - in function: CompAction::ButtonBinding::fromString(...) - Using "sscanf" can cause a buffer overflow when done incorrectly. Use correct precision specifiers or do your own parsing.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Compiz |
Triaged
|
Medium
|
Unassigned | ||
0.9.9 |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
This bug is exported from the Coverity Integration Manager on Canonical's servers. For information on how this is done please see this website: https:/
CID: 12526
Checker: SECURE_CODING
Category: No category available
CWE definition: http://
File: /tmp/buildd/
Function: CompAction:
Code snippet:
289 if (start != str.size () && str.compare (start, 6, "Button") == 0)
290 {
291 int buttonNum;
292
CID 12526 - SECURE_CODING
[VERY RISKY]. Using "sscanf" can cause a buffer overflow when done incorrectly. sscanf() assumes an arbitrarily large string, so callers must use correct precision specifiers or never use sscanf(). Use correct precision specifiers or do your own parsing.
293 if (sscanf (str.substr (start + 6).c_str (), "%d", &buttonNum) == 1)
294 {
295 mButton = buttonNum;
296 mModifiers = mods;
297
298 return true;
summary: |
- Coverity SECURE_CODING - CID 12526 + Coverity SECURE_CODING - CID 12526 - src/action.cpp - in function: + CompAction::ButtonBinding::fromString(...) - Using "sscanf" can cause a + buffer overflow when done incorrectly. Use correct precision specifiers + or do your own parsing. |
Changed in compiz: | |
milestone: | none → 0.9.10.0 |
Changed in compiz: | |
milestone: | 0.9.10.0 → 0.9.11.0 |
Changed in compiz: | |
status: | New → Triaged |
milestone: | 0.9.11.0 → 0.9.12.1 |
Changed in compiz: | |
milestone: | 0.9.12.1 → 0.9.12.2 |
Source file with Coverity annotations.