UNIX Network Programming Volume 1, Third Edition [Electronic resources] : The Sockets Networking API نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

UNIX Network Programming Volume 1, Third Edition [Electronic resources] : The Sockets Networking API - نسخه متنی

Addison Wesley

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید










Chapter 16


16.1

The descriptor is shared between the parent and child, so it has a reference count of 2. If the parent calls close, this just decrements the reference count from 2 to 1, and since it is still greater than 0, a FIN is not sent. This is another reason for the shutdown function: to force a FIN to be sent even if the descriptor's reference count is greater than 0.

16.2

The parent will keep writing to the socket that has received a FIN, and the first segment sent to the server will elicit an RST in response. The next write after this will send SIGPIPE to the parent as we discussed in Section 5.12.

16.3

When the child calls getppid to send SIGTERM to the parent, the returned PID will be 1, the init process, which inherits all children whose parents terminate while their children are still running. The child will try to send the signal to the init process, but will not have adequate permission. But if there is a chance that this client could run with superuser privileges, allowing it to send this signal to init, then the return value of getppid should be tested before sending the signal.

16.4

If these two lines are removed, select is called. But select will return immediately because with the connection established, the socket is writable. This test and goto are to avoid the unnecessary call to select.

16.5

This can happen when the server immediately sends data when its accept returns, and when the client host is busy when the second packet of the three-way handshake arrives to complete the connection at the client end (Figure 2.5). SMTP servers, for example, immediately write to a new connection before reading from it, to send a greeting message to the client.


/ 450