Project

General

Profile

Actions

Feature #13719

open

[PATCH] net/http: allow existing socket arg for Net::HTTP.start

Added by normalperson (Eric Wong) over 7 years ago. Updated about 4 years ago.

Status:
Open
Assignee:
-
Target version:
-
[ruby-core:81920]

Description

This allows Net::HTTP users to use Unix domain sockets
or any other type of stream socket, including TCP.
Several HTTP servers (e.g. nginx and puma) support
listening on local Unix sockets instead of TCP.

* lib/net/http.rb (HTTP.start): handle :socket option
  (initialize): @live_socket defaults to nil
  (connect): only connect if @live_socket is missing
  (do_finish): remove reference to @live_socket
* test/net/http/test_http.rb (test_socket_arg_unix): new test

patch mirror:
https://80x24.org/spew/20170705112439.22359-1-e@80x24.org/raw


Files

Updated by hadmut (Hadmut Danisch) about 4 years ago

Any news on this?

I was just trying to use the rest-client gem to connect to a unix domain socket, which isn't possible since the underlying net/http component does not accept unix domain URLs.

Since offering rest-apis on unix-domain sockets has become a standard, ruby should be able to connect straight forward.

Updated by normalperson (Eric Wong) about 4 years ago

wrote:

Any news on this?

https://bugs.ruby-lang.org/issues/13719#change-87531

It looks like net/http development moved to a proprietary service
which I can't comment on due to Terms-of-Service + JS + CAPTCHA:
https://github.com/ruby/net-http

In the past, @hsbt (Hiroshi SHIBATA) said he'd help merge patches from non-GitHub users;
I don't know if that's still true.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0