Remise a zero du controle parental de la Wii
<%
import time
ctime = time.time()
def opt_date(delta):
t = time.gmtime(ctime + delta * 3600 * 24)
if delta == 0:
selected = ' selected="selected"'
else:
selected = ""
return ''%(t.tm_mon,t.tm_mday,selected,time.strftime("%a, %d %b %Y",t))
class CRC32:
def __init__(self):
self.gentable()
def crc32(self, input, crc=0xffffffffl):
count = len(input)
i = 0
while count != 0:
count -= 1
temp1 = (crc >> 8) & 0xFFFFFF
temp2 = self.table[(crc ^ ord(input[i])) & 0xFF]
crc = temp1 ^ temp2
i += 1
return crc
def gentable(self):
self.table = []
for i in range(256):
crc = i
for j in range(8):
if crc & 1:
crc = (crc >> 1) ^ 0xEDB88320l
else:
crc >>= 1
self.table.append(crc)
def error(s):
%>
<%= s %>
<%
def process():
try:
int(form["number"]) #validate
if len(form["number"]) != 8 or form["number"][0] == "-":
raise ValueError()
except:
error("Entrez un numero de confirmation valide, svp. (8 chiffres)")
return
try:
int(form["date"]) #validate
if len(form["date"]) != 4 or form["date"][0] == "-":
raise ValueError()
except:
error("Date invalide")
return
fullnum = form["date"] + form["number"][4:8]
crc = CRC32().crc32(fullnum)
code = ((crc ^ 0xaaaa) + 0x14c1) % 100000
%>
Votre code de debloquage: <%= "%05d"%code %>
<%
if form.has_key("submit"):
process()
%>