Changes below marked with an asterisk, “*”, includes a fix for a problem which potentially could cause the server to stop unexpectedly.
EMG 7.0.6
- SSL without a keyfile is ok for outgoing connectors
- SMPP: If validity period has passed reject message with RINVEXPIRY
- SMPP: Parameter sm_default_msg_id in deliver_sm was not parsed correctly
- Messages in queue on an incoming connector did not always expire correctly
- Message charge was set even if routing failed which could cause rejected messages to be charged incorrectly
- UDH must be hex encoded when sent over MGP
- Auth TON and auth NPI was not logged in pdu log when empty
- Potential read of freed memory when checking credits*
EMG 7.0.5
- New general keyword PLUGIN_TIMEOUT to set plugin timeout (in seconds, default is 900 seconds)
- New connector keyword ESMCLASS_CLEARMASK to clear individual bits in esm_class
- Actually support holddelay=0 in retry schemes (use with caution, will cause a busy-wait)
- Ensure round-robin is used when retrying messages repeatedly
- emgstat could incorrectly show negative values
- Pass the exit code from EBE in field “err:” in SMPP delivery reports
- Bind type could incorrectly be set to “receiver” after receiving unbind from remote side
- Potential memory corruption on client disconnect after reload*
- Potential race condition when authenticating users from database*
- SMPP data_coding was missing from pdu log
- Improved error message when specifying a non-local ip address for incoming connectors
- Fixed minor memory leak when expiring messages and using MongoDB
EMG 7.0.4
- It is now possible to specify multiple plugins using syntax PLUGIN=plugin1:arg,plugin2,plugin3
- New http protocol “HTTP-DYNAMIC”, supporting placeholders for id, sourceaddr, destaddr and message in URL
- Status “6” in a SMPP DLR should be translated to “relayed”, not “delivered”
- New connector threads were not always started on server refresh
- Log level changed from “error” to “warning” when using WINDOWSIZE for protocols not supporting it
- Fixed issue where empty http response body could cause NPE*
- Improved thread synchronization*
- Potential NPE in dynamic string code*