<div dir="ltr"><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><span style="color:rgb(0,0,0)">Greetings!</span></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><span style="color:rgb(0,0,0)">I wanted to share an update on the progress of the project. So far, the ability to detect the IP address and port that socket system calls are sending data to has been successfully implemented. Additionally, the capability to block system calls that are sending data to an IP address and port that is not the desired proxy.</span><br></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><font color="#000000">An option to kill the application if a proxy leak occurs has been added, which is useful for manual QA testing of applications. Furthermore, an option to allow proxy leaks but log any that occur has also been added, which is useful for automated testing of applications.</font></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><font color="#000000">Additionally, the capability to use the environment variables that Tor Browser uses, such as TOR_SOCKS_PORT, to decide what the desired proxy is, has been included.</font></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap">SOCKSification is currently being implemented. The approach is to intercept the connect syscall's entry point and modify the destination IP/Port by manipulating the syscall. The exit of the connect syscall is then intercepted in order to capture the returning file descriptor representing the established socket. The file descriptor is duplicated using pidfd getfd, then a SOCKS5 handshake is done.<br></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><font color="#000000">Overall, the project is progressing well and any suggestions are much welcomed.</font></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><a href="https://github.com/namecoin/heteronculous-horklump">Github Repository</a></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><a href="https://www.namecoin.org/2022/11/29/introducing-intern-robert-nganga.html">Project Summary</a><br></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><font color="#000000" style="background-color:rgb(255,255,255)">Thank You,</font></p><p style="border:0px solid rgb(217,217,227);box-sizing:border-box;margin:1.25em 0px 0px;font-family:Söhne,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px;white-space:pre-wrap"><font color="#000000" style="background-color:rgb(255,255,255)">Robert.</font></p><span style="color:rgb(51,51,51);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:16px"></span></div>