Commit c101cff9 authored by Dan Carpenter's avatar Dan Carpenter Committed by David S. Miller

isdn: off by one in connect_res()

The bug here is that we use "Reject" as the index into the cau_t[] array
in the else path.  Since the cau_t[] has 9 elements if Reject == 9 then
we are reading beyond the end of the array.

My understanding of the code is that it's saying that if Reject is 1 or
too high then that's invalid and we should hang up.
Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3ae55826
...@@ -1474,7 +1474,7 @@ static byte connect_res(dword Id, word Number, DIVA_CAPI_ADAPTER *a, ...@@ -1474,7 +1474,7 @@ static byte connect_res(dword Id, word Number, DIVA_CAPI_ADAPTER *a,
add_ai(plci, &parms[5]); add_ai(plci, &parms[5]);
sig_req(plci, REJECT, 0); sig_req(plci, REJECT, 0);
} }
else if (Reject == 1 || Reject > 9) else if (Reject == 1 || Reject >= 9)
{ {
add_ai(plci, &parms[5]); add_ai(plci, &parms[5]);
sig_req(plci, HANGUP, 0); sig_req(plci, HANGUP, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment