Hi all,

Sorry if this question is a little off topic since it's not strongly
FreeBSD-specific.

I've got a C program that opens a TCP/IP socket and makes a client
connection.  What I'd like to do is to 'tie' the socket to this
program's standard I/O, so that anything that is fed into this program's
stdin, is immediately sent to the socket, and anything that appears on
the socket, is immediately sent out this program's stdout.  (The end
effect being a sort of pathologically simple version of what telnet,
(or inetd or ucspi-tcp) does.)

Trying to figure this out using Google, the best lead I got was to try
something like this:

  fclose(stdin);
  fclose(stdout);
  dup2(sd, 0);
  dup2(sd, 1);

But it doesn't seem to do much good.  (At best, I think this means the
program can communicate with the socket as if it were stdio - but from
the program user's point of view, stdio disappears completely.)

I'd rather not resort to getting my hands dirty with select(2), but I
guess if there's really no other way, I'll have to.

TIA,
-Chris
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to