summaryrefslogtreecommitdiff
path: root/lang/ruby18-base/patches
diff options
context:
space:
mode:
Diffstat (limited to 'lang/ruby18-base/patches')
-rw-r--r--lang/ruby18-base/patches/patch-ag16
-rw-r--r--lang/ruby18-base/patches/patch-ah13
-rw-r--r--lang/ruby18-base/patches/patch-cp14
3 files changed, 43 insertions, 0 deletions
diff --git a/lang/ruby18-base/patches/patch-ag b/lang/ruby18-base/patches/patch-ag
new file mode 100644
index 00000000000..3d7f1f0fd78
--- /dev/null
+++ b/lang/ruby18-base/patches/patch-ag
@@ -0,0 +1,16 @@
+$NetBSD: patch-ag,v 1.1 2006/08/02 07:02:44 taca Exp $
+
+--- ext/openssl/lib/openssl/ssl.rb.orig 2005-05-22 19:16:56.000000000 +0900
++++ ext/openssl/lib/openssl/ssl.rb
+@@ -82,8 +82,9 @@ module OpenSSL
+ }
+ if check_common_name
+ cert.subject.to_a.each{|oid, value|
+- if oid == "CN" && value.casecmp(hostname) == 0
+- return true
++ if oid == "CN"
++ reg = Regexp.escape(value).gsub(/\\\*/, "[^.]+")
++ return true if /\A#{reg}\z/i =~ hostname
+ end
+ }
+ end
diff --git a/lang/ruby18-base/patches/patch-ah b/lang/ruby18-base/patches/patch-ah
new file mode 100644
index 00000000000..34541c9b69e
--- /dev/null
+++ b/lang/ruby18-base/patches/patch-ah
@@ -0,0 +1,13 @@
+$NetBSD: patch-ah,v 1.1 2006/08/02 07:02:44 taca Exp $
+
+--- lib/yaml.rb.orig 2005-11-07 00:09:06.000000000 +0900
++++ lib/yaml.rb
+@@ -310,7 +310,7 @@ module YAML
+ #
+ # Add a transfer method for a builtin type
+ #
+- def YAML.add_ruby_type( type, &transfer_proc )
++ def YAML.add_ruby_type( type_tag, &transfer_proc )
+ resolver.add_type( "tag:ruby.yaml.org,2002:#{ type_tag }", transfer_proc )
+ end
+
diff --git a/lang/ruby18-base/patches/patch-cp b/lang/ruby18-base/patches/patch-cp
new file mode 100644
index 00000000000..fc420e4ae87
--- /dev/null
+++ b/lang/ruby18-base/patches/patch-cp
@@ -0,0 +1,14 @@
+$NetBSD: patch-cp,v 1.1 2006/08/02 07:02:44 taca Exp $
+
+--- re.c.orig 2005-12-13 12:27:51.000000000 +0900
++++ re.c
+@@ -1332,6 +1332,9 @@ rb_reg_initialize(obj, s, len, options)
+ {
+ struct RRegexp *re = RREGEXP(obj);
+
++ if (!OBJ_TAINTED(obj) && rb_safe_level() >= 4)
++ rb_raise(rb_eSecurityError, "Insecure: can't modify regexp");
++ rb_check_frozen(obj);
+ if (re->ptr) re_free_pattern(re->ptr);
+ if (re->str) free(re->str);
+ re->ptr = 0;