From WiiBrew
< /shared2‎ | sys‎ | net‎ | 02
Jump to navigation Jump to search

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

typedef struct _connection
u8 selected is 8 flags:
 1->Connection selected 
   |  1->Internet test passed
   |   |
   1 0 1 0  0 1 1 0
         |    | | |
         |    | | 0->wireless 1-> wired (lan)
         |    | 1->DHCP DNS
         | 1->DHCP IP
       1->use proxy
A manual settings wireless connection without proxy looks like 1 0 1 0 0 0 0 0
    u8 selected;
	u8 padding_1[3];
	u8 ip[4];//wii ip adress
	u8 netmask[4];
	u8 gateway[4];
	u8 dns1[4];
	u8 dns2[4];
	u8 padding_2[2];
	u16 mtu; //valid values are 0 and 576-1500 range
    u8 padding_3[8];	// 0x00 padding?
	u8 use_proxy;            //0x00 -> no proxy //0x01 use proxy
	u8 use_proxy_userandpass; //0x00 -> don't use user and password //0x01 use user and password
	u8 padding_p1[2]; //0x00
	u8 proxy_name[255];
	u8 padding_p2; //0x00
	u16 proxy_port; // 0-34463 range
	u8 proxy_username[32];
	u8 padding_p3; //0x00
	u8 proxy_password[32];
	u8 padding_4; //0x00
//This is a copy of the proxy settings	
	u8 use_proxy_copy;            //0x00 -> no proxy //0x01 use proxy
	u8 use_proxy_userandpass_copy; //0x00 -> don't use user and password //0x01 use user and password
	u8 padding_p1_copy[2]; //0x00
	u8 proxy_name_copy[255];
	u8 padding_p2_copy; //0x00
	u16 proxy_port_copy; // 0-34463 range
	u8 proxy_username_copy[32];
	u8 padding_p3_copy; //0x00
	u8 proxy_password_copy[32];
	u8 padding_5[1297]; //0x00	
//Start of wireless only settings
    u8 ssid[32];		// Access Point name.
    u8 padding_6;		// 0x00
    u8 ssid_length;		// length of ssid[] (AP name) in bytes.
    u8 padding_7[2];		// 0x00
    u8 padding_8;		// 0x00
    u8 encryption;		// (Probably) Encryption.  OPN: 0x00, WEP64: 0x01, WEP128: 0x02 WPA-PSK (TKIP): 0x04, WPA2-PSK (AES): 0x05, WPA-PSK (AES): 0x06
    u8 padding_9[2];		// 0x00
    u8 padding_10;		// 0x00
    u8 key_length;		// length of key[] (encryption key) in bytes.
						// for WEP it's 0x00
    u8 padding_11[2];		// 0x00
    u8 key[64];		// Encryption key
					//For a WEP key, they key is repeated 4 times (52 bytes) then padded with zeroes
    u8 padding_12[236];		// 0x00

Wired connections follow the same structure, except all related to ssid, encryption and keys is set to 0x00.

Note that all the paddings are a guess. Also, this all obtained by modifying ONLY the top wii connection (connection 1) while being the other two erassed (thus connection 1 and 2 are all set to 0x00).

More research is needed with this file.