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

pointer to

Page 131 highlights

Using UNIX Domain Stream Sockets Writing the Server Process Accepting a Connection The server process can accept any connection requests that enter its queue after it executes listen. accept creates a new socket for the connection and returns the socket descriptor for the new socket. The new socket: • Is created with the same properties as the old socket. • Has the same bound pathname as the old socket. • Is connected to the client process' socket. accept blocks until there is a connection request from a client process in the queue, unless you are using nonblocking I/O. accept and its parameters are described in the following table. Include files: System call: #include #include #include s = accept(ls,addr,addrlen) int s; int ls; struct sockaddr_un *addr; int *addrlen; Parameter Contents INPUT Value OUTPUT Value s addr addrlen socket descriptor of local socket socket address length of address socket descriptor of server socket unchanged pointer to address structure where address will be put pointer to socket address of client socket that server's new socket is connected to pointer to the size of struct sockaddr_un pointer to the actual length of address returned in addr Chapter 6 131

  • 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

Chapter 6
131
Using UNIX Domain Stream Sockets
Writing the Server Process
Accepting a Connection
The server process can accept any connection requests that enter its
queue after it executes
listen
.
accept
creates a new socket for the
connection and returns the socket descriptor for the new socket. The new
socket:
Is created with the same properties as the old socket.
Has the same bound pathname as the old socket.
Is connected to the client process' socket.
accept
blocks until there is a connection request from a client process in
the queue, unless you are using nonblocking I/O.
accept
and its
parameters are described in the following table.
Include files:
#include <sys/types.h>
#include <sys/un.h>
#include <sys/socket.h>
System call:
s = accept(ls,addr,addrlen)
int s;
int ls;
struct sockaddr_un *addr;
int *addrlen;
Parameter
Contents
INPUT Value
OUTPUT
Value
s
socket
descriptor of
local socket
socket descriptor
of server socket
unchanged
addr
socket
address
pointer to address
structure where
address will be put
pointer to
socket address of
client socket
that server’s
new socket is
connected to
addrlen
length of
address
pointer to the size
of struct
sockaddr_un
pointer to the
actual length of
address
returned in addr