mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
remove code for unsupported taint-mode
This commit is contained in:
+2
-33
@@ -81,14 +81,6 @@ mrb_str_set_len(mrb_state *mrb, mrb_value str, long len)
|
||||
static mrb_value mrb_enc_cr_str_buf_cat(mrb_state *mrb, mrb_value str, const char *ptr, long len,
|
||||
int ptr_encindex, int ptr_cr, int *ptr_cr_ret);
|
||||
#endif //INCLUDE_ENCODING
|
||||
mrb_value
|
||||
mrb_tainted_str_new(mrb_state *mrb, const char *ptr, long len)
|
||||
{
|
||||
mrb_value str = mrb_str_new(mrb, ptr, len);
|
||||
|
||||
//OBJ_TAINT(str);
|
||||
return str;
|
||||
}
|
||||
|
||||
#ifdef INCLUDE_ENCODING
|
||||
mrb_value
|
||||
@@ -104,7 +96,7 @@ mrb_external_str_new_with_enc(mrb_state *mrb, const char *ptr, long len, mrb_enc
|
||||
{
|
||||
mrb_value str;
|
||||
|
||||
str = mrb_tainted_str_new(mrb, ptr, len);
|
||||
str = mrb_str_new(mrb, ptr, len);
|
||||
if (eenc == mrb_usascii_encoding(mrb) &&
|
||||
mrb_enc_str_coderange(mrb, str) != ENC_CODERANGE_7BIT) {
|
||||
mrb_enc_associate(mrb, str, mrb_ascii8bit_encoding(mrb));
|
||||
@@ -797,8 +789,6 @@ mrb_str_plus_m(mrb_state *mrb, mrb_value self)
|
||||
RSTRING_PTR(str2), RSTRING_LEN(str2));
|
||||
RSTRING_PTR(str3)[RSTRING_LEN(str3)] = '\0';
|
||||
#ifdef INCLUDE_ENCODING
|
||||
//if (OBJ_TAINTED(str1) || OBJ_TAINTED(str2))
|
||||
// OBJ_TAINT(str3);
|
||||
ENCODING_CODERANGE_SET(mrb, str3, mrb_enc_to_index(enc),
|
||||
ENC_CODERANGE_AND(ENC_CODERANGE(self), ENC_CODERANGE(str2)));
|
||||
#endif //INCLUDE_ENCODING
|
||||
@@ -889,7 +879,6 @@ mrb_str_times(mrb_state *mrb, mrb_value self)
|
||||
}
|
||||
ptr2[RSTRING_LEN(str2)] = '\0';
|
||||
|
||||
//OBJ_INFECT(str2, str);
|
||||
mrb_enc_cr_str_copy_for_substr(mrb, str2, self);
|
||||
|
||||
return str2;
|
||||
@@ -1504,7 +1493,6 @@ num_index:
|
||||
return mrb_nil_value();
|
||||
default:
|
||||
tmp = mrb_str_substr(mrb, str, beg, len);
|
||||
/*OBJ_INFECT(tmp, indx);*/
|
||||
return tmp;
|
||||
}
|
||||
}
|
||||
@@ -2106,7 +2094,6 @@ mrb_str_each_line(mrb_state *mrb, mrb_value str)
|
||||
(rslen <= 1 ||
|
||||
memcmp(prs->buf, p-rslen, rslen) == 0)) {
|
||||
line = mrb_str_new5(mrb, str, s, p - s);
|
||||
/*OBJ_INFECT(line, str);*/
|
||||
mrb_yield(mrb, b, line);
|
||||
str_mod_check(mrb, str, ptr, len);
|
||||
s = p;
|
||||
@@ -2116,7 +2103,6 @@ mrb_str_each_line(mrb_state *mrb, mrb_value str)
|
||||
if (s != pend) {
|
||||
if (p > pend) p = pend;
|
||||
line = mrb_str_new5(mrb, str, s, p - s);
|
||||
/*OBJ_INFECT(line, str);*/
|
||||
mrb_yield(mrb, b, line);
|
||||
}
|
||||
|
||||
@@ -2224,7 +2210,6 @@ mrb_str_new_shared(mrb_state *mrb, mrb_value str)
|
||||
{
|
||||
mrb_value str2 = str_new3(mrb, mrb_obj_class(mrb, str), str);
|
||||
|
||||
//OBJ_INFECT(str2, str);
|
||||
return str2;
|
||||
}
|
||||
|
||||
@@ -2411,7 +2396,6 @@ mrb_str_buf_append(mrb_state *mrb, mrb_value str, mrb_value str2)
|
||||
mrb_enc_cr_str_buf_cat(mrb, str, RSTRING_PTR(str2), RSTRING_LEN(str2),
|
||||
ENCODING_GET(mrb, str2), str2_cr, &str2_cr);
|
||||
|
||||
//OBJ_INFECT(str, str2);
|
||||
ENC_CODERANGE_SET(str2, str2_cr);
|
||||
|
||||
return str;
|
||||
@@ -2474,7 +2458,6 @@ str_gsub(mrb_state *mrb, mrb_value str, mrb_int bang)
|
||||
mrb_int offset, blen, slen, len, last;
|
||||
int iter = 0;
|
||||
char *sp, *cp;
|
||||
//int tainted = 0;
|
||||
mrb_encoding *str_enc;
|
||||
|
||||
mrb_get_args(mrb, "*", &argv, &argc);
|
||||
@@ -2486,7 +2469,6 @@ str_gsub(mrb_state *mrb, mrb_value str, mrb_int bang)
|
||||
case 2:
|
||||
repl = argv[1];
|
||||
mrb_string_value(mrb, &repl);
|
||||
/*if (OBJ_TAINTED(repl)) tainted = 1;*/
|
||||
break;
|
||||
default:
|
||||
mrb_raise(mrb, E_ARGUMENT_ERROR, "wrong number of arguments (%d for 2)", argc);
|
||||
@@ -2578,9 +2560,6 @@ str_gsub(mrb_state *mrb, mrb_value str, mrb_int bang)
|
||||
* <code>$&</code>, and <code>$'</code> will be set appropriately. The value
|
||||
* returned by the block will be substituted for the match on each call.
|
||||
*
|
||||
* The result inherits any tainting in the original string or any supplied
|
||||
* replacement string.
|
||||
*
|
||||
* When neither a block nor a second argument is supplied, an
|
||||
* <code>Enumerator</code> is returned.
|
||||
*
|
||||
@@ -2818,9 +2797,6 @@ str_replace(mrb_state *mrb, mrb_value str, mrb_value str2)
|
||||
* call-seq:
|
||||
* str.replace(other_str) => str
|
||||
*
|
||||
* Replaces the contents and taintedness of <i>str</i> with the corresponding
|
||||
* values in <i>other_str</i>.
|
||||
*
|
||||
* s = "hello" #=> "hello"
|
||||
* s.replace "world" #=> "world"
|
||||
*/
|
||||
@@ -3775,8 +3751,6 @@ mrb_str_sub_bang(mrb_state *mrb, mrb_value str)
|
||||
}
|
||||
mrb_str_modify(mrb, str);
|
||||
mrb_enc_associate(mrb, str, enc);
|
||||
//if (OBJ_TAINTED(repl)) tainted = 1;
|
||||
//if (OBJ_UNTRUSTED(repl)) untrusted = 1;
|
||||
if (ENC_CODERANGE_UNKNOWN < cr && cr < ENC_CODERANGE_BROKEN) {
|
||||
int cr2 = ENC_CODERANGE(repl);
|
||||
if (cr2 == ENC_CODERANGE_BROKEN ||
|
||||
@@ -3838,9 +3812,6 @@ mrb_str_sub_bang(mrb_state *mrb, mrb_value str)
|
||||
* <code>$&</code>, and <code>$'</code> will be set appropriately. The value
|
||||
* returned by the block will be substituted for the match on each call.
|
||||
*
|
||||
* The result inherits any tainting in the original string or any supplied
|
||||
* replacement string.
|
||||
*
|
||||
* "hello".sub(/[aeiou]/, '*') #=> "h*llo"
|
||||
* "hello".sub(/([aeiou])/, '<\1>') #=> "h<e>llo"
|
||||
* "hello".sub(/./) {|s| s.ord.to_s + ' ' } #=> "104 ello"
|
||||
@@ -4703,7 +4674,6 @@ mrb_str_dump(mrb_state *mrb, mrb_value str)
|
||||
snprintf(q, qend-q, ".force_encoding(\"%s\")", enc->name);
|
||||
enc = mrb_ascii8bit_encoding(mrb);
|
||||
}
|
||||
//OBJ_INFECT(result, str);
|
||||
/* result from dump is ASCII */
|
||||
mrb_enc_associate(mrb, result, enc);
|
||||
ENC_CODERANGE_SET(result, ENC_CODERANGE_7BIT);
|
||||
@@ -4792,7 +4762,7 @@ mrb_str_append(mrb_state *mrb, mrb_value str, mrb_value str2)
|
||||
RSTRING(str)->len = len;
|
||||
mrb_enc_associate(mrb, str, enc);
|
||||
ENC_CODERANGE_SET(str, cr);
|
||||
//OBJ_INFECT(str, str2);
|
||||
|
||||
return str;
|
||||
}
|
||||
#ifdef INCLUDE_ENCODING
|
||||
@@ -4989,7 +4959,6 @@ mrb_str_inspect(mrb_state *mrb, mrb_value str)
|
||||
if (p > prev) mrb_str_buf_cat(mrb, result, prev, p - prev);
|
||||
mrb_str_buf_cat(mrb, result, "\"", strlen("\"")); //str_buf_cat2(result, "\"");
|
||||
|
||||
//OBJ_INFECT(result, str);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user