Skip to content

Commit

Permalink
modules/lcr: tried to test unsigned int values against both DB1_INT
Browse files Browse the repository at this point in the history
  and DB1_UINT
  • Loading branch information
juha-h committed Oct 1, 2018
1 parent c814f9f commit dd9615e
Showing 1 changed file with 35 additions and 14 deletions.
49 changes: 35 additions & 14 deletions src/modules/lcr/lcr_mod.c
Expand Up @@ -1043,15 +1043,17 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
for(i = 0; i < RES_ROW_N(res); i++) {
row = RES_ROWS(res) + i;
if((VAL_NULL(ROW_VALUES(row) + 12) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 12) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 12) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 12) != DB1_UINT))) {
LM_ERR("lcr_gw id at row <%u> is null or not int\n", i);
return 0;
}
gw_id = (unsigned int)VAL_INT(ROW_VALUES(row) + 12);
if(VAL_NULL(ROW_VALUES(row) + 11)) {
defunct_until = 0;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 11) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 11) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 11) != DB1_UINT)) {
LM_ERR("lcr_gw defunct at row <%u> is not int\n", i);
return 0;
}
Expand Down Expand Up @@ -1135,7 +1137,8 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
if(VAL_NULL(ROW_VALUES(row) + 2)) {
port = 0;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 2) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 2) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 2) != DB1_UINT)) {
LM_ERR("lcr_gw port at row <%u> is not int\n", i);
return 0;
}
Expand All @@ -1149,7 +1152,8 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
scheme = "sip:";
scheme_len = 4;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 3) != DB1_UINT)) {
LM_ERR("lcr_gw uri scheme at row <%u> is not int\n", i);
return 0;
}
Expand All @@ -1175,7 +1179,8 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
transport = "";
transport_len = 0;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 4) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 4) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 4) != DB1_UINT)) {
LM_ERR("lcr_gw transport at row <%u> is not int\n", i);
return 0;
}
Expand Down Expand Up @@ -1272,7 +1277,8 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
if(VAL_NULL(ROW_VALUES(row) + 7)) {
strip = 0;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 7) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 7) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 7) != DB1_UINT)) {
LM_ERR("lcr_gw strip count at row <%u> is not int\n", i);
return 0;
}
Expand Down Expand Up @@ -1330,7 +1336,8 @@ static int insert_gws(db1_res_t *res, struct gw_info *gws,
if(VAL_NULL(ROW_VALUES(row) + 10)) {
flags = 0;
} else {
if(VAL_TYPE(ROW_VALUES(row) + 10) != DB1_INT) {
if((VAL_TYPE(ROW_VALUES(row) + 10) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 10) != DB1_UINT)) {
LM_ERR("lcr_gw flags at row <%u> is not int\n", i);
return 0;
}
Expand Down Expand Up @@ -1463,7 +1470,9 @@ int reload_tables()
row = RES_ROWS(res) + i;

if((VAL_NULL(ROW_VALUES(row)) == 1)
|| (VAL_TYPE(ROW_VALUES(row)) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row)) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row))
!= DB1_UINT))) {
LM_ERR("lcr rule id at row <%u> is null or not int\n", i);
goto err;
}
Expand Down Expand Up @@ -1504,7 +1513,9 @@ int reload_tables()
}

if((VAL_NULL(ROW_VALUES(row) + 3) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 3)
!= DB1_UINT))) {
LM_ERR("lcr rule <%u> stopper is NULL or not int\n",
rule_id);
goto err;
Expand All @@ -1516,7 +1527,9 @@ int reload_tables()
}

if((VAL_NULL(ROW_VALUES(row) + 4) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 4) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 4) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 4)
!= DB1_UINT))) {
LM_ERR("lcr rule <%u> enabled is NULL or not int\n",
rule_id);
goto err;
Expand Down Expand Up @@ -1725,23 +1738,29 @@ int reload_tables()
for(i = 0; i < RES_ROW_N(res); i++) {
row = RES_ROWS(res) + i;
if((VAL_NULL(ROW_VALUES(row)) == 1)
|| (VAL_TYPE(ROW_VALUES(row)) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row)) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row))
!= DB1_UINT))) {
LM_ERR("lcr_rule_target rule_id at row <%u> is null "
"or not int\n",
i);
goto err;
}
rule_id = (unsigned int)VAL_INT(ROW_VALUES(row));
if((VAL_NULL(ROW_VALUES(row) + 1) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 1) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 1) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 1)
!= DB1_UINT))) {
LM_ERR("lcr_rule_target gw_id at row <%u> is null "
"or not int\n",
i);
goto err;
}
gw_id = (unsigned int)VAL_INT(ROW_VALUES(row) + 1);
if((VAL_NULL(ROW_VALUES(row) + 2) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 2) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 2) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 2)
!= DB1_UINT))) {
LM_ERR("lcr_rule_target priority at row <%u> is null "
"or not int\n",
i);
Expand All @@ -1755,7 +1774,9 @@ int reload_tables()
goto err;
}
if((VAL_NULL(ROW_VALUES(row) + 3) == 1)
|| (VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT)) {
|| ((VAL_TYPE(ROW_VALUES(row) + 3) != DB1_INT)
&& (VAL_TYPE(ROW_VALUES(row) + 3)
!= DB1_UINT))) {
LM_ERR("lcr_rule_target weight at row <%u> is null "
"or not int\n",
i);
Expand Down

0 comments on commit dd9615e

Please sign in to comment.