help with socket programming in c


 
Thread Tools Search this Thread
Top Forums Programming help with socket programming in c
# 8  
Old 04-06-2010
Then I would say you must change the data structures to use an array of structure which should also include the connection fd and use select() to handling multiple connections. select() will tell you which of connection is having data in their socket buffer.
Code:
struct conn {
  int fd;
  int svbuf_len;
  int clbuf_len;
  char srvbuf[1024];
  char cl_buf[1024];
  // put more thing if need.
};

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

socket programming

how to include socket.h in visual studio 2005.. (2 Replies)
Discussion started by: asd123
2 Replies

2. Programming

Socket programming

Hi everyone, I'm new to this forum. I'm working on new project for last few days and this forum already helped me on couple of occasions. I don't have any prior experience with network programming so I'll appreciate any advise given. I'm trying to do the following: 1. open user... (2 Replies)
Discussion started by: _thomas
2 Replies

3. UNIX for Dummies Questions & Answers

hi i need help with socket programming

in socket programming how can i : Create for example 3 blank files, namely: server, client, network •Server: act as servers/provider, will receive all requests from different client •Client: requesters •Network: middle-layer of communication between server & client any tips or... (6 Replies)
Discussion started by: kedah160
6 Replies

4. UNIX for Advanced & Expert Users

socket programming

can we send udp message to a destination ip address .. without having an ip address configured in our machine using recvfrom ? (2 Replies)
Discussion started by: Gopi Krishna P
2 Replies

5. Programming

help regarding socket programming

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)
Discussion started by: abmxla007
1 Replies

6. IP Networking

socket programming

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)
Discussion started by: sureshvaikuntam
1 Replies

7. IP Networking

socket programming

my system is a stand alone system... i want to try doing socket porgramming..ihave heard that this is usually done during testing... how can i do that....? (6 Replies)
Discussion started by: damn_bkb
6 Replies

8. Programming

Need Help Regarding Socket Programming

Can anyone plz me. I need a sample code for the following description. Its urgent. It is C/Socket program with the following descriptions: NAME coreadServer - Concurrent Readers Server. coreadClient - Concurrent Readers Client. SYNOPSIS coreadServer <OutputFile> coreadClient <n>... (1 Reply)
Discussion started by: priya.vmr
1 Replies

9. Programming

Socket Programming socket

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)
Discussion started by: soshell
2 Replies

10. Programming

Socket Programming

Dear Reader, Is there any way to check up socket status other than 'netstatus ' Thanks in advance, (1 Reply)
Discussion started by: joseph_shibu
1 Replies
Login or Register to Ask a Question
accept(3XNET)					   X/Open Networking Services Library Functions 				     accept(3XNET)

NAME
accept - accept a new connection on a socket SYNOPSIS
cc [ flag ... ] file ... -lxnet [ library ... ] #include <sys/socket.h> int accept(int socket, struct sockaddr *restrict address, socklen_t *restrict address_len); DESCRIPTION
The accept() function extracts the first connection on the queue of pending connections, creates a new socket with the same socket type protocol and address family as the specified socket, and allocates a new file descriptor for that socket. The function takes the following arguments: socket Specifies a socket that was created with socket(3XNET), has been bound to an address with bind(3XNET), and has issued a successful call to listen(3XNET). address Either a null pointer, or a pointer to a sockaddr structure where the address of the connecting socket will be returned. address_len Points to a socklen_t which on input specifies the length of the supplied sockaddr structure, and on output specifies the length of the stored address. If address is not a null pointer, the address of the peer for the accepted connection is stored in the sockaddr structure pointed to by address, and the length of this address is stored in the object pointed to by address_len. If the actual length of the address is greater than the length of the supplied sockaddr structure, the stored address will be truncated. If the protocol permits connections by unbound clients, and the peer is not bound, then the value stored in the object pointed to by address is unspecified. If the listen queue is empty of connection requests and O_NONBLOCK is not set on the file descriptor for the socket, accept() will block until a connection is present. If the listen(3XNET) queue is empty of connection requests and O_NONBLOCK is set on the file descriptor for the socket, accept() will fail and set errno to EAGAIN or EWOULDBLOCK. The accepted socket cannot itself accept more connections. The original socket remains open and can accept more connections. USAGE
When a connection is available, select(3C) will indicate that the file descriptor for the socket is ready for reading. RETURN VALUES
Upon successful completion, accept() returns the nonnegative file descriptor of the accepted socket. Otherwise, -1 is returned and errno is set to indicate the error. ERRORS
The accept() function will fail if: EAGAIN O_NONBLOCK is set for the socket file descriptor and no connections are present to be accepted. EWOULDBLOCK EBADF The socket argument is not a valid file descriptor. ECONNABORTED A connection has been aborted. EFAULT The address or address_len parameter can not be accessed or written. EINTR The accept() function was interrupted by a signal that was caught before a valid connection arrived. EINVAL The socket is not accepting connections. EMFILE OPEN_MAX file descriptors are currently open in the calling process. ENFILE The maximum number of file descriptors in the system are already open. ENOTSOCK The socket argument does not refer to a socket. EOPNOTSUPP The socket type of the specified socket does not support accepting connections. The accept() function may fail if: ENOBUFS No buffer space is available. ENOMEM There was insufficient memory available to complete the operation. ENOSR There was insufficient STREAMS resources available to complete the operation. EPROTO A protocol error has occurred; for example, the STREAMS protocol stack has not been initialized. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
bind(3XNET), connect(3XNET), listen(3XNET), socket(3XNET), attributes(5), standards(5) SunOS 5.10 1 Nov 2003 accept(3XNET)