Changes

591 bytes added ,  01:55, 22 September 2014
Line 73: Line 73:  
| Little-endian ID, for [[Download Play]] this is 0x55.
 
| Little-endian ID, for [[Download Play]] this is 0x55.
 
|}
 
|}
 +
 +
==Network structure==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Size
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x6
 +
| This is the MAC address of the host. This is all-zero on the host, like with [[NWMUDS:BeginHostingNetwork]].
 +
|-
 +
| 0xD
 +
| 0x3
 +
| This is the OUI value for use with the beacon tags. Normally this is 001F32.
 +
|-
 +
| 0x10
 +
| 0x4
 +
| wlancommID
 +
|-
 +
| 0x14
 +
| 0x1
 +
| This ID is also stored at offset 0xE in the CTR-generation structure.
 +
|-
 +
| 0x1C
 +
| 0x4
 +
| ?
 +
|}
 +
 +
This 0x108-byte structure is used for [[NWMUDS:BeginHostingNetwork]], [[NWMUDS:ConnectToNetwork]], etc. This data is stored as big-endian.
    
== UDS Beacons ==
 
== UDS Beacons ==
 
The UDS host broadcasts a beacon containing at least two Nintendo-vendor tags, normally the data stored in these tags are static. The second tag contains the big-endian u32 networkID, used by the clients when connecting to the host and for the above CCMP key generation. The Nintendo-vendor tag(s) following the first two are unique to the process using UDS, these tags are used for broadcasting metadata regarding the host.
 
The UDS host broadcasts a beacon containing at least two Nintendo-vendor tags, normally the data stored in these tags are static. The second tag contains the big-endian u32 networkID, used by the clients when connecting to the host and for the above CCMP key generation. The Nintendo-vendor tag(s) following the first two are unique to the process using UDS, these tags are used for broadcasting metadata regarding the host.