[PATCH] CIMD2 DLR msgdata

Nicholas Rahn <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
Hi,

Here is a small patch to the CIMD2 SMSC to set the DLR Msg's
sms->msgdata value to the statuscode if there is no USER_DATA available.

The CIMD2 smsc to which we connect does not return any USER_DATA in the
deliver status messages. So this patch allows us to use the statuscode
value instead.  this value is then available in the %A parameter of a
dlr-url instead of the null/empty value.

nick
smsc_cimd2.c.diff (text/x-patch, 830 B)
Index: smsc_cimd2.c
===================================================================
RCS file: /home/cvs/gateway/gw/smsc/smsc_cimd2.c,v
retrieving revision 1.22
diff -u -r1.22 smsc_cimd2.c
--- smsc_cimd2.c	11 Mar 2004 17:33:00 -0000	1.22
+++ smsc_cimd2.c	26 Mar 2004 07:19:31 -0000
@@ -2104,13 +2104,19 @@
     	msg = dlr_find(conn->name, timestamp, destination, code);
     else
         msg = NULL;
-    octstr_destroy(statuscode);
     octstr_destroy(destination);
     octstr_destroy(timestamp);
 
     /* recode the body into msgdata */
     if (msg) {
         msg->sms.msgdata = packet_get_parm(request, P_USER_DATA);
+	if (msg->sms.msgdata == NULL) {
+            msg->sms.msgdata = statuscode;
+	} else {
+	    octstr_destroy(statuscode);
+	}
+    } else {
+      octstr_destroy(statuscode);
     }
 
     return msg;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.