Jump To:
Leopard Reference Library
Networking capabilities in Mac OS X include support for the major protocols and services. Developers can gain access to them through sockets and Core Services, as well as through the higher-level Carbon and Cocoa APIs.

Provides a guided introduction to developing network-capable applications for Mac OS X.   Essential information for developers using Apple's networking environment.   API references organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sort by
Topic
Sorted by
Resource Type
Sort by
Date
NSURLAuthenticationChallenge Class Reference (HTML) (PDF)
Describes a challenge from a server requiring authentication from the client.
Cocoa Reference 2006-05-23
NSURLAuthenticationChallengeSender Protocol Reference (HTML) (PDF)
Describes the interface for receiving authentication challenges.
Cocoa Reference 2006-05-23
NSURLCredentialStorage Class Reference (HTML) (PDF)
Describes a mapping of credentials to their corresponding protection spaces.
Cocoa Reference 2006-05-23
NSURLDownload Class Reference (HTML) (PDF)
Describes a connection used to download data to a file.
Cocoa Reference 2006-05-23
NSURLHandleClient Protocol Reference (HTML) (PDF)
Describes a deprecated technology replaced by the NSURLDownload class.
Cocoa Reference 2006-05-23
NSURLProtectionSpace Class Reference (HTML) (PDF)
Describes an area on a server that requires authentication of URL load requests.
Cocoa Reference 2006-05-23
NSURLProtocolClient Protocol Reference (HTML) (PDF)
Describes the interface used by protocol objects to communicate with the URL loading system.
Cocoa Reference 2006-05-23
Open Directory Reference (HTML) (PDF)
Describes the Carbon API for using Open Directory.
Darwin, Mac OS X Server Reference 2006-05-23
Xsan Reference (HTML) (PDF)
Describes the Xsan API commands.
Mac OS X Server Reference 2006-05-23
Open Transport Reference (HTML) (PDF)
Describes the Carbon compatibility library for accessing TCP/IP networks at the transport level.
Carbon Reference 2005-07-07
Secure Transport Reference (HTML) (PDF)
Describes the C API for creating a Secure Sockets Layer session over any transport layer.
Security Reference 2004-08-31
Internet Config Reference (HTML) (PDF)
Describes the legacy technology for managing Internet preferences in Classic Mac OS.
Carbon Reference 2003-05-01
Extending and Troubleshooting Directory Services (HTML)
Explains how to extend Directory Services for Mac OS X Server v10.5 and how to troubleshoot problems.
Mac OS X Server Release Notes 2009-02-04
CCL Modem Scripting Release Notes (HTML)
Explains changes to modem CCLs for Mac OS X v10.5 and what to do to change existing and supersede older scripts.
Hardware & Drivers Release Notes 2007-10-31
CFNetwork Framework Release Notes (HTML)
General, Security Release Notes 2007-10-31
Code Signing Release Notes (HTML)
Security Release Notes 2007-10-31
OS Services Framework Release Notes (HTML)
Carbon Release Notes 2007-10-31
Collaboration Reference Update (HTML) (PDF)
Summarizes the symbols added to the Collaboration framework.
Cocoa Release Notes 2007-07-18
System Configuration Reference Update (HTML) (PDF)
Summarizes the symbols added to the System Configuration framework.
Darwin Release Notes 2007-07-18
Directory Services for Mac OS X Server v10.5 Release Notes (HTML)
Describes updates, changes, and workarounds for Directory Services for Mac OS X Server v10.5
Mac OS X Server Release Notes 2007-06-08
Directory Service Reference Update (HTML) (PDF)
Summarizes the symbols added to the Directory Service framework.
Mac OS X Server Release Notes 2007-05-02
PortMapper (HTML) (DMG) (ZIP)
Demonstrates Bonjour's NAT port-mapping API, and provides a higher-level Objective-C interface to it.
Bonjour Sample Code 2008-07-25
URL CacheInfo (HTML) (DMG) (ZIP)
Demonstrates resource caching behavior using the Cocoa URL loading system.
Cocoa, Internet & Web Sample Code 2008-06-05
Kerberos GSS (HTML) (DMG) (ZIP)
Kerberos GSS-API Sample
Security Sample Code 2008-06-04
CryptNoMore (HTML) (DMG) (ZIP)
Shows how to authenticate a user using Open Directory (Directory Services).
Security Sample Code 2008-03-17
CFProxySupportTool (HTML) (DMG) (ZIP)
Shows how to use the CFProxySupport APIs to decide whether a network connection should pass through a proxy.
Core Foundation, Darwin Sample Code 2007-10-29
MoreSCF (HTML) (DMG) (ZIP)
High-level wrapper around System Configuration framework, making common operations easy.
Darwin Sample Code 2007-06-07
NewsReader (HTML) (DMG) (ZIP)
Demonstrates use of the Publication Subscription framework to create a simple RSS reader application.
Cocoa, Internet & Web Sample Code 2007-06-01
LSMSmartCategorizer (HTML) (DMG) (ZIP)
Demonstrates the Latent Semantic Mapping (LSM) framework by automatically categorize RSS feeds.
Internet & Web Sample Code 2007-05-09
tcplognke (HTML) (DMG) (ZIP)
Demonstrates a TCP socket filter based on supported Kernel Programming Interfaces for Tiger
Hardware & Drivers Sample Code 2006-11-27
CFFTPSample (HTML) (DMG) (ZIP)
A simple example showing how to use CFFTPStream to download and upload files.
Core Foundation Sample Code 2006-10-13
IdentitySample (HTML) (DMG) (ZIP)
IdentitySample builds a utility which demonstrates how to use the CoreServices Identity API to manage system-wide identities
Core Foundation Sample Code 2006-07-27
CFNetworkHTTPDownload (HTML) (DMG) (ZIP)
Demonstrates how to download a URL using CFNetworking.
Carbon, Core Foundation Sample Code 2006-01-18
GetPrimaryMACAddress (HTML) (DMG) (ZIP)
Demonstrates retrieving the MAC address of the built-in Ethernet controller. Useful for uniquely identifying a Macintosh system.
Darwin, Mac OS X Server, Security Sample Code 2005-10-27
enetlognke (HTML) (DMG) (ZIP)
Interface filter based on supported Kernel Programming Interfaces for Tiger.
Hardware & Drivers Sample Code 2005-08-10
SocketCancel (HTML) (DMG) (ZIP)
Shows how to safely cancel threads that are blocked within BSD sockets calls.
Darwin Sample Code 2005-08-10
SimpleDial (HTML) (DMG) (ZIP)
Demonstrates management of dialup connections, such as PPP, using System Configuration framework network connection API.
Core Foundation, Darwin Sample Code 2005-07-26
SimpleReach (HTML) (DMG) (ZIP)
Demonstrates network host reachability testing using the System Configuration framework asynchronous network reachability API.
Core Foundation, Darwin Sample Code 2005-07-26
AutoUpdater (HTML) (DMG) (ZIP)
This sample demonstrates Cocoa networking using the NSURL loading classes, NSURLConnection and NSURLDownload.
Cocoa Sample Code 2005-06-01
CocoaHTTPServer (HTML) (DMG) (ZIP)
A Cocoa example showing how to write a very basic HTTP service.
Cocoa Sample Code 2005-06-01
DNSServiceMetaQuery (HTML) (DMG) (ZIP)
Shows how to discover Bonjour service types being advertised on the local network.
Bonjour, Core Foundation, Darwin Sample Code 2005-06-01
GridCalendar (HTML) (DMG) (ZIP)
Demonstrates how to add a custom job submission UI to the GridSample project.
Cocoa Sample Code 2005-06-01
ImageClient (HTML) (DMG) (ZIP)
Demonstrates how to use CFNetwork for synchronous and asynchronous operations, network diagnostics, proxy navigation, and authentication.
Carbon, Cocoa, Core Foundation Sample Code 2005-06-01
DockBrowser (HTML) (DMG) (ZIP)
Demonstrates how to use CFNetServices to take advantage of Bonjour service discovery and name resolution.
Bonjour Sample Code 2005-02-08
PictureSharing (HTML) (DMG) (ZIP)
Demonstrates how to use NSNetServices to advertise a service using Bonjour.
Bonjour Sample Code 2005-02-08
PictureSharingBrowser (HTML) (DMG) (ZIP)
Demonstrates how to use NSNetServices to take advantage of Bonjour service discovery and name resolution.
Bonjour Sample Code 2005-02-08
CFHostSample (HTML) (DMG) (ZIP)
Uses the CFHost API to do DNS hostname lookups and to determine host reachability.
Carbon, Core Foundation Sample Code 2004-04-20
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Carbon, Darwin, Security Sample Code 2003-10-27
SimplePing (HTML) (DMG) (ZIP)
Sample provides simple API to programatically ping a remote host without admin privileges
Darwin, Internet & Web Sample Code 2003-10-27
OTEndpointInfo (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to query an endpoint for its 'vital statistic' using OTGetEndpointInfo.
Carbon Sample Code 2003-08-20
OTMP (HTML) (DMG) (ZIP)
Deprecated - A library for calling Open Transport synchronously from preemptively scheduled tasks (MP tasks).
Carbon Sample Code 2003-07-22
OTPingSample (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to implement ping on top of the Open Transport API.
Carbon Sample Code 2003-07-22
BSDLLCTest (HTML) (DMG) (ZIP)
Program sample demonstrates how to send and receive raw LLC Ethernet packets.
Carbon, Hardware & Drivers Sample Code 2003-06-12
QISA (HTML) (DMG) (ZIP)
Demonstrates the basics of writing an Internet setup assistant for traditional Mac OS and Mac OS X.
Carbon, Darwin Sample Code 2003-05-15
LocalServer (HTML) (DMG) (ZIP)
Deprecated - Sample demonstrates how a Classic process can communicate with a Mac OS X process using IP networking protocols.
Carbon Sample Code 2003-01-30
GetHWEthernetAddr (HTML) (DMG) (ZIP)
Deprecated - Shows how to obtain the hardware Ethernet address of a machine.
Hardware & Drivers Sample Code 2003-01-14
GetMACAddressSample (HTML) (DMG) (ZIP)
Demonstrates how to retrieve the MAC address for each Ethernet interface from the Mac OS X I/O Registry.
Darwin, Mac OS X Server, Security Sample Code 2003-01-14
GetSetOptions (HTML) (DMG) (ZIP)
Demonstrates a variety of uses of Open Transport's option management routines.
Carbon, Hardware & Drivers, Mac OS X Server Sample Code 2003-01-14
ListMania (HTML) (DMG) (ZIP)
Demonstrates a variety of techniques for using Open Transport's list utility routines.
Carbon, Hardware & Drivers Sample Code 2003-01-14
NameAndAddress (HTML) (DMG) (ZIP)
A single window utility that gets a host name from an IP address or an IP address from a hostname.
Cocoa Sample Code 2003-01-14
NoCopyReceives (HTML) (DMG) (ZIP)
Demonstrates using no-copy receives under Open Transport.
Carbon, Hardware & Drivers, Internet & Web Sample Code 2003-01-14
NSLMiniBrowser (HTML) (DMG) (ZIP)
Deprecated - Uses the NSL API to find network services using SLP, NBP, and Directory Services.
Carbon Sample Code 2003-01-14
OT Virtual Server (HTML) (DMG) (ZIP)
Deprecated - Sample code which uses Open Transport and demonstrates real world issues.
Carbon Sample Code 2003-01-14
OTLookupNameTest (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to lookup NBP entities on an AppleTalk network using Open Transport.
Carbon Sample Code 2003-01-14
Kernel Core Dumps (HTML)
TN2118: Explains how to gather and use remote kernel core dumps.
Hardware & Drivers Technical Notes 2008-11-12
Embedding Bonjour in Windows Applications (HTML)
TN2210: Details the proper steps necessary for a Windows Developer to include Bonjour for Windows in their application.
Bonjour Technical Notes 2008-01-17
Uniquely Identifying a Macintosh Computer (HTML) (日本語 HTML)
TN1103: How to identify a specific Macintosh computer.
Hardware & Drivers, Security Technical Notes 2006-04-25
Living in a Dynamic TCP/IP Environment (HTML) (日本語 HTML)
TN1145: Describes some of the intricacies of dealing with TCP/IP in a dynamic environment, such as Open Transport.
Internet & Web Technical Notes 2002-08-27
Update: Borrowed AFP Sessions (HTML) (日本語 HTML)
TN1106: Shows how to borrow the session reference number of an AFP volume mounted by the Macintosh File System.
Carbon Technical Notes 2000-08-14
Open Transport STREAMS FAQ (HTML)
Deprecated - TN1117: Decribes writing STREAMS modules and drivers for use with Open Transport.
Hardware & Drivers Technical Notes 1997-12-01
Generating a Non-Maskable Interrupt (NMI) (HTML) (日本語 HTML)
QA1264: Explains how to generate a non-maskable interrupt (NMI) on modern Macintosh systems.
Hardware & Drivers Technical Q&As 2008-10-13
Retain Counts of io_object_t Objects in IOKit.framework (HTML) (日本語 HTML)
QA1195: Distinguishes between the retain counts of an I/O Kit kernel object and its io_object_t user space proxy.
Printing Technical Q&As 2008-09-24
IODeviceTree and the I/O Registry (HTML) (日本語 HTML)
QA1120: Describes the IODeviceTree plane in the Mac OS X I/O Registry.
Hardware & Drivers Technical Q&As 2008-09-18
Getting a Packet Trace (HTML) (日本語 HTML)
QA1176: Lists tools available for looking at the network packets on the wire.
AirPort/802.11, Bonjour, Carbon, Cocoa, Core Foundation, Darwin, Hardware & Drivers, Internet & Web, Mac OS X Server, Printing, Security Technical Q&As 2008-06-03
Bonjour Printer Subtype for HTTP (HTML)
QA1555: Describes how printer vendors can register their bonjour service such that Safari can see them.
Carbon, Cocoa, Core Foundation, Darwin Technical Q&As 2008-03-25
Descriptor Passing Problems (HTML)
QA1541: Describes how to work around common problems with descriptor passing.
Darwin Technical Q&As 2007-10-29
Don't forget to cancel your Bonjour resolve (HTML)
QA1297: Explains why it's important to cancel a Bonjour resolve operation.
Bonjour, Carbon, Cocoa Technical Q&As 2007-08-30
Availability of Quartz Composer Patches in Web Kit (HTML)
QA1505: Details which Quartz Composer patches are available in Web Kit
Internet & Web Technical Q&As 2007-03-05
Advertising a Bonjour service on a specific set of networking interfaces. (HTML)
QA1513: Explains how to register a Bonjour service only on a specific set of networking interfaces.
Bonjour Technical Q&As 2007-02-12
Security Framework Error Codes (HTML)
QA1499: Explains how to interpret errors returned by the Security Framework with an overview of Security error handling.
Security Technical Q&As 2006-11-16
The state of mDNSResponder (HTML)
QA1339: Explains how to obtain information regarding the internal state of mDNSResponder.
Bonjour, Darwin, Hardware & Drivers Technical Q&As 2006-10-03
The "packages" node in the device tree (HTML)
HW90: Describes the "packages" node in the Open Firmware device tree.
Hardware & Drivers Technical Q&As 2006-02-22
Mixing link-local IP addresses and routable IP addresses (HTML)
QA1357: Explains how to enable communication between devices with link-local addresses and devices with routable addresses.
Bonjour, Darwin, Hardware & Drivers, Printing Technical Q&As 2005-07-06
Problems getting Bonjour TXT record information (HTML)
QA1389: Explains why you might have problems retrieving TXT record information from a CFNetServiceRef or NSNetService.
Bonjour, Carbon, Cocoa, Core Foundation Technical Q&As 2005-07-06
Resolves may return an IPv6 address in Panther (HTML)
QA1298: Explains why you get an IP address of 0.0.0.0 when resolving a Bonjour service.
Bonjour, Carbon, Cocoa, Core Foundation Technical Q&As 2005-01-10
Sending an Email (HTML)
QA1084: Shows how to create an email in the user's prefered email application.
Internet & Web Technical Q&As 2004-11-05
Bonjour enforces the TXT record format in Panther (HTML)
QA1306: Explains how mDNSResponder enforces the proper TXT record format in Panther.
Bonjour, Carbon, Cocoa, Core Foundation, Darwin Technical Q&As 2004-07-14
Bonjour service types used in Mac OS X (HTML)
QA1312: Provides a list of common Bonjour service types used in Mac OS X.
Bonjour Technical Q&As 2004-07-14
Updating the TXT record of a Bonjour service (HTML)
QA1302: Explains how to update a Bonjour TXT record while running on either Jaguar or Panther.
Bonjour, Carbon, Cocoa, Core Foundation, Darwin Technical Q&As 2004-07-14
Discovering all advertised Bonjour service types (HTML)
QA1337: Explains how to discover all Bonjour service types being advertised on the local network.
Bonjour, Carbon, Cocoa, Core Foundation, Darwin, Hardware & Drivers Technical Q&As 2004-06-01
Bonjour enforces the service type format in Panther (HTML)
QA1198: Explains why registering a Bonjour service might fail on Panther.
Bonjour, Carbon, Cocoa Technical Q&As 2004-03-23
Use the Computer Name when registering your Bonjour service (HTML)
QA1228: Explains why you should use the Computer Name when advertising a Bonjour service.
Bonjour, Carbon, Cocoa Technical Q&As 2004-03-05
Clearing mDNSResponder's cached records (HTML)
QA1310: Clearing the Bonjour service cache (mDNSResponder's cached records) for testing purposes.
Bonjour Technical Q&As 2004-02-11
Duplicate Bonjour services while browsing (HTML)
QA1333: Explains how to work with multiple network interfaces when browsing for Bonjour services.
Bonjour Technical Q&As 2004-02-06
Use empty string for Bonjour domains (HTML)
QA1331: Explains what to specify for the domain parameter when using Bonjour API's.
Bonjour Technical Q&As 2004-02-06
Downloading through a proxy server in Mac OS X (HTML)
QA1296: Explains when downloading through a proxy server will work, and when it will fail.
Carbon, Cocoa, Core Foundation Technical Q&As 2003-10-29
URL Access vs. CFNetwork (HTML)
QA1291: Explains when to choose URL Access or CFNetwork when downloading files from within your application.
Carbon Technical Q&As 2003-10-29
Installing an I/O Kit KEXT Without Rebooting (HTML)
QA1319: Describes the state of the art of installing I/O Kit kernel extensions (KEXTs) without requiring a restart.
Hardware & Drivers Technical Q&As 2003-10-28
Bonjour TXT record rate limiting in Panther (HTML)
QA1293: Explains how mDNSResponder implements TXT record rate limiting in Panther.
Bonjour, Carbon, Cocoa Technical Q&As 2003-10-23
Registering a Bonjour service multiple times (HTML)
QA1311: Explains why registering the same Bonjour service twice on the same machine doesn't cause a name conflict.
Bonjour Technical Q&As 2003-10-23