class

Miniss::Socket

Inherits Reference < Object

Socket object, having several properties.

Example:

so = Miniss::Socket.new(:tcp, 4_u8)
line = File.readlines("/proc/net/tcp")[1]
so.parse_line(line)
so.laddr # => "127.0.0.53:53"
so.state # => "LISTEN"
so.uname # => "systemd-resolve"
so.uid   # => 980

Constructors

new(type : Symbol, ipv : UInt8)

Initialize Socket class.

Choose the type of socket. Arguments: type (cf. #type), ipv (cf. #ipv).

Source

Instance methods

ipv

IP version (v4, v6).

Accepts values: 4_u8, 6_u8.

Source
laddr

Local address (IP + port).

Source
laddr=(laddr : String)

Local address (IP + port).

Source
parse_line(line : String) : Nil

Parse a socket line from /proc/net/XXX and set Socket instance properties.

Source
raddr

Remote address (IP + port).

Source
raddr=(raddr : String)

Remote address (IP + port).

Source
state

Socket state cf. Miniss::TCP_STATES.

Source
state=(state : String)

Socket state cf. Miniss::TCP_STATES.

Source
type

Socket type (TCP, UDP).

Accepts values: :tcp, :udp.

Source
uid

Process owner user ID.

Source
uid=(uid : UInt32)

Process owner user ID.

Source
uname

Process owner user name.

Source
uname=(uname : String)

Process owner user name.

Source