浏览代码

app_ruby: proper check for param types

Daniel-Constantin Mierla 6 年之前
父节点
当前提交
6d43eacd6d
共有 1 个文件被更改,包括 4 次插入4 次删除
  1. 4 4
      src/modules/app_ruby/app_ruby_api.c

+ 4 - 4
src/modules/app_ruby/app_ruby_api.c

@@ -358,7 +358,7 @@ static VALUE app_ruby_pv_seti(int argc, VALUE* argv, VALUE self)
 		return Qfalse;
 	}
 
-	if(!RB_TYPE_P(argv[2], T_FIXNUM)) {
+	if(!RB_TYPE_P(argv[1], T_FIXNUM)) {
 		LM_ERR("invalid pv val parameter type\n");
 		return Qfalse;
 	}
@@ -415,7 +415,7 @@ static VALUE app_ruby_pv_sets(int argc, VALUE* argv, VALUE self)
 		return Qfalse;
 	}
 
-	if(!RB_TYPE_P(argv[2], T_FIXNUM)) {
+	if(!RB_TYPE_P(argv[1], T_STRING)) {
 		LM_ERR("invalid pv val parameter type\n");
 		return Qfalse;
 	}
@@ -605,11 +605,11 @@ static VALUE app_ruby_sr_modf(int argc, VALUE* argv, VALUE self)
 	}
 	/* first is function name, then parameters */
 	for(i=0; i<argc; i++) {
-		if(!RB_TYPE_P(argv[0], T_STRING)) {
+		if(!RB_TYPE_P(argv[i], T_STRING)) {
 			LM_ERR("invalid parameter type (%d)\n", i);
 			return INT2NUM(-1);
 		}
-		rbv[i] = (char*)StringValuePtr(argv[0]);
+		rbv[i] = (char*)StringValuePtr(argv[i]);
 	}
 	LM_ERR("request to execute cfg function '%s'\n", rbv[0]);
 	/* pkg copy only parameters */