[#40602] [ruby-trunk - Bug #5532][Open] Compile problem for bigdecimal on cygwin — Martin Dürst <duerst@...>

14 messages 2011/11/01

[#40617] [ruby-trunk - Feature #5534][Open] Redefine Range class and introduce RelativeNumeric and RelativeRange — Alexey Muranov <muranov@...>

17 messages 2011/11/01

[#40646] [ruby-trunk - Bug #5541][Open] Better configure error message when llvm-gcc is the default compiler — Eric Hodel <drbrain@...7.net>

10 messages 2011/11/01

[#40648] [ruby-trunk - Feature #5543][Open] rb_thread_blocking_region() API is poorly designed — Christopher Huff <cjameshuff@...>

14 messages 2011/11/01

[#40684] [ruby-trunk - Feature #5555][Open] rename #include? to #includes? — Alexey Muranov <muranov@...>

20 messages 2011/11/02

[#40688] [ruby-trunk - Bug #5556][Open] SIGHUP no longer ignored when sent to process group from a subprocess — Brian Ford <brixen@...>

12 messages 2011/11/02

[#40706] [ruby-trunk - Feature #5562][Open] Improvement of Windows IO performance — Hiroshi Shirosaki <h.shirosaki@...>

39 messages 2011/11/03

[#40737] [ruby-trunk - Bug #5570][Open] Encoding of environment variables on Windows — Nikolai Weibull <now@...>

11 messages 2011/11/04

[#40748] Proposal for sustainable branch maintenance — "Yuki Sonoda (Yugui)" <yugui@...>

-----BEGIN PGP SIGNED MESSAGE-----

14 messages 2011/11/05

[#40770] [ruby-trunk - Feature #5578][Open] Embedded YAML for Ruby 2.0 — Thomas Sawyer <transfire@...>

17 messages 2011/11/06

[#40806] [ruby-trunk - Feature #5583][Open] Optionally typing — Yasushi ANDO <andyjpn@...>

21 messages 2011/11/07

[#40824] [ruby-trunk - Feature #5588][Open] add negation flag (v) to Regexp — Suraj Kurapati <sunaku@...>

38 messages 2011/11/08

[#40865] IO.copy_stream creates files with restrictive permissions — Eric Wong <normalperson@...>

I'm not sure if this is a bug or intended as spec.

16 messages 2011/11/09
[#41151] Re: IO.copy_stream creates files with restrictive permissions — Tanaka Akira <akr@...> 2011/11/19

2011/11/9 Eric Wong <normalperson@yhbt.net>:

[#41166] Re: IO.copy_stream creates files with restrictive permissions — KOSAKI Motohiro <kosaki.motohiro@...> 2011/11/20

>> I noticed when a file name argument is passed to the IO.copy_stream, the

[#41168] Re: IO.copy_stream creates files with restrictive permissions — Clifford Heath <clifford.heath@...> 2011/11/20

On 20/11/2011, at 5:09 PM, KOSAKI Motohiro wrote:

[#41176] Re: IO.copy_stream creates files with restrictive permissions — Tanaka Akira <akr@...> 2011/11/21

2011/11/20 Clifford Heath <clifford.heath@gmail.com>:

[#41180] Re: IO.copy_stream creates files with restrictive permissions — KOSAKI Motohiro <kosaki.motohiro@...> 2011/11/21

>> I think documentation is the wrong answer. The security defects are not caused

[#40908] [ruby-trunk - Feature #5607][Open] Inconsistent reaction in Range of String — Yen-Nan Lin <redmine@...>

15 messages 2011/11/10

[#40941] [ruby-trunk - Feature #5617][Open] Allow install RubyGems into dediceted directory — Vit Ondruch <v.ondruch@...>

22 messages 2011/11/11

[#40951] [Backport93 - Backport #5621][Open] Please backport thread-safe autoloading patch — Mike Perham <mperham@...>

25 messages 2011/11/12
[#40971] [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Mike Perham <mperham@...> 2011/11/12

[#40972] Re: [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Yehuda Katz <wycats@...> 2011/11/12

Unfortunately ruby-head has a deadlock in one of my go-to scenarios for

[#40976] Re: [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Hiroshi Nakamura <nahi@...> 2011/11/13

-----BEGIN PGP SIGNED MESSAGE-----

[#41128] Re: [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Charles Oliver Nutter <headius@...> 2011/11/18

On Sat, Nov 12, 2011 at 7:24 PM, Hiroshi Nakamura <nahi@ruby-lang.org> wrote:

[#41129] Re: [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Hiroshi Nakamura <nahi@...> 2011/11/18

-----BEGIN PGP SIGNED MESSAGE-----

[#41142] Re: [Backport93 - Backport #5621] Please backport thread-safe autoloading patch — Charles Oliver Nutter <headius@...> 2011/11/18

On Fri, Nov 18, 2011 at 12:15 AM, Hiroshi Nakamura <nahi@ruby-lang.org> wro=

[#40982] [ruby-trunk - Bug #5625][Open] Remove profanity and pejoratives — Andrew Grimm <andrew.j.grimm@...>

30 messages 2011/11/13

[#41004] [ruby-trunk - Feature #5628][Open] Module#basename — Thomas Sawyer <transfire@...>

18 messages 2011/11/14

[#41024] [ruby-trunk - Feature #5632][Open] Attempt to open included class shades it instead. — Boris Stitnicky <boris@...>

12 messages 2011/11/14

[#41025] Proposal to add new methods: positive? negative? natural? — JosFrancisco Calvo Moreno <josefranciscocalvo@...>

Hi all!

11 messages 2011/11/14
[#41027] Re: Proposal to add new methods: positive? negative? natural? — Jeremy Evans <code@...> 2011/11/14

On 11/15 12:58, Jos? Francisco Calvo Moreno wrote:

[#41031] Re: Proposal to add new methods: positive? negative? natural? — JosFrancisco Calvo Moreno <josefranciscocalvo@...> 2011/11/14

Hi Jeremy,

[#41038] [ruby-trunk - Bug #5634][Open] yield and binding — Thomas Sawyer <transfire@...>

17 messages 2011/11/14

[#41086] [ruby-trunk - Feature #5644][Open] add Enumerable#exclude? antonym — Suraj Kurapati <sunaku@...>

14 messages 2011/11/17

[#41175] [ruby-trunk - Feature #5654][Open] Introduce global lock to avoid concurrent require — Hiroshi Nakamura <nakahiro@...>

12 messages 2011/11/21

[#41200] [ruby-trunk - Bug #5659][Open] bug releasing a gem created with rails 3.1 — Vinicius Gati <viniciusgati@...>

14 messages 2011/11/22

[#41212] [ruby-trunk - Feature #5662][Open] inject-accumulate, or Haskell's mapAccum* — Edvard Majakari <edvard.majakari@...>

12 messages 2011/11/22

[#41213] [ruby-trunk - Bug #5663][Open] Combined map/select method — Yehuda Katz <wycats@...>

62 messages 2011/11/22

[#41317] [ruby-trunk - Bug #5676][Open] miniruby linking error: undefined reference to ___stack_chk_guard — Martin Dürst <duerst@...>

10 messages 2011/11/27

[#41404] [ruby-trunk - Bug #5690][Open] Module#qualified_const_get — Yehuda Katz <wycats@...>

31 messages 2011/11/30

[ruby-core:40901] Re: [ruby-trunk - Feature #5341] Add SSL session reuse to Net::HTTP

From: Eric Hodel <drbrain@...7.net>
Date: 2011-11-10 02:04:28 UTC
List: ruby-core #40901
On Oct 26, 2011, at 6:06 AM, Hiroshi Nakamura wrote:
> On 10/26/2011 11:39 AM, Eric Hodel wrote:
>> Net::HTTP objects can be reused.  You may start and finish a
>> connection as many times as you like (the net-http-persistent gem
>> works this way).
>=20
> OK, so it's just I was wrong.  I felt that I saw an issue for
> restarting Net::HTTP with #start after #finish, but I cannot find a
> ticket.  I'm just confusing it with another issue.  Either it's
> already fixed.
>=20
>> Currently the SSLSession can only be initialized once due to
>> OpenSSL restrictions.  To change the values you must make a new
>> Net::HTTP object, so I think changing this behavior (if it is
>> needed) is a separate issue.
>=20
> SSLSocket --<>> SSLContext <<>-- Session
>    <>                              A
>     |                              |
>     +------------------------------+
>=20
> You can't modify SSLContext after you create SSLSocket.  You must
> create new SSLContext for new SSLSocket if you need to update ssl
> params.  It might conflict with semantics of Net::HTTP object, thought
> I don't have any idea what Net::HTTP object should know.

With net/http in 1.9.3, modifying SSL parameters after Net::HTTP#start =
has no effect.  Adding it as a new feature is not difficult, though =
(delete two lines).  It does not cause any conflicts for Net::HTTP that =
I can see.

>> I will update the patch to check for the timeout, I did not know it
>> existed.
>=20
> OpenSSL has a client session cache in SSLContext but it's not so
> useful because you need to keep Sessions by yourself, and pick proper
> Session for each server.  Here's a sample usage of client session =
cache:
>=20
> =
https://github.com/nahi/httpclient/commit/7fc04933961ea3ea5a2aa595172ca7cd=
29a718f5
>=20
> You would want to implement session cache instead.

I think enabling the session cache is useless for net/http because it is =
single-connection oriented.  Instead, just using an ivar to store the =
session is OK.

In http://www.openssl.org/docs/ssl/SSL_CTX_set_session_cache_mode.html, =
enabling SSL_SESS_CACHE_CLIENT says:

> Client sessions are added to the session cache. As there is no =
reliable way for the OpenSSL library to know whether a session should be =
reused or which session to choose (due to the abstract BIO layer the SSL =
engine does not have details about the connection), the application must =
select the session to be reused by using the SSL_set_session(3) =
function. This option is not activated by default.


I think for net/http the client session cache is useless.  net/http only =
connects to one server per instance and will only have one context alive =
at a time, so the cache will not hold more than one session at a time.

Instead of jumping through the hoops of the client session cache =
(cache-managing class, callbacks) it will be easier to store the session =
in an instance variable after connect() and SSL negotiation (since there =
can only ever be one item in the cache for net/http) and apply the =
session from the ivar via SSL_set_session (SSLSocket#session=3D) when we =
call connect() again.

According to SSL_SESS_CACHE_CLIENT we need to do the manual set anyways, =
so I don't think we should bother with a lot of work to store one thing =
when an instance variable works just fine.

I think for httpclient the cache makes more sense because it manages =
multiple connections in a single instance.

> FYI: In contrast to the client session cache, the server session cache
> is very useful and everyone should use it whenever you need a server
> session cache.

Agreed!  Fortunately it is the default.


In This Thread