03-29-2011
Help with sockets in C
if i have a server which wants to connect to exactly 5 clients, does that mean i need 5 socket file descriptors and use
listen(socket_fd,1);
for each one
or just do
listen(socket_fd,5)
also whats the second parameter number mean? what happens if i put 0 there?
also if i am connected to five clients, and i have listen(socket_fd,5), does that mean while one of the 5 is being handled, it has support for the other 4 to continue waiting?, or I am not sure what its doing here, can I even put a 0 there, if I have 5 clients connected, will that work?
10 More Discussions You Might Find Interesting
1. Programming
Hi !
I had a verry simple question to ask...
In unix when we create pipes.. the unnamed pipes that is...
is there any way to access those pipes outside the code ?
Another thing.. do sockets have an entry in the inode table ?
TIA,
Devyani. (1 Reply)
Discussion started by: devy8
1 Replies
2. Programming
I am looking for a way to have a program listen on a port (example: 8000) for communication I will be sending via that port to it(Linux Kernel machine). Once it recieves an appropiate command I need it to run a .bat file in linux.
I know what I need to do but I am running into a few problems:... (8 Replies)
Discussion started by: bigB8210
8 Replies
3. Programming
Hai,
How cani declare socket and collect the data in a string varialbe.
Since i am new to this i am asking this.
Can we connect multiple port.
Thank you. (6 Replies)
Discussion started by: arunkumar_mca
6 Replies
4. UNIX for Dummies Questions & Answers
how do i mointor how many sockets are opened from a particular foriegn address? (2 Replies)
Discussion started by: kirpond
2 Replies
5. Solaris
Is there a way to see what sockets are in use? The developers here are getting some defunct processes and they would like to get a socket list.
This is on a Solaris 8 machine.
Thanks! (1 Reply)
Discussion started by: kjbaumann
1 Replies
6. IP Networking
Is it possible to trace the packages and the statuses of client's and/or server's sockets by the UNIX network administrative tools?
Two applications interact via sockets. There is no problem if they stay in the same network segment. If their hosts connected through the firewall then they aren't... (4 Replies)
Discussion started by: gogogo
4 Replies
7. Programming
anyone and teach me how to save standard output to a file in a client/server socket. I know how to read them to the screen but i'm not quite sure how to save them to a file.
my read to screen file code:
memset(line, 0x0, LINE_ARRAY_SIZE);
while (recv(connectSocket, line, MAX_MSG, 0) >... (1 Reply)
Discussion started by: crunchyuser
1 Replies
8. Programming
Hi,i now moved into a different section where i need to use sockets.
i am completely nill in sockets.
can some body please provide me what are the requirements for a socket.
to use sockets in c.
thanks (1 Reply)
Discussion started by: MrUser
1 Replies
9. Red Hat
hai guys,
I'm doing a project in which one server communicates with several clients. How can i do it when i have different port numbers???:confused: (0 Replies)
Discussion started by: rajeshb6
0 Replies
10. Programming
Hi, i am student, think learning about c++, someone has a example the how establish a conection with sockets :b::b: (1 Reply)
Discussion started by: mmartinez
1 Replies
listen(3XNET) X/Open Networking Services Library Functions listen(3XNET)
NAME
listen - listen for socket connections and limit the queue of incoming connections
SYNOPSIS
cc [ flag ... ] file ... -lxnet [ library ... ]
#include <sys/socket.h>
int listen(int socket, int backlog);
DESCRIPTION
The listen() function marks a connection-mode socket, specified by the socket argument, as accepting connections, and limits the number of
outstanding connections in the socket's listen queue to the value specified by the backlog argument.
If listen() is called with a backlog argument value that is less than 0, the function sets the length of the socket's listen queue to 0.
The implementation may include incomplete connections in the queue subject to the queue limit. The implementation may also increase the
specified queue limit internally if it includes such incomplete connections in the queue subject to this limit.
Implementations may limit the length of the socket's listen queue. If backlog exceeds the implementation-dependent maximum queue length,
the length of the socket's listen queue will be set to the maximum supported value.
The socket in use may require the process to have appropriate privileges to use the listen() function.
RETURN VALUES
Upon successful completions, listen() returns 0. Otherwise, -1 is returned and errno is set to indicate the error.
ERRORS
The listen() function will fail if:
EBADF The socket argument is not a valid file descriptor.
EDESTADDRREQ The socket is not bound to a local address, and the protocol does not support listening on an unbound socket.
EINVAL The socket is already connected.
ENOTSOCK The socket argument does not refer to a socket.
EOPNOTSUPP The socket protocol does not support listen().
The listen() function may fail if:
EACCES The calling process does not have the appropriate privileges.
EINVAL The socket has been shut down.
ENOBUFS Insufficient resources are available in the system to complete the call.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO
accept(3XNET), connect(3XNET), socket(3XNET), attributes(5), standards(5)
SunOS 5.10 10 Jun 2002 listen(3XNET)