Jump to content
Sign in to follow this  

Need tcp help

Recommended Posts


I am trying to make simple program that accept firefox.I meant I want display Firefox packets on my script's window.if I accept localhost's port 80 and I type localhost in firefox address bar then firefox should send some packets to localhost.right? now how I can see these packet using autoit? I wanna just make simple program that accept other program's connections.

I am just planning to do a simple proxy that works with any program, which means that I have to listen X port from localhost and then I gotta sent these packets to x IP address and then I gotta wait for reply and send packets to program that is connected with my proxy.

it's here example from help, with modified port number, but the problem is:When I connect to localhost with firefox I can't see anything on script's window.I need some one's help to turn it into proxy or at least listener that accept random connections.

#include <GUIConstantsEx.au3>

Opt('MustDeclareVars', 1)

;SERVER!! Start Me First !!!!!!!!!!!!!!!


Func Example()
    ; Set Some reusable info
    ; Set your Public IP address (@IPAddress1) here.
;   Local $szServerPC = @ComputerName
;   Local $szIPADDRESS = TCPNameToIP($szServerPC)
    Local $szIPADDRESS = @IPAddress1
    Local $nPORT = 80
    Local $MainSocket, $GOOEY, $edit, $ConnectedSocket, $szIP_Accepted
    Local $msg, $recv

    ; Start The TCP Services

    ; Create a Listening "SOCKET".
    ;   Using your IP Address and Port 33891.
    $MainSocket = TCPListen($szIPADDRESS, $nPORT)

    ; If the Socket creation fails, exit.
    If $MainSocket = -1 Then Exit

    ; Create a GUI for messages
    $GOOEY = GUICreate("My Server (IP: " & $szIPADDRESS & ")", 300, 200)
    $edit = GUICtrlCreateEdit("", 10, 10, 280, 180)

    ; Initialize a variable to represent a connection
    $ConnectedSocket = -1

    ;Wait for and Accept a connection
        $ConnectedSocket = TCPAccept($MainSocket)
    Until $ConnectedSocket <> -1

    ; Get IP of client connecting
    $szIP_Accepted = SocketToIP($ConnectedSocket)

    ; GUI Message Loop
    While 1
        $msg = GUIGetMsg()

        ; GUI Closed
        If $msg = $GUI_EVENT_CLOSE Then ExitLoop

        ; Try to receive (up to) 2048 bytes
        $recv = TCPRecv($ConnectedSocket, 2048)

        ; If the receive failed with @error then the socket has disconnected
        If @error Then ExitLoop

        ; Update the edit control with what we have received
        If $recv <> "" Then GUICtrlSetData($edit, _
                $szIP_Accepted & " > " & $recv & @CRLF & GUICtrlRead($edit))

    If $ConnectedSocket <> -1 Then TCPCloseSocket($ConnectedSocket)

EndFunc   ;==>Example

; Function to return IP Address from a connected socket.
Func SocketToIP($SHOCKET)
    Local $sockaddr, $aRet
    $sockaddr = DllStructCreate("short;ushort;uint;char[8]")

    $aRet = DllCall("Ws2_32.dll", "int", "getpeername", "int", $SHOCKET, _
            "ptr", DllStructGetPtr($sockaddr), "int*", DllStructGetSize($sockaddr))
    If Not @error And $aRet[0] = 0 Then
        $aRet = DllCall("Ws2_32.dll", "str", "inet_ntoa", "int", DllStructGetData($sockaddr, 3))
        If Not @error Then $aRet = $aRet[0]
        $aRet = 0

    $sockaddr = 0

    Return $aRet
EndFunc   ;==>SocketToIP
Edited by E1M1


Share this post

Link to post
Share on other sites

I also would greatly appreciate any help on this. I can even pay for a working script, which also processes https. Any ideas?

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  


Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.