• minus

    I don’t think this is feasible with iOS. I tried running

    socket.socket(s.AF_INET,s.SOCK_RAW,s.IPPROTO_ICMP)
    

    as part of an experimental host scanner and got operation not permitted. It might work on a rooted device but I’m not going to do that.

    Cheers

    posted in Pythonista read more
  • minus

    import socket as s
    import threading
    import sys
    import os
    
    def startServer():
        host='localhost'
        port=9999
        
        server=s.socket(s.AF_INET,s.SOCK_STREAM)
        server.bind((host,port))
        server.listen(5)
        
        print('[*] listening on '+ host +':'+ str(port))
        return server
        
    
    def handleClient(client):
        request=client.recv(1024)
        
        print('[*] handling request ' + str(request))
        
        client.send('ACK!'.encode('utf-8'))
        client.close()
        
    def run():
        server=startServer()
        
        while True:
            try:
                (client,addr)=server.accept()
                
                host=addr[0]
                port=str(addr[1])
                
                print('Accepted connection from '+ host +':'+ port)
                
                client_handler=threading.Thread(target=handleClient, args=(client,))
                
                client_handler.start()
            except KeyboardInterrupt:
                if client:
                    client.close()
                
                break
                print('[*] Attempting shutdown.')
    

    I’m trying to stop the above script using the [x] button in the console. The server runs fine. I can trigger requests and it will respond, however, if I press the button nothing happens. The button itself remains active and I can press it as much as I want to but nothing happens. Also, entering expressions in the command line and pressing return does nothing. It’s as if the console has stopped working. Only shutting down Pythonista manually will stop the execution.

    I’m running an iPhone 7 plus with iOS 11.4.1 and Pythonista 3.2.

    posted in Pythonista read more

Internal error.

Oops! Looks like something went wrong!