Another DLR format

"Bill Brigden" <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
Hi there,
 
I have just tried sending messages through another provider via smpp, and
they are giving DLR's back ok, except for not using spaces inbetween fields,
ie:
 
2003-12-16 08:16:50 [24] DEBUG: short_message:
2003-12-16 08:16:50 [24] DEBUG: Octet string at 0x8272ad0:
2003-12-16 08:16:50 [24] DEBUG: len: 102
2003-12-16 08:16:50 [24] DEBUG: size: 103
2003-12-16 08:16:50 [24] DEBUG: immutable: 0
2003-12-16 08:16:50 [24] DEBUG: data: 69 64 3a 31 31 37 35 35 38 34 20 20 20
73 75 62 id:1175584 sub
2003-12-16 08:16:50 [24] DEBUG: data: 3a 31 30 30 64 6c 76 72 64 3a 31 30 30
73 75 62 :100dlvrd:100sub
2003-12-16 08:16:50 [24] DEBUG: data: 6d 69 74 20 64 61 74 65 3a 30 33 31 32
31 36 30 mit date:0312160
2003-12-16 08:16:50 [24] DEBUG: data: 38 31 36 64 6f 6e 65 20 64 61 74 65 3a
30 33 31 816done date:031
2003-12-16 08:16:50 [24] DEBUG: data: 32 31 36 30 38 31 36 73 74 61 74 3a 44
45 4c 49 2160816stat:DELI
2003-12-16 08:16:50 [24] DEBUG: data: 56 52 44 74 65 78 74 3a 74 68 69 73 20
69 73 20 VRDtext:this is
2003-12-16 08:16:50 [24] DEBUG: data: 6d 79 20 6d 65 73 my mes
2003-12-16 08:16:50 [24] DEBUG: Octet string dump ends.

Kannel understands the message is fine, however the stat value cannot be
found.... In the module, I can see that it looks for a space at the end:

/* get err & status code */
if ((curr = octstr_search(respstr, octstr_imm("stat:"), 0)) != -1) {
	vpos = octstr_search_char(respstr, ' ', curr);
	if ((vpos-curr >0) && (vpos != -1))
		stat = octstr_copy(respstr, curr+5, vpos-curr-5);
} else {
	stat = NULL;
}

I am not sure what could be done to patch this so that it doesn't break
other connections that do use a space.. Any ideas?

Regards,
Bill.
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.