Removed tcdrain(), will handle write() failures differently.