Is there a standard call for flushing the transmit side of a POSIX socket all the way through to the remote end or does this need to be implemented as part of the user level
Use fsync():
sock_fd is integer file descriptor from socket(..., ...) call
fsync(sock_fd);