The SO Library is used to access the Internet from the Wii system. APIs to control connection to and disconnection from the Internet are provided, but no functionality is offered to control communications once connected. To do this, a higher-level library should be used.
The SO Library assumes the use of LAN (Ethernet) and Internet protocol 4 (IPv4) network environments. Environments using point-to-point protocol (PPP), PPP over Ethernet (PPPoE) and Internet protocol 6 (IPv6) are not currently supported.
In addition, the SO Library accesses LANs and the Internet using the Wii internal Wi-Fi module or the external Wii LAN adapter (Ethernet). Multiple network interfaces cannot be used simultaneously. Please read the NCD Library descriptions for more on choosing a network interface.
To use the APIs included in the SO library, link so[D].a.
Place the following header file in an include statement in the program's source code:
#include <revolution/so.h>
The following prefixes are reserved in the SO Library.
They include prefixes reserved for future functionality expansion.
| Prefix | Description |
| ARP | Address Resolution Protocol |
|---|---|
| DHCP | Dynamic Host Configuration Protocol |
| DNS | Domain Name System |
| ICMP | Internet Control Message Protocol |
| IF | InterFace |
| IGMP | Internet Group Management Protocol |
| IP | Internet Protocol |
| IP6 | Internet Protocol version 6 |
| MLD | Multicast Listener Discovery ( IPv6 ) |
| ND | Neighbor Discovery ( IPv6 ) |
| PPPOE | Point-to-Point Protocol Over Ethernet |
| SO | SOcket |
| TCP | Transmission Control Protocol |
| UDP | User Datagram Protocol |
The SO Library generally includes status monitoring for communication services performed by the system. Internal state transitions are as shown below:
SOLibraryConfig structure for more on the working buffer.
SOStartup[Ex] and SOCleanup may block for long periods of time before they finish processing. Consequently, we recommend that you prepare a thread for these functions separate from other processing such as rendering.
2007/08/06 Added Caution.
2007/03/01 Corrected errors.
2007/01/31 Initial version.
CONFIDENTIAL