diff options
author | Tilman Schmidt <tilman@imap.cc> | 2014-10-11 13:46:30 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-10-14 21:05:34 +0200 |
commit | b8324f94202af7dc688576259803a2ef9a98d655 (patch) | |
tree | 05043b6668f823104c3f5eb29451a3b4f0941efd /drivers/isdn/capi | |
parent | isdn/gigaset: fix NULL pointer dereference (diff) | |
download | linux-b8324f94202af7dc688576259803a2ef9a98d655.tar.xz linux-b8324f94202af7dc688576259803a2ef9a98d655.zip |
isdn/gigaset: fix non-heap pointer deallocation
at_state structures may be allocated individually or as part of a
cardstate or bc_state structure. The disconnect() function handled
both cases, creating a risk that it might try to deallocate an
at_state structure that had not been allocated individually.
Fix by splitting disconnect() into two variants handling cases
with and without an associated B channel separately, and adding
an explicit check.
Spotted with Coverity.
Signed-off-by: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/isdn/capi')
0 files changed, 0 insertions, 0 deletions