Skip to content
This repository has been archived by the owner on Feb 5, 2024. It is now read-only.

check.cgi

Spotlight edited this page Dec 2, 2017 · 3 revisions

Example from Wii:

POST /cgi-bin/check.cgi HTTP/1.1
Host: mtw.rc24.xyz
User-Agent: WiiConnect24/2.2.255.0
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 79

mlchkid=MLCHKID&chlng=CHALLENGE
  • mlchkid is defined in nwc24msg.cfg.
  • chlng is a challenge. Why Nintendo wants the server to solve a challenge is a really good question, usually it's the other way around. This has not yet been figured out, and RiiConnect24 released an IOS patch to null out this check.

Example from server in response:

HTTP/1.1 200 OK
Content-Type: text/plain;charset=utf-8
X-Wii-Mail-Check-Span: 10
X-Wii-Mail-Download-Span: 10
Date: Sun, 26 Nov 2017 02:43:03 GMT
Content-Length: 120
Connection: close

cd=100
msg=Success.
res=ce4cf29a3d6be1c2619172b5cb298c8972d450ad
mail.flag=PhGlUTvXPQmgwzArwOWPUfXrlmgtNKLTE
interval=10
  • res is the response to the challenge. The string in the above example isn't a valid response, it's actually the challenge's hmac. Same length, I just made it up.
  • flag is if the Wii should continue to POST receive.cgi. If the flag is anything but 0, it'll continue. If it's 0, the Wii will stop.
  • interval is the amount the Wii should repeat this process again. See also, X-Wii-Mail-Check-Span and X-Wii-Mail-Download-Span.
Clone this wiki locally