} $socklist[$k] = $sockinfo; } } //远程连接已连接本地跟本地连接,纯转发 if ($sockinfo['type'] == 3 || $sockinfo['type'] == 2 && $sockinfo['linkstate'] == 2) { sendbuf($sockinfo['tosock'], $sockinfo['recvbuf']); $sockinfo['recvbuf'] = ''; $socklist[$k] = $sockinfo; } } //可写 if (in_array($sock, $writefds)) { if ($sockinfo['linkstate'] == 0) { if ($sockinfo['type'] == 1) { sendpack($sock, NgrokAuth(), false); $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } if ($sockinfo['type'] == 2) { sendpack($sock, RegProxy($ClientId), false); $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } if ($sockinfo['type'] == 3) { $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } } } }
} $socklist[$k] = $sockinfo; } } //远程连接已连接本地跟本地连接,纯转发 if ($sockinfo['type'] == 3 || $sockinfo['type'] == 2 && $sockinfo['linkstate'] == 2) { sendbuf($sockinfo['tosock'], $sockinfo['recvbuf']); $sockinfo['recvbuf'] = ''; $socklist[$k] = $sockinfo; } } //可写 if (in_array($sock, $writefds)) { if ($sockinfo['linkstate'] == 0) { if ($sockinfo['type'] == 1) { sendpack($sock, NgrokAuth($options), false); $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } if ($sockinfo['type'] == 2) { sendpack($sock, RegProxy($ClientId), false); $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } if ($sockinfo['type'] == 3) { $sockinfo['linkstate'] = 1; $socklist[$k] = $sockinfo; } } } }