07-07-2007
Quote:
Originally Posted by
arjunjag
how do you get to know if the write operation for writing to a socket was succesful was succesful.
Answer: return code and errno. If it was zero or less, then the write did not work.
Note, a successful write to a socket does not mean successful reception at the other end. TCP data will be delivered when the network and remote peer permit. Even a zero returned from close() does not indicate if the data was actually transmitted.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I need to find all the files that have group Read or Write permission or files that have user write permission.
This is what I have so far:
find . -exec ls -l {} \; | awk '/-...rw..w./ {print $1 " " $3 " " $4 " " $9}'
It shows me all files where group read = true, group write = true... (5 Replies)
Discussion started by: shunter63
5 Replies
2. Solaris
Hi Folks,
I would like to monitor multipath IO on solaris for write and read operations.
Does "sar -d" include multipath IO information along with other block devices ?
Thanks,
Faizan. (0 Replies)
Discussion started by: sifaizan
0 Replies
3. IP Networking
Hi,
We have smb client running on two of the linux boxes and smb server on another linux system. During a backup operation which uses smb, read of a file was allowed while write to the same file was going on.Also simultaneous writes to the same file were allowed.Following are the settings in the... (1 Reply)
Discussion started by: swatidas11
1 Replies
4. Linux
Hi,
I am creating a progress bar for file upload for which I have CGI script which copies the data and depending on certain bytes it increments the progress bar. Here, I am writing the incremented value to a file which is read by Ajax at server end. However, here I want to ask that, is it... (18 Replies)
Discussion started by: xs2punit
18 Replies
5. Shell Programming and Scripting
I have a txt file with several columns and i want to peform an operation on two columns and output it to a new txt file .
file.txt
900.00000 1 1 1
500.00000
500.00000
100000.000
4
4
1.45257346E-07 899.10834 ... (4 Replies)
Discussion started by: shashi792
4 Replies
6. Shell Programming and Scripting
Hi Gurus,
I have XML log files which is continuously updated with resultmessage succesful and which are not successful. My intention is to grep the <resultMessage> which does not contain following success message and put it in a file.
<resultCode>0</resultCode>
... (10 Replies)
Discussion started by: thepurple
10 Replies
7. Shell Programming and Scripting
I have a process running on two hosts in Active/Standby mode. Process running on active machine is handling the traffic while process running on Standby machine is sitting idle.
We have a debugging mechanism in which logs are generated on local machine. When logging is enabled then process running... (1 Reply)
Discussion started by: akhilonnet
1 Replies
8. Shell Programming and Scripting
Hi Unix Gurus,
I need to grep for a block that is between a start and end keyword and then in between I need to find and replace a keyword.
for eg: I need to search between Test = 000; and Test = 000; and find K9 and replace with M9
INPUT FILE
Define {
Replace = K9;
Test =... (6 Replies)
Discussion started by: naveen@
6 Replies
9. Shell Programming and Scripting
Hi All,
I need the answer of below question?
1) How to write multiple cronjobs in shellscript? Is there any way or we cant write in shellscript...
Regards,
Priyanka (2 Replies)
Discussion started by: pspriyanka
2 Replies
10. Programming
(Apologies for any typos.)
OSX 10.12.3 AND Windows 10.
This is for the serious Python experts on at least 3.5.x and above...
In script format sys.stdout.write() AND sys.stderr.write() seems to work correctly.
Have I found a serious bug in the interactive sys.stdout.write() AND... (2 Replies)
Discussion started by: wisecracker
2 Replies
TCP(4P) TCP(4P)
NAME
tcp - Internet Transmission Control Protocol
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
s = socket(AF_INET, SOCK_STREAM, 0);
DESCRIPTION
The TCP protocol provides reliable, flow-controlled, two-way transmission of data. It is a byte-stream protocol used to support the
SOCK_STREAM abstraction. TCP uses the standard Internet address format and, in addition, provides a per-host collection of "port
addresses". Thus, each address is composed of an Internet address specifying the host and network, with a specific TCP port on the host
identifying the peer entity.
Sockets utilizing the tcp protocol are either "active" or "passive". Active sockets initiate connections to passive sockets. By default
TCP sockets are created active; to create a passive socket the listen(2) system call must be used after binding the socket with the bind(2)
system call. Only passive sockets may use the accept(2) call to accept incoming connections. Only active sockets may use the connect(2)
call to initiate connections.
Passive sockets may "underspecify" their location to match incoming connection requests from multiple networks. This technique, termed
"wildcard addressing", allows a single server to provide service to clients on multiple networks. To create a socket which listens on all
networks, the Internet address INADDR_ANY must be bound. The TCP port may still be specified at this time; if the port is not specified
the system will assign one. Once a connection has been established the socket's address is fixed by the peer entity's location. The
address assigned the socket is the address associated with the network interface through which packets are being transmitted and received.
Normally this address corresponds to the peer entity's network.
TCP supports one socket option which is set with setsockopt(2) and tested with getsockopt(2). Under most circumstances, TCP sends data
when it is presented; when outstanding data has not yet been acknowledged, it gathers small amounts of output to be sent in a single packet
once an acknowledgement is received. For a small number of clients, such as window systems that send a stream of mouse events which
receive no replies, this packetization may cause significant delays. Therefore, TCP provides a boolean option, TCP_NODELAY (from
<netinet/tcp.h>, to defeat this algorithm. The option level for the setsockopt call is the protocol number for TCP, available from getpro-
tobyname(3N).
Options at the IP transport level may be used with TCP; see ip(4P). Incoming connection requests that are source-routed are noted, and the
reverse source route is used in responding.
DIAGNOSTICS
A socket operation may fail with one of the following errors returned:
[EISCONN] when trying to establish a connection on a socket which already has one;
[ENOBUFS] when the system runs out of memory for an internal data structure;
[ETIMEDOUT] when a connection was dropped due to excessive retransmissions;
[ECONNRESET] when the remote peer forces the connection to be closed;
[ECONNREFUSED] when the remote peer actively refuses connection establishment (usually because no process is listening to the port);
[EADDRINUSE] when an attempt is made to create a socket with a port which has already been allocated;
[EADDRNOTAVAIL] when an attempt is made to create a socket with a network address for which no network interface exists.
SEE ALSO
getsockopt(2), socket(2), intro(4N), inet(4F), ip(4P)
4.2 Berkeley Distribution May 16, 1986 TCP(4P)