Hi,

I had crashed the opensmppbox when I've used smsc-route group to route MT
messages out of the box. For example, if you add such block to route MT
from esme test1 to the smsc jasper you'll get panic:

group = smsc-route
smsbox-id = test1
smsc-id = jasper

2017-11-16 10:36:32 [1578] [0] INFO: Starting to log to file
/var/log/kannel/opensmppbox.log level 0
2017-11-16 10:36:32 [1578] [0] INFO: Added logfile
`/var/log/kannel/opensmppbox.log' with level `0'.
2017-11-16 10:36:32 [1578] [0] DEBUG: Adding smsc routing to id <jasper>
for box id <test1>
2017-11-16 10:36:32 [1578] [0] PANIC: gwlib/octstr.c:2564:
seems_valid_real: Assertion `ostr->data != NULL' failed. (Called from
gwlib/octstr.c:325:octstr_destroy.)
2017-11-16 10:36:32 [1578] [0] PANIC:
/usr/local/kannel/sbin/opensmppbox(gw_backtrace+0xae) [0x45654e]
2017-11-16 10:36:32 [1578] [0] PANIC:
/usr/local/kannel/sbin/opensmppbox(gw_panic+0x15f) [0x4566bf]
2017-11-16 10:36:32 [1578] [0] PANIC: /usr/local/kannel/sbin/opensmppbox()
[0x45dac0]
2017-11-16 10:36:32 [1578] [0] PANIC:
/usr/local/kannel/sbin/opensmppbox(octstr_destroy+0x1d) [0x45dfbd]
2017-11-16 10:36:32 [1578] [0] PANIC:
/usr/local/kannel/sbin/opensmppbox(main+0x8bc) [0x40bf6c]
2017-11-16 10:36:32 [1578] [0] PANIC:
/lib64/libc.so.6(__libc_start_main+0xf5) [0x7ffff5e7cc05]
2017-11-16 10:36:32 [1578] [0] PANIC: /usr/local/kannel/sbin/opensmppbox()
[0x40c82a]

There's an issue of freeing of unallocated pointers. This has been fixed.

Another issue found in delivery receipt with EXPIRE status that coming from
smsc to esme with "stat:(null)" status instead of EXPIRED. I have added the
EXPIRE status in msg_to_pdu of opensmppbox. In some cases it's very
important to get this status instead of "(null)" value in delivery receipt.

See attached patch. Please share any feedback.

Thank you.

--
Regards,
Denis S.Davydov

Attachment: opensmppbox.c.patch
Description: Binary data

Reply via email to