Copyright © (C) 2015, Heroku
opts() = ranch_ssl:opts() | ranch_tcp:opts()
proxy_opts() = [{source_address, inet:ip_address()} | {source_port, inet:port_number()} | {dest_address, inet:ip_address()} | {dest_port, inet:port_number()}]
proxy_protocol_info() = {{inet:ip_address(), inet:port_number()}, {inet:ip_address(), inet:port_number()}}
abstract datatype: proxy_socket()
transport() = module()
accept(Transport::transport(), Proxy_socket::proxy_socket(), Timeout::timeout()) -> {ok, proxy_socket()} | {error, closed | timeout | not_proxy_protocol | {timeout, proxy_handshake} | atom()}
accept_ack(Transport::transport(), Proxy_socket::proxy_socket(), Timeout::pos_integer()) -> ok
bearer_port(X1::transport(), Proxy_socket::proxy_socket()) -> port()
close(Transport::transport(), Proxy_socket::proxy_socket()) -> ok
connect(Transport::transport(), Host::inet:ip_address() | inet:hostname(), Port::inet:port_number(), Opts::any(), ProxyOpts::proxy_opts()) -> {ok, proxy_socket()} | {error, atom()}
connection_info(Proxy_socket::proxy_socket()) -> {ok, list()}
connection_info(Proxy_socket::proxy_socket(), Items::[protocol | cipher_suite | sni_hostname]) -> {ok, list()}
controlling_process(Transport::transport(), Proxy_socket::proxy_socket(), Pid::pid()) -> ok | {error, closed | not_owner | atom()}
get_csocket(Proxy_socket::proxy_socket()) -> port()
getopts(Transport::transport(), Proxy_socket::proxy_socket(), Opts::[atom()]) -> {ok, list()} | {error, atom()}
getstat(Transport::transport(), Proxy_socket::proxy_socket()) -> {ok, list()} | {error, atom()}
getstat(Transport::transport(), Proxy_socket::proxy_socket(), OptionNames::[atom()]) -> {ok, list()} | {error, atom()}
listen(Transport::transport(), Opts::opts()) -> {ok, proxy_socket()} | {error, atom()}
listen_port(X1::transport(), Proxy_socket::proxy_socket()) -> port()
match_port(Transport::transport(), Socket::proxy_socket()) -> port()
opts_from_socket(Transport::atom(), Socket::proxy_socket()) -> ranch_proxy_protocol:proxy_opts()
peername(Transport::transport(), Proxy_socket::proxy_socket()) -> {ok, {inet:ip_address(), inet:port_number()}} | {error, atom()}
proxyname(X1::transport(), Proxy_socket::proxy_socket()) -> {ok, proxy_protocol_info()}
recv(Transport::transport(), Proxy_socket::proxy_socket(), Length::non_neg_integer(), Timeout::timeout()) -> {ok, any()} | {error, closed | atom()}
recv(Transport, Proxy_socket, Length, Timeout) -> any()
send(Transport::transport(), Proxy_socket::proxy_socket(), Packet::iodata()) -> ok | {error, atom()}
sendfile(Transport::transport(), Proxy_socket::proxy_socket(), Filename::file:name_all() | file:fd(), Offset::non_neg_integer(), Bytes::non_neg_integer(), Opts::[{chunk_size, non_neg_integer()}]) -> {ok, non_neg_integer()} | {error, atom()}
set_csocket(ProxySocket::proxy_socket(), NewCSocket::port() | ssl:sslsocket()) -> proxy_socket()
setopts(Transport::transport(), Proxy_socket::proxy_socket(), Opts::list()) -> ok | {error, atom()}
shutdown(Transport::transport(), Proxy_socket::proxy_socket(), How::read | write | read_write) -> ok | {error, atom()}
sockname(Transport::transport(), Proxy_socket::proxy_socket()) -> {ok, {inet:ip_address(), inet:port_number()}} | {error, atom()}
Generated by EDoc