root# python flare.py File "flare.py", line 48 return Trueif(__name__ == "__main__"): ^ SyntaxError: invalid syntax
On Aug 20, 2010, at 3:44 PM, Simbwa Phillip wrote: Hi everyone,
Like i promised, i have finished the 1 click 3g modem unlock app with GUI. I have called it 3G Flare..
Some could test run it on Linux or Mac OSX and give me some feedback... I haven't tested it thoroughly coz all the modems around me are now unlocked!
To run this little baby, please follow the instructions below:
1. 3G Flare requires the following python modules to be already installed - pySerial (available here )
- pyhumod (available here ) - easygui (available here )
2. If you already have the above modules installed proceed with coping the code below and saving it as flare.py
#!/usr/bin/env python
from easygui import * import sys, os, hashlib, humod
UNLOCK_SALT = "5e8dd316726b0335"
USB_DEV = "/dev/ttyUSB" USB_DEV_MAX = 5
# This class ensures that we don't kinda get choked by stderr issues class NullDevice: def write(self,s): pass
def release_link(data):
os.system("kill -15 `lsof "+data+" | awk \"{print$2}\"`")
def enum_usbdev(): devs = [] for i in xrange(USB_DEV_MAX): usbdev = USB_DEV+str(i)
if os.path.exists(usbdev): devs.append(usbdev) return devs
def show_code(imei,salt): digest = hashlib.md5((imei+salt).lower()).digest() code = 0
for i in xrange(0,4): code += (ord(digest[i])^ord(digest[4+i])^ord(digest[8+i])^ord(digest[12+i])) << (3-i)*8 code &= 0x1ffffff code |= 0x2000000
return code
def unlock_modem(): sys.stderr = NullDevice() serial_conn = enum_usbdev() data = ""> ctrl = serial_conn[1] release_link(data)
mod = humod.Modem(data,ctrl) imei = mod.show_imei() if os.system("cat "+data+" &"): return False if os.system("echo -e 'AT^CARDLOCK=\""+str(show_code(imei,UNLOCK_SALT))+"\"\\r' > "+data):
return False release_link(data) return Trueif(__name__ == "__main__"): sys.stderr = NullDevice() while 1: msg = "Select Modem Operation"
title = "::3G Flare Easy & Geeky Way:: Unlock your 3G Modem" actions = ['1. Unlock 3G Modem', '2. Load Airtime', '3. Check Airtime balance','4. Terminate Flare']
action = ""> if(action == '1. Unlock 3G Modem'): unlocked = unlock_modem() if(unlocked):
msgbox("3G Modem unlocked. Fly on any network my friend","3G Flare") else: msgbox("Unlocking failed","3G Flare")
if(action == '2. Load Airtime'): msgbox("Load Airtime module still under beta testing.. Coming soon","3G Flare")
if(action == '3. Check Airtime balance'):
msgbox("Check Airtime balance module under beta testing.. Coming soon","3G Flare") if(action == '4. Terminate Flare'): sys.exit(0)
# ------------------------- Code ends here ---------------------------------------------
3. The app needs to be run as root since it tries to free data link of the modem in case its being held by another program like wvdial
Hence on your terminal start flare like so:
# python flare.py
4. Then the rest is self explanatory
Cheers,
::Phillip::
_______________________________________________ LUG mailing list [email protected] http://kym.net/mailman/listinfo/lug
LUG is generously hosted by INFOCOM http://www.infocom.co.ug/
All Archives can be found at http://www.mail-archive.com/[email protected]/
The above comments and data are owned by whoever posted them (including attachments if any). The List's Host is not responsible for them in any way. ---------------------------------------
Sincerely,

Kiggundu Mukasa
SERVAL LTD. Plot 80 Kanjokya Street P.O. Box 24284 Kampala, Uganda Tel: +256 772 972255 +256 414 571779 Fax: +256 312 262122 http://serval.ug
|
_______________________________________________
LUG mailing list
[email protected]
http://kym.net/mailman/listinfo/lug
LUG is generously hosted by INFOCOM http://www.infocom.co.ug/
All Archives can be found at http://www.mail-archive.com/[email protected]/
The above comments and data are owned by whoever posted them (including
attachments if any). The List's Host is not responsible for them in any way.
---------------------------------------