Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sockstat: split FreeBSD, NetBSD and Linux implementations #12040

Merged
merged 7 commits into from
Jan 15, 2024
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions pages/common/sockstat.md

This file was deleted.

37 changes: 37 additions & 0 deletions pages/freebsd/sockstat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# sockstat

> List open Internet or UNIX domain sockets.
> Some of the displayed informations: USER, COMMAND, PID, FD (file descriptor), PROTO (protocol).

Check failure on line 4 in pages/freebsd/sockstat.md

View workflow job for this annotation

GitHub Actions / build

informations ==> information
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved
> More information: <https://man.freebsd.org/cgi/man.cgi?sockstat>.

- View which users/processes are [l]istening to which ports:

Check failure on line 7 in pages/freebsd/sockstat.md

View workflow job for this annotation

GitHub Actions / build

istening ==> listening
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved

`sockstat -l`

- Show information for IPv[4]/IPv[6] sockets [l]istening on specific [p]orts using a specific [P]rotocol:

Check failure on line 11 in pages/freebsd/sockstat.md

View workflow job for this annotation

GitHub Actions / build

istening ==> listening

`sockstat -{{4|6}} -l -P {{tcp|udp|sctp|divert}} -p {{port1,port2...}}`

- Also show [c]onnected sockets, not resolving numeric UIDs to user [n]ames and using a [w]ider field size:
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved

`sockstat -cnw`

- Only show sockets that belong to a specific [j]ail ID or name in [v]erbose mode:

`sockstat -jv`

- Display the protocol [s]tate and the remote [U]DP encapsulation port number, if applicable (these are currently only implemented for SCTP and TCP):

`sockstat -sU`

- Display the [C]ongestion control module and the protocol [S]tack, if applicable (these are currently only implemented for TCP):

`sockstat -CS`

- Only show Internet sockets if the local and foreign addresses are not in the loopback network prefix 127.0.0.0/8, or do not contain the IPv6 loopback address ::1:

`sockstat -L`

- Do not show the header ([q]uiet mode), showing [u]nix sockets and displaying the `inp_gencnt`:

`sockstat -qui`
30 changes: 30 additions & 0 deletions pages/linux/sockstat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# sockstat

> List open Internet or UNIX domain sockets. Ported from FreeBSD.
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved
> Some of the displayed informations: USER, COMMAND, PID, FD (file descriptor), PROTO (protocol).

Check failure on line 4 in pages/linux/sockstat.md

View workflow job for this annotation

GitHub Actions / build

informations ==> information
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved
> See also: `netstat`.
> More information: <https://manned.org/sockstat>.

- Show information for IPv4 and IPv6 sockets for both listening and connected sockets:

`sockstat`

- Show information for IPv[4]/IPv[6] sockets [l]istening on specific [p]orts using a specific p[R]otocol:

Check failure on line 12 in pages/linux/sockstat.md

View workflow job for this annotation

GitHub Actions / build

istening ==> listening

`sockstat -{{4|6}} -l -R {{tcp|udp|raw|unix}} -p {{port1,port2...}}`

- Also show [c]onnected sockets and [u]nix sockets:

`sockstat -cu`

- Only show sockets of the specified `pid` or process:

`sockstat -P {{pid|process}}`

- Only show sockets of the specified `uid` or user:

`sockstat -U {{uid|user}}`

- Only show sockets of the specified `gid` or group:

`sockstat -G {{gid|group}}`
26 changes: 26 additions & 0 deletions pages/netbsd/sockstat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# sockstat

> List open Internet or UNIX domain sockets. Rewrite for NetBSD 3.0 from FreeBSD's `sockstat`.
> Some of the displayed informations: USER, COMMAND, PID, FD (file descriptor), PROTO (protocol).

Check failure on line 4 in pages/netbsd/sockstat.md

View workflow job for this annotation

GitHub Actions / build

informations ==> information
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved
> See also: `netstat`.
> More information: <https://man.freebsd.org/cgi/man.cgi?sockstat>.

- Show information for IPv4, IPv6 and Unix sockets for both listening and connected sockets:

`sockstat`

- Show information for IPv[4]/IPv[6] sockets [l]istening on specific [p]orts using a specific [P]rotocol:

Check failure on line 12 in pages/netbsd/sockstat.md

View workflow job for this annotation

GitHub Actions / build

istening ==> listening

`sockstat -{{4|6}} -l -P {{tcp|udp|sctp|divert}} -p {{port1,port2...}}`

- Also show [c]onnected sockets, showing [u]nix sockets:

`sockstat -cu`

- Only show [n]umeric output, not looking symbolic names for addresses and ports:
vitorhcl marked this conversation as resolved.
Show resolved Hide resolved

`sockstat -n`

- Only list sockets of the specified address [f]amily:

`sockstat -f {{inet|inet6|local|unix}}`