postuf/socks-proxy-async
最新稳定版本:v0.3.1
Composer 安装命令:
composer require postuf/socks-proxy-async
包简介
Lightweight asynchronous socks proxy for PHP
README 文档
README
Asynchronous SOCKS5 client library
Requirements
- PHP 7.4+
- Composer
- ext-sockets
Quick start
First of all, add library to your app user composer:
composer require postuf/socks-proxy-async
How it works
Say, you have a socket and an event loop:
$socket = new SocketAsync(/* ... */);
while(true) {
// process events
if (!$socket->ready()) {
$socket->poll();
} else {
// your logic ...
}
}
We create socket, set socket_set_nonblock, when socket is connected, isReady flag is set.
Internal logic is organized as state machine. You can extend it and add more steps, so that only $socket->poll() is called on event loop, then you just check the state and process received updates.
Testing
Tests require working proxy and http server to be up and running, use node/proxy.js to start proxy, node/http/start.sh (./start.sh within its subdir) to start http server.
By default, http server runs on port 8080, proxy occupies port 1080, tests use these ports.
DNS-related tests require dns server (node/named.js) to be up and running.
Make commands
-
make all - run all checks
-
make test - run tests
-
make cs - run codesniffer checks
-
make psalm - run psalm checks
-
make stan - run stan checks
-
make cs - run stan and psalm checks
-
make get-security - get security checker
-
make security - run security checker
统计信息
- 总下载量: 9.83k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 0
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-12-25