Date: Mon, 4 Jan 2010 09:33:38 -0800 From: Jeremy Chadwick <freebsd@jdc.parodius.com> To: freebsd-stable@freebsd.org Cc: Ed Schouten <ed@80386.nl> Subject: Re: TIOCSTI possibly broken under 8.0 ? Message-ID: <20100104173338.GA75363@icarus.home.lan> In-Reply-To: <E1NRq8Q-0000aC-Sa@dilbert.ticketswitch.com> References: <E1NRq8Q-0000aC-Sa@dilbert.ticketswitch.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 04, 2010 at 04:50:26PM +0000, Pete French wrote: > TIOCSTI appears to be broken - the code attached at the bottom > works fine in 7.x but fails in 8.0. What the code is attempting to > do is to print a prompt for text input, along with an initial > value for that text which can be edited by the user. I am assuming > this is a bug, and not incorrect usage of TIOCSTI, but evven if not > it is still a regression compared to 7.x. > > The reason I am intested in this is that this is the code which > is used by /usr/bin/mail to allow the headers to be edited in an > email, so this does break a very basic piece of the base system. > > cheers, > > -pete. > > > > > > #include <stdio.h> > #include <sys/ttycom.h> > > char *src = "hello world"; > > int > main(int argc, char *argv[]) > { > char ch; > int c; > char *cp; > char x[512]; > > puts("Enter text: "); > fflush(stdout); > > cp = src == NULL ? "" : src; > while ((c = *cp++) != '\0') { > ch = c; > ioctl(0, TIOCSTI, &ch); > } > > fgets(x, 511, stdin); > printf("We got: %s\n", x); > fflush(stdout); > return 0; > } Adding Ed Schouten to the thread, who will probably be able to shed some light on things. :-) -- | Jeremy Chadwick jdc@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100104173338.GA75363>