Unix network programming: 1 Networking APIs: sockets and XTI
Software -- Operating Systems.
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Upper Saddle River, NJ [u.a.]
Prentice Hall
1998
|
Ausgabe: | 2. ed. |
Online-Zugang: | Inhaltsverzeichnis |
Zusammenfassung: | Software -- Operating Systems. |
Beschreibung: | Literaturverz. S. 963 - 970 |
Beschreibung: | XX, 1009 S. graph. Darst. |
ISBN: | 013490012X |
Internformat
MARC
LEADER | 00000nam a2200000zcc4500 | ||
---|---|---|---|
001 | BV022166605 | ||
003 | DE-604 | ||
005 | 20030526000000.0 | ||
007 | t | ||
008 | 980813s1998 d||| |||| 00||| eng d | ||
020 | |a 013490012X |9 0-13-490012-X | ||
035 | |a (OCoLC)312737593 | ||
035 | |a (DE-599)BVBBV022166605 | ||
040 | |a DE-604 |b ger | ||
041 | 0 | |a eng | |
049 | |a DE-706 | ||
082 | 0 | |a 005.712768 | |
100 | 1 | |a Stevens, W. Richard |d 1951-1999 |e Verfasser |0 (DE-588)123662281 |4 aut | |
245 | 1 | 0 | |a Unix network programming |n 1 |p Networking APIs: sockets and XTI |c by W. Richard Stevens |
250 | |a 2. ed. | ||
264 | 1 | |a Upper Saddle River, NJ [u.a.] |b Prentice Hall |c 1998 | |
300 | |a XX, 1009 S. |b graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
500 | |a Literaturverz. S. 963 - 970 | ||
520 | 3 | |a Software -- Operating Systems. | |
773 | 0 | 8 | |w (DE-604)BV011706445 |g 1 |
856 | 4 | 2 | |m GBV Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=015381298&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-015381298 |
Datensatz im Suchindex
_version_ | 1804136141908082688 |
---|---|
adam_text | UNIX NETWORK PROGRAMMING VOLUME 1 SECOND EDITION NETWORKING APIS:
SOCKETS AND XTI BY W. RICHARD STEVENS TO JOIN A PRENTICE HALL PTR
INTERNET MAILING LIST, POINT TO HTTP://WWW.PRENHALL.COM/MAILLISTS/ ISBN
O-IA-^GOLE-X PRENTICE HALL PTR UPPER SADDLE RIVER, NJ 07458 CONTENTS
PREFACE XV PART 1. INTRODUCTION AND TCP/IP _1_ 3 6 11 CHAPTER 1.
INTRODUCTION 1.1 INTRODUCTION 3 1.2 A SIMPLE DAYTIME CLIENT 1.3 PROTOCOL
INDEPENDENCE 9 1.4 ERROR HANDLING: WRAPPER FUNCTIONS 1.5 A SIMPLE
DAYTIME SERVER 13 1.6 ROAD MAP TO CLIENT-SERVER EXAMPLES IN THE TEXT 1.7
OSI MODEL 18 1.8 BSD NETWORKING HISTORY 19 1.9 TEST NETWORKS AND HOSTS
20 1.10 UNIX STANDARDS 24 1.11 64-BIT ARCHITECTURES 27 1.12 SUMMARY 28
CHAPTER 2. THE TRANSPORT LAYER: TCP AND UDP 2.1 INTRODUCTION 29 2.2 THE
BIG PICTURE 30 2.3 UDP: USER DATAGRAM PROTOCOL 32 2.4 TCP; TRANSMISSION
CONTROL PROTOCOL 32 2.5 TCP CONNECTION ESTABLISHMENT AND TERMINATION 16
29 34 VI UNIX NETWORK PROGRAMMING CONTENTS 2.6 TIMEJ/VAIT STATE 40 2.7
PORT NUMBERS 41 2.8 TCP PORT NUMBERS AND CONCURRENT SERVERS 44 2.9
BUFFER SIZES AND LIMITATIONS 46 2.10 STANDARD INTERNET SERVICES 50 2.11
PROTOCOL USAGE BY COMMON INTERNET APPLICATIONS 52 2.12 SUMMARY 52 PART
2. ELEMENTARY SOCKETS 55 CHAPTER 3. SOCKETS INTRODUCTION 3.1
INTRODUCTION 57 3.2 SOCKET ADDRESS STRUCTURES 57 3.3 VALUE-RESULT
ARGUMENTS 63 3.4 BYTE ORDERING FUNCTIONS 66 3.5 BYTE MANIPULATION
FUNCTIONS 69 3.6 INET_ATON, INET_ADDR, AND INET_NTOA FUNCTIONS 3.7
INET_PTON AND INET_NTOP FUNCTIONS 72 3.8 SOCK_NTOP AND RELATED FUNCTIONS
75 3.9 READN, WRITEN, AND READLINE FUNCTIONS 77 3.10 ISFDTYPE FUNCTION
81 3.11 SUMMARY 82 CHAPTER 4. ELEMENTARY TCP SOCKETS 4.1 INTRODUCTION 85
4.2 SOCKET FUNCTION 85 4.3 CONNECT FUNCTION 89 4.4 BIND FUNCTION 91 4.5
LISTEN FUNCTION 93 4.6 ACCEPT FUNCTION 99 4.7 FORK AND EXEC FUNCTIONS
102 4.8 CONCURRENT SERVERS 104 4.9 CLOSE FUNCTION 107 4.10 GETSOCKNAME
AND GETPEERNAME FUNCTIONS 4.11 SUMMARY 110 57 70 85 107 CHAPTER 5. TCP
CLIENT-SERVER EXAMPLE 5.1 INTRODUCTION 111 5.2 TCP ECHO SERVER: MAIN
FUNCTION 112 5.3 TCP ECHO SERVER: STR_ECHO FUNCTION 113 5.4 TCP ECHO
CLIENT: MAIN FUNCTION 113 5.5 TCP ECHO CLIENT: STR_CLI FUNCTION 115 5.6
NORMAL STARTUP 115 5.7 NORMAL TERMINATION 117 5.8 POSIX SIGNAL HANDLING
119 5.9 HANDLING SIGCHLD SIGNALS 122 5.10 WAIT AND WAITPID FUNCTIONS 124
111 UNIX NETWORK PROGRAMMING CONTENTS VII 5.11 CONNECTION ABORT BETOERE
ACCEPT RETURNS 129 5.12 TERMINATION OF SERVER PROCESS 130 5.13 SIGPIPE
SIGNAL 132 5.14 CRASHING OF SERVER HOST 133 5.15 CRASHING AND REBOOTING
OF SERVER HOST 134 5.16 SHUTDOWN OF SERVER HOST 135 5.17 SUMMARY OF TCP
EXAMPLE 135 5.18 DATA FORMAT 137 5.19 SUMMARY 140 CHAPTER 6. 6.1 6.2 6.3
6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 I/O MULTIPLEXING: THE SELECT AND
POLL FUNCTIONS INTRODUCTION 143 I/O MODELS 144 SELECT FUNCTION 150 155
143 STR_CLI FUNCTION (REVISITED) BATCH INPUT 157 SHUTDOWN FUNCTION 160
STR_CLI FUNCTION (REVISITED AGAIN) 161 TCP ECHO SERVER (REVISITED) 162
PSELECT FUNCTION 168 POLL FUNCTION 169 TCP ECHO SERVER (REVISITED AGAIN)
172 SUMMARY 175 CHAPTER 7. SOCKET OPTIONS 7.1 INTRODUCTION 177 7.2
GETSOCKOPT AND SETSOCKOPT FUNCTIONS 178 7.3 CHECKING IF AN OPTION IS
SUPPORTED AND OBTAINING THE DEFAULT 7.4 SOCKET STATES 183 7.5 GENERIC
SOCKET OPTIONS 183 7.6 IPV4 SOCKET OPTIONS 197 7.7 ICMPV6 SOCKET OPTION
199 7.8 IPV6 SOCKET OPTIONS 199 7.9 TCP SOCKET OPTIONS 201 7.10 FCNTL
FUNCTION 205 7.11 SUMMARY 207 177 178 CHAPTER 8. ELEMENTARY UDP SOCKETS
8.1 INTRODUCTION 211 8.2 RECVFROM AND SENDTO FUNCTIONS 212 8.3 UDP ECHO
SERVER: MAIN FUNCTION 213 8.4 UDP ECHO SERVER: DG*ECHO FUNCTION 214 8.5
UDP ECHO CLIENT: MAIN FUNCTION 216 8.6 UDP ECHO CLIENT: DG_CLI FUNCTION
217 8.7 LOST DATAGRAMS 217 8.8 VERIFYING RECEIVED RESPONSE 218 8.9
SERVER NOT RUNNING 220 8.10 SUMMARY OF UDP EXAMPLE 221 211 VIII UNIX
NETWORK PROGRAMMING CONTENTS 8.11 8.12 8.13 8.14 8.15 8.16 CHAPTER 9.
9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 9.10 9.11 CONNECT FUNCTION WITH UDP
224 DG_CLI FUNCTION (REVISITED) 227 LACK OF FLOW CONTROL WITH UDP 228
DETERMINING OUTGOING INTERFACE WITH UDP TCP AND UDP ECHO SERVER USING
SELECT SUMMARY 235 231 233 ELEMENTARY NAME AND ADDRESS CONVERSIONS
INTRODUCTION 237 DOMAIN NAME SYSTEM 237 GETHOSTBYNAME FUNCTION 240
RES_USE_INET6 RESOLVER OPTION 245 GETHOSTBYNAME2 FUNCTION AND IPV6
SUPPORT 246 GETHOSTBYADDR FUNCTION 248 UNAME FUNCTION 249 GETHOSTNAME
FUNCTION 250 GETSERVBYNAME AND GETSERVBYPORT FUNCTIONS 251 OTHER
NETWORKING INFORMATION 255 SUMMARY 256 237 PART 3. ADVANCED SOCKETS 259
CHAPTER 10. 10.1 10.2 10.3 10.4 10.5 10.6 10.7 11.1 11.2 11.3 11.4 11.5
11.6 11.7 11.8 11.9 11.10 11.11 11.12 11.13 11.14 11.15 IPV4 AND IPV6
INTEROPERABILITY INTRODUCTION 261 IPV4 CLIENT, IPV6 SERVER 262 IPV6
CLIENT, IPV4 SERVER 265 IPV6 ADDRESS TESTING MACROS 267 IPV6_ADDRFORM
SOCKET OPTION 268 SOURCE CODE PORTABILITY 270 SUMMARY 271 261 CHAPTER
11. ADVANCED NAME AND ADDRESS CONVERSIONS 273 INTRODUCTION 273
GETADDRINFO FUNCTION 273 GAI_STRERROR FUNCTION 278 FREEADDRINFO FUNCTION
279 GETADDRINFO FUNCTION: IPV6 AND UNIX DOMAIN 279 GETADDRINFO FUNCTION:
EXAMPLES 282 HOST_SERV FUNCTION 284 TCP_CONNECT FUNCTION 285 TCP_LISTEN
FUNCTION 288 UDP_CLIENT FUNCTION 293 UDP_CONNECT FUNCTION 295 UDP_SERVER
FUNCTION 296 GETNAMEINFO FUNCTION 298 REENTRANT FUNCTIONS 300
GETHOSTBYNAME_R AND GETHOSTBYADDR_R FUNCTIONS 303 UNIX NETWORK
PROGRAMMING CONTENTS IX 11.16 11.17 CHAPTER 12. 12.1 12.2 12.3 12.4 12.5
12.6 12.7 CHAPTER 13. 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 13.10
CHAPTER 14. 14.1 14.2 14.3 14.4 14.5 14.6 14.7 14.8 14.9 CHAPTER 15.
15.1 15.2 15.3 15.4 15.5 15.6 15.7 CHAPTER 16. 16.1 16.2 16.3
IMPLEMENTATION OF GETADDRINFO AND GETNAMEINFO FUNCTIONS 305 SUMMARY 328
DAEMON PROCESSES AND INETD SUPERSERVER INTRODUCTION 331 SYSLOGD DAEMON
332 SYSLOG FUNCTION 333 DAEMON_INIT FUNCTION 335 INETD DAEMON 339
DAEMON_INETD FUNCTION 344 SUMMARY 346 ADVANCED I/O FUNCTIONS
INTRODUCTION 349 SOCKET TIMEOUTS 349 RECV AND SEND FUNCTIONS 354 READV
AND WRITEV FUNCTIONS 357 RECVMSG AND SENDMSG FUNCTIONS 358 ANCILLARY
DATA 362 HOW MUCH DATA IS QUEUED? 365 SOCKETS AND STANDARD I/O 366
T/TCP: TCP FOR TRANSACTIONS 369 SUMMARY 371 UNIX DOMAIN PROTOCOLS
INTRODUCTION 373 UNIX DOMAIN SOCKET ADDRESS STRUCTURE 374 SOCKETPAIR
FUNCTION 376 SOCKET FUNCTIONS 377 UNIX DOMAIN STREAM CLIENT-SERVER 378
UNIX DOMAIN DATAGRAM CLIENT-SERVER 379 PASSING DESCRIPTORS 381 RECEIVING
SENDER CREDENTIALS 390 SUMMARY 394 NONBLOCKING I/O INTRODUCTION 397
NONBLOCKING READS AND WRITES NONBLOCKING OONNECT NONBLOCKING CONNECT
NONBLOCKING CONNECT NONBLOCKING ACCEPT SUMMARY 424 331 349 373 397 ;
STR^CLI FUNCTION (REVISITED) 409 DAYTIME CLIENT 410 WEB CLIENT 413 422
399 IOCTL OPERATIONS INTRODUCTION 425 IOCTL FUNCTION 426 SOCKET
OPERATIONS 426 425 X UNIX NETWORK PROGRAMMING CONTENTS 16.4 FILE
OPERATIONS 427 16.5 INTERFACE CONFIGURATION 428 16.6 GET_IFI_INFO
FUNCTION 429 16.7 INTERFACE OPERATIONS 439 16.8 ARP CACHE OPERATIONS 440
16.9 ROUTING TABLE OPERATIONS 442 16.10 SUMMARY 443 CHAPTER 17. ROUTING
SOCKETS 17.1 INTRODUCTION 445 17.2 DATALINK SOCKET ADDRESS STRUCTURE
17.3 READING AND WRITING 447 17.4 SYSCTL OPERATIONS 454 17.5
GET_IFI_INFO FUNCTION 459 17.6 INTERFACE NAME AND INDEX FUNCTIONS 17.7
SUMMARY 467 CHAPTER 18. BROADCASTING 18.1 INTRODUCTION 469 18.2
BROADCAST ADDRESSES 470 18.3 UNICAST VERSUS BROADCAST 472 18.4 DG_CLI
FUNCTION USING BROADCASTING 18.5 RACE CONDITIONS 478 18.6 SUMMARY 486
445 446 463 469 475 CHAPTER 19. MULTICASTING 19.1 INTRODUCTION 487 19.2
MULTICAST ADDRESSES 487 19.3 MULTICASTING VERSUS BROADCASTING ON A LAN
490 19.4 MULTICASTING ON A WAN 493 19.5 MULTICAST SOCKET OPTIONS 495
19.6 MCAST_JOIN AND RELATED FUNCTIONS 499 19.7 DG_CLI FUNCTION USING
MULTICASTING 502 19.8 RECEIVING MBONE SESSION ANNOUNCEMENTS 504 19.9
SENDING AND RECEIVING 507 19.10 SNTP: SIMPLE NETWORK TIME PROTOCOL 510
19.11 SNTP (CONTINUED) 515 19.12 SUMMARY 528 CHAPTER 20. ADVANCED UDP
SOCKETS 20.1 INTRODUCTION 531 20.2 RECEIVING FLAGS, DESTINATION IP
ADDRESS, AND INTERFACE INDEX 20.3 DATAGRAM TRUNCATION 539 20.4 WHEN TO
USE UDP INSTEAD OF TCP 539 20.5 ADDING RELIABILITY TO A UDP APPLICATION
542 20.6 BINDING INTERFACE ADDRESSES 553 20.7 CONCURRENT UDP SERVERS 557
20.8 IPV6 PACKET INFORMATION 560 20.9 SUMMARY 562 487 531 532 UNIX
NETWORK PROGRAMMING CONTENTS XI CHAPTER 21. OUT-OF-BAND DATA 21.1
INTRODUCTION 565 21.2 TCP OUT-OF-BAND DATA 565 21.3 SOCKATMARK FUNCTION
572 21.4 TCP OUT-OF-BAND DATA SUMMARY 21.5 CLIENT-SERVER HEARTBEAT
FUNCTIONS 21.6 SUMMARY 586 565 580 581 CHAPTER 22. 22.1 22.2 22.3 22.4
SIGNAL-DRIVEN I/O INTRODUCTION 589 SIGNAL-DRIVEN I/O FOR SOCKETS 590 UDP
ECHO SERVER USING SIGIO 592 SUMMARY 598 589 CHAPTER 23. THREADS 23.1
INTRODUCTION 601 23.2 BASIC THREAD FUNCTIONS: CREATION AND TERMINATION
602 23.3 STR_CLI FUNCTION USING THREADS 605 23.4 TCP ECHO SERVER USING
THREADS 607 23.5 THREAD-SPECIFIC DATA 611 23.6 WEB CLIENT AND
SIMULTANEOUS CONNECTIONS (CONTINUED) 620 23.7 MUTEXES: MUTUAL EXCLUSION
622 23.8 CONDITION VARIABLES 627 23.9 WEB CLIENT AND SIMULTANEOUS
CONNECTIONS (CONTINUED) 631 23.10 SUMMARY 633 601 CHAPTER 24. IP OPTIONS
24.1 INTRODUCTION 635 24.2 IPV4 OPTIONS 635 24.3 IPV4 SOURCE ROUTE
OPTIONS 637 24.4 IPV6 EXTENSION HEADERS 645 24.5 IPV6 HOP-BY-HOP OPTIONS
AND DESTINATION OPTIONS 24.6 IPV6 ROUTING HEADER 649 24.7 IPV6 STICKY
OPTIONS 653 24.8 SUMMARY 654 635 645 CHAPTER 25. RAW SOCKETS 25.1
INTRODUCTION 655 25.2 RAW SOCKET CREATION 656 25.3 RAW SOCKET OUTPUT 657
25.4 RAW SOCKET INPUT 659 25.5 PING PROGRAM 661 25.6 TRACEROUTE PROGRAM
672 25.7 AN ICMP MESSAGE DAEMON 685 25.8 SUMMARY 702 655 XII UNIX
NETWORK PROGRAMMING CONTENTS CHAPTER 27. CHAPTER 26. DATALINK ACCESS
26.1 INTRODUCTION 703 26.2 BPF: BSD PACKET FILTER 704 26.3 DLPI: DATA
LINK PROVIDER INTERFACE 706 26.4 LINUX: SOCK_PACKET 707 26.5 LIBPCAP:
PACKET CAPTURE LIBRARY 707 26.6 EXAMINING THE UDP CHECKSUM FIELD 708
26.7 SUMMARY 725 CLIENT-SERVER DESIGN ALTERNATIVES 27.1 INTRODUCTION 727
27.2 TCP CLIENT ALTERNATIVES 730 27.3 TCP TEST CLIENT 730 27.4 TCP
ITERATIVE SERVER 732 27.5 TCP CONCURRENT SERVER, ONE CHILD PER CLIENT
732 27.6 TCP PREFORKED SERVER, NO LOCKING AROUND ACCEPT 736 27.7 TCP
PREFORKED SERVER, FILE LOCKING AROUND ACCEPT 742 27.8 TCP PREFORKED
SERVER, THREAD LOCKING AROUND ACCEPT 745 27.9 TCP PREFORKED SERVER,
DESCRIPTOR PASSING 746 27.10 TCP CONCURRENT SERVER, ONE THREAD PER
CLIENT 752 27.11 TCP PRETHREADED SERVER, PER-THREAD ACCEPT 754 27.12 TCP
PRETHREADED SERVER, MAIN THREAD ACCEPT 756 27.13 SUMMARY 759 703 727
PART 4. XTI: X/OPEN TRANSPORT INTERFACE 761 CHAPTER 28. XTI: TCP CLIENTS
28.1 INTRODUCTION 763 28.2 T_OPEN FUNCTION 764 28.3 T_ERROR AND
T_STRERROR FUNCTIONS 767 28.4 NETBUF STRUCTURES AND XTI STRUCTURES 769
28.5 T_BIND FUNCTION 770 28.6 T_CONNECT FUNCTION 772 28.7 T_RCV AND
T_SND FUNCTIONS 773 28.8 T_LOOK FUNCTION 774 28.9 T_SNDREL AND T_RCVREL
FUNCTIONS 775 28.10 T_SNDDIS AND T_RCVDIS FUNCTIONS 777 28.11 XTI TCP
DAYTIME CLIENT 778 28.12 XTI_RDWR FUNCTION 781 28.13 SUMMARY 782 CHAPTER
29. XTI: NAME AND ADDRESS FUNCTIONS 29.1 INTRODUCTION 783 29.2
/ETC/NETCONFIG FILE AND NETCONFIG FUNCTIONS 784 29.3 NETPATH VARIABLE
AND NETPATH FUNCTIONS 785 29.4 NETDIR FUNCTIONS 786 763 783 UNIX NETWORK
PROGRAMMING CONTENTS XIII 29.5 T_ALLOC AND T_FREE FUNCTIONS 29.6
T_GETPROTADDR FUNCTIONS 790 29.7 XTI_NTOP FUNCTION 791 29.8 TCP_CONNECT
FUNCTION 792 29.9 SUMMARY 796 CHAPTER 30. XTI: TCP SERVERS 788 30.1 30.2
30.3 30.4 30.5 30.6 30.7 30.8 30.9 33.1 33.2 33.3 33.4 33.5 33.6 33.7
797 INTRODUCTION 797 T_LISTEN FUNCTION 799 TCP_LISTEN FUNCTION 800
T_ACCEPT FUNCTION 802 XTI_ACCEPT FUNCTION 803 SIMPLE DAYTIME SERVER 804
MULTIPLE PENDING CONNECTIONS 806 XTI_ACCEPT FUNCTION (REVISITED) 808
SUMMARY 816 CHAPTER 31. XTI: UDP CLIENTS AND SERVERS 31.1 31.2 31.3 31.4
31.5 31.6 31.7 CHAPTER 32. 32.1 32.2 32.3 32.4 32.5 32.6 32.7 819
INTRODUCTION 819 T_RCVUDATA AND T_SNDUDATA FUNCTIONS 819 UDP_CLIENT
FUNCTION 820 T_RCVUDERR FUNCTION: ASYNCHRONOUS ERRORS 824 UDP_SERVER
FUNCTION 826 READING A DATAGRAM IN PIECES 829 SUMMARY 831 XTI OPTIONS
INTRODUCTION 833 T_OPTHDR STRUCTURE 835 XTI OPTIONS 837 T_OPTMGMT
FUNCTION 840 CHECKING IF AN OPTION IS SUPPORTED AND OBTAINING THE
DEFAULT GETTING AND SETTING XTI OPTIONS 844 SUMMARY 848 833 841 CHAPTER
33. STREAMS 849 INTRODUCTION 849 OVERVIEW 850 GETMSG AND PUTMSG
FUNCTIONS GETPMSG AND PUTPMSG FUNCTIONS IOCTL FUNCTION 855 TPI:
TRANSPORT PROVIDER INTERFACE SUMMARY 866 854 855 856 CHAPTER 34. XTI:
ADDITIONAL FUNCTIONS 867 34.1 INTRODUCTION 867 34.2 NONBLOCKING I/O 867
34.3 T RCVCONNECT FUNCTION 868 XIV UNIX NETWORK PROGRAMMING CONTENTS
34.4 T_GETINFO FUNCTION 869 34.5 T_GETSTATE FUNCTION 869 34.6 T_SYNC
FUNCTION 870 34.7 T_UNBIND FUNCTION 872 34.8 T_RCW AND T_RCWUDATA
FUNCTIONS 872 34.9 T_SNDV AND T_SNDVUDATA FUNCTIONS 873 34.10
T_RCVRELDATA AND T_SNDRELDATA FUNCTIONS 874 34.11 SIGNAL-DRIVEN I/O 874
34.12 OUT-OF-BAND DATA 875 34.13 LOOPBACK TRANSPORT PROVIDERS 880 34.14
SUMMARY 881 APPENDIX A. IPV4, IPV6, ICMPV4, AND ICMPV6 A.1 INTRODUCTION
883 A.2 IPV4 HEADER 883 A.3 IPV6 HEADER 885 A.4 IPV4 ADDRESSES 887 A.5
IPV6 ADDRESSES 892 A.6 ICMPV4 AND ICMPV6: INTERNET CONTROL MESSAGE
PROTOCOL 896 883 APPENDIX B. VIRTUAL NETWORKS B.1 B.2 B.3 INTRODUCTION
THE MBONE THE 6BONE 899 899 901 899 APPENDIX C. DEBUGGING TECHNIQUES C.1
SYSTEM CALL TRACING 903 C.2 STANDARD INTERNET SERVICES 908 C.3 SOCK
PROGRAM 908 C.4 SMALL TEST PROGRAMS 911 C.5 TCPDUMP PROGRAM 913 C.6
NETSTAT PROGRAM 914 C.7 LSOF PROGRAM 914 APPENDIX D. MISCELLANEOUS
SOURCE CODE D.1 UNP.H HEADER 915 D.2 CONFIG.H HEADER 919 D.3 UNPXTI.H
HEADER 920 D.4 STANDARD ERROR FUNCTIONS 922 903 915 APPENDIX E.
SOLUTIONS TO SELECTED EXERCISES BIBLIOGRAPHY INDEX 925 963 971
|
adam_txt |
UNIX NETWORK PROGRAMMING VOLUME 1 SECOND EDITION NETWORKING APIS:
SOCKETS AND XTI BY W. RICHARD STEVENS TO JOIN A PRENTICE HALL PTR
INTERNET MAILING LIST, POINT TO HTTP://WWW.PRENHALL.COM/MAILLISTS/ ISBN
O-IA-^GOLE-X PRENTICE HALL PTR UPPER SADDLE RIVER, NJ 07458 CONTENTS
PREFACE XV PART 1. INTRODUCTION AND TCP/IP _1_ 3 6 11 CHAPTER 1.
INTRODUCTION 1.1 INTRODUCTION 3 1.2 A SIMPLE DAYTIME CLIENT 1.3 PROTOCOL
INDEPENDENCE 9 1.4 ERROR HANDLING: WRAPPER FUNCTIONS 1.5 A SIMPLE
DAYTIME SERVER 13 1.6 ROAD MAP TO CLIENT-SERVER EXAMPLES IN THE TEXT 1.7
OSI MODEL 18 1.8 BSD NETWORKING HISTORY 19 1.9 TEST NETWORKS AND HOSTS
20 1.10 UNIX STANDARDS 24 1.11 64-BIT ARCHITECTURES 27 1.12 SUMMARY 28
CHAPTER 2. THE TRANSPORT LAYER: TCP AND UDP 2.1 INTRODUCTION 29 2.2 THE
BIG PICTURE 30 2.3 UDP: USER DATAGRAM PROTOCOL 32 2.4 TCP; TRANSMISSION
CONTROL PROTOCOL 32 2.5 TCP CONNECTION ESTABLISHMENT AND TERMINATION 16
29 34 VI UNIX NETWORK PROGRAMMING CONTENTS 2.6 TIMEJ/VAIT STATE 40 2.7
PORT NUMBERS 41 2.8 TCP PORT NUMBERS AND CONCURRENT SERVERS 44 2.9
BUFFER SIZES AND LIMITATIONS 46 2.10 STANDARD INTERNET SERVICES 50 2.11
PROTOCOL USAGE BY COMMON INTERNET APPLICATIONS 52 2.12 SUMMARY 52 PART
2. ELEMENTARY SOCKETS 55 CHAPTER 3. SOCKETS INTRODUCTION 3.1
INTRODUCTION 57 3.2 SOCKET ADDRESS STRUCTURES 57 3.3 VALUE-RESULT
ARGUMENTS 63 3.4 BYTE ORDERING FUNCTIONS 66 3.5 BYTE MANIPULATION
FUNCTIONS 69 3.6 INET_ATON, INET_ADDR, AND INET_NTOA FUNCTIONS 3.7
INET_PTON AND INET_NTOP FUNCTIONS 72 3.8 SOCK_NTOP AND RELATED FUNCTIONS
75 3.9 READN, WRITEN, AND READLINE FUNCTIONS 77 3.10 ISFDTYPE FUNCTION
81 3.11 SUMMARY 82 CHAPTER 4. ELEMENTARY TCP SOCKETS 4.1 INTRODUCTION 85
4.2 SOCKET FUNCTION 85 4.3 CONNECT FUNCTION 89 4.4 BIND FUNCTION 91 4.5
LISTEN FUNCTION 93 4.6 ACCEPT FUNCTION 99 4.7 FORK AND EXEC FUNCTIONS
102 4.8 CONCURRENT SERVERS 104 4.9 CLOSE FUNCTION 107 4.10 GETSOCKNAME
AND GETPEERNAME FUNCTIONS 4.11 SUMMARY 110 57 70 85 107 CHAPTER 5. TCP
CLIENT-SERVER EXAMPLE 5.1 INTRODUCTION 111 5.2 TCP ECHO SERVER: MAIN
FUNCTION 112 5.3 TCP ECHO SERVER: STR_ECHO FUNCTION 113 5.4 TCP ECHO
CLIENT: MAIN FUNCTION 113 5.5 TCP ECHO CLIENT: STR_CLI FUNCTION 115 5.6
NORMAL STARTUP 115 5.7 NORMAL TERMINATION 117 5.8 POSIX SIGNAL HANDLING
119 5.9 HANDLING SIGCHLD SIGNALS 122 5.10 WAIT AND WAITPID FUNCTIONS 124
111 UNIX NETWORK PROGRAMMING CONTENTS VII 5.11 CONNECTION ABORT BETOERE
ACCEPT RETURNS 129 5.12 TERMINATION OF SERVER PROCESS 130 5.13 SIGPIPE
SIGNAL 132 5.14 CRASHING OF SERVER HOST 133 5.15 CRASHING AND REBOOTING
OF SERVER HOST 134 5.16 SHUTDOWN OF SERVER HOST 135 5.17 SUMMARY OF TCP
EXAMPLE 135 5.18 DATA FORMAT 137 5.19 SUMMARY 140 CHAPTER 6. 6.1 6.2 6.3
6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 I/O MULTIPLEXING: THE SELECT AND
POLL FUNCTIONS INTRODUCTION 143 I/O MODELS 144 SELECT FUNCTION 150 155
143 STR_CLI FUNCTION (REVISITED) BATCH INPUT 157 SHUTDOWN FUNCTION 160
STR_CLI FUNCTION (REVISITED AGAIN) 161 TCP ECHO SERVER (REVISITED) 162
PSELECT FUNCTION 168 POLL FUNCTION 169 TCP ECHO SERVER (REVISITED AGAIN)
172 SUMMARY 175 CHAPTER 7. SOCKET OPTIONS 7.1 INTRODUCTION 177 7.2
GETSOCKOPT AND SETSOCKOPT FUNCTIONS 178 7.3 CHECKING IF AN OPTION IS
SUPPORTED AND OBTAINING THE DEFAULT 7.4 SOCKET STATES 183 7.5 GENERIC
SOCKET OPTIONS 183 7.6 IPV4 SOCKET OPTIONS 197 7.7 ICMPV6 SOCKET OPTION
199 7.8 IPV6 SOCKET OPTIONS 199 7.9 TCP SOCKET OPTIONS 201 7.10 FCNTL
FUNCTION 205 7.11 SUMMARY 207 177 178 CHAPTER 8. ELEMENTARY UDP SOCKETS
8.1 INTRODUCTION 211 8.2 RECVFROM AND SENDTO FUNCTIONS 212 8.3 UDP ECHO
SERVER: MAIN FUNCTION 213 8.4 UDP ECHO SERVER: DG*ECHO FUNCTION 214 8.5
UDP ECHO CLIENT: MAIN FUNCTION 216 8.6 UDP ECHO CLIENT: DG_CLI FUNCTION
217 8.7 LOST DATAGRAMS 217 8.8 VERIFYING RECEIVED RESPONSE 218 8.9
SERVER NOT RUNNING 220 8.10 SUMMARY OF UDP EXAMPLE 221 211 VIII UNIX
NETWORK PROGRAMMING CONTENTS 8.11 8.12 8.13 8.14 8.15 8.16 CHAPTER 9.
9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 9.10 9.11 CONNECT FUNCTION WITH UDP
224 DG_CLI FUNCTION (REVISITED) 227 LACK OF FLOW CONTROL WITH UDP 228
DETERMINING OUTGOING INTERFACE WITH UDP TCP AND UDP ECHO SERVER USING
SELECT SUMMARY 235 231 233 ELEMENTARY NAME AND ADDRESS CONVERSIONS
INTRODUCTION 237 DOMAIN NAME SYSTEM 237 GETHOSTBYNAME FUNCTION 240
RES_USE_INET6 RESOLVER OPTION 245 GETHOSTBYNAME2 FUNCTION AND IPV6
SUPPORT 246 GETHOSTBYADDR FUNCTION 248 UNAME FUNCTION 249 GETHOSTNAME
FUNCTION 250 GETSERVBYNAME AND GETSERVBYPORT FUNCTIONS 251 OTHER
NETWORKING INFORMATION 255 SUMMARY 256 237 PART 3. ADVANCED SOCKETS 259
CHAPTER 10. 10.1 10.2 10.3 10.4 10.5 10.6 10.7 11.1 11.2 11.3 11.4 11.5
11.6 11.7 11.8 11.9 11.10 11.11 11.12 11.13 11.14 11.15 IPV4 AND IPV6
INTEROPERABILITY INTRODUCTION 261 IPV4 CLIENT, IPV6 SERVER 262 IPV6
CLIENT, IPV4 SERVER 265 IPV6 ADDRESS TESTING MACROS 267 IPV6_ADDRFORM
SOCKET OPTION 268 SOURCE CODE PORTABILITY 270 SUMMARY 271 261 CHAPTER
11. ADVANCED NAME AND ADDRESS CONVERSIONS 273 INTRODUCTION 273
GETADDRINFO FUNCTION 273 GAI_STRERROR FUNCTION 278 FREEADDRINFO FUNCTION
279 GETADDRINFO FUNCTION: IPV6 AND UNIX DOMAIN 279 GETADDRINFO FUNCTION:
EXAMPLES 282 HOST_SERV FUNCTION 284 TCP_CONNECT FUNCTION 285 TCP_LISTEN
FUNCTION 288 UDP_CLIENT FUNCTION 293 UDP_CONNECT FUNCTION 295 UDP_SERVER
FUNCTION 296 GETNAMEINFO FUNCTION 298 REENTRANT FUNCTIONS 300
GETHOSTBYNAME_R AND GETHOSTBYADDR_R FUNCTIONS 303 UNIX NETWORK
PROGRAMMING CONTENTS IX 11.16 11.17 CHAPTER 12. 12.1 12.2 12.3 12.4 12.5
12.6 12.7 CHAPTER 13. 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 13.10
CHAPTER 14. 14.1 14.2 14.3 14.4 14.5 14.6 14.7 14.8 14.9 CHAPTER 15.
15.1 15.2 15.3 15.4 15.5 15.6 15.7 CHAPTER 16. 16.1 16.2 16.3
IMPLEMENTATION OF GETADDRINFO AND GETNAMEINFO FUNCTIONS 305 SUMMARY 328
DAEMON PROCESSES AND INETD SUPERSERVER INTRODUCTION 331 SYSLOGD DAEMON
332 SYSLOG FUNCTION 333 DAEMON_INIT FUNCTION 335 INETD DAEMON 339
DAEMON_INETD FUNCTION 344 SUMMARY 346 ADVANCED I/O FUNCTIONS
INTRODUCTION 349 SOCKET TIMEOUTS 349 RECV AND SEND FUNCTIONS 354 READV
AND WRITEV FUNCTIONS 357 RECVMSG AND SENDMSG FUNCTIONS 358 ANCILLARY
DATA 362 HOW MUCH DATA IS QUEUED? 365 SOCKETS AND STANDARD I/O 366
T/TCP: TCP FOR TRANSACTIONS 369 SUMMARY 371 UNIX DOMAIN PROTOCOLS
INTRODUCTION 373 UNIX DOMAIN SOCKET ADDRESS STRUCTURE 374 SOCKETPAIR
FUNCTION 376 SOCKET FUNCTIONS 377 UNIX DOMAIN STREAM CLIENT-SERVER 378
UNIX DOMAIN DATAGRAM CLIENT-SERVER 379 PASSING DESCRIPTORS 381 RECEIVING
SENDER CREDENTIALS 390 SUMMARY 394 NONBLOCKING I/O INTRODUCTION 397
NONBLOCKING READS AND WRITES NONBLOCKING OONNECT NONBLOCKING CONNECT
NONBLOCKING CONNECT NONBLOCKING ACCEPT SUMMARY 424 331 349 373 397 ;
STR^CLI FUNCTION (REVISITED) 409 DAYTIME CLIENT 410 WEB CLIENT 413 422
399 IOCTL OPERATIONS INTRODUCTION 425 IOCTL FUNCTION 426 SOCKET
OPERATIONS 426 425 X UNIX NETWORK PROGRAMMING CONTENTS 16.4 FILE
OPERATIONS 427 16.5 INTERFACE CONFIGURATION 428 16.6 GET_IFI_INFO
FUNCTION 429 16.7 INTERFACE OPERATIONS 439 16.8 ARP CACHE OPERATIONS 440
16.9 ROUTING TABLE OPERATIONS 442 16.10 SUMMARY 443 CHAPTER 17. ROUTING
SOCKETS 17.1 INTRODUCTION 445 17.2 DATALINK SOCKET ADDRESS STRUCTURE
17.3 READING AND WRITING 447 17.4 SYSCTL OPERATIONS 454 17.5
GET_IFI_INFO FUNCTION 459 17.6 INTERFACE NAME AND INDEX FUNCTIONS 17.7
SUMMARY 467 CHAPTER 18. BROADCASTING 18.1 INTRODUCTION 469 18.2
BROADCAST ADDRESSES 470 18.3 UNICAST VERSUS BROADCAST 472 18.4 DG_CLI
FUNCTION USING BROADCASTING 18.5 RACE CONDITIONS 478 18.6 SUMMARY 486
445 446 463 469 475 CHAPTER 19. MULTICASTING 19.1 INTRODUCTION 487 19.2
MULTICAST ADDRESSES 487 19.3 MULTICASTING VERSUS BROADCASTING ON A LAN
490 19.4 MULTICASTING ON A WAN 493 19.5 MULTICAST SOCKET OPTIONS 495
19.6 MCAST_JOIN AND RELATED FUNCTIONS 499 19.7 DG_CLI FUNCTION USING
MULTICASTING 502 19.8 RECEIVING MBONE SESSION ANNOUNCEMENTS 504 19.9
SENDING AND RECEIVING 507 19.10 SNTP: SIMPLE NETWORK TIME PROTOCOL 510
19.11 SNTP (CONTINUED) 515 19.12 SUMMARY 528 CHAPTER 20. ADVANCED UDP
SOCKETS 20.1 INTRODUCTION 531 20.2 RECEIVING FLAGS, DESTINATION IP
ADDRESS, AND INTERFACE INDEX 20.3 DATAGRAM TRUNCATION 539 20.4 WHEN TO
USE UDP INSTEAD OF TCP 539 20.5 ADDING RELIABILITY TO A UDP APPLICATION
542 20.6 BINDING INTERFACE ADDRESSES 553 20.7 CONCURRENT UDP SERVERS 557
20.8 IPV6 PACKET INFORMATION 560 20.9 SUMMARY 562 487 531 532 UNIX
NETWORK PROGRAMMING CONTENTS XI CHAPTER 21. OUT-OF-BAND DATA 21.1
INTRODUCTION 565 21.2 TCP OUT-OF-BAND DATA 565 21.3 SOCKATMARK FUNCTION
572 21.4 TCP OUT-OF-BAND DATA SUMMARY 21.5 CLIENT-SERVER HEARTBEAT
FUNCTIONS 21.6 SUMMARY 586 565 580 581 CHAPTER 22. 22.1 22.2 22.3 22.4
SIGNAL-DRIVEN I/O INTRODUCTION 589 SIGNAL-DRIVEN I/O FOR SOCKETS 590 UDP
ECHO SERVER USING SIGIO 592 SUMMARY 598 589 CHAPTER 23. THREADS 23.1
INTRODUCTION 601 23.2 BASIC THREAD FUNCTIONS: CREATION AND TERMINATION
602 23.3 STR_CLI FUNCTION USING THREADS 605 23.4 TCP ECHO SERVER USING
THREADS 607 23.5 THREAD-SPECIFIC DATA 611 23.6 WEB CLIENT AND
SIMULTANEOUS CONNECTIONS (CONTINUED) 620 23.7 MUTEXES: MUTUAL EXCLUSION
622 23.8 CONDITION VARIABLES 627 23.9 WEB CLIENT AND SIMULTANEOUS
CONNECTIONS (CONTINUED) 631 23.10 SUMMARY 633 601 CHAPTER 24. IP OPTIONS
24.1 INTRODUCTION 635 24.2 IPV4 OPTIONS 635 24.3 IPV4 SOURCE ROUTE
OPTIONS 637 24.4 IPV6 EXTENSION HEADERS 645 24.5 IPV6 HOP-BY-HOP OPTIONS
AND DESTINATION OPTIONS 24.6 IPV6 ROUTING HEADER 649 24.7 IPV6 STICKY
OPTIONS 653 24.8 SUMMARY 654 635 645 CHAPTER 25. RAW SOCKETS 25.1
INTRODUCTION 655 25.2 RAW SOCKET CREATION 656 25.3 RAW SOCKET OUTPUT 657
25.4 RAW SOCKET INPUT 659 25.5 PING PROGRAM 661 25.6 TRACEROUTE PROGRAM
672 25.7 AN ICMP MESSAGE DAEMON 685 25.8 SUMMARY 702 655 XII UNIX
NETWORK PROGRAMMING CONTENTS CHAPTER 27. CHAPTER 26. DATALINK ACCESS
26.1 INTRODUCTION 703 26.2 BPF: BSD PACKET FILTER 704 26.3 DLPI: DATA
LINK PROVIDER INTERFACE 706 26.4 LINUX: SOCK_PACKET 707 26.5 LIBPCAP:
PACKET CAPTURE LIBRARY 707 26.6 EXAMINING THE UDP CHECKSUM FIELD 708
26.7 SUMMARY 725 CLIENT-SERVER DESIGN ALTERNATIVES 27.1 INTRODUCTION 727
27.2 TCP CLIENT ALTERNATIVES 730 27.3 TCP TEST CLIENT 730 27.4 TCP
ITERATIVE SERVER 732 27.5 TCP CONCURRENT SERVER, ONE CHILD PER CLIENT
732 27.6 TCP PREFORKED SERVER, NO LOCKING AROUND ACCEPT 736 27.7 TCP
PREFORKED SERVER, FILE LOCKING AROUND ACCEPT 742 27.8 TCP PREFORKED
SERVER, THREAD LOCKING AROUND ACCEPT 745 27.9 TCP PREFORKED SERVER,
DESCRIPTOR PASSING 746 27.10 TCP CONCURRENT SERVER, ONE THREAD PER
CLIENT 752 27.11 TCP PRETHREADED SERVER, PER-THREAD ACCEPT 754 27.12 TCP
PRETHREADED SERVER, MAIN THREAD ACCEPT 756 27.13 SUMMARY 759 703 727
PART 4. XTI: X/OPEN TRANSPORT INTERFACE 761 CHAPTER 28. XTI: TCP CLIENTS
28.1 INTRODUCTION 763 28.2 T_OPEN FUNCTION 764 28.3 T_ERROR AND
T_STRERROR FUNCTIONS 767 28.4 NETBUF STRUCTURES AND XTI STRUCTURES 769
28.5 T_BIND FUNCTION 770 28.6 T_CONNECT FUNCTION 772 28.7 T_RCV AND
T_SND FUNCTIONS 773 28.8 T_LOOK FUNCTION 774 28.9 T_SNDREL AND T_RCVREL
FUNCTIONS 775 28.10 T_SNDDIS AND T_RCVDIS FUNCTIONS 777 28.11 XTI TCP
DAYTIME CLIENT 778 28.12 XTI_RDWR FUNCTION 781 28.13 SUMMARY 782 CHAPTER
29. XTI: NAME AND ADDRESS FUNCTIONS 29.1 INTRODUCTION 783 29.2
/ETC/NETCONFIG FILE AND NETCONFIG FUNCTIONS 784 29.3 NETPATH VARIABLE
AND NETPATH FUNCTIONS 785 29.4 NETDIR FUNCTIONS 786 763 783 UNIX NETWORK
PROGRAMMING CONTENTS XIII 29.5 T_ALLOC AND T_FREE FUNCTIONS 29.6
T_GETPROTADDR FUNCTIONS 790 29.7 XTI_NTOP FUNCTION 791 29.8 TCP_CONNECT
FUNCTION 792 29.9 SUMMARY 796 CHAPTER 30. XTI: TCP SERVERS 788 30.1 30.2
30.3 30.4 30.5 30.6 30.7 30.8 30.9 33.1 33.2 33.3 33.4 33.5 33.6 33.7
797 INTRODUCTION 797 T_LISTEN FUNCTION 799 TCP_LISTEN FUNCTION 800
T_ACCEPT FUNCTION 802 XTI_ACCEPT FUNCTION 803 SIMPLE DAYTIME SERVER 804
MULTIPLE PENDING CONNECTIONS 806 XTI_ACCEPT FUNCTION (REVISITED) 808
SUMMARY 816 CHAPTER 31. XTI: UDP CLIENTS AND SERVERS 31.1 31.2 31.3 31.4
31.5 31.6 31.7 CHAPTER 32. 32.1 32.2 32.3 32.4 32.5 32.6 32.7 819
INTRODUCTION 819 T_RCVUDATA AND T_SNDUDATA FUNCTIONS 819 UDP_CLIENT
FUNCTION 820 T_RCVUDERR FUNCTION: ASYNCHRONOUS ERRORS 824 UDP_SERVER
FUNCTION 826 READING A DATAGRAM IN PIECES 829 SUMMARY 831 XTI OPTIONS
INTRODUCTION 833 T_OPTHDR STRUCTURE 835 XTI OPTIONS 837 T_OPTMGMT
FUNCTION 840 CHECKING IF AN OPTION IS SUPPORTED AND OBTAINING THE
DEFAULT GETTING AND SETTING XTI OPTIONS 844 SUMMARY 848 833 841 CHAPTER
33. STREAMS 849 INTRODUCTION 849 OVERVIEW 850 GETMSG AND PUTMSG
FUNCTIONS GETPMSG AND PUTPMSG FUNCTIONS IOCTL FUNCTION 855 TPI:
TRANSPORT PROVIDER INTERFACE SUMMARY 866 854 855 856 CHAPTER 34. XTI:
ADDITIONAL FUNCTIONS 867 34.1 INTRODUCTION 867 34.2 NONBLOCKING I/O 867
34.3 T RCVCONNECT FUNCTION 868 XIV UNIX NETWORK PROGRAMMING CONTENTS
34.4 T_GETINFO FUNCTION 869 34.5 T_GETSTATE FUNCTION 869 34.6 T_SYNC
FUNCTION 870 34.7 T_UNBIND FUNCTION 872 34.8 T_RCW AND T_RCWUDATA
FUNCTIONS 872 34.9 T_SNDV AND T_SNDVUDATA FUNCTIONS 873 34.10
T_RCVRELDATA AND T_SNDRELDATA FUNCTIONS 874 34.11 SIGNAL-DRIVEN I/O 874
34.12 OUT-OF-BAND DATA 875 34.13 LOOPBACK TRANSPORT PROVIDERS 880 34.14
SUMMARY 881 APPENDIX A. IPV4, IPV6, ICMPV4, AND ICMPV6 A.1 INTRODUCTION
883 A.2 IPV4 HEADER 883 A.3 IPV6 HEADER 885 A.4 IPV4 ADDRESSES 887 A.5
IPV6 ADDRESSES 892 A.6 ICMPV4 AND ICMPV6: INTERNET CONTROL MESSAGE
PROTOCOL 896 883 APPENDIX B. VIRTUAL NETWORKS B.1 B.2 B.3 INTRODUCTION
THE MBONE THE 6BONE 899 899 901 899 APPENDIX C. DEBUGGING TECHNIQUES C.1
SYSTEM CALL TRACING 903 C.2 STANDARD INTERNET SERVICES 908 C.3 SOCK
PROGRAM 908 C.4 SMALL TEST PROGRAMS 911 C.5 TCPDUMP PROGRAM 913 C.6
NETSTAT PROGRAM 914 C.7 LSOF PROGRAM 914 APPENDIX D. MISCELLANEOUS
SOURCE CODE D.1 UNP.H HEADER 915 D.2 CONFIG.H HEADER 919 D.3 UNPXTI.H
HEADER 920 D.4 STANDARD ERROR FUNCTIONS 922 903 915 APPENDIX E.
SOLUTIONS TO SELECTED EXERCISES BIBLIOGRAPHY INDEX 925 963 971 |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Stevens, W. Richard 1951-1999 |
author_GND | (DE-588)123662281 |
author_facet | Stevens, W. Richard 1951-1999 |
author_role | aut |
author_sort | Stevens, W. Richard 1951-1999 |
author_variant | w r s wr wrs |
building | Verbundindex |
bvnumber | BV022166605 |
ctrlnum | (OCoLC)312737593 (DE-599)BVBBV022166605 |
dewey-full | 005.712768 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.712768 |
dewey-search | 005.712768 |
dewey-sort | 15.712768 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | 2. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01212nam a2200325zcc4500</leader><controlfield tag="001">BV022166605</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20030526000000.0</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">980813s1998 d||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">013490012X</subfield><subfield code="9">0-13-490012-X</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)312737593</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV022166605</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-706</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.712768</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Stevens, W. Richard</subfield><subfield code="d">1951-1999</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)123662281</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Unix network programming</subfield><subfield code="n">1</subfield><subfield code="p">Networking APIs: sockets and XTI</subfield><subfield code="c">by W. Richard Stevens</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">2. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Upper Saddle River, NJ [u.a.]</subfield><subfield code="b">Prentice Hall</subfield><subfield code="c">1998</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XX, 1009 S.</subfield><subfield code="b">graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Literaturverz. S. 963 - 970</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">Software -- Operating Systems.</subfield></datafield><datafield tag="773" ind1="0" ind2="8"><subfield code="w">(DE-604)BV011706445</subfield><subfield code="g">1</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">GBV Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=015381298&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-015381298</subfield></datafield></record></collection> |
id | DE-604.BV022166605 |
illustrated | Illustrated |
index_date | 2024-07-02T16:19:31Z |
indexdate | 2024-07-09T20:51:41Z |
institution | BVB |
isbn | 013490012X |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-015381298 |
oclc_num | 312737593 |
open_access_boolean | |
owner | DE-706 |
owner_facet | DE-706 |
physical | XX, 1009 S. graph. Darst. |
publishDate | 1998 |
publishDateSearch | 1998 |
publishDateSort | 1998 |
publisher | Prentice Hall |
record_format | marc |
spelling | Stevens, W. Richard 1951-1999 Verfasser (DE-588)123662281 aut Unix network programming 1 Networking APIs: sockets and XTI by W. Richard Stevens 2. ed. Upper Saddle River, NJ [u.a.] Prentice Hall 1998 XX, 1009 S. graph. Darst. txt rdacontent n rdamedia nc rdacarrier Literaturverz. S. 963 - 970 Software -- Operating Systems. (DE-604)BV011706445 1 GBV Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=015381298&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Stevens, W. Richard 1951-1999 Unix network programming |
title | Unix network programming |
title_auth | Unix network programming |
title_exact_search | Unix network programming |
title_exact_search_txtP | Unix network programming |
title_full | Unix network programming 1 Networking APIs: sockets and XTI by W. Richard Stevens |
title_fullStr | Unix network programming 1 Networking APIs: sockets and XTI by W. Richard Stevens |
title_full_unstemmed | Unix network programming 1 Networking APIs: sockets and XTI by W. Richard Stevens |
title_short | Unix network programming |
title_sort | unix network programming networking apis sockets and xti |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=015381298&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
volume_link | (DE-604)BV011706445 |
work_keys_str_mv | AT stevenswrichard unixnetworkprogramming1 |