Date: Mon, 17 Apr 1995 07:31:03 +1000 From: Bruce Evans <bde@zeta.org.au> To: j@uriah.heep.sax.de, rpt@miles.sso.loral.com Cc: andreas@knobel.gun.de, hackers@FreeBSD.org Subject: Re: aspfilter & stdin Message-ID: <199504162131.HAA17611@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>[trying to get apsfilter to work on FreeBSD] >> ... A companion program is supplied called 'rewindstdin'. >> >> main() >> { >> return lseek(0,0L,0) < 0; >> } >I've already wondered how this should work on a pipe after Andreas >described it to me on the phone. I'd suggest you to contact Andreas It must fail on pipes and set errno to ESPIPE. I'm currently looking at a bug involving lseek() not failing on named pipes. Ordinary pipes are handled correctly in vfs_syscalls.c:lseek() because fp->f_type is DTYPE_SOCKET for them. For named pipes, fp->f_type is DTYPE_VNODE (this seems appropriate because there really is a vnode) so lseek() does the wrong thing. There are probably other places where named pipes should be handled like ordinary pipes (mostly in kern_descrip.c). File timestamps are broken for both ordinary pipes and named pipes. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199504162131.HAA17611>