ucspi-proxy(1)

πŸ’– ucspi-proxy β€” from the General Commands Manual, section 1 πŸŽ€

okay bestie, sit down, we're learning ucspi-proxy today and it's actually so simple it's kinda iconic πŸ’…


✨ NAME ✨

ucspi-proxy β€” copy data between a UCSPI client and server πŸ¦‹


🌸 SYNOPSIS 🌸

ucspi-proxy [ -v ] [ -t TIMEOUT ] [ HOST PORT ]

πŸ’œ DESCRIPTION πŸ’œ

So here's the whole vibe: ucspi-proxy is literally just a simple loop πŸ”. It copies data from a UCSPI server (that's file descriptor 0, bestie) over to the client, and it copies data from the client back to the server (that's FD 1). If either socket closes, ucspi-proxy dips out and exits. That's the whole thing. No cap.

And the way that the other ucspi-proxy-* programs are literally based on this exact same simple loop?? They have similar usage. Family resemblance, slay. πŸ‘‘

Now, if HOST and PORT are given on the command line, ucspi-proxy will make a TCP connection using those parameters. If neither of them is present, it uses file descriptor 6 for the client socket instead β€” that's the one UCSPI client programs hand you. 🫢


πŸŽ€ OPTIONS πŸŽ€

  • -l MAXLINE β€” the maximum length of lines (from either the server or the client) that get copied to the log. Defaults to 64. πŸ“
  • -t TIMEOUT β€” when it's making a connection, ucspi-proxy waits a maximum of TIMEOUT seconds before it gives up. Defaults to 30. ⏳
  • -v β€” print messages about errors and byte counts. Without this option, ucspi-proxy is completely silent 🀫 (mysterious main character energy, honestly).

πŸ”₯ RETURN VALUE πŸ”₯

It exits 0 if a normal end of file was reached on one of the sockets. Otherwise? It exits 1. Simple as that. ✨


🌈 SEE ALSO 🌈

  • ucspi-unix
  • ucspi-tcp

πŸ’€ friendly reminder bestie: no -l in the synopsis line but it's definitely in the options, so don't come for me, I just report what the manpage says fr fr

mwah πŸ’‹ that's the whole page β€” brought to you by the General Commands Manual, ucspi-proxy(1), and yes it's section 1 because it's a command, periodt πŸŽ€βœ¨πŸ’–