1496 INDEX
sockaddr_un structure, 1151, 1165–1166
definition, 1165
example of use, 1168, 1176
sockatmark(), 426
socket, 282, 392, 883, 1149–1163
abstract binding, 1175
accepting a connection, 1157
active, 1155
active close (TCP), 1272
address structure, 1154
asynchronous error, 1254, 1351, 1352
binding to an address, 1153
broadcasting, 800, 1282
connecting to peer, 1158
connection termination, 1159
connectionless, 1152
connection-oriented, 1152
creating, 1153
datagram, 1152, 1159–1162
sending and receiving, 1160
domain, 1150
half-close, 1256
identified by 4-tuple, 1280
Internet domain, 882, 886, 1150,
1197–1237
address structure, 1202–1204
maximum datagram size, 1190
I/O system calls, 1259–1260
listening for connections, 1156
local, 1152
multicasting, 800, 1282
options, 1278–1279
out-of-band data, 394, 1259, 1260,
1283, 1288, 1331, 1343
pair, 1174
partial reads and writes, 1254–1255
passing credentials via, 800, 801,
1284–1285
passing file descriptor via, 1284
passive, 1155
passive close (TCP), 1272
peer, 1152
pending connection, 1156
poll() on, 1343
port number. See port number
raw, 800, 1184
receive buffer, 1276
diagram, 1190
remote, 1152
select() on, 1343
send buffer, 1276
diagram, 1190
sequenced-packet, 1285
stream, 1151, 1155–1159
I/O, 1159
type, 1151
UNIX domain, 882, 884, 886, 1150,
1165–1177
address structure, 1165–1167
maximum datagram size, 1171
socket permissions, 1174
socket(), 426, 801, 1150, 1152, 1153
diagram, 1156, 1160
example of use, 1166, 1169, 1172, 1173,
1208, 1209, 1221, 1224, 1228
prototype, 1153
RLIMIT_NOFILE resource limit and, 762
socketcall(), 1152
socketpair(), 426, 1174–1175
prototype, 1175
socklen_t data type, 65, 1153, 1154,
1157, 1158, 1161, 1218, 1231,
1263, 1278
socknames.c, 1265
soft link. See symbolic link
soft realtime, 738
software clock, 205–206
SOL_SOCKET constant, 1278
Solaris, 4
SOMAXCONN constant, 1157
soname, shared library, 840–843, 846–847
source code (of example programs), xli
Spafford, G., 1439
sparse array, 1038
spawn, 514
Spec 1170, 13, 17
speed_t data type, 65, 1292, 1316, 1317
splice(), 1262
Spraul, M., xxxix
spurious readiness notification, 1330
spurious wake-up, 648
spwd structure, 161, 162
definition, 162
example of use, 164, 810
SS_DISABLE constant, 435
SS_ONSTACK constant, 435
ssh program, 1378
ssize_t data type, 65, 66, 79, 80, 98, 99,
102, 315, 316, 350, 943, 1075,
1077, 1161, 1259, 1261
SSL (Secure Sockets Layer), 1190
stack, 31, 116, 121–122, 612, 764, 1051
diagram, 122
direction of growth, 121
resource limit on size of, 764
unwinding, 133
stack crashing, 792
stack frame, 116, 121–122, 133, 151
stack pointer, 121, 133, 150