sctp_darn(1)

sctp_darn πŸ’Œ

okay bestie, welcome to the General Commands Manual section 1 glow-up of sctp_darn β€” the lil' tool that sends and receives messages over SCTP. yes it's a test app. yes it's iconic. let's get into it 🫢


✨ NAME ✨

sctp_darn β€” send and receive messages via SCTP πŸ’…


✨ SYNOPSIS ✨

sctp_darn -H local_address -P local_port [-h remote_host] [-p
remote_port] -l|s

like. that's the whole vibe. local address + local port, optionally a remote friend, and then you pick your main character mode: listen or send. no cap 🌸


✨ DESCRIPTION ✨

So this is a userspace test application for the SCTP Linux kernel reference implementation state machine. and honestly? it's vaguely inspired by Stevens' program "sock". not a copy, just… spiritually adjacent. it's giving homage πŸ’–

It has the limited ability to send messages and to listen for messages sent via SCTP. that's it, that's the whole job. it does that one thing and it does it. periodt ✨


✨ OPTIONS ✨

okay here's the whole lineup, don't skip any, I know it's long but every single one matters πŸ’…

  • -H, --local local_address β€” specify one of the local addresses. your home base 🏠
  • -P, --local-port local_port β€” specify the port number for local addresses. the door number of your home base πŸšͺ
  • -h, --remote remote_address β€” specify the peer address. who you're talking to πŸ¦‹
  • -p, --remote-port remote_port β€” specify the port number for the peer address. their door number πŸ’œ
  • -l, --listen β€” print messages received from the peer. sit pretty and vibe, they'll come to you πŸ‘‘
  • -s, --send β€” send messages to the peer. you're the one initiating, main character energy fr fr πŸ”₯
  • -B, --bindx-add address β€” add the specified address(es) as additional bind addresses to the local socket. multiple addresses can be specified by this argument multiple times. for example, '-B 10.0.0.1 -B 20.0.0.2'. stacking them up like a collection πŸŽ€
  • -b, --bindx-rem address β€” remove the specified address(es) from the bind addresses of the local socket. multiple addresses can be specified by this argument multiple times. for example, '-b 10.0.0.1 -b 20.0.0.2'. spring cleaning, but for addresses 🧹
  • -I β€” use the interactive mode. you get to talk to it πŸ™ˆ
  • -i β€” setup the specified number of endpoints by using the specified local host (-H) and local port (-P). the port number will be incremented by one for each additional endpoint. all of these endpoints will be listening. and if a remote host (-h) and a remote port are also specified, the first endpoint will start sending fixed sized messages to the remote host. it's a whole squad of endpoints, they're all matching 🫢
  • -m size β€” specify the sockopt sndbuf/rcvbuf size. buffer szn πŸ’Ύ
  • -n β€” set the socket(s) to be in the non-blocking mode. collect messages from stdin and deliver them to the peer. no waiting around, we're busy girls ⭐
  • --use-poll β€” use system call poll() for polling among the number of endpoints specified by the -i option. without this option, select() would be used as default. pick your fighter 🌈
  • -t β€” use SOCK_STREAM tcp-style sockets. fake it till you make it, tcp-flavored πŸ’…
  • -z size β€” specify the message size to be sent. the default message size generated would be 16K. yes, 16K, that's the default, don't come for me 😭
  • --interface ifname β€” select interface for sin6_scope_id. yes the scope id, yes it's a whole thing 🌸
ngl bestie, -l and -s are your two modes β€” the synopsis literally makes you pick one. choose wisely πŸ’€

✨ AUTHOR ✨

Michael Biebl <biebl@debian.org> β€” the icon, the legend, the author πŸ’–


okay that's the whole page, you're officially educated πŸŽ“βœ¨ go forth and sctp_darn, bestie. this was page sctp_darn(1) from the General Commands Manual β€” tysm for reading, mwah πŸ’…πŸŽ€πŸ¦‹