HP Rp7410 BSD Sockets Interface Programmer's Guide - Page 136

Sending Data

Page 136 highlights

Using UNIX Domain Stream Sockets Sending and Receiving Data Sending and Receiving Data After the connect and accept calls are successfully executed, the connection is established and data can be sent and received between the two socket endpoints. Because the stream socket descriptors correspond to HP-UX file descriptors, you can use the read and write calls (in addition to send and recv) to pass data through a socket-terminated channel. If you are considering the use of the read and write system calls instead of the send and recv calls described below, you should consider the following: • If you use read and write instead of send and recv, you can use a socket for stdin or stdout. • If you use read and write instead of send and recv, you cannot use the options specified with the send or recv flags parameter. See the table that lists other system calls in chapter 8, for more information on which of these system calls are best for your application. Sending Data send and its parameters are described in the following table. Include files: System call: #include #include count = send(s,msg,len,flags) int s; char *msg; int len, flags; Parameter Description of Contents INPUT Value s msg len flags socket descriptor of local socket pointer to data buffer size of data buffer settings for optional flags socket descriptor of socket sending data pointer to data to be sent size of msg 0 136 Chapter 6

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196

136
Chapter 6
Using UNIX Domain Stream Sockets
Sending and Receiving Data
Sending and Receiving Data
After the
connect
and
accept
calls are successfully executed, the
connection is established and data can be sent
and received between the
two socket endpoints. Because the stream socket descriptors correspond
to HP-UX file descriptors, you can use the
read
and
write
calls (in
addition to
send
and
recv
) to pass data through a socket-terminated
channel.
If you are considering the use of the
read
and
write
system calls
instead of the
send
and
recv
calls described below, you should consider
the following:
If you use
read
and
write
instead of
send
and
recv
, you can use a
socket for
stdin
or
stdout
.
If you use
read
and
write
instead of
send
and
recv
, you cannot use
the options specified with the
send
or
recv flags
parameter.
See the table that lists other system calls in chapter 8, for more
information on which of these system calls are best for your application.
Sending Data
send
and its
parameters are described in the following table.
Include files:
#include <sys/types.h>
#include <sys/socket.h>
System call:
count = send(s,msg,len,flags)
int s;
char *msg;
int len, flags;
Parameter
Description of Contents
INPUT Value
s
socket descriptor of local
socket
socket descriptor of
socket sending data
msg
pointer to data buffer
pointer to data to be sent
len
size of data buffer
size of msg
flags
settings for optional flags
0