Difference between revisions of "/shared2/sys/net/02/config.dat"

From WiiBrew
< /shared2‎ | sys‎ | net‎ | 02
Jump to navigation Jump to search
m (formatting)
Line 1: Line 1:
 
This file contains the Wii's Internet connection configuration. It is composed of an 8-byte header and 3 connection entries of 0x91C each.
 
This file contains the Wii's Internet connection configuration. It is composed of an 8-byte header and 3 connection entries of 0x91C each.
  
struct config
+
<source lang="C">
{
+
struct config
  u64 header; // 0x00000000 0x01070000
+
{
  connection connection1;
+
    u64 header; // 0x00000000 0x01070000
  connection connection2;
+
    connection connection1;
  connection connection3;
+
    connection connection2;
};
+
    connection connection3;
 +
};
 +
</source>
  
 
Where <code>connection</code> is defined as:
 
Where <code>connection</code> is defined as:
  
typedef struct {
+
<source lang="C">
  u8 selected; // 0x26: not selected.  0xa6: selected
+
typedef struct
  u8 padding_1[1987]; // 0x00
+
{
  u8 ssid[32]; // Access Point name.
+
    u8 selected; // 0x26: not selected.  0xa6: selected
+
    u8 padding_1[1987]; // 0x00
  u8 padding_2; // 0x00
+
    u8 ssid[32]; // Access Point name.
  u8 ssid_length; // length of ssid[] (AP name) in bytes.
+
 
  u8 padding_3[2]; // 0x00
+
    u8 padding_2; // 0x00
+
    u8 ssid_length; // length of ssid[] (AP name) in bytes.
  u8 padding_4; // 0x00
+
    u8 padding_3[2]; // 0x00
  u8 encryption; // (Probably) Encryption.  OPN: 0x00, WEP: 0x01, WPA-PSK (TKIP): 0x04, WPA2-PSK (AES): 0x05, WPA-PSK (AES): 0x06
+
 
  u8 padding_5[2]; // 0x00
+
    u8 padding_4; // 0x00
+
    u8 encryption; // (Probably) Encryption.  OPN: 0x00, WEP: 0x01, WPA-PSK (TKIP): 0x04, WPA2-PSK (AES): 0x05, WPA-PSK (AES): 0x06
  u8 padding_6; // 0x00
+
    u8 padding_5[2]; // 0x00
  u8 key_length; // length of key[] (encryption key) in bytes.
+
 
  u8 padding_7[2]; // 0x00
+
    u8 padding_6; // 0x00
+
    u8 key_length; // length of key[] (encryption key) in bytes.
  u8 key[64]; // Encryption key
+
    u8 padding_7[2]; // 0x00
+
 
  u8 padding_8[236]; // 0x00
+
    u8 key[64]; // Encryption key
} connection;
+
 
 +
    u8 padding_8[236]; // 0x00
 +
} connection;
 +
</source>
  
 
Since I don't have a wired adapted I didn't check how wired connections were recorded.  Also, I only checked connections with IPs assigned by DHCP so static connections may be different.
 
Since I don't have a wired adapted I didn't check how wired connections were recorded.  Also, I only checked connections with IPs assigned by DHCP so static connections may be different.

Revision as of 16:47, 19 June 2009

This file contains the Wii's Internet connection configuration. It is composed of an 8-byte header and 3 connection entries of 0x91C each.

struct config
{
    u64 header;		// 0x00000000 0x01070000
    connection connection1;
    connection connection2;
    connection connection3;
};

Where connection is defined as:

typedef struct
{
    u8 selected;		// 0x26: not selected.  0xa6: selected
    u8 padding_1[1987];	// 0x00
    u8 ssid[32];		// Access Point name.

    u8 padding_2;		// 0x00
    u8 ssid_length;		// length of ssid[] (AP name) in bytes.
    u8 padding_3[2];		// 0x00

    u8 padding_4;		// 0x00
    u8 encryption;		// (Probably) Encryption.  OPN: 0x00, WEP: 0x01, WPA-PSK (TKIP): 0x04, WPA2-PSK (AES): 0x05, WPA-PSK (AES): 0x06
    u8 padding_5[2];		// 0x00

    u8 padding_6;		// 0x00
    u8 key_length;		// length of key[] (encryption key) in bytes.
    u8 padding_7[2];		// 0x00

    u8 key[64];		// Encryption key

    u8 padding_8[236];		// 0x00
} connection;

Since I don't have a wired adapted I didn't check how wired connections were recorded. Also, I only checked connections with IPs assigned by DHCP so static connections may be different.

I'm also guessing is that u8 selected may actually be 8 flags:

Connection selected 
  |  Connection not blank?
  |   |
  1 0 1 0  0 1 1 0
             | |
             | Wireless?
          Dynamic IP?