If you use setsockopt() to lower SO_SNDBUF to a value only large enough to send one packet, then the next send()
on that socket should block until the previous packet is acknowledged. However, according to tcp(7), the socket buffer size must be set prior to listen()
/connect()
.