Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!caip!topaz!ll-xn!nike!ucbcad!ucbvax!decvax!decuac!gouldsd!apartan From: apartan@gouldsd.UUCP Newsgroups: net.unix,net.unix-wizards Subject: Re: Not a typewriter Message-ID: <118@gouldsd.UUCP> Date: Thu, 26-Jun-86 13:02:28 EDT Article-I.D.: gouldsd.118 Posted: Thu Jun 26 13:02:28 1986 Date-Received: Sat, 28-Jun-86 03:22:05 EDT References: <1683@homxb.UUCP> <542@codas.ATT.UUCP> <717@axis.UUCP> <37@mtxinu.UUCP> Organization: Gould Inc, ASDD, Landover, MD Lines: 18 Xref: watmath net.unix:8413 net.unix-wizards:18616 Summary: write(fd,buf,n) CAN return != n (for pipes) In article <37@mtxinu.UUCP>, ed@mtxinu.UUCP (Ed Gould) writes: > As long as we're reading the documentatin *carefully*, let's remember that > any return from > > write(fd, buf, n) > > that is != n is an error. This is NOT so! If the fd refers to a pipe, and you are writing more bytes than the pipe will hold, and you get an interrupt, then the write() will return something that is >0, but is != n. I ran into this problem porting some code to a Perkin-Elmer XELOS system (a port of Sys V). --asp (Andrew S. Partan) -- seismo!sundc!gouldsd!asp -- decuac!gouldsd!asp