  
  
  def dhcp_conf(interface):
-@@ -810,14 +828,19 @@
+@@ -739,6 +746,11 @@
+     print "                      |_|                                "
+     print "                                                         "
+ 
++    def raise_exception_sigint(self,signum, frame):
++        raise KeyboardInterrupt()
++    import signal
++    signal.signal(signal.SIGTERM, raise_exception_sigint)
++
+     # Initialize a list to store the used interfaces
+     used_interfaces = list()
+ 
+@@ -789,7 +801,7 @@
+             interfaces.IwconfigCmdError, interfaces.IfconfigCmdError) as err:
+         print ("[{0}!{1}] " + str(err)).format(R, W)
+         shutdown()
+-
++    sys.stdout.flush()
+     # add the selected interfaces to the used list
+     used_interfaces = [mon_iface, ap_iface]
+ 
+@@ -810,14 +822,11 @@
  
      print '[' + T + '*' + W + '] Cleared leases, started DHCP, set up iptables'
  

diff -Naur wifiphisher/requirements.txt wifiphisher-fork/requirements.txt
--- wifiphisher/requirements.txt	1970-01-01 00:00:00.000000000 +0000
+++ wifiphisher-fork/requirements.txt	2016-05-04 16:09:40.643789000 +0000
@@ -0,0 +1,4 @@
+argparse
+logging
+scapy
+mock
diff -Naur wifiphisher/wifiphisher/pywifiphisher.py wifiphisher-fork/wifiphisher/pywifiphisher.py
--- wifiphisher/wifiphisher/pywifiphisher.py	2016-05-04 18:57:39.163353950 +0000
+++ wifiphisher-fork/wifiphisher/pywifiphisher.py	2016-05-04 20:29:21.459782000 +0000
@@ -31,12 +31,12 @@
 def parse_args():
     # Create the arguments
     parser = argparse.ArgumentParser()
-    parser.add_argument(
-        "-c",
-        "--channel",
-        help="Choose the channel for monitoring. Default is channel 1",
-        default="1"
-    )
+    # parser.add_argument(
+    #     "-c",
+    #     "--channel",
+    #     help="Choose the channel for monitoring. Default is channel 1",
+    #     default="1"
+    # )
     parser.add_argument(
         "-s",
         "--skip",
@@ -99,11 +99,11 @@
               "the access points and only send them to client/AP pairs"
               ),
         action='store_true')

+    APs = [[args.ap_ch, args.ap_essid, args.ap_bssid]]
+    channel, essid, ap_mac = APs[0]
+
 
     # get the correct template
     template = select_template(args.template)
@@ -863,7 +872,6 @@
               '] Could not set IP address on %s!' % ap_iface
               )
         shutdown()
-    os.system('clear')
     print ('[' + T + '*' + W + '] ' + T +
            essid + W + ' set up on channel ' +
            T + channel + W + ' via ' + T + mon_iface +
@@ -927,7 +935,7 @@
     # Main loop.
     try:
         while 1:
-            os.system("clear")
+            sys.stdout.flush()
             print "Jamming devices: "
             if os.path.isfile('/tmp/wifiphisher-jammer.tmp'):
                 proc = check_output(['cat', '/tmp/wifiphisher-jammer.tmp'])
