#!/usr/sbin/python
from __future__ import print_function
import sys,os,pickle
from libbtproxy.argparser import args,parser
from libbtproxy.mitm import Btproxy
from libbtproxy.adapter import *


if args.addr_master and args.addr_slave:
    print( 'Running proxy on master ', args.addr_master, ' and slave ', args.addr_slave)

    btproxy = Btproxy(target_master = args.addr_master,
                    target_slave = args.addr_slave,
                    )
    if not args.repair and os.path.isfile(btproxy.pickle_path):
        old_btproxy=None
        with open(btproxy.pickle_path,'rb') as f:
            old_btproxy = pickle.load(f)
        if old_btproxy == btproxy:
            print()
            print('Loading last paired device settings... (use --repair to disable)')
            print()
            btproxy = old_btproxy
        else:
            print()
            print('Loading last paired device settings failed: '+old_btproxy.notequal)
            print()

    if args.interface:
        btproxy.setInterface(args.interface)

    btproxy.option(
        copy_addresses = args.copy_addresses,
        slave_name = args.slave_name,
        master_name = args.master_name,
        script = args.script,
    )

    btproxy.mitm()

elif args.set_address: 
    if not args.interface:
        print('Specify which interface to use (-i)')
        sys.exit()
    if args.set_address:
        adaptor_address(args.interface,args.set_address)


elif args.list:
    print('Run "hcitool dev" to see adaptors')
    print('Run "hciconfig -a" to see more adaptor information')
else:
    parser.print_help()


