Hello Team,
Is there a limit on the amount of data (bytes) that can be received via the
*str = streamSock.recv( 64000 )* stmt below?
Although I put *64000 *bytes, I consistently do not get more than *5562*bytes.
When this happens the server side fails with a *`write`: broken
(Errno::EPIPE)* msg.
I know that the variable, *userCMD_output* contains all the data, since I
printed to the screen for testing.
Thank you
This is the server code:
require 'socket'
port = 19557
server = TCPServer.new("", port)
while (session = server.accept)
input = session.gets
userCMD_output = `#{input}`
session.write("#{userCMD_output}")
session.close
end
This is the client code:
def runIt( srvr, comm )
require 'socket'
port = 19557
streamSock = TCPSocket.new( srvr, port )
streamSock.puts("#{comm}\n")
str = streamSock.recv( 64000 )
puts "Output from Server: #{srvr}"
print str
puts "\n"
streamSock.close
end
See my reply to the last thread you posted (in short, use #read rather
than #recv).
Regards,
Jordan
···
On Dec 27, 12:29 pm, Victor Reyes <victor.re...@gmail.com> wrote:
[Note: parts of this message were removed to make it a legal post.]
Hello Team,
Is there a limit on the amount of data (bytes) that can be received via the
*str = streamSock.recv( 64000 )* stmt below?
Although I put *64000 *bytes, I consistently do not get more than *5562*bytes.
When this happens the server side fails with a *`write`: broken
(Errno::EPIPE)* msg.
I know that the variable, *userCMD_output* contains all the data, since I
printed to the screen for testing.
Thank you
This is the server code:
require 'socket'
port = 19557
server = TCPServer.new("", port)
while (session = server.accept)
input = session.gets
userCMD_output = `#{input}`
session.write("#{userCMD_output}")
session.close
end
This is the client code:
def runIt( srvr, comm )
require 'socket'
port = 19557
streamSock = TCPSocket.new( srvr, port )
streamSock.puts("#{comm}\n")
str = streamSock.recv( 64000 )
puts "Output from Server: #{srvr}"
print str
puts "\n"
streamSock.close
end
Hey Jordan, I owe one.
It works like a charm!
Thanks again,
Victor
···
On Dec 27, 2007 2:04 PM, MonkeeSage <MonkeeSage@gmail.com> wrote:
On Dec 27, 12:29 pm, Victor Reyes <victor.re...@gmail.com> wrote:
> [Note: parts of this message were removed to make it a legal post.]
>
> Hello Team,
>
> Is there a limit on the amount of data (bytes) that can be received via
the
> *str = streamSock.recv( 64000 )* stmt below?
> Although I put *64000 *bytes, I consistently do not get more than
*5562*bytes.
> When this happens the server side fails with a *`write`: broken
> (Errno::EPIPE)* msg.
> I know that the variable, *userCMD_output* contains all the data, since
I
> printed to the screen for testing.
>
> Thank you
>
> This is the server code:
>
> require 'socket'
> port = 19557
> server = TCPServer.new("", port)
>
> while (session = server.accept)
> input = session.gets
> userCMD_output = `#{input}`
> session.write("#{userCMD_output}")
> session.close
> end
>
> This is the client code:
>
> def runIt( srvr, comm )
> require 'socket'
> port = 19557
> streamSock = TCPSocket.new( srvr, port )
> streamSock.puts("#{comm}\n")
> str = streamSock.recv( 64000 )
> puts "Output from Server: #{srvr}"
> print str
> puts "\n"
> streamSock.close
> end
See my reply to the last thread you posted (in short, use #read rather
than #recv).
Regards,
Jordan
Glad to be of some help! I've received enough help from the group -- I
guess it's about time to give some back. 
Regards,
Jordan
···
On Dec 27, 1:17 pm, Victor Reyes <victor.re...@gmail.com> wrote:
[Note: parts of this message were removed to make it a legal post.]
Hey Jordan, I owe one.
It works like a charm!
Thanks again,
Victor
On Dec 27, 2007 2:04 PM, MonkeeSage <MonkeeS...@gmail.com> wrote:
> On Dec 27, 12:29 pm, Victor Reyes <victor.re...@gmail.com> wrote:
> > [Note: parts of this message were removed to make it a legal post.]
> > Hello Team,
> > Is there a limit on the amount of data (bytes) that can be received via
> the
> > *str = streamSock.recv( 64000 )* stmt below?
> > Although I put *64000 *bytes, I consistently do not get more than
> *5562*bytes.
> > When this happens the server side fails with a *`write`: broken
> > (Errno::EPIPE)* msg.
> > I know that the variable, *userCMD_output* contains all the data, since
> I
> > printed to the screen for testing.
> > Thank you
> > This is the server code:
> > require 'socket'
> > port = 19557
> > server = TCPServer.new("", port)
> > while (session = server.accept)
> > input = session.gets
> > userCMD_output = `#{input}`
> > session.write("#{userCMD_output}")
> > session.close
> > end
> > This is the client code:
> > def runIt( srvr, comm )
> > require 'socket'
> > port = 19557
> > streamSock = TCPSocket.new( srvr, port )
> > streamSock.puts("#{comm}\n")
> > str = streamSock.recv( 64000 )
> > puts "Output from Server: #{srvr}"
> > print str
> > puts "\n"
> > streamSock.close
> > end
> See my reply to the last thread you posted (in short, use #read rather
> than #recv).
> Regards,
> Jordan