привет. нужно для указанного процесса сделать перенаправление сетевых запросов (по сути, проксификатор). Есть уже прокси и есть сплайсинг connect()'a но в сумме не работает - подвисает после accept'a получается такая схема: connect(from process) -> splice connect and redirect to local proxy port -> accept -> parse headers (get Host) -> connect to host -> recv/send на последнем этапе глохнет все. и не пойму, в чем причина.
Пробую реализовать socks4 протокол использую 3proxy для тестов. В коннекте делаю send() пакета socks4 прописываю: версию, порт, IP. хост и юзер Ид не пишу * Compose socks4 request * * Request format * * +----+----+----+----+----+----+----+----+----+----+....+----+ * | VN | CD | DSTPORT | DSTIP | USERID |NULL| * +----+----+----+----+----+----+----+----+----+----+....+----+ * # of bytes: 1 1 2 4 variable 1 не понятно, как порт выставлять?! htons() не работает. пишу в младший байт порт и все ок.. сервер видит запрос сокс4 - ок * +----+----+----+----+----+----+----+----+ * | VN | CD | DSTPORT | DSTIP | * +----+----+----+----+----+----+----+----+ * # of bytes: 1 1 2 4 Получаю ответ, но не могу его распаковать. VN - 0 CD - 90 (access granted) дальше какая-то фигня идет - не получается распаковать. и после заголовка идет html код - bad request.... (это уже ответ удаленного сервера)?