---
 drivers/ifxmodem/stk.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/drivers/ifxmodem/stk.c b/drivers/ifxmodem/stk.c
index a7ca089..3b620a4 100644
--- a/drivers/ifxmodem/stk.c
+++ b/drivers/ifxmodem/stk.c
@@ -197,6 +197,7 @@ static void sati_notify(GAtResult *result, gpointer 
user_data)
 
 static void satn_notify(GAtResult *result, gpointer user_data)
 {
+       struct ofono_stk *stk = user_data;
        GAtResultIter iter;
        const guint8 *pdu;
        gint len;
@@ -217,6 +218,19 @@ static void satn_notify(GAtResult *result, gpointer 
user_data)
         * command was for Setup Call then a response with AT+SATD
         * is required.  This is not handled properly yet.
         */
+
+       if (len == 0)
+               return;
+
+       /*
+        * A proactive command starts with a Proactive UICC Command BER-TLV
+        * short tag (0xd0) with optional pad bytes, a Terminal Response
+        * starts with the Command Details CTLV tag (0x81).
+        */
+       if (pdu[0] != 0x81)
+               ofono_stk_proactive_command_handled_notify(stk, len, pdu);
+       else
+               ofono_stk_terminal_response_sent_notify(stk, len, pdu);
 }
 
 static void satf_notify(GAtResult *result, gpointer user_data)
-- 
1.7.1.86.g0e460.dirty

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to