U:RDoc::Attr[iI"renegotiation_cb:ETI".OpenSSL::SSL::SSLContext#renegotiation_cb;TI"RW;T: publico:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"KA callback invoked whenever a new handshake is initiated. May be used ;TI"'to disable renegotiation entirely.;To:RDoc::Markup::BlankLineo; ; [ I"GThe callback is invoked with the active SSLSocket. The callback's ;TI"Kreturn value is irrelevant, normal return indicates "approval" of the ;TI"Jrenegotiation and will continue the process. To forbid renegotiation ;TI"Kand to cancel the process, an Error may be raised within the callback.;T@S:RDoc::Markup::Heading: leveli: textI"!Disable client renegotiation;T@o; ; [I"DWhen running a server, it is often desirable to disable client ;TI"Lrenegotiation entirely. You may use a callback as follows to implement ;TI"this feature:;T@o:RDoc::Markup::Verbatim; [ I"num_handshakes = 0 ;TI",ctx.renegotiation_cb = lambda do |ssl| ;TI" num_handshakes += 1 ;TI"U raise RuntimeError.new("Client renegotiation disabled") if num_handshakes > 1 ;TI"end;T: @format0: @fileI"ext/openssl/ossl_ssl.c;T:0@omit_headings_from_table_of_contents_below0F@%I"OpenSSL::SSL::SSLContext;TcRDoc::NormalClass0