This was recently changed to perform robust error handling.
But thinking it's too much to close the signalling link on recoverable
errors coming from the signalling layer.
Would you give a try to the following patch? Thanks.
Hi Pablo, thanks for the patch.
msgb_free(msg); causes signal 6, I tried the following and it works, but might cause a memory leak...
if (e1i_ts->line->ops->sign_link(msg) < 0) {
/* Don't close the signalling link if the upper layers report * an error, that's too strict. */ LOGP(DLINP, LOGL_ERROR, "Bad signalling message," "sign_link returned error\n");
ret = -EINVAL; //msgb_free(msg); return(ret); }