Index
A
- accept() function / How it works…, How it works…
- acceptConnection() function / Creating the CFSocketServer implementation file
- acceptConnection() method / How it works..., How it works...
- acceptConnectionEcho() function / Updating the CFSocketServer implementation file
- acceptConnectionImage() function / Updating the CFSocketServer implementation file
- ACCEPTINGERROR / Creating the BSDSocketServer header file
- ack / Constructing a TCP packet with libnet, Building the TCP header
- ACK / Constructing a TCP packet with libnet, Decoding TCP headers
- Acknowledgement Number / Constructing a TCP packet with libnet
- acknowledgement number field / Decoding TCP headers
- addData$forKey$mimeType$filename$ method / Using the FileUploadEngine class
- addDownloadStream
- method / How it works…
- addressesForHostname$ method / Creating the CFNetworkUtilities implementation file
- addressesForHostname method / Creating the CFNetworkUtilities header file
- addresses object / How to do it...
- AddrInfo class
- using, to perform address resolution / Using the AddrInfo class to perform the address/hostname resolution, How it works…
- using, to perform hostname resolution / Using the AddrInfo class to perform the address/hostname resolution, How it works…
- AddrInfo header file
- creating / Creating the AddrInfo header file
- AddrInfo implementation file
- creating / Creating the AddrInfo implementation file
- addrWithHostname$Service$andHints
- method / Creating the AddrInfo header file
- addrWithHostname$Service$andHints$ method / Creating the AddrInfo implementation file, Using the AddrInfo class to perform the address/hostname resolution
- AFHTTPSessionManager / Introduction
- used, for creating web client / Creating a web client using AFHTTPSessionManager, How to do it…
- ITunesClient header file, creating / Creating the ITunesClient header file
- sharedClient method, creating / Creating the sharedClient method
- searchType$withTerm$completion$ method, creating / Creating the searchType:withTerm:completion: method
- ITunesClient class, creating / Using the ITunesClient class, How it works…
- AFHTTPSessionManager class / Creating a web client using AFHTTPSessionManager
- AFJSONResponseSerializer class / Creating the ITunesResponseSerializer header file
- AFNetworking
- about / Introduction
- URL / Introduction
- AFNetworking directory / Introduction
- AFNetworkReachabilityManager class / Checking the network connection type and changes, How to do it…
- managerForDomain method / How to do it…
- networkReachabilityStatus property / How to do it…
- reachable property / How to do it…
- reachableViaWWAN property / How to do it…
- reachableViaWiFi property / How to do it…
- AFNetworkReachabilityManager instance / How to do it…
- AlbumInformation header file
- creating / Creating the AlbumInformation header file
- AlbumInformation implementation file
- creating / Creating the AlbumInformation implementation file
- allHeadeFields$ method / Creating the sendGetRequest:toURL: method
- Apple low-level networking
- about / Introduction
- application layer
- about / Introduction, Introduction
- ARP headers
- decoding / Decoding ARP headers, How to do it…, How it works…
- hardware type field / Decoding ARP headers
- protocol type field / Decoding ARP headers
- Hardware Address Length field / Decoding ARP headers
- Protocol Address Length field / Decoding ARP headers
- OP Code field / Decoding ARP headers
- Source Hardware Address field / Decoding ARP headers
- Source Protocol Address field / Decoding ARP headers
- Destination Hardware Address field / Decoding ARP headers
- Destination Protocol Address field / Decoding ARP headers
- Automatic Reference Counting (ARC) / Introduction
B
- baseURL property / Creating a web client using AFHTTPSessionManager
- Berkeley Socket API
- about / Introduction
- bind() function / Creating the BSDSocketServer implementation file, Creating an echo server
- BINDERROR / Creating the BSDSocketServer header file
- bonjourBrowserNotification
- method / How to do it...
- bonjourBrowserNotification$ method / How to do it...
- BonjourBrowserService class / How to do it...
- BonjourBrowserService object / How to do it...
- BonjourPublishServices class / How to do it..., Creating an echo server that uses Bonjour to advertise the service, How it works...
- BonjourPublishServices pubService object / How to do it...
- bonjourResolverNotificaiton$ method / How to do it...
- BonjourResolverService class / How to do it..., Creating an echo client that uses Bonjour to discover the service, How to do it...
- BonjourResolverService object / How to do it..., How it works...
- Bonjour service
- about / Publishing a Bonjour service, How to do it...
- discovering / Discovering a Bonjour service, How to do it..., How it works...
- resolving / Resolving a Bonjour service, How to do it..., How it works...
- bonjourStarted$ method / How to do it...
- bonjourStopped$ method / How to do it...
- bpf_u_int32 *maskp / How to do it…
- bpf_u_int32 *netp / How to do it…
- bpf_u_int32 netmask / How to do it…
- BSD Socket API
- about / Introduction
- BSDSocketClient
- using, for echo server connection / Using the BSDSocketClient to connect to our echo server, How it works…
- BSDSocketClient class / Creating an echo client
- BSDSocketClient header / Creating the BSDSocketClient header file
- BSDSocketClient header file
- creating / Creating the BSDSocketClient header file, Updating the BSDSocketClient header file
- BSDSocketClient implementation file
- creating / Creating the BSDSocketClient implementation file, Updating the BSDSocketClient implementation file
- BSDSocketClient method / Using the BSDSocketClient to connect to our echo server
- BSDSocketClient object / Using the BSDSocketClient to connect to our data server
- BSD sockets
- about / Introduction
- BSDSocketServer class
- used, for starting echo server / Using the BSDSocketServer class to start the echo server
- using, to create data server / Using the BSDSocketServer to create our data server
- BSDSocketServer header file
- creating / Creating the BSDSocketServer header file
- updating / Updating the BSDSocketServer header file
- BSDSocketServer implementation file
- creating / Creating the BSDSocketServer implementation file
- updating / Updating the BSDSocketServer implementation file
- BSDSocketSever.m class / Creating the BSDSocketServer implementation file
- byte order
- about / Introduction
- of device, finding / Finding the byte order of your device, How to do it…, How it works…
- ByteOrder header file
- ENDIAN_UNKNOWN / How it works…
- ENDIAN_LITTLE / How it works…
- ENDIAN_BIG / How it works…
- byteOrder method / How it works…
C
- cacheDirectoryName method / Adjusting the cache settings
- cacheDirectoryName method / How it works…
- cacheMemoryCost method / Adjusting the cache settings
- capture file
- saving / Saving a capture file, How to do it…, How it works…
- CFAllocatorRef / Creating the CFSocketServer implementation file, Creating the CFSocketClient implementation file
- CFAllocatorRef allocator / How to do it...
- CFArrayGetValueAtIndex() function / Creating the CFNetworkUtilities implementation file
- CFDataCreate() function / How to do it...
- CFFTP
- about / Introduction
- CFHostCreateWithName() function / Creating the CFNetworkUtilities implementation file
- CFHostGetAddressing() function / Creating the CFNetworkUtilities implementation file
- CFHostGetNames() function / Creating the CFNetworkUtilities implementation file
- CFHostStartInfoResolution() function / Creating the CFNetworkUtilities implementation file
- CFHostStartInforResolution() function / Creating the CFNetworkUtilities implementation file
- CFHTTP
- about / Introduction
- CFHTTPAuthentication
- about / Introduction
- CFIndex / Creating the CFSocketServer implementation file
- CFNetwork
- about / Introduction
- CFNetworkUtilities header file
- creating / Creating the CFNetworkUtilities header file
- CFNetworkUtilities implementation file
- creating / Creating the CFNetworkUtilities implementation file, How it works...
- CFOptionFlags / Creating the CFSocketServer implementation file, Creating the CFSocketClient implementation file
- CFOptionFlags callBackTypes / How to do it...
- CFRealease() function / Creating the CFNetworkUtilities implementation file
- CFRunLoopAddSource() function / Creating the CFSocketServer implementation file, Updating the CFSocketServer implementation file
- CFRunLoopRef / Creating the CFSocketServer implementation file, Updating the CFSocketServer implementation file
- CFRunLoopRun() function / Creating the CFSocketServer implementation file
- CFRunLoopSourceRe / Updating the CFSocketServer implementation file
- CFRunLoopSourceRef / Creating the CFSocketServer implementation file
- CFSocket
- about / Introduction
- CFSocketCallBack / Creating the CFSocketServer implementation file, Creating the CFSocketClient implementation file
- CFSocketCallBack callout / How to do it...
- CFSocketClient class
- using / Using the CFSocketClient class
- CFSocketClient header file
- creating / Creating the CFSocketClient header file
- updating / Updating the CFSocketClient header file
- CFSocketClient implementation file
- creating / Creating the CFSocketClient implementation file
- updating / Updating the CFSocketClient implementation file
- CFSocket connection
- to server, creating / How it works...
- CFSocketConnectToAddress() function / Creating the CFSocketClient implementation file, How to do it...
- CFSocketContext / Creating the CFSocketServer implementation file, Creating the CFSocketClient implementation file
- CFSocketContext *context / How to do it...
- CFSocketCreate() function / How to do it...
- CFSocketCreateRunLoopSource() function / Creating the CFSocketServer implementation file, How it works...
- CFSocketCreateWithNative() function / Creating an echo server, Creating the CFSocketServer implementation file, How it works..., Updating the CFSocketServer implementation file, How it works...
- CFSocketCreateWithNative() method / Creating an echo server, How it works...
- CFSocketNativeHandle / Creating the CFSocketServer implementation file
- CFSocketRef / Creating the CFSocketServer implementation file
- CFSocketServer class
- using / Using the CFSocketServer class, How it works...
- CFSocketServer header file
- creating / Creating the CFSocketServer header file
- updating / Updating the CFSocketServer header file
- CFSocketServer implementation file
- creating / Creating the CFSocketServer implementation file, How it works...
- updating / Updating the CFSocketServer implementation file
- CFSocketStream
- about / Introduction
- CFStream
- about / Introduction
- CFStringRef / Creating the CFSocketServer implementation file, Updating the CFSocketServer implementation file
- changeNotification method / How to do it...
- char *description / Retrieving network device information
- char *device / How to do it…
- Char *errbuf / How to do it…
- char *filter / How to do it…
- char* ipv6addr / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- char *name / Retrieving network device information
- Char filter[] / How to do it…
- checksum / Constructing a Ping packet with libnet, Constructing a UDP packet with libnet
- checksum field / Decoding TCP headers, Decoding UDP headers, Decoding ICMP headers
- client
- creating, to send data / Creating a client to send data
- CFSocketClient header file, updating / Updating the CFSocketClient header file
- CFSocketClient implementation file, updating / Updating the CFSocketClient implementation file
- code / Constructing a Ping packet with libnet, Building the ICMP header
- code field / Decoding ICMP headers
- connect() function / Creating the BSDSocketClient implementation file, How it works…, How it works…
- connection$didFailWithError$ callback method
- creating / Creating the connection:didFailWithError: callback method
- connection$didReceiveData$ callback method
- creating / Creating the connection:didReceiveData: callback method
- connection$didReceiveResponse$ callback method
- creating / Creating the connection:didReceiveResponse: callback method
- connection$willCacheResponse$ callback method
- creating / Creating the connection:willCacheResponse: callback method
- connection$willSendRedirect$redirectResponse$ callback method
- creating / Creating the connection:willSendRedirect:redirectResponse: callback method
- connectionDidFinishLoading#$callback method
- creating / Creating the connectionDidFinishLoading: callback method
- connectToITunesWithPath$andParams$ method / Creating the ITunesEngine implementation file, Creating the ITunesEngine implementation file
- connectToITunesWithPath$Params$ method / Creating the ITunesEngine header file
- const struct pcap_pkthdr *header / How to do it…, How to do it…
- const u_char *packet / How to do it…
- control / Constructing a TCP packet with libnet, Building the TCP header
- control information (header)
- about / Introduction
- cont u_char *packet / How to do it…
- cStringUsingEncoding$ method / Creating the BSDSocketClient implementation file, Creating the CFNetworkUtilities implementation file
- currentHost / How to do it...
- currentHost method / How to do it...
- CWR / Constructing a TCP packet with libnet, Decoding TCP headers
D
- data client
- creating / Creating a data client
- BSDSocketClient header file, updating / Updating the BSDSocketClient header file
- BSDSocketClient implementation file, updating / Updating the BSDSocketClient implementation file
- connecting to, BSDSocketClient used / Using the BSDSocketClient to connect to our data server
- Data Offset / Constructing a TCP packet with libnet
- data offset field / Decoding TCP headers
- data server
- creating / Creating a data server
- BSDSocketServer header file, updating / Updating the BSDSocketServer header file
- BSDSocketServer implementation file, updating / Updating the BSDSocketServer implementation file
- creating, BSDSocketServer used / Using the BSDSocketServer to create our data server
- connecting to, BSDSocketClient used / Using the BSDSocketClient to connect to our data server
- dataServerListenWithDescriptor
- method / Updating the BSDSocketServer implementation file
- dataServerListenWithDescriptor$ method / Updating the BSDSocketServer implementation file, Using the BSDSocketServer to create our data server, How it works…
- decodeArp() function / How to do it…
- decodeICMP() function / How to do it…
- decodeTcp() function / How to do it…
- destination Address / Decoding Ethernet headers
- Destination Address, IP header / Introduction
- destination address field / Decoding IP headers
- Destination Hardware Address field / Decoding ARP headers
- Destination Port / Constructing a UDP packet with libnet, Constructing a TCP packet with libnet
- destination port field / Decoding TCP headers, Decoding UDP headers
- Destination Protocol Address field / Decoding ARP headers
- device
- byte order, finding / Finding the byte order of your device, How to do it…, How it works…
- network address information, retrieving / How to do it…, How it works…
- Differentiated Services Code Point (DSCP) / Introduction
- dispatch_once method / Creating the sharedClient method
- DNS names
- to addresses, resolving with Libnet / Resolving names to addresses with libnet, Getting ready, Importing the libnet header, How it works…
- libnet header, importing / Importing the libnet header
- domain argument, service type / How to do it...
- Domain Name System Servers
- about / Introduction
- Don't Fragment (DF) flag / Introduction
- downloadFileAtPath
- method / Creating the ImageDownloadEngine header file, Creating the ImageDownloadEngine implementation file
- downloadFileAtPath$ method / Creating the ImageDownloadEngine implementation file
- downloadFileAtURL$ method / Creating the FileDownloadEngine implementation file
- downloadTaskWithRequest$progress$destination$completionHandler$ method
- about / Creating the download task
- dp / Constructing a UDP packet with libnet, Constructing a TCP packet with libnet, Building the TCP header
- DSCP (Differentiated Services Code Point) / Decoding IP headers
- dst / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- dst host {host} / How to do it…
- dst net {net} / How to do it…
- dst port {port} / How to do it…
E
- ECE / Constructing a TCP packet with libnet, Decoding TCP headers
- echo client
- creating / Creating an echo client, How to do it…, Creating an echo client, Creating an echo client that uses Bonjour to discover the service, How to do it..., How it works...
- BSDSocketClient header file, creating / Creating the BSDSocketClient header file
- BSDSocketClient implementation file, creating / Creating the BSDSocketClient implementation file
- CFSocketClient header file, creating / Creating the CFSocketClient header file
- CFSocketClient implementation file, creating / Creating the CFSocketClient implementation file
- CFSocketClient class used / Using the CFSocketClient class
- echo server
- creating / Creating an echo server, How to do it…., Creating an echo server, How to do it..., Creating an echo server that uses Bonjour to advertise the service, How to do it..., How it works...
- BSDSocketServer header file, creating / Creating the BSDSocketServer header file
- BSDSocketServer implementation file, creating / Creating the BSDSocketServer implementation file
- starting, BSDSocketServer class used / Using the BSDSocketServer class to start the echo server, How it works…
- connecting to, BSDSocketClient used / Using the BSDSocketClient to connect to our echo server, How it works…
- CFSocketServer header file, creating / Creating the CFSocketServer header file
- CFSocketServer implementation file, creating / Creating the CFSocketServer implementation file, How it works...
- echoServerListenWithDescriptor$ method / Creating the BSDSocketServer header file, Creating the BSDSocketServer implementation file, How it works…, Updating the BSDSocketServer implementation file
- echoServerListenWithDesctiptor$ method / Using the BSDSocketServer class to start the echo server
- ENDIAN_BIG / How it works…
- ENDIAN_LITTLE / How it works…
- ENDIAN_UNKNOWN / How it works…
- enqueueOperation$ method / Using the FileUploadEngine class, How it works…
- Eror Buffer / Retrieving the local IP and hardware addresses of our device
- error buffer / Importing the libnet header, Initiating the libnet context
- Error Buffer / Initiating the libnet context, Initiating the libnet context
- errorCode property / Creating the AddrInfo header file, Creating the BSDSocketServer header file, Creating the CFNetworkUtilities implementation file, Creating the CFSocketClient header file
- errorcode property / Creating the AddrInfo implementation file
- errorStiring method / Creating the AddrInfo implementation file
- ether broadcast / How to do it…
- ether dst {addr} / How to do it…
- ether host {addr} / How to do it…
- Ethernet headers
- decoding / Decoding Ethernet headers, How to do it…, How it works…
- ether proto {protocol} / How to do it…
- ether src {addr} / How to do it…
- Explicit Congestion Notification (ECN) / Constructing a TCP packet with libnet
F
- file
- uploading, MKNetworkKit used / Uploading a file using MKNetworkKit, Getting ready
- downloading, MKNetworkKit used / Downloading a file using MKNetworkKit, How to do it…
- FileDownloadEngine class / Creating the FileDownloadEngine implementation file
- files
- downloading, with progress bar / Downloading files with a progress bar, Creating the download task, How it works…
- download task, creating / Creating the download task
- progressView, adding / Adding the progressView
- FileUploadEngine class / Creating the FileUploadEngine implementation file, How it works…
- using / Using the FileUploadEngine class
- FileUploadEngine header file
- creating / Creating the FileUploadEngine header file
- FileUploadEngine object / Using the FileUploadEngine class
- FILEUPLOADPATH / Creating the FileUploadEngine header file
- FILEUPLOADSERVER / Creating the FileUploadEngine header file
- FIN / Constructing a TCP packet with libnet, Decoding TCP headers
- flags, IP header / Introduction
- flags, TCP packet
- about / Constructing a TCP packet with libnet
- NS / Constructing a TCP packet with libnet
- CWR / Constructing a TCP packet with libnet
- ECE / Constructing a TCP packet with libnet
- URG / Constructing a TCP packet with libnet
- ACK / Constructing a TCP packet with libnet
- PSH / Constructing a TCP packet with libnet
- RST / Constructing a TCP packet with libnet
- SYN / Constructing a TCP packet with libnet
- FIN / Constructing a TCP packet with libnet
- flags field / Decoding IP headers, Decoding TCP headers
- frag / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- Fragment Offset, IP header / Introduction
- fragment offset field / Decoding IP headers
- Frame Check Sequence / Decoding Ethernet headers
- freeifaddrs() function / How to do it…
- Fully Qualified Domain Name (FQDN)
- about / Introduction
G
- GET$parameters$success$failure$ method / Creating the searchType:withTerm:completion: method
- getaddrinfo() function / Creating the AddrInfo header file, Creating the AddrInfo implementation file, Using the AddrInfo class to perform the address/hostname resolution, How it works…, Creating the CFNetworkUtilities implementation file
- Getaddrinfo() function / Performing a network address resolution, How it works...
- getaddrinfor() function / Creating the CFNetworkUtilities implementation file
- getData$ method / How it works…
- getData() method / Updating the BSDSocketServer implementation file
- getifaddrs() function / How to do it…, How it works…
- getnameinfo() function / Creating the AddrInfo header file, Creating the AddrInfo implementation file, How it works…, Creating the CFNetworkUtilities implementation file
- Getnameinfo() function / Performing a network address resolution
- GET_IP_HEADER_LENGTH function / How to do it…
- GKPeerPickerController
- displaying / Displaying the GKPeerPickerController
- GKPeerPickerController class / Creating a peer-to-peer bluetooth network, How it works…
- GKPeerPickerControllerDelegate
- delegate methods, creating for / Creating the two delegate methods for GKPeerPickerControllerDelegate
- GKPeerPickerController method / Creating a peer-to-peer bluetooth network
- got_packet() function / How to do it…
- Grand Central Dispatch (GCD) / Creating the sharedClient method
H
- Hardware Address Length field / Decoding ARP headers
- hardware type field / Decoding ARP headers
- Header Checksum, IP header / Introduction
- header checksum field / Decoding IP headers
- Header Length, IP header / Introduction
- header length field / Decoding IP headers
- host
- about / How to do it…
- dst host {host} / How to do it…
- src host {host} / How to do it…
- {host} / How to do it…
- ether dst {addr} / How to do it…
- ether src {addr} / How to do it…
- ether host {addr} / How to do it…
- hostname
- to IP address resolution / How it works...
- hostnamesForAddress$ method / Creating the CFNetworkUtilities implementation file
- hostnamesForAddress method / Creating the CFNetworkUtilities header file
- hostWithAddress / How to do it...
- hostWithName / How to do it...
- host_name / Importing the libnet header, Setting the target and source IP addresses, Setting the target and source IP addresses, Setting the target and source IP addresses
- host {host} / How to do it…
- htonl() function / Creating the BSDSocketServer implementation file, Creating the CFSocketServer implementation file
- htons() function / Creating the BSDSocketServer implementation file, Creating the BSDSocketClient implementation file, Creating the CFSocketServer implementation file
- HTTP(S) asynchronous GET request
- performing / Performing HTTP(S) asynchronous GET requests
- WebServiceConnectAsynchronous header file, creating / Creating the WebServiceConnectAsynchronous header file
- sendGetRequestTopicntoURL$ method, creating / Creating the sendGetRequest:toURL: method
- connectionTopicndidReceiveResponse$ callback method, creating / Creating the connection:didReceiveResponse: callback method
- connection$didReceiveData$ callback method, creating / Creating the connection:didReceiveData: callback method
- connection$didFailWithError$ callback method, creating / Creating the connection:didFailWithError: callback method
- connectionDidFinishLoading#$callback methodTopicncreating / Creating the connectionDidFinishLoading: callback method
- connection$willSendRedirect$redirectResponse$ callback methodTopicncreating / Creating the connection:willSendRedirect:redirectResponse: callback method
- connection$willCacheResponse$ callback methodTopicncreating / Creating the connection:willCacheResponse: callback method
- HTTP(S) synchronous GET requests
- performing / Performing HTTP(S) synchronous GET requests, How to do it…
- WebServiceConnectSynchronous header file, creating / Creating the WebServiceConnectSynchronous header file
- sendGetRequest$toURL$ method, creating / Creating the sendGetRequest:toURL: method, How it works…
- HTTP(S) synchronous POST requests
- performing / Performing HTTP(S) synchronous POST requests
- WebServiceConnectSynchronous header file, updating / Updating the WebServiceConnectSynchronous header file
- HTTP(S) synchronous POST requests$sendPostRequest$toUrl$ method, creating / Creating the sendPostRequest:toUrl: method
- HTTP/HTTPS asynchronous POST request
- about / Performing HTTP(S) asynchronous POST requests, How to do it…
- WebServiceConnectAsynchronous header file, updating / Updating the WebServiceConnectAsynchronous header file
- sendPostRequestTopicntoURLTopicn method, creating / Creating the sendPostRequest:toURL: method
I
- ICMP header
- ICMP Type / Constructing a Ping packet with libnet
- code / Constructing a Ping packet with libnet
- checksum / Constructing a Ping packet with libnet
- identifier / Constructing a Ping packet with libnet
- Sequence Number / Constructing a Ping packet with libnet
- Optional Data (payload) / Constructing a Ping packet with libnet
- building / Building the ICMP header
- ICMP headers
- decoding / Decoding ICMP headers, Getting ready, How to do it…, How it works…
- ICMP Type field / Decoding ICMP headers
- code field / Decoding ICMP headers
- checksum field / Decoding ICMP headers
- sequence number field / Decoding ICMP headers
- optional data (payload) field / Decoding ICMP headers
- ICMP packet
- injecting / Injecting the ICMP packet
- ICMP Type / Constructing a Ping packet with libnet
- ICMP Type field / Decoding ICMP headers
- id / Introduction, Constructing a Ping packet with libnet, Building the ICMP header, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- identification, IP header / Introduction
- identification field / Decoding IP headers
- identifier / Constructing a Ping packet with libnet
- identifier field / Decoding ICMP headers
- ImageDownloadEngine class / Creating the ImageDownloadEngine implementation file, How it works…
- ImageDownloadEngine header file
- creating / Creating the ImageDownloadEngine header file
- ImageDownloadEngine implementation file
- creating / Creating the ImageDownloadEngine implementation file
- inet_ntop() function / Using the AddrInfo class to perform the address/hostname resolution, How to do it…
- inet_ntop function / How to do it…, How it works…
- inet_pton() function / Creating the BSDSocketClient implementation file, Creating the CFSocketClient implementation file
- initOnAddres$withPort$ constructor / Creating the CFSocketClient implementation file
- initWithAddress$andPort$ constructor / Creating the BSDSocketClient header file, Creating the BSDSocketClient implementation file, How it works…
- initWithAddress$onPort$ constructor / Creating the CFSocketClient header file
- initWithHostName$ method / Creating the ITunesEngine implementation file, Creating the FileUploadEngine implementation file, Creating the ITunesEngine implementation file
- initWithHostname$ method / Creating the FileUploadEngine implementation file
- initWithPort$ / Creating the BSDSocketServer header file
- initWithPort$ constructor / Using the BSDSocketServer class to start the echo server
- initWithRequest$delegate$ method / Creating the sendGetRequest:toURL: method
- initWithUrl$ constructor
- creating / Creating the initWithUrl: constructor
- Injection Type / Retrieving the local IP and hardware addresses of our device, Initiating the libnet context, Initiating the libnet context, Initiating the libnet context
- injection type / Importing the libnet header
- int bind(int sockfd, const struct sockaddr *my_addr, socklen_t addrlen) function / How it works…
- int cnt / How to do it…
- internet layer
- about / Introduction, Introduction
- Internet Protocol (IP) network / Introduction
- int ipv6addr_len / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- int listen(int sockfd, int backlog) function / How it works…
- int optimize / How to do it…
- int promisc / How to do it…
- int snaplen / How to do it…
- int socket(int domain, int type, int protocol) function / How it works…
- int to_ms / How to do it…
- ip6 proto {protocol} / How to do it…
- IP address / Introduction
- ip broadcast / How to do it…
- IP header
- about / Introduction
- version / Introduction
- Header Length / Introduction
- Type of Service / Introduction
- Total Length / Introduction
- identification field / Introduction
- flags / Introduction
- Fragment Offset / Introduction
- Time to Live / Introduction
- protocol / Introduction
- Header Checksum / Introduction
- Source Address / Introduction
- Destination Address / Introduction
- IP Option / Introduction
- IP headers
- decoding / Decoding IP headers, How to do it…
- IP option field / Decoding IP headers
- ip proto {protocol} / How to do it…
- IPv4 / Introduction
- IPv4 header
- building / Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- ip_len / Building the IPv4 header
- tos / Building the IPv4 header
- id / Building the IPv4 header
- frag / Building the IPv4 header
- ttl / Building the IPv4 header
- prot / Building the IPv4 header
- sum / Building the IPv4 header
- src / Building the IPv4 header
- dst / Building the IPv4 header
- payload / Building the IPv4 header
- payload_s / Building the IPv4 header
- libnet_t / Building the IPv4 header
- ptag / Building the IPv4 header
- IPv6 / Introduction
- ip_len / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- ITunesClient class / How to do it…
- using / Using the ITunesClient class, Using the new ITunesClient class
- ITunesClient header file
- creating / Creating the ITunesClient header file
- ITunesEngine class
- using / Using the ITunesEngine class
- ITunesEngine class / How it works…
- ITunesEngine header file
- creating / Creating the ITunesEngine header file, Creating the ITunesEngine header file
- ITunesEngine implementation file
- creating / Creating the ITunesEngine implementation file, Creating the ITunesEngine implementation file
- ITUNESERVER / Creating the ITunesEngine header file, Creating the ITunesEngine header file
- ITunesReponseSerializer class / Creating the ITunesResponseSerializer header file
- ITunesResponseSerializer
- adding, to ITunesClient / Adding ITunesResponseSerializer to our ITunesClient
- ITunesResponseSerializer header file
- creating / Creating the ITunesResponseSerializer header file
- ITunesResponseSerializer implementation file
- creating / Creating the ITunesResponseSerializer implementation file
K
- kCFSocketDataCallBack callback / Updating the CFSocketServer implementation file
L
- len / Constructing a UDP packet with libnet, Constructing a TCP packet with libnet, Building the TCP header
- length / Constructing a UDP packet with libnet
- length field / Decoding UDP headers
- Libnet
- about / Introduction
- installing / Installing libnet, How to do it…, How it works…
- adding, to project / Adding libnet to your project, How to do it…, How it works…
- used, for retrieving local address / Retrieving local addresses with libnet, Retrieving the local IP and hardware addresses of our device, How it works…
- ping packet, constructing with / Constructing a Ping packet with libnet, Getting ready, Initiating the libnet context, Setting the target and source IP addresses, Building the IPv4 header, Injecting the ICMP packet, How it works…
- UDP packet, constructing with / Constructing a UDP packet with libnet, Getting ready, Importing the libnet header, Setting the target and source IP addresses, Building the UDP header, Injecting the packet, How it works…
- TCP packet, constructing with / Constructing a TCP packet with libnet, Getting ready, Initiating the libnet context, Setting the target and source IP addresses, Building the TCP header, Building the IPv4 header, How it works…
- libnet_addr2name4() function / Importing the libnet header, How it works…, Retrieving the local IP and hardware addresses of our device
- libnet_addr2name6() function / How it works…
- libnet_addr2name6_r() function / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- libnet_build_icmpv4_echo() function / Constructing a Ping packet with libnet
- type / Constructing a Ping packet with libnet, Building the ICMP header
- code / Constructing a Ping packet with libnet, Building the ICMP header
- sum / Constructing a Ping packet with libnet, Building the ICMP header
- id / Constructing a Ping packet with libnet, Building the ICMP header
- seq / Constructing a Ping packet with libnet, Building the ICMP header
- payload / Constructing a Ping packet with libnet, Building the ICMP header
- payload_s / Constructing a Ping packet with libnet, Building the ICMP header
- lnet / Constructing a Ping packet with libnet, Building the ICMP header
- ptag / Constructing a Ping packet with libnet, Building the ICMP header
- libnet_build_ipv4() functions
- about / Introduction, Constructing a Ping packet with libnet
- ip_len / Introduction, Building the IPv4 header
- tos / Introduction, Building the IPv4 header
- id / Introduction, Building the IPv4 header
- frag / Introduction, Building the IPv4 header
- ttl / Introduction, Building the IPv4 header
- prot / Introduction, Building the IPv4 header
- sum / Introduction, Building the IPv4 header
- src / Introduction, Building the IPv4 header
- dst / Introduction, Building the IPv4 header
- payload / Introduction, Building the IPv4 header
- payload_s / Introduction, Building the IPv4 header
- libnet_t / Introduction
- ptag / Introduction, Building the IPv4 header
- abouy / Building the IPv4 header
- libnet / Building the IPv4 header
- libnet_build_tcp() function
- sp / Constructing a TCP packet with libnet, Building the TCP header
- dp / Constructing a TCP packet with libnet, Building the TCP header
- seq / Constructing a TCP packet with libnet, Building the TCP header
- ack / Constructing a TCP packet with libnet, Building the TCP header
- control / Constructing a TCP packet with libnet, Building the TCP header
- win / Constructing a TCP packet with libnet, Building the TCP header
- sum / Constructing a TCP packet with libnet, Building the TCP header
- urg / Constructing a TCP packet with libnet, Building the TCP header
- len / Constructing a TCP packet with libnet, Building the TCP header
- payload / Constructing a TCP packet with libnet, Building the TCP header
- payload_s / Constructing a TCP packet with libnet, Building the TCP header
- lnet / Constructing a TCP packet with libnet, Building the TCP header
- ptag / Constructing a TCP packet with libnet, Building the TCP header
- about / Building the TCP header
- libnet_build_udp() function / Constructing a UDP packet with libnet
- libnet_destory() function / Injecting the ICMP packet, Injecting the packet
- libnet_destroy() function / Resolving names to addresses with libnet, Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- LIBNET_DONT_RESOLVE / Importing the libnet header
- libnet_get_addr4() function / Retrieving the local IP and hardware addresses of our device
- libnet_get_addr6() function / Retrieving the local IP and hardware addresses of our device
- libnet_get_hwaddr() function / Retrieving the local IP and hardware addresses of our device, How it works…
- libnet_get_ipaddr4() function / Retrieving the local IP and hardware addresses of our device, How it works…, Setting the target and source IP addresses
- libnet_get_ipaddr6() function / How it works…
- libnet_in6_addr *addr / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- libnet_in6_addr structure / How it works…
- libnet_init() function / Resolving names to addresses with libnet, Importing the libnet header, How it works…, Retrieving the local IP and hardware addresses of our device, Initiating the libnet context, How it works…
- Injection Type / Initiating the libnet context, Initiating the libnet context
- device / Initiating the libnet context, Initiating the libnet context
- Error Buffer / Initiating the libnet context, Initiating the libnet context
- libnet_name2addr() function / Importing the libnet header
- libnet_name2addr4() function / Importing the libnet header, How it works…, Setting the target and source IP addresses
- about / Setting the target and source IP addresses
- libnet_t *lnet / Setting the target and source IP addresses
- host_name / Setting the target and source IP addresses
- uint8_t use_name / Setting the target and source IP addresses
- libnet_name2addr6() function / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- LIBNET_RESOLVE / Importing the libnet header
- libnet_t / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- libnet_t *lnet / Importing the libnet header, Setting the target and source IP addresses, Setting the target and source IP addresses, Setting the target and source IP addresses
- libnet_write() function / Introduction, Injecting the ICMP packet, Injecting the packet, Injecting the packet
- libpcap
- adding, to project / Adding libpcap to your project, How to do it…, How it works…
- libpcap library
- about / Introduction
- link layer
- about / Introduction, Introduction
- LISTENERROR / Creating the BSDSocketServer header file
- listenfd property / Creating the BSDSocketServer header file
- little-endian / Introduction
- lnet / Constructing a Ping packet with libnet, Building the ICMP header, Constructing a UDP packet with libnet, Building the UDP header, Constructing a TCP packet with libnet, Building the TCP header
- local addresses
- retrieving, with Libnet / Retrieving local addresses with libnet, Retrieving the local IP and hardware addresses of our device
- libnet header, importing / Importing the libnet header
- local IP of device, retrieving / Retrieving the local IP and hardware addresses of our device
- hardware addresses of device, retrieving / Retrieving the local IP and hardware addresses of our device
M
- -(MKNetworkOperation *)connectToITunesWithPath$andParms$ / Creating the ITunesEngine header file
- make command / How it works…
- make install command / How it works…
- managerForDomain method / How to do it…
- memset() function / Using the AddrInfo class to perform the address/hostname resolution, Creating the BSDSocketServer implementation file, Creating the CFNetworkUtilities implementation file, Updating the CFSocketServer implementation file
- MKNetworkEngine
- about / Introduction
- MKNetworkKit
- about / Introduction
- using / Introduction
- using, for free / Introduction
- used, for uploading file / Uploading a file using MKNetworkKit
- FileUploadEngine header file, creating / Creating the FileUploadEngine header file
- FileUploadEngine implementation file, creating / Creating the FileUploadEngine implementation file
- FileUploadEngine class, using / Using the FileUploadEngine class
- used, for downloading file / Downloading a file using MKNetworkKit
- ImageDownloadEngine header file, creating / Creating the ImageDownloadEngine header file
- ImageDownloadEngine implementation file, creating / Creating the ImageDownloadEngine implementation file, How it works…
- MKNetworkKit engine
- creating / Creating and using the MKNetworkKit engine
- subclassing, advantages / Creating and using the MKNetworkKit engine
- ITunesEngine header file, creating / Creating the ITunesEngine header file
- ITunesEngine implementation file, creating / Creating the ITunesEngine implementation file
- ITunesEngine class, using / Using the ITunesEngine class
- MKNetworkOperation
- about / Introduction
- MKNetworkOperation instance / Creating the ImageDownloadEngine implementation file
- MKNetworkOperation object / How it works…, How it works…
- moreComeing flag / How to do it...
- More Fragment (MF) flag / Introduction
- multicast Domain Name System (mDNS) / Introduction
N
- name argument, service type / How to do it...
- nameWithSockaddr$ method / Creating the AddrInfo header file, Creating the AddrInfo implementation file
- netService$didNotResolve$ method / How to do it...
- netServiceBrowser$didFindService$moreComing$ method / How to do it...
- netServiceBrowser$didNotSearch$ method / How to do it...
- netServiceBrowser$didRemoveService
- moreComing$ method / How to do it...
- netServiceBrowserWillSearch$ method / How to do it...
- netServiceDidPublish$ method / How to do it...
- netServiceDidResolveAddress$ method / How to do it...
- netServiceDidStop$ method / How to do it...
- netServiceWillPublish$ method / How to do it...
- network
- about / How to do it…
- dst net {net} / How to do it…
- src net {net} / How to do it…
- net {net} / How to do it…
- network address information
- retrieving / Retrieving network address information, How to do it…, How it works…, Retrieving network address information, How to do it...
- network address resolution
- performing / Performing a network address resolution, Performing a network address resolution
- AddrInfo header file, creating / Creating the AddrInfo header file
- AddrInfo implementation file, creating / Creating the AddrInfo implementation file
- AddrInfo class used / Using the AddrInfo class to perform the address/hostname resolution
- CFNetworkUtilities header file, creating / Creating the CFNetworkUtilities header file
- CFNetworkUtilities implementation file, creating / Creating the CFNetworkUtilities implementation file, How it works...
- NetworkAddressStore class / Retrieving network address information
- network connection type
- checking / Checking the network connection type and changes, How to do it…, How it works…
- networkConnectionType$ method / Creating the NetworkDetect implementation file
- NetworkDetect header file
- creating / Creating the NetworkDetect header file
- NetworkDetect implementation file
- creating / Creating the NetworkDetect implementation file
- network device information
- retrieving / Retrieving network device information, How to do it…, How it works…
- networkReachabilityStatus property / How to do it…
- network status
- checking / Checking the network status, Getting ready
- NetworkDetect header file, creating / Creating the NetworkDetect header file
- NetworkDetect implementation file, creating / Creating the NetworkDetect implementation file
- net {net} / How to do it…
- newDataReceived$ method / Using the BSDSocketServer to create our data server
- newTextReceived$ method / How to do it...
- NOERROR / Creating the BSDSocketServer header file
- NS / Decoding TCP headers
- NSData / How it works…
- NSData resp object / Creating the sendGetRequest:toURL: method, Creating the sendPostRequest:toUrl: method
- NSDictionary object / Creating the searchType:withTerm:completion: method
- NSError / How it works…
- NSHost class / Retrieving network address information
- NSHost object / How to do it..., How it works…
- NSHTTPURLResponse / How it works…
- NSHTTPURLResponse object / Creating the sendPostRequest:toUrl: method
- NSMutableArray property / How to do it...
- NSMutableData object / Updating the BSDSocketServer implementation file, How it works…
- NSMutableDictionary key / How to do it...
- NSMutableDictionary object / How to do it...
- NSMutableURLRequest object / Creating the sendGetRequest:toURL: method
- NSNetServiceBrowser class / Discovering a Bonjour service, How to do it..., How it works...
- NSNetServiceBrowser object / Discovering a Bonjour service, How to do it...
- NSNetService class / Publishing a Bonjour service
- NSNetService object / Publishing a Bonjour service, Resolving a Bonjour service, How it works..., How it works...
- NSURLConnection object / Creating the sendGetRequest:toURL: method
- NSURLSession class / Introduction
O
- onDownloadProgressChanged block / Creating the FileDownloadEngine implementation file
- onUploadProgressChanged$ callback / Adding a progress bar to upload or download
- onUploadProgressChanged$ function / Creating the FileDownloadEngine implementation file
- OP Code field / Decoding ARP headers
- operationWithPath
- params$httpMethod$ssl$ method / Creating the FileUploadEngine implementation file
- operationWithPath$params$httpMethod$ssl$ method / Creating the ITunesEngine implementation file, Creating the ImageDownloadEngine implementation file
- Optional Data (payload) / Constructing a Ping packet with libnet
- optional data (payload) field / Decoding ICMP headers
P
- packet
- control information (header) / Introduction
- user data (payload) / Introduction
- about / Introduction
- layers / Introduction
- construction / Introduction
- building / Introduction
- IP header / Introduction
- packets
- capturing / Capturing packets, How to do it…, How it works…
- filtering / Filtering packets, How to do it…, How it works…
- parms parameter / Creating the WebServiceConnectSynchronous header file
- parser$didEndElement$namespaceURI$qualifiedName$ NSXMLParserDelegate method
- creating / Creating the parser:didEndElement:namespaceURI:qualifiedName: NSXMLParserDelegate method
- parser$didEndElement$namespaceURI$qualifiedName method / How it works…
- parser$didStartElement$namespaceURI$qualifiedName$attributes$ NSXMLParserDelegate method
- creating / Creating the parser:didStartElement:namespaceURI:qualifiedName:attributes: NSXMLParserDelegate method
- parser$foundCharacters$ NSXMLParserDelegate method
- creating / Creating the parser:foundCharacters: NSXMLParserDelegate method
- parser$foundCharacters method / How it works…
- parser$parseErrorOccurred method / How it works…
- parser$parserErrorOccurred$ NSXMLParser Delegate method
- creating / Creating the parser:parserErrorOccurred: NSXMLParserDelegate method
- parserDidEndDocument$ NSXMLParserDelegate method
- creating / Creating the parserDidEndDocument: NSXMLParserDelegate method
- parserDidEndDocument method / How it works…
- parserDidStartDocument$ NSXMLParserDelegate method, creating / Creating the parserDidStartDocument: NSXMLParserDelegate method
- parserDidStartDocument method / How it works…
- parserDidStartElement$namespaceURI$qualifiedName$attributes / How it works…
- ParseRSS header file
- creating / Creating the ParseRSS header file
- parseXMLFileAtUrl$ method, creating / Creating the parseXMLFileAtUrl: method
- path parameter method / Performing HTTP(S) synchronous GET requests
- payload / Introduction, Constructing a Ping packet with libnet, Building the ICMP header, Building the IPv4 header, Constructing a UDP packet with libnet, Building the UDP header, Building the IPv4 header, Constructing a TCP packet with libnet, Building the TCP header, Building the IPv4 header
- payload_s / Introduction, Constructing a Ping packet with libnet, Building the ICMP header, Building the IPv4 header, Constructing a UDP packet with libnet, Building the UDP header, Building the IPv4 header, Constructing a TCP packet with libnet, Building the TCP header, Building the IPv4 header
- pcap filters
- examples / How to do it…
- pcap_addr *addresses / Retrieving network device information
- pcap_addr *next / Retrieving network device information
- pcap_addr_t structure / How to do it…
- pcap_compile() function
- arguments / How to do it…
- pcap_findalldevs() function / Retrieving network device information, How it works…
- pcap_handler callback / How to do it…
- PCAP_Headers.h header / Introduction
- pcap_if *next / Retrieving network device information
- pcap_if_t structure / Retrieving network device information, How to do it…
- pcap_lookupdev() function / How to do it…
- pcap_lookupnet() function
- arguments / How to do it…
- pcap_loop() function
- arguments / How to do it…
- pcap_open_live() function
- arguments / How to do it…
- pcap_setfilter() function
- arguments / How to do it…
- pcap_setFilter() function / How to do it…
- pcap_t *handle / How to do it…
- pcap_t *p / How to do it…
- peer-to-peer bluetooth network
- creating / Creating a peer-to-peer bluetooth network, How to do it…
- GKPeerPickerController, displaying / Displaying the GKPeerPickerController
- GKPeerPickerControllerDelegate, delegate methods creating for / Creating the two delegate methods for GKPeerPickerControllerDelegate
- peer network, disconnecting from / Disconnecting from the peer network
- data, sending to / Sending data to the peer
- data, receiving from peer / Receiving data from the peer
- Ping packet
- constructing, with Libnet / Constructing a Ping packet with libnet, Getting ready
- ping packet
- ICMP header, fields / Constructing a Ping packet with libnet
- libnet header, importing / Importing the libnet header
- variables, defining / Defining variables
- libnet context, initiating / Initiating the libnet context
- target IP addresses, setting / Setting the target and source IP addresses
- source IP addresses, setting / Setting the target and source IP addresses
- random number, creating / Creating a random number to be used as an identifier
- ICMP packet, injecting / Injecting the ICMP packet
- ICMP packet, creating / How it works…
- ICMP packet, sending / How it works…
- placeholderImage parameter / How it works…
- Point-to-Point (PPP) / Introduction
- Point-to-Point Protocol (PPP) / Introduction
- port
- dst port {port} / How to do it…
- src port {port} / How to do it…
- {port} / How to do it…
- {protocol} dst port {port} / How to do it…
- {protocol} src port {port} / How to do it…
- {protocol} port {port} / How to do it…
- port, service type / How to do it...
- Portable Operating System Interface for Unix (POSIX)
- about / Introduction
- port argument, service type / How to do it...
- ports
- about / Introduction
- port {port} / How to do it…
- POST$parameters$success$failure$ method / Creating the searchType:withTerm:completion: method
- postFileToServerWithParameters$ method / Creating the FileUploadEngine header file, Using the FileUploadEngine class
- postFileToServerWithParameters$Path
- andSSL$ method / Creating the FileUploadEngine implementation file
- postFileToServerWithParams
- method / Creating the FileUploadEngine implementation file
- postFileToServerWithPath
- andParams$andSSL$ method / Creating the FileUploadEngine implementation file
- postFileToServerWithPath$andParams$ method / Creating the FileUploadEngine implementation file
- postFileToServerWithPath$Parameters$andSSL / Creating the FileUploadEngine header file
- potage / Constructing a Ping packet with libnet
- progress bar
- files, downloading with / Downloading files with a progress bar
- download task, creating / Creating the download task
- progressView, adding / Adding the progressView
- adding, to display upload status / Adding a progress bar to upload or download
- adding, to display download status / Adding a progress bar to upload or download
- FileDownloadEngine header file, creating / Creating the FileDownloadEngine header file
- FileDownloadEngine implementation file, creating / Creating the FileDownloadEngine implementation file
- progressView
- adding / Adding the progressView
- project
- Libnet, adding / Adding libnet to your project, How to do it…
- libpcap, adding / Adding libpcap to your project, How to do it…, How it works…
- prot / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- protocol
- about / How to do it…
- ip proto {protocol} / How to do it…
- ip6 proto {protocol} / How to do it…
- ip broadcast / How to do it…
- ether proto {protocol} / How to do it…
- ether broadcast / How to do it…
- {protocol} / How to do it…
- protocol, IP header / Introduction
- Protocol Address Length field / Decoding ARP headers
- protocol field / Decoding IP headers
- protocol layer
- about / Introduction, Introduction
- protocol type field / Decoding ARP headers
- PSH / Constructing a TCP packet with libnet, Decoding TCP headers
- ptag / Introduction, Building the ICMP header, Building the IPv4 header, Constructing a UDP packet with libnet, Building the UDP header, Building the IPv4 header, Constructing a TCP packet with libnet, Building the TCP header, Building the IPv4 header
- publishedName property / How to do it...
- publishWithOptions$ method / How to do it...
- {protocol} / How to do it…
- {protocol} dst port {port} / How to do it…
- {protocol} port {port} / How to do it…
- {protocol} src port {port} / How to do it…
Q
- query parameter method / Performing HTTP(S) synchronous GET requests
R
- Reachability object / Creating and using the MKNetworkKit engine
- reachable property / How to do it…
- reachableViaWiFi property / How to do it…
- reachableViaWWAN property / How to do it…
- receiveData() function / Creating the CFSocketServer implementation file
- receiveData() method / How it works...
- receiveDataData() function / Updating the CFSocketServer implementation file
- recv() function / Creating the BSDSocketServer implementation file, How it works…, Creating the BSDSocketClient implementation file, How it works…
- recvFromSocket
- withMaxChar$ method / Creating the BSDSocketClient implementation file
- recvFromSocket$withMaxChar$ method / Creating the BSDSocketClient header file
- registerService$ method / How to do it...
- reserved / Constructing a TCP packet with libnet
- reserved field / Decoding TCP headers
- responseData property / Using the ITunesEngine class
- responseObjectForResponse$data$error$ method / Creating the ITunesResponseSerializer implementation file
- response serializer
- creating / Creating a custom response serializer
- AlbumInformation header file, creating / Creating the AlbumInformation header file
- AlbumInformation implementation file, creating / Creating the AlbumInformation implementation file
- ITunesResponseSerializer header file, creating / Creating the ITunesResponseSerializer header file
- ITunesResponseSerializer implementation file, creating / Creating the ITunesResponseSerializer implementation file
- ITunesResponseSerializer, adding to ITunesClient / Adding ITunesResponseSerializer to our ITunesClient
- new ITunesClient class, using / Using the new ITunesClient class
- RSS feed
- parsing, with NSXMLParser / Parsing an RSS feed with NSXMLParser, NSURL, and NSData
- parsing, with NSURL / Parsing an RSS feed with NSXMLParser, NSURL, and NSData
- parsing, with NSData / Parsing an RSS feed with NSXMLParser, NSURL, and NSData
- RSSItem header file, creating / Creating the RSSItem header file
- RSSItem implementation file, creating / Creating the RSSItem implementation file
- ParseRSS header file, creating / Creating the ParseRSS header file
- initWithUrl$ constructor, creating / Creating the initWithUrl: constructor
- parseXMLFileAtUrl$ method, creating / Creating the parseXMLFileAtUrl: method
- parserDidStartDocument$ NSXMLParserDelegate method, creating / Creating the parserDidStartDocument: NSXMLParserDelegate method
- parser$parserErrorOccurred$ NSXMLParser Delegate method, creating / Creating the parser:parserErrorOccurred: NSXMLParserDelegate method
- parser$didStartElement$namespaceURI$qualifiedName$attributes$ NSXMLParserDelegate method, creating / Creating the parser:didStartElement:namespaceURI:qualifiedName:attributes: NSXMLParserDelegate method
- parser$didEndElement$namespaceURI$qualifiedName$ NSXMLParserDelegate method, creating / Creating the parser:didEndElement:namespaceURI:qualifiedName: NSXMLParserDelegate method
- parser$foundCharacters$ NSXMLParserDelegate method, creating / Creating the parser:foundCharacters: NSXMLParserDelegate method
- parserDidEndDocument$ NSXMLParserDelegate method / Creating the parserDidEndDocument: NSXMLParserDelegate method
- RSSItem header file
- creating / Creating the RSSItem header file
- RSSItem implementation file
- creating / Creating the RSSItem implementation file
- RST / Constructing a TCP packet with libnet, Decoding TCP headers
S
- SCNetworkReachibilityCreateWithName() function / How it works...
- SCNetworkReachibilityGetFlags() function / How it works...
- searchItunesWithParams
- method / Creating the ITunesEngine implementation file
- searchITunesWithParams$ method / Creating the ITunesEngine implementation file, Creating the ITunesEngine header file, Creating the ITunesEngine implementation file
- searchType$withTerm$completion$ method / Creating the ITunesClient header file, Using the ITunesClient class, How it works…
- creating / Creating the searchType:withTerm:completion: method
- send() function / How it works…
- sendData$toSocket$ method / Updating the BSDSocketClient implementation file, How it works…
- sendDataToAllPeers$withDataMode$error$ method / Sending data to the peer
- sendDataToSocket$withData$ method / Updating the CFSocketClient implementation file
- sendGetRequest$toURL$ method / Creating the WebServiceConnectSynchronous header file
- creating / Creating the sendGetRequest:toURL: method, How it works…, Creating the sendGetRequest:toURL: method
- sendPostRequest$toUrl$ method / Performing HTTP(S) synchronous POST requests, Updating the WebServiceConnectSynchronous header file
- creating / Creating the sendPostRequest:toUrl: method, How it works…
- sendPressed$ method / Using the BSDSocketClient to connect to our echo server
- sendSynchronousRequest$returningResponse$error$ method / Creating the sendGetRequest:toURL: method
- seq / Constructing a Ping packet with libnet, Building the ICMP header, Constructing a TCP packet with libnet, Building the TCP header
- Sequence Number / Constructing a Ping packet with libnet, Constructing a TCP packet with libnet
- sequence number field / Decoding TCP headers, Decoding ICMP headers
- server
- creating, to receive data / Creating a server to receive data, Getting ready
- CFSocketServer header file, creating / Updating the CFSocketServer header file
- CFSocketServer implementation file, updating / Updating the CFSocketServer implementation file
- CFSocketServer class, using / Using the CFSocketServer class, How it works...
- serviceBrowser property / How to do it...
- service property / How to do it...
- setImageURL$placeholderImage$ method / Creating the UITableView delegate methods
- setImageWithURL$placeholder$ method / Using the UIImageView+AFNetworking category
- setLabelText$ method / How to do it...
- setProgressWithDownloadProgressOfTask$animated$ method, / Adding the progressView, How it works…
- setReachabilityStatusChangeBlock$ method / How to do it…, How it works…
- setVars method / Creating the AddrInfo implementation file
- shardManager method / How it works…
- sharedClient method
- creating / Creating the sharedClient method
- simple port scanner
- creating, libnet and libpcap used together / Creating a simple port scanner using libnet and libpcap together, How to do it…, How it works…
- SINT32 / Creating the CFSocketClient implementation file
- SInt32 / Creating the CFSocketClient implementation file
- SINT32 protocol / How to do it...
- SInt32 protocolFamily / How to do it...
- SInt32 socketType / How to do it...
- sockaddr *addr / Retrieving network device information
- sockaddr *broadaddr / Retrieving network device information
- sockaddr *dstaddr / Retrieving network device information
- sockaddr *netmask / Retrieving network device information
- sockaddr structure / Creating the CFSocketClient implementation file, How to do it...
- socket() function / Creating the BSDSocketServer implementation file, Creating the BSDSocketClient implementation file, Creating an echo server, Creating the CFSocketServer implementation file
- SOCKETERROR / Creating the BSDSocketServer header file
- Source Address, IP header / Introduction
- Source Address field / Retrieving local addresses with libnet, Decoding Ethernet headers, Decoding IP headers
- Source Hardware Address field / Decoding ARP headers
- Source Port / Constructing a UDP packet with libnet, Constructing a TCP packet with libnet
- source port field / Decoding TCP headers, Decoding UDP headers
- Source Protocol Address field / Decoding ARP headers
- sp / Constructing a UDP packet with libnet, Constructing a TCP packet with libnet, Building the TCP header
- src / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- src host {host} / How to do it…
- src net {net} / How to do it…
- src port {port} / How to do it…
- startBrowsingForType$ method / How to do it..., How to do it...
- startServiceOfType$andPort$ method / How to do it..., How it works...
- statusCode property / Creating the sendGetRequest:toURL: method
- stopBrowsing method / How to do it...
- stopService method / How to do it...
- strEchoServer$ function / How it works…
- strEchoServer$ method / Creating the BSDSocketServer implementation file
- struct bpf_program *fp / How to do it…
- Struct bpf_program filterCode / How to do it…
- struct pcap_pkthdr *header / How to do it…
- sudo make install command / How it works…
- sum / Introduction, Constructing a Ping packet with libnet, Building the ICMP header, Building the IPv4 header, Constructing a UDP packet with libnet, Building the UDP header, Building the IPv4 header, Constructing a TCP packet with libnet, Building the TCP header, Building the IPv4 header
- SYN / Constructing a TCP packet with libnet, Decoding TCP headers
T
- tableView$cellForRowAtIndexPath$ method / Creating the UITableView delegate methods
- tableView$cellForRowAtIndexPath$ method / Using the new ITunesEngine class
- tableView$heightForRowAtIndexPath$ method / Creating the UITableView delegate methods
- tableView cellForRowAtIndexPath$ method / How to do it...
- tableView heightForRowAtIndexPath$ method / How to do it...
- tableView numberOfRowsInSection
- method / How to do it...
- tableView property / Updating the ViewController header file
- TCP header
- building / Building the TCP header
- source port field / Decoding TCP headers
- destination port field / Decoding TCP headers
- sequence number field / Decoding TCP headers
- acknowledgement number field / Decoding TCP headers
- data offset field / Decoding TCP headers
- reserved field / Decoding TCP headers
- flags field / Decoding TCP headers
- window field / Decoding TCP headers
- checksum field / Decoding TCP headers
- urgent pointer field / Decoding TCP headers
- TCP headers
- decoding / Decoding TCP headers, How to do it…, How it works…
- TCP packet
- constructing, with Libnet / Constructing a TCP packet with libnet, Defining variables, Setting the target and source IP addresses
- TCP header / Constructing a TCP packet with libnet
- libnet_build_TCP() function / Constructing a TCP packet with libnet
- Source Port / Constructing a TCP packet with libnet
- Destination Port / Constructing a TCP packet with libnet
- Sequence Number / Constructing a TCP packet with libnet
- Acknowledgement Number / Constructing a TCP packet with libnet
- Data Offset / Constructing a TCP packet with libnet
- Reserved / Constructing a TCP packet with libnet
- flags / Constructing a TCP packet with libnet
- window / Constructing a TCP packet with libnet
- checksum / Constructing a TCP packet with libnet
- Urgent Pointer / Constructing a TCP packet with libnet
- libnet_build_tcp() function / Constructing a TCP packet with libnet
- libnet header, importing / Importing the libnet header
- variables, defining / Defining variables
- libnet context. initiating / Initiating the libnet context
- source IP addresses, setting / Setting the target and source IP addresses
- target IP addresses, setting / Setting the target and source IP addresses
- random number, creating / Creating a random number to be used as an identifier
- TCP header, building / Building the TCP header
- IPv4 header, building / Building the IPv4 header
- injecting / Injecting the packet
- creating / How it works…
- sending / How it works…
- temp_addr ifaddrs structure / How to do it…
- term parameter / Creating the searchType:withTerm:completion: method
- threadStart method / How to do it...
- Time to Live, IP header / Introduction
- time to live field / Decoding IP headers
- toal length field / Decoding IP headers
- tos / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- Total Length, IP header / Introduction
- Transmission Control Protocol (TCP)
- about / Introduction
- ttl / Introduction, Building the IPv4 header, Building the IPv4 header, Building the IPv4 header
- TUNESSEARCHPATH / Creating the ITunesEngine header file, Creating the ITunesEngine header file
- type / Constructing a Ping packet with libnet, Building the ICMP header
- type, service type / How to do it...
- type argument, service type / How to do it...
- Type of Service, IP header / Introduction
- type of service field / Decoding IP headers
- type parameter / Creating the searchType:withTerm:completion: method
U
- UDP header
- Source Port / Constructing a UDP packet with libnet
- Destination Port / Constructing a UDP packet with libnet
- checksum / Constructing a UDP packet with libnet
- sp / Constructing a UDP packet with libnet, Building the UDP header
- dp / Constructing a UDP packet with libnet, Building the UDP header
- len / Constructing a UDP packet with libnet, Building the UDP header
- sum / Constructing a UDP packet with libnet, Building the UDP header
- payload / Constructing a UDP packet with libnet, Building the UDP header
- payload_s / Constructing a UDP packet with libnet, Building the UDP header
- lnet / Constructing a UDP packet with libnet, Building the UDP header
- ptag / Constructing a UDP packet with libnet, Building the UDP header
- building / Building the UDP header
- UDP headers
- decoding / Decoding UDP headers, Getting ready, How it works…
- source port field / Decoding UDP headers
- destination port field / Decoding UDP headers
- length field / Decoding UDP headers
- checksum field / Decoding UDP headers
- UDP packet
- constructing, with Libnet / Constructing a UDP packet with libnet, Importing the libnet header, Setting the target and source IP addresses, Building the UDP header, Building the IPv4 header, Injecting the packet
- libnet header, importing / Importing the libnet header
- libnet context, initiating / Initiating the libnet context
- source IP addresses, setting / Setting the target and source IP addresses
- target IP addresses, setting / Setting the target and source IP addresses
- random number, creating / Creating a random number to be used as an identifier
- UDP header, building / Building the UDP header
- IPv4 header, building / Building the IPv4 header
- injecting / Injecting the packet
- creating / How it works…
- sending / How it works…
- UIImageJPEGRepresentation function / Using the FileUploadEngine class
- UIImageView+AFNetworking category
- using / Using the UIImageView+AFNetworking category, Getting ready
- ViewController header file, updating / Updating the ViewController header file
- viewDidLoad method, updating / Updating the viewDidLoad method of the ViewController
- UIImageView+MKNetworkKitAdditions.h category
- using / Using the UIImageView+MKNetworkKitAdditions.h category and caching the images
- cache settings, adjusting / Adjusting the cache settings
- new ITunesEngine class, using / Using the new ITunesEngine class
- UIImageView class / Using the UIImageView+AFNetworking category
- UIKit+AFNetworking directory / Introduction
- uint8_t use_name / Importing the libnet header, Retrieving the local IP and hardware addresses of our device, Setting the target and source IP addresses, Setting the target and source IP addresses, Setting the target and source IP addresses
- uint32_t in / Importing the libnet header, Retrieving the local IP and hardware addresses of our device
- UIProgressView+AFNetworking class / Getting ready
- UITableView delegate methods
- creating / Creating the UITableView delegate methods, How it works…
- ulibnet_get_ipaddr4() function / Setting the target and source IP addresses
- urg / Constructing a TCP packet with libnet, Building the TCP header
- URG / Constructing a TCP packet with libnet, Decoding TCP headers
- Urgent Pointer / Constructing a TCP packet with libnet
- urgent pointer field / Decoding TCP headers
- useCache method / Creating the ITunesEngine implementation file
- user data (payload)
- about / Introduction
- User Datagram Protocol (UDP)
- about / Introduction
- use_name parameter / Importing the libnet header
- UTF8String method / Creating the AddrInfo implementation file
- u_char *args / How to do it…, How to do it…
- u_char *fp / How to do it…
- u_char *packet / How to do it…
- u_int / Retrieving network device information
V
- version, IP header / Introduction
- version field / Decoding IP headers
- ViewController header file
- updating / Updating the ViewController header file
- viewDidLoad method / How to do it...
- updating / Updating the viewDidLoad method of the ViewController
W
- web client
- creating, AFHTTPSessionManager used / Creating a web client using AFHTTPSessionManager
- WebServiceConnectAsynchronous header file
- creating / Creating the WebServiceConnectAsynchronous header file
- WebServiceConnectSynchronous class / Performing HTTP(S) synchronous POST requests
- WebServiceConnectSynchronous header file
- creating / Creating the WebServiceConnectSynchronous header file
- updating / Updating the WebServiceConnectSynchronous header file
- win / Constructing a TCP packet with libnet, Building the TCP header
- window, TCP packet / Constructing a TCP packet with libnet
- Wireshark / Constructing a Ping packet with libnet
- URL / Constructing a UDP packet with libnet
- write function / Creating the BSDSocketServer implementation file
- writte$
- charTopicnsize$ method / How it works…
- written$char
- size$ method / Creating the BSDSocketServer implementation file
- written$char$size$ method / Creating the BSDSocketServer implementation file
- writtenToSocket$withChar$ method / Creating the BSDSocketClient header file, Creating the BSDSocketClient implementation file, Using the BSDSocketClient to connect to our echo server, Creating the CFSocketClient header file, Creating the CFSocketClient implementation file
- writtenToSocket$withChars
- method / How to do it...