OSDN Git Service

Add missing continuation offset check for SDP continuation requests
authorPavlin Radoslavov <pavlin@google.com>
Thu, 13 Jul 2017 01:56:03 +0000 (18:56 -0700)
committerandroid-build-team Robot <android-build-team-robot@google.com>
Thu, 27 Jul 2017 00:27:59 +0000 (00:27 +0000)
Bug: 63146698
Test: External script
Change-Id: Iea52f1689dc12bfe0d4b57996f17db4bc3bd5983
Merged-In: Iea52f1689dc12bfe0d4b57996f17db4bc3bd5983
(cherry picked from commit e776c834768bedd043ace7e5714390b61c96a248)
(cherry picked from commit 10ce685cb025f6854be4ecc5329f2f684fd9ea5d)
(cherry picked from commit 3488364721ec066a03af14076bd312d27173115d)

stack/sdp/sdp_server.c

index 627f4cf..5b0bde4 100644 (file)
@@ -230,7 +230,7 @@ static void process_service_search (tCONN_CB *p_ccb, UINT16 trans_num,
         }
         BE_STREAM_TO_UINT16 (cont_offset, p_req);
 
-        if (cont_offset != p_ccb->cont_offset)
+        if (cont_offset != p_ccb->cont_offset || num_rsp_handles < cont_offset)
         {
             sdpu_build_n_send_error (p_ccb, trans_num, SDP_INVALID_CONT_STATE,
                                      SDP_TEXT_BAD_CONT_INX);