diff options
author | Ken Mills <ken.k.mills@intel.com> | 2010-12-13 16:28:03 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-12-16 22:03:13 +0100 |
commit | 093d804611b9a38fe59753b37c29f840518406a9 (patch) | |
tree | 546e8ef4a08c9a0c125c1a1b1afcbfb1873d3ff2 /drivers/tty | |
parent | n_gsm: Fix message length handling when building header (diff) | |
download | linux-093d804611b9a38fe59753b37c29f840518406a9.tar.xz linux-093d804611b9a38fe59753b37c29f840518406a9.zip |
n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked
gsm_data_alloc buffer allocation could fail and it is not being checked.
Add check for allocated buffer and return if the buffer allocation
fails.
Signed-off-by: Ken Mills <ken.k.mills@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: stable@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/tty')
-rw-r--r-- | drivers/tty/n_gsm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 2fc5cf27152a..c5f8e5bda2b2 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -968,6 +968,8 @@ static void gsm_control_reply(struct gsm_mux *gsm, int cmd, u8 *data, { struct gsm_msg *msg; msg = gsm_data_alloc(gsm, 0, dlen + 2, gsm->ftype); + if (msg == NULL) + return; msg->data[0] = (cmd & 0xFE) << 1 | EA; /* Clear C/R */ msg->data[1] = (dlen << 1) | EA; memcpy(msg->data + 2, data, dlen); |