/**********************************************************************/
} else if (!strcasecmp(parm->var, "apc")) {
mtpLinkSet.apc = atoi(parm->val);
- SS7_DEBUG("\tFoundmtpLinkSet->apc = %d\n", mtpLinkSet.apc);
+ SS7_DEBUG("\tFound mtpLinkSet->apc = %d\n", mtpLinkSet.apc);
/**********************************************************************/
} else if (!strcasecmp(parm->var, "minActive")) {
mtpLinkSet.minActive = atoi(parm->val);
- SS7_DEBUG("\tFoundmtpLinkSet->minActive = %d\n", mtpLinkSet.minActive);
+ SS7_DEBUG("\tFound mtpLinkSet->minActive = %d\n", mtpLinkSet.minActive);
/**********************************************************************/
} else {
SS7_ERROR("\tFound an invalid parameter \"%s\"!\n", parm->val);
if (!strcasecmp(parm->val, "itu92")) {
mtpLink->mtp2.linkType = LSD_SW_ITU92;
mtpLink->mtp3.linkType = LSN_SW_ITU;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ITU92\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ITU92\"\n");
} else if (!strcasecmp(parm->val, "itu88")) {
mtpLink->mtp2.linkType = LSD_SW_ITU88;
mtpLink->mtp3.linkType = LSN_SW_ITU;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ITU88\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ITU88\"\n");
} else if (!strcasecmp(parm->val, "ansi96")) {
mtpLink->mtp2.linkType = LSD_SW_ANSI92;
mtpLink->mtp3.linkType = LSN_SW_ANS96;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ANSI96\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ANSI96\"\n");
} else if (!strcasecmp(parm->val, "ansi92")) {
mtpLink->mtp2.linkType = LSD_SW_ANSI92;
mtpLink->mtp3.linkType = LSN_SW_ANS;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ANSI92\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ANSI92\"\n");
} else if (!strcasecmp(parm->val, "ansi88")) {
mtpLink->mtp2.linkType = LSD_SW_ANSI88;
mtpLink->mtp3.linkType = LSN_SW_ANS;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ANSI88\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ANSI88\"\n");
} else if (!strcasecmp(parm->val, "etsi")) {
mtpLink->mtp2.linkType = LSD_SW_ITU92;
mtpLink->mtp3.linkType = LSN_SW_ITU;
- SS7_DEBUG("\tFoundmtpLink->linkType = \"ETSI\"\n");
+ SS7_DEBUG("\tFound mtpLink->linkType = \"ETSI\"\n");
} else {
SS7_ERROR("\tFound an invalid linktype of \"%s\"!\n", parm->val);
return FTDM_FAIL;
} else if (!strcasecmp(parm->var, "switchType")) {
if (!strcasecmp(parm->val, "itu97")) {
mtpLink->mtp3.switchType = LSI_SW_ITU97;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ITU97\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ITU97\"\n");
} else if (!strcasecmp(parm->val, "itu88")) {
mtpLink->mtp3.switchType = LSI_SW_ITU;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ITU88\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ITU88\"\n");
} else if (!strcasecmp(parm->val, "itu92")) {
mtpLink->mtp3.switchType = LSI_SW_ITU;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ITU92\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ITU92\"\n");
} else if (!strcasecmp(parm->val, "itu00")) {
mtpLink->mtp3.switchType = LSI_SW_ITU2000;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ITU00\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ITU00\"\n");
} else if (!strcasecmp(parm->val, "ETSIV2")) {
mtpLink->mtp3.switchType = LSI_SW_ETSI;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ETSIV2\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ETSIV2\"\n");
} else if (!strcasecmp(parm->val, "ETSIV3")) {
mtpLink->mtp3.switchType = LSI_SW_ETSIV3;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ETSIV3\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ETSIV3\"\n");
} else if (!strcasecmp(parm->val, "UK")) {
mtpLink->mtp3.switchType = LSI_SW_UK;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"UK\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"UK\"\n");
} else if (!strcasecmp(parm->val, "RUSSIA")) {
mtpLink->mtp3.switchType = LSI_SW_RUSSIA;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"RUSSIA\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"RUSSIA\"\n");
} else if (!strcasecmp(parm->val, "INDIA")) {
mtpLink->mtp3.switchType = LSI_SW_INDIA;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"INDIA\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"INDIA\"\n");
} else if (!strcasecmp(parm->val, "ansi88")) {
mtpLink->mtp3.switchType = LSI_SW_ANS88;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ANSI88\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ANSI88\"\n");
} else if (!strcasecmp(parm->val, "ansi92")) {
mtpLink->mtp3.switchType = LSI_SW_ANS92;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ANSI92\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ANSI92\"\n");
} else if (!strcasecmp(parm->val, "ansi95")) {
mtpLink->mtp3.switchType = LSI_SW_ANS95;
- SS7_DEBUG("\tFoundmtpLink->switchType = \"ANSI95\"\n");
+ SS7_DEBUG("\tFound mtpLink->switchType = \"ANSI95\"\n");
} else {
SS7_ERROR("\tFound an invalid linktype of \"%s\"!\n", parm->val);
return FTDM_FAIL;
/**********************************************************************/
} else if (!strcasecmp(parm->var, "slc")) {
mtpLink->mtp3.slc = atoi(parm->val);
- SS7_DEBUG("\tFoundmtpLink->slc = \"%d\"\n",mtpLink->mtp3.slc);
+ SS7_DEBUG("\tFound mtpLink->slc = \"%d\"\n",mtpLink->mtp3.slc);
/**********************************************************************/
} else {
SS7_ERROR("\tFound an invalid parameter \"%s\"!\n", parm->val);
mtpRoute.linkType = g_ftdm_sngss7_data.cfg.mtpLink[id].mtp3.linkType;
mtpRoute.switchType = g_ftdm_sngss7_data.cfg.mtpLink[id].mtp3.switchType;
mtpRoute.ssf = g_ftdm_sngss7_data.cfg.mtpLink[id].mtp3.ssf;
- mtpRoute.cmbLinkSetId = g_ftdm_sngss7_data.cfg.mtpLinkSet[x].id;
+ mtpRoute.cmbLinkSetId = g_ftdm_sngss7_data.cfg.mtpLinkSet[x].cmbLinkSetId;
break;
}
x++;
/* check if the name matches */
if (!strcasecmp((char *)g_ftdm_sngss7_data.cfg.mtpRoute[x].name, parm->val)) {
-
/* now, harvest the required information from the global structure */
sng_isup.mtpRouteId = g_ftdm_sngss7_data.cfg.mtpRoute[x].id;
sng_isup.dpc = g_ftdm_sngss7_data.cfg.mtpRoute[x].dpc;
sng_isup.switchType = g_ftdm_sngss7_data.cfg.mtpRoute[x].switchType;
sng_isap.switchType = g_ftdm_sngss7_data.cfg.mtpRoute[x].switchType;
- /* find the nwID from the nsap */
- int y = 1;
- while (g_ftdm_sngss7_data.cfg.nsap[y].id != 0) {
-
- if ((g_ftdm_sngss7_data.cfg.nsap[y].linkType == g_ftdm_sngss7_data.cfg.mtpRoute[x].linkType) &&
- (g_ftdm_sngss7_data.cfg.nsap[y].switchType == g_ftdm_sngss7_data.cfg.mtpRoute[x].switchType) &&
- (g_ftdm_sngss7_data.cfg.nsap[y].ssf == g_ftdm_sngss7_data.cfg.mtpRoute[x].ssf)) {
-
+ /* find the NSAP corresponding to this switchType and SSF */
+ int z = 1;
+ while (g_ftdm_sngss7_data.cfg.nsap[z].id != 0) {
+ if ((g_ftdm_sngss7_data.cfg.nsap[z].linkType == g_ftdm_sngss7_data.cfg.mtpRoute[x].linkType) &&
+ (g_ftdm_sngss7_data.cfg.nsap[z].switchType == g_ftdm_sngss7_data.cfg.mtpRoute[x].switchType) &&
+ (g_ftdm_sngss7_data.cfg.nsap[z].ssf == g_ftdm_sngss7_data.cfg.mtpRoute[x].ssf)) {
+ sng_isup.nwId = g_ftdm_sngss7_data.cfg.nsap[z].nwId;
/* we have a match so break out of this loop */
break;
}
/* move on to the next one */
- y++;
- } /* while (g_ftdm_sngss7_data.cfg.mtp3_isup[y].id != 0) */
-
- /* check how we exited the last while loop */
- if (g_ftdm_sngss7_data.cfg.nsap[y].id == 0) {
- SS7_ERROR("\tFailed to find the nwID for = \"%s\"!\n", parm->val);
- return FTDM_FAIL;
- } else {
- sng_isup.nwId = g_ftdm_sngss7_data.cfg.nsap[y].nwId;
+ z++;
}
-
break;
}
x++;
ftmod_ss7_fill_in_isup_interface(&sng_isup);
- g_ftdm_sngss7_data.cfg.isap[sng_isap.id].spId = sng_isup.id;
-
return FTDM_SUCCESS;
}
g_ftdm_sngss7_data.cfg.mtpLinkSet[i].id = mtpLinkSet->id;
g_ftdm_sngss7_data.cfg.mtpLinkSet[i].apc = mtpLinkSet->apc;
g_ftdm_sngss7_data.cfg.mtpLinkSet[i].linkType = g_ftdm_sngss7_data.cfg.mtpLink[1].mtp3.linkType; /* KONRAD FIX ME */
+ g_ftdm_sngss7_data.cfg.mtpLinkSet[i].cmbLinkSetId = mtpLinkSet->id;
g_ftdm_sngss7_data.cfg.mtpLinkSet[i].minActive = mtpLinkSet->minActive;
g_ftdm_sngss7_data.cfg.mtpLinkSet[i].numLinks = mtpLinkSet->numLinks;
/* go through all the existing routes and see if we find a match */
i = 1;
while (g_ftdm_sngss7_data.cfg.mtpRoute[i].id != 0) {
- if (g_ftdm_sngss7_data.cfg.mtpRoute[i].dpc == mtp3_route->dpc) {
-
+ if (!strcasecmp(g_ftdm_sngss7_data.cfg.mtpRoute[i].name, mtp3_route->name)) {
/* we have a match so break out of this loop */
break;
}
g_ftdm_sngss7_data.cfg.mtpRoute[i].dpc = mtp3_route->dpc;
g_ftdm_sngss7_data.cfg.mtpRoute[i].linkType = mtp3_route->linkType;
g_ftdm_sngss7_data.cfg.mtpRoute[i].switchType = mtp3_route->switchType;
- g_ftdm_sngss7_data.cfg.mtpRoute[i].cmbLinkSetId = 1; /* mtp3_route->cmbLinkSetId;*/
+ g_ftdm_sngss7_data.cfg.mtpRoute[i].cmbLinkSetId = mtp3_route->cmbLinkSetId;
g_ftdm_sngss7_data.cfg.mtpRoute[i].isSTP = mtp3_route->isSTP;
g_ftdm_sngss7_data.cfg.mtpRoute[i].ssf = mtp3_route->ssf;
if (mtp3_route->t6 != 0) {
/* go through all the existing interfaces and see if we find a match */
i = 1;
while (g_ftdm_sngss7_data.cfg.isupIntf[i].id != 0) {
- if (g_ftdm_sngss7_data.cfg.isupIntf[i].nwId == sng_isup->nwId) {
+ if (!strcasecmp(g_ftdm_sngss7_data.cfg.isupIntf[i].name, sng_isup->name)) {
/* we have a match so break out of this loop */
break;
}
g_ftdm_sngss7_data.cfg.isap[i].id = sng_isap->id;
- g_ftdm_sngss7_data.cfg.isap[i].suId = 1; /*KONRAD FIX ME */
+ g_ftdm_sngss7_data.cfg.isap[i].suId = sng_isap->id;
+ g_ftdm_sngss7_data.cfg.isap[i].spId = sng_isap->id;
g_ftdm_sngss7_data.cfg.isap[i].switchType = sng_isap->switchType;
g_ftdm_sngss7_data.cfg.isap[i].ssf = sng_isap->ssf;
SS7_DEBUG("found existing mtp3 self route\n");
return FTDM_SUCCESS;
} else {
- SS7_ERROR("found new mtp3 self route but it does not much the route already configured\n");
+ SS7_ERROR("found new mtp3 self route but it does not match the route already configured (dpc=%d:spc=%d)\n",
+ g_ftdm_sngss7_data.cfg.mtpRoute[0].dpc,
+ spc);
return FTDM_FAIL;
}