aboutsummaryrefslogtreecommitdiff
path: root/src/mm-modem-simple.c
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2010-10-14 10:22:59 -0500
committerDan Williams <dcbw@redhat.com>2010-10-14 10:22:59 -0500
commitdd8a061d28ecaf286bfba3bdbd2a495c45cfb4a4 (patch)
tree85a4ecd53f7eb02d227d98d906e9d927febc0d04 /src/mm-modem-simple.c
parent8a4f621245c7b5a1a06471260f5f75422e9098cc (diff)
serial: make QCDM frame parsing more robust
Ensure that valid HDLC frames that are not valid QCDM frames are correctly rejected, and that their data is correctly discarded. The core bug was that Sierra CnS frames have leading and trailing HDLC frame terminator bytes (0x7E), and the code was incorrectly treating the leading terminator as the end of a frame, not the beginning. Thus it would consider the outstanding serial request finished without actually parsing the response packet. Now, we make sure we don't tell the serial receive code that we have a full QCDM frame until we actually do have one, which is at least 3 bytes + 0x7E.
Diffstat (limited to 'src/mm-modem-simple.c')
0 files changed, 0 insertions, 0 deletions