浏览代码

core: more safety checks for getting int values from cfg function params

- related to GH #1011
Daniel-Constantin Mierla 8 年之前
父节点
当前提交
97b3ce7c89
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      src/core/sr_module.c

+ 5 - 0
src/core/sr_module.c

@@ -1723,6 +1723,7 @@ int get_int_fparam(int* dst, struct sip_msg* msg, fparam_t* param)
 		case FPARAM_UNSPEC:
 		case FPARAM_STRING:
 		case FPARAM_STR:
+			LM_ERR("Unsupported param type for int value: %d\n", param->type);
 			return -1;
 		case FPARAM_AVP:
 			avp = search_first_avp(param->v.avp.flags, param->v.avp.name,
@@ -1759,6 +1760,10 @@ int get_int_fparam(int* dst, struct sip_msg* msg, fparam_t* param)
 			}
 			break;
 		case FPARAM_PVE:
+			LM_ERR("Unsupported param type for int value: %d\n", param->type);
+			return -1;
+		default:
+			LM_ERR("Unexpected param type: %d\n", param->type);
 			return -1;
 	}
 	return 0;