telnet problem with PHP

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • _andrea.l

    #1

    telnet problem with PHP

    I'm writing a little script for reading information from a router by telnet.
    I have a problem

    How give a comand and get the answer more times?
    I means:


    [...]
    $usenet = fsockopen($cfgS erver, $cfgPort, &$errno, &$errstr, $cfgTimeOut);
    [...]
    fwrite ($usenet, "show interface description\r\n \n");
    [...]
    while (!feof($usenet) )
    {
    $r1=fgets($usen et, 1000)."<BR>\n";
    }


    The program don't exit from while...
    .... because the telnet don't give feof.
    Hoh can I do?

    Thank you in advance,
    Andrea.



  • Andy Hassall

    #2
    Re: telnet problem with PHP

    On Thu, 22 Dec 2005 23:50:22 +0100, "_andrea.l"
    <andrea.lorizAN TISPAM@libero.i t> wrote:
    [color=blue]
    >I'm writing a little script for reading information from a router by telnet.
    >I have a problem
    >
    >How give a comand and get the answer more times?
    >I means:
    >
    >[...]
    > $usenet = fsockopen($cfgS erver, $cfgPort, &$errno, &$errstr, $cfgTimeOut);
    >[...]
    > fwrite ($usenet, "show interface description\r\n \n");
    >[...]
    >while (!feof($usenet) )
    >{
    >$r1=fgets($use net, 1000)."<BR>\n";
    >}
    >
    >
    >The program don't exit from while...
    >... because the telnet don't give feof.[/color]

    Are you expecting the device to drop the connection after one command? Or do
    you need to send some sort of "exit" command after the "show interface
    description" command?

    Otherwise you need to find some sort of unique text that indicates the end of
    the output, and use that to stop your while loop.

    --
    Andy Hassall :: andy@andyh.co.u k :: http://www.andyh.co.uk
    http://www.andyhsoftware.co.uk/space :: disk and FTP usage analysis tool

    Comment

    • Pedro Graca

      #3
      Re: telnet problem with PHP

      _andrea.l wrote:[color=blue]
      > I'm writing a little script for reading information from a router by telnet.
      > I have a problem
      >
      > How give a comand and get the answer more times?[/color]
      <snip>[color=blue]
      > The program don't exit from while...
      > ... because the telnet don't give feof.
      > Hoh can I do?[/color]

      When you telnet to the router 'by hand', how do you know the router has
      finished the answer and is ready for more?

      You have to make your script follow the same rules.


      A long time ago I did a script that telnets to a POP3 server.

      Have a look:

      and modify to your taste.

      --
      Mail to my "From:" address is readable by all at http://www.dodgeit.com/
      == ** ## !! ------------------------------------------------ !! ## ** ==
      TEXT-ONLY mail to the whole "Reply-To:" address ("My Name" <my@address>)
      may bypass my spam filter. If it does, I may reply from another address!

      Comment

      Working...