A

accept() function, 53-54, 76-77, 249 AcctSync project, 279 acknowledgment number, 30-31 active servers, 139-140 active sockets, 42

address conversion functions, 352-354 address family constants, 44-45 addresses, 8-17 broadcast, 10, 14 Ethernet, 8-10 Internet Protocol, 12-17 IPv6, 342-344 loopback, 14-15 MAC, 10 multicast, 10 addrinfo structures, 356-357 Advanced Research Projects Agency

(ARPA), 41 ai_family constant, 356 Apache Project, 128 Apache Web Server, 114, 128 appdata_ptr argument, 329 application programming interface (API), 44

application protocols, 87, 137-153 binary vs. ASCII, 158 client commands and, 142-146 design considerations for, 138-142, 155-172

established vs. custom, 157-158 example of using, 149-150 registration of, 150-153 server messages and, 146-149 TCP vs. UDP 155-157

applications case studies, 185-227, 301-339 chat, 142-150, 185-227 debugging, 173-177, 178-179 PAM-aware, 266-268 secure, 301-339

See also client-server applications architecture client-server, 99-135, 158-161 forking server, 110 multiplexing server, 104 multiprocess server, 110 multithreaded server, 120 prethreaded server, 124 process pool, 115 three-tier, 159-161 two-tier, 158-159 architecture independence, 336-337 arguments backlog, 52, 75 socket function, 46 ASCII protocol binary protocol vs., 158 message format, 138-139 ASP (Active Server Pages), 89 asymmetric key cryptography, 236-237 asynchronous transfer mode (ATM), 6 at sign (@) prefix, 216, 219, 223 atomic requests, 86 attacks, 281-282

denial of service, 281-282, 337-338 exploitation, 282 information retrieval, 281 man-in-the-middle, 236-237 network mapping, 281 replay, 338 auth_client.c file, 318-327 auth_client.h file, 318 auth_conv() function, 329 authentication, 261-279 custom protocols and, 141 old scenario of, 261-262

PAM library and, 263-268 present-day scenario of, 262-263 public key, 268-278 single sign-on and, 278-279 user name and password in, 261 See also security authentication servers, 301 authoritative servers, 34 authorization state, 94 authorized_keys file, 234 auth_server.c file, 328-334 auth_server.h file, 327-328 auth_struct structure, 327

Was this article helpful?

0 0

Post a comment