Sorry if I posted 2 separate questions.
I'm currently doing socket programming on my current task. As you can see below in the client side. I've tried to do a loop so I will be able to get prompt for input over and over again.
This is the code.
It worked for the first time, but the second time it asked me for input but it did not print anything on the server side. After entering the second input it exited from the terminal.
I've check up the loop and realize it was the write problem. Any way to solve this?
Suppose i am writing a C program which is going to use Socket calls. I want to use a Unix port for my Socket.
How can i determine a port which is not already in use? (1 Reply)
Hello,
I actually try to make client-server program.
I'm using SCO OpenServer Release 5.0.0 and when I try to compile my code (by TELNET) I've got this error :
I'm just using this simple code :
and I get the same error if I use :
If someone can help me,
Thanks (2 Replies)
Hi ,
I'm facing the following problem in socket programming.
My structure is
struct {
int i;
char *str;
}samp;
I'm creating the pointer to this structure and assigning the value to the structure members and send via the socket to the another process.
The receiver process when... (7 Replies)
Hello!:)
I'm trying to do some socket programming based on the following situation:
I have a directory service named Casino that will hold all the information regarding the gamers that will try to connect to it in order to play a game(for example (Blackjack).Once they make the login they are... (4 Replies)
Hello Everyone
Iam working on tcp/ip programming.with some time interval server has to send data.client has to close the connection and to open the connection between the time interval.this is the scenario
when iam closing the connection in client side the connection terminates.how to... (1 Reply)
i m using sockets for setting up a connection between a server and a client.
When the clients gets connected to the server, its ip is conveyed to the server through one of the predefined structures in c library...
i save this ip address in an array....1st client's ip address goes to the zeroth... (1 Reply)
Hi,
I have a client-server socket program. It has been working fine for over a year, but recently it started to show strange behavior.:confused:
After the server program runs for a while, it will show in the top command saying it is using lots of CPU, MEM. I assume it means the server code is... (1 Reply)
I'm using C/ C++ with gcc on Linux. I've a server socket where accept() is called on the socket inside a while() loop. The problem I am facing is that the first call to accept is blocking (i.e., the program waits for the first connection) but as soon as I fork afterwards (so that the child process... (2 Replies)
will there be any unexpected results on looping connect call for a non blocking socket to determine the connection based on error code. I am getting connection unsuccessful intermittently and so wondering whether is the timeout 500 millisec not sufficient or looping connect cause any unexpected.
... (7 Replies)
Discussion started by: satish@123
7 Replies
LEARN ABOUT CENTOS
fblocked
fblocked(n) Tcl Built-In Commands fblocked(n)
__________________________________________________________________________________________________________________________________________________NAME
fblocked - Test whether the last input operation exhausted all available input
SYNOPSIS
fblocked channelId
_________________________________________________________________DESCRIPTION
The fblocked command returns 1 if the most recent input operation on channelId returned less information than requested because all avail-
able input was exhausted. For example, if gets is invoked when there are only three characters available for input and no end-of-line
sequence, gets returns an empty string and a subsequent call to fblocked will return 1.
ChannelId must be an identifier for an open channel such as a Tcl standard channel (stdin, stdout, or stderr), the return value from an
invocation of open or socket, or the result of a channel creation command provided by a Tcl extension.
EXAMPLE
The fblocked command is particularly useful when writing network servers, as it allows you to write your code in a line-by-line style with-
out preventing the servicing of other connections. This can be seen in this simple echo-service:
# This is called whenever a new client connects to the server
proc connect {chan host port} {
set clientName [format <%s:%d> $host $port]
puts "connection from $clientName"
fconfigure $chan -blocking 0 -buffering line
fileevent $chan readable [list echoLine $chan $clientName]
}
# This is called whenever either at least one byte of input
# data is available, or the channel was closed by the client.
proc echoLine {chan clientName} {
gets $chan line
if {[eof $chan]} {
puts "finishing connection from $clientName"
close $chan
} elseif {![fblocked $chan]} {
# Didn't block waiting for end-of-line
puts "$clientName - $line"
puts $chan $line
}
}
# Create the server socket and enter the event-loop to wait
# for incoming connections...
socket -server connect 12345
vwait forever
SEE ALSO
gets(n), open(n), read(n), socket(n), Tcl_StandardChannels(3)KEYWORDS
blocking, nonblocking
Tcl 7.5 fblocked(n)