Hi<br><br>I'm using freetdm from git downloaded on 30.1.2012.<br>On windows I had no problems, but on sles 11 sp1 64bit call setup message was missing caller and called information elements.<br>I've tracked down the problem to file<br>
src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support.c, into function get_trillium_val()<br>Particularly, when get_trillium_val(ton_codes, 0, IN_TON_UNK) is called, 0xe6 is returned (which is from the nsf_spec_codes[] table)<br>
I think the loop should have some strict terminate condition but not sure about the write intention.<br>My workaround to be able to continue development is following<br><br>diff -urN src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support.c src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support_mod.c<br>
--- src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support.c 2012-02-01 14:02:30.000000000 +0000<br>+++ src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support_mod.c 2012-02-01 14:02:08.000000000 +0000<br>@@ -106,10 +106,11 @@<br>
static uint8_t get_trillium_val(ftdm2trillium_t *vals, uint8_t ftdm_val, uint8_t default_val)<br> {<br> ftdm2trillium_t *val = vals;<br>- while(val++) {<br>+ while(val) {<br> if (val->ftdm_val == ftdm_val) {<br>
return val->trillium_val;<br> }<br>+ val++;<br> }<br> return default_val;<br> }<br>@@ -117,10 +118,11 @@<br> static uint8_t get_ftdm_val(ftdm2trillium_t *vals, uint8_t trillium_val, uint8_t default_val)<br>
{<br> ftdm2trillium_t *val = vals;<br>- while(val++) {<br>+ while(val) {<br> if (val->trillium_val == trillium_val) {<br> return val->ftdm_val;<br> }<br>
+ val++;<br> }<br> return default_val;<br> }<br> <br> Is there some other way how to go around?<br> <br> Thank you<br> <br> Juraj<br>