aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/gigaset/asyncdata.c
diff options
context:
space:
mode:
authorTilman Schmidt <tilman@imap.cc>2010-02-22 13:09:22 +0000
committerDavid S. Miller <davem@davemloft.net>2010-02-26 01:24:23 -0800
commit63e055d1c6e3a5f6d370cc841d621d5fa4d5d834 (patch)
tree80f645c85bbc012d3b1b45ab66ee7dd8938de49b /drivers/isdn/gigaset/asyncdata.c
parent2ac2ed5f2dfc97ae9ed9f446ad6e064fa821ef6d (diff)
downloadkernel_samsung_smdk4412-63e055d1c6e3a5f6d370cc841d621d5fa4d5d834.zip
kernel_samsung_smdk4412-63e055d1c6e3a5f6d370cc841d621d5fa4d5d834.tar.gz
kernel_samsung_smdk4412-63e055d1c6e3a5f6d370cc841d621d5fa4d5d834.tar.bz2
bas_gigaset: collapse CR/LF at end of AT response
Copy the mechanism from ser_/usb_gigaset to avoid producing spurious empty responses for CR/LF sequences from the device. Add a comment in all drivers documenting that behaviour. Correct an off by one error that might result in a one byte buffer overflow when receiving an unexpectedly long reply. Impact: minor bugfix Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/isdn/gigaset/asyncdata.c')
-rw-r--r--drivers/isdn/gigaset/asyncdata.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/isdn/gigaset/asyncdata.c b/drivers/isdn/gigaset/asyncdata.c
index ccb2a7b..e913beb 100644
--- a/drivers/isdn/gigaset/asyncdata.c
+++ b/drivers/isdn/gigaset/asyncdata.c
@@ -40,6 +40,8 @@ static inline int muststuff(unsigned char c)
* Append received bytes to the command response buffer and forward them
* line by line to the response handler. Exit whenever a mode/state change
* might have occurred.
+ * Note: Received lines may be terminated by CR, LF, or CR LF, which will be
+ * removed before passing the line to the response handler.
* Return value:
* number of processed bytes
*/