Hello everyone :)
I have one problem with that function in C

int calc_passcode(const char* pass, char* code) {
    int magic1 = 0x50305735;
    int magic2 = 0x12345671;
    int sum = 7;
    char z;
    while ((z = *pass++) != 0) {
        if (z == ' ') continue;
        if (z == '\t') continue;
        magic1 ^= (((magic1 & 0x3f) + sum) * z) + (magic1 << 8);
        magic2 += (magic2 << 8) ^ magic1;
        sum += z;
    }
    magic1 &= 0x7fffffff;
    magic2 &= 0x7fffffff;
    return sprintf(code, "%08x%08x", magic1, magic2);
} // end _calc_passcode();

Can someone help me to rewrite it to python?

There is the same function, in PHP:

        function _calc_passcode($pass) {

                $magic1 = 0x50305735;
                $magic2 = 0x12345671;
                $sum = 7;
                for ($i = 0; $i < strlen($pass); $i++) {
                        $z = ord($pass[$i]);
                        if ($z == 32)
                                continue;
                        if ($z == 9)
                                continue;
                        $magic1 = $magic1 ^ (((($magic1 & 0x3f) + $sum) * $z) + 
($magic1 <<
8));
                        $magic2 = $magic2 + (($magic2 << 8) ^ $magic1);
                        $sum += $z;
                        $magic1 = $magic1 & 0x7fffffff;
                        $magic2 = $magic2 & 0x7fffffff;
                }
                return sprintf('%08x%08x', $magic1, $magic2);

        } // end _calc_passcode();

Please... its very important to me
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to