]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked
authorKen Mills <ken.k.mills@intel.com>
Mon, 13 Dec 2010 15:28:03 +0000 (15:28 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 7 Jan 2011 21:58:37 +0000 (13:58 -0800)
commit 093d804611b9a38fe59753b37c29f840518406a9 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/char/n_gsm.c

index bc0aef65e643f09c534e82215874aa1ba9c3b1d5..0e62674072ebcceb4d6f33afc3857445629df959 100644 (file)
@@ -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);