* [PATCH 1/2] n_gsm: Fix message length handling when building header
@ 2010-12-13 15:27 Alan Cox
2010-12-13 15:28 ` [PATCH 2/2] n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked Alan Cox
0 siblings, 1 reply; 3+ messages in thread
From: Alan Cox @ 2010-12-13 15:27 UTC (permalink / raw)
To: greg, linux-kernel
From: \"Mills, Ken K\" <ken.k.mills@intel.com>
Fix message length handling when building header
When the message length is greater than 127, the length field in the header
is built incorrectly. According to the spec, when the length is less than 128
the length field is a single byte formatted as: bbbbbbb1. When it is greater
than 127 then the field is two bytes of the format: bbbbbbb0 bbbbbbbb.
Signed-off-by: Ken Mills <ken.k.mills@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: stable@kernel.org
---
drivers/tty/n_gsm.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c
index 8c24a63..6652024 100644
--- a/drivers/tty/n_gsm.c
+++ b/drivers/tty/n_gsm.c
@@ -726,8 +726,8 @@ static void __gsm_data_queue(struct gsm_dlci *dlci, struct gsm_msg *msg)
if (msg->len < 128)
*--dp = (msg->len << 1) | EA;
else {
- *--dp = ((msg->len & 127) << 1) | EA;
- *--dp = (msg->len >> 6) & 0xfe;
+ *--dp = (msg->len >> 7); /* bits 7 - 15 */
+ *--dp = (msg->len & 127) << 1; /* bits 0 - 6 */
}
}
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 2/2] n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked
2010-12-13 15:27 [PATCH 1/2] n_gsm: Fix message length handling when building header Alan Cox
@ 2010-12-13 15:28 ` Alan Cox
0 siblings, 0 replies; 3+ messages in thread
From: Alan Cox @ 2010-12-13 15:28 UTC (permalink / raw)
To: greg, linux-kernel
From: Ken Mills <ken.k.mills@intel.com>
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
---
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 6652024..aa2e5d3 100644
--- a/drivers/tty/n_gsm.c
+++ b/drivers/tty/n_gsm.c
@@ -978,6 +978,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);
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 2/2] n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked
2010-12-21 4:42 [GIT PATCH] TTY/serial fixes for .37-rc6 Greg KH
@ 2010-12-21 4:58 ` Greg Kroah-Hartman
0 siblings, 0 replies; 3+ messages in thread
From: Greg Kroah-Hartman @ 2010-12-21 4:58 UTC (permalink / raw)
To: linux-kernel; +Cc: Ken Mills, Alan Cox, stable, Greg Kroah-Hartman
From: Ken Mills <ken.k.mills@intel.com>
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>
---
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 2fc5cf2..c5f8e5b 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);
--
1.7.3.2
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-12-21 4:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-13 15:27 [PATCH 1/2] n_gsm: Fix message length handling when building header Alan Cox
2010-12-13 15:28 ` [PATCH 2/2] n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked Alan Cox
2010-12-21 4:42 [GIT PATCH] TTY/serial fixes for .37-rc6 Greg KH
2010-12-21 4:58 ` [PATCH 2/2] n_gsm: gsm_data_alloc buffer allocation could fail and it is not being checked Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome