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 4


4.1

Look at the definitions for the constants beginning with INADDR_ except INADDR_ANY (which is all zero bits) and INADDR_NONE (which is all one bits). For example, the class D multicast address INADDR_MAX_LOCAL_GROUP is defined as 0xe00000ff with the comment "224.0.0.255," which is clearly in host byte order.

4.2

Here are the new lines added after the call to connect:



len = sizeof(cliaddr);
Getsockname(sockfd, (SA *) &cliaddr, &len);
printf("local addr: %s\n",
Sock_ntop((SA *) &cliaddr, len));

This requires a declaration of len as a socklen_t and a declaration of cliaddr as a struct sockaddr_in. Notice that the value-result argument for getsockname (len) must be initialized before the call to the size of the variable pointed to by the second argument. The most common programming error with value-result arguments is to forget this initialization.

4.3

When the child calls close, the reference count is decremented from 2 to 1, so a FIN is not sent to the client. Later, when the parent calls close, the reference count is decremented to 0 and the FIN is sent.

4.4

accept returns EINVAL, since the first argument is not a listening socket.

4.5

Without a call to bind, the call to listen assigns an ephemeral port to the listening socket.


/ 450