Bridging console port to a telnet session
Garrett Cooper
youshi10 at u.washington.edu
Wed Jan 17 19:49:58 UTC 2007
On Jan 17, 2007, at 11:00 AM, Kailas Ramasamy wrote:
> Hi Mike,
>
> Thanks a lot. This is what I was looking for.
>
> -Kailas
>
> On 1/17/07, Mike Meyer <mwm at mired.org> wrote:
>>
>> In <ecd0bee40701171024p7c5b4944of45b4c407ed3c5f4 at mail.gmail.com>,
>> Kailas
>> Ramasamy <kailasr at gmail.com> typed:
>> > Hi Mike,
>> > I read through fork() and exec() man pages but I couldn't find
>> anything
>> > related to
>> > this. Basically, I want to launch a telnet session from a
>> process and
>> pass
>> > in
>> > /dev/console as stdin and stdout.
>>
>> Well, you don't really need fork(), though fork() follows exec() so
>> often than some OS's combine them into a single call. And I just
>> noticed that if you do "man exec", you get the shell's page - you
>> want
>> exec(3), to get the C calls.
>>
>> Anyway, the sequence is:
>>
>> Use open() to get an fd pointing at /dev/console.
>> Use dup2() to copy that fd to stdin and stdout (and probably stderr).
>> Use an exec() function to launch telnet.
>>
>> <mike
>>
>>
>> > Thanks
>> > Kailas
>> >
>> > On 1/16/07, Mike Meyer <mwm at mired.org> wrote:
>> > >
>> > > In <ecd0bee40701161732v26112f24o2d8323c2777d2f7 at mail.gmail.com>,
>> Kailas
>> > > Ramasamy <kailasr at gmail.com> typed:
>> > > > Hi Mike,
>> > > > Yes, that what I am planing but I want to do this
>> dynamically. Do
>> you
>> > > know
>> > > > how to launch a
>> > > > telnet session from a process?. How do I pass stdin and
>> stdout to
>> the
>> > > telnet
>> > > > from a process?.
>> > >
>> > > See the fork() and exec() man pages.
>> > >
>> > > <mike
>> > >
>> > >
>> > > > On 1/16/07, Mike Meyer <mwm at mired.org> wrote:
>> > > > >
>> > > > > In
>> <ecd0bee40701161503k385819ddgba5562e137630617 at mail.gmail.com>,
>> > > Kailas
>> > > > > Ramasamy <kailasr at gmail.com> typed:
>> > > > > > Hi,
>> > > > > > Within a FreeBSD system, I want to telnet to another
>> system and
>> > > bridge
>> > > > > that
>> > > > > > session to the
>> > > > > > console port so that when an user connects to the system
>> via
>> console
>> > > > > port,
>> > > > > > it is automatically
>> > > > > > redirected to other system for I have already established a
>> telnet
>> > > > > session.
>> > > > >
>> > > > > What's wrong with simply leaving a telnet session running
>> on the
>> > > > > console, maybe with some support to relaunch it should it
>> ever
>> exit?
>> > > > >
>> > > > > <mike
>> > > > > --
>> > > > > Mike Meyer <mwm at mired.org>
>> > > > > http://www.mired.org/consulting.html
>> > > > > Independent Network/Unix/Perforce consultant, email for more
>> > > information.
>> > > > >
>> > > > _______________________________________________
>> > > > freebsd-hackers at freebsd.org mailing list
>> > > > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>> > > > To unsubscribe, send any mail to "
>> > > freebsd-hackers-unsubscribe at freebsd.org"
>> > > >
>> > >
>> > > --
>> > > Mike Meyer <mwm at mired.org>
>> > > http://www.mired.org/consulting.html
>> > > Independent Network/Unix/Perforce consultant, email for more
>> information.
>> > >
>> > Hi Mike,<br>I read through fork() and exec() man pages but I
>> couldn't find anything related to<br>this. Basically, I want
>> to launch a
>> telnet session from a process and pass in <br>/dev/console as
>> stdin and
>> stdout. <br>
>> > <br>Thanks<br>Kailas<br><br><div><span class="gmail_quote">On
>> 1/16/07,
>> <b class="gmail_sendername">Mike Meyer</b> <<a href="mailto:
>> mwm at mired.org">mwm at mired.org</a>> wrote:</span><blockquote
>> class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204);
>> margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
>> > In <<a href="mailto:
>> ecd0bee40701161732v26112f24o2d8323c2777d2f7 at mail.gmail.com">
>> ecd0bee40701161732v26112f24o2d8323c2777d2f7 at mail.gmail.com</
>> a>>, Kailas
>> Ramasamy <<a href="mailto:kailasr at gmail.com">kailasr at gmail.com
>> > </a>> typed:<br>> Hi Mike,<br>> Yes, that what I am
>> planing but
>> I want to do this dynamically. Do you know<br>> how to launch
>> a<br>>
>> telnet session from a process?. How do I pass stdin and stdout to
>> the telnet
>> > <br>> from a process?.<br><br>See the fork() and exec() man
>> pages.<br><br> <mik
>> e<br><br><br>>
>> On 1/16/07, Mike Meyer <<a
>> href="mailto:mwm at mired.org">mwm at mired.org</a>>
>> wrote:<br>> ><br>> > In <
>> > <a href="mailto:
>> ecd0bee40701161503k385819ddgba5562e137630617 at mail.gmail.com">
>> ecd0bee40701161503k385819ddgba5562e137630617 at mail.gmail.com</a>>,
>> Kailas<br>> > Ramasamy <<a href="mailto:kailasr at gmail.com">
>> kailasr at gmail.com
>> > </a>> typed:<br>> > > Hi,<br>> > > Within a
>> FreeBSD
>> system, I want to telnet to another system and bridge<br>> >
>> that<br>> > > session to the<br>> > > console
>> port so that
>> when an user connects to the system via console
>> > <br>> > port,<br>> > > it is
>> automatically<br>> >
>> > redirected to other system for I have already established a
>> telnet<br>> > session.<br>> ><br>> > What's
>> wrong with
>> simply leaving a telnet session running on the
>> > <br>> > console, maybe with some support to relaunch it
>> should it
>> ever exit?<br>> ><br>>
>> >
>> <mike<br>> >
>> --<br>> > Mike Meyer <<a href="mailto:mwm at mired.org">
>> mwm at mired.org</a>>
>> > <br>> > <a href="http://www.mired.org/consulting.html">
>> http://www.mired.org/consulting.html</a><br>> > Independent
>> Network/Unix/Perforce consultant, email for more information.<br>>
>> ><br>>
>>
>> --
>> Mike Meyer <mwm at mired.org>
>> http://www.mired.org/consulting.html
>> Independent Network/Unix/Perforce consultant, email for more
>> information.
Kailas cross posted this to the questions@ list too. I gave a
possible answer there.
-Garrett
More information about the freebsd-questions
mailing list