14.1
|
What happens in Figure 14.1 when we
reset the signal handler, and the process has not established a
handler for SIGALRM?
|
14.2
|
In Figure 14.1, we print
a warning if the process already has an alarm timer set.
Modify the function to reset this alarm for the process
after the connect, before the function returns.
|
14.3
|
Modify Figure 11.11 as
follows: Before calling read, call recv
specifying MSG_PEEK. When this returns, call
ioctl with a command of FIONREAD and print the
number of bytes queued on the socket's receive buffer. Then, call
read to actually read the data.
|
14.4
|
What happens to the data in a standard I/O
buffer that has not yet been output if the process falls off the
end of the main function instead of calling
exit?
|
14.5
|
Apply each of the two changes described
following Figure 14.14 and
verify that each one corrects the buffering problem.
|