The function tcp_read
uses the shell’s normal read
builtin. As
this reads a complete line at once, data arriving without a terminating
newline can cause the function to block indefinitely.
Though the function suite works well for interactive use and for data arriving in small amounts, the performance when large amounts of data are being exchanged is likely to be extremely poor.