Skip to content

Commit c1901f2

Browse files
committed
allow for SSLContext#dup to work (copy-ing Ruby level i-variables only)
1 parent 67820b9 commit c1901f2

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/main/java/org/jruby/ext/openssl/SSLContext.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,6 @@ public static void createSSLContext(final Ruby runtime, final RubyModule SSL) {
181181
SSLContext.defineAlias("ssl_timeout=", "timeout=");
182182

183183
SSLContext.defineAnnotatedMethods(SSLContext.class);
184-
SSLContext.undefineMethod("dup");
185184

186185
final Set<String> methodKeys = SSL_VERSION_OSSL2JSSE.keySet();
187186
final RubyArray methods = runtime.newArray( methodKeys.size() );
@@ -292,6 +291,15 @@ public IRubyObject initialize(IRubyObject[] args) {
292291
return initializeImpl();
293292
}
294293

294+
@Override
295+
public IRubyObject initialize_copy(IRubyObject original) {
296+
return super.initialize_copy(original);
297+
// NOTE: only instance variables (no internal state) on #dup
298+
// final SSLContext that = (SSLContext) original;
299+
// this.ciphers = that.ciphers;
300+
// return this;
301+
}
302+
295303
final SSLContext initializeImpl() { return this; }
296304

297305
@JRubyMethod

0 commit comments

Comments
 (0)