| From foo@baz Thu Dec 21 09:02:40 CET 2017 |
| From: Arnd Bergmann <arnd@arndb.de> |
| Date: Tue, 28 Mar 2017 12:11:07 +0200 |
| Subject: isdn: kcapi: avoid uninitialized data |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| |
| [ Upstream commit af109a2cf6a9a6271fa420ae2d64d72d86c92b7d ] |
| |
| gcc-7 points out that the AVMB1_ADDCARD ioctl results in an unintialized |
| value ending up in the cardnr parameter: |
| |
| drivers/isdn/capi/kcapi.c: In function 'old_capi_manufacturer': |
| drivers/isdn/capi/kcapi.c:1042:24: error: 'cdef.cardnr' may be used uninitialized in this function [-Werror=maybe-uninitialized] |
| cparams.cardnr = cdef.cardnr; |
| |
| This has been broken since before the start of the git history, so |
| either the value is not used for anything important, or the ioctl |
| command doesn't get called in practice. |
| |
| Setting the cardnr to zero avoids the warning and makes sure |
| we have consistent behavior. |
| |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <alexander.levin@verizon.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/isdn/capi/kcapi.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/isdn/capi/kcapi.c |
| +++ b/drivers/isdn/capi/kcapi.c |
| @@ -1032,6 +1032,7 @@ static int old_capi_manufacturer(unsigne |
| sizeof(avmb1_carddef)))) |
| return -EFAULT; |
| cdef.cardtype = AVM_CARDTYPE_B1; |
| + cdef.cardnr = 0; |
| } else { |
| if ((retval = copy_from_user(&cdef, data, |
| sizeof(avmb1_extcarddef)))) |