Software: Apache. PHP/8.1.30 uname -a: Linux server1.tuhinhossain.com 5.15.0-163-generic #173-Ubuntu SMP Tue Oct 14 17:51:00 UTC uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root) Safe-mode: OFF (not secure) /home/picotech/.nvm/versions/node/v18.17.1/lib/node_modules/pm2/node_modules/js-git/net/ drwxr-xr-x | |
| Viewing file: Select action/file-type: "use strict";
var makeChannel = require('culvert');
var wrapHandler = require('../lib/wrap-handler');
module.exports = function (proxyUrl) {
if (proxyUrl[proxyUrl.length - 1] !== "/") proxyUrl += "/";
return function connect(host, port, onError) {
port = port|0;
host = String(host);
if (!port || !host) throw new TypeError("host and port are required");
onData = wrapHandler(onData, onError);
var serverChannel = makeChannel();
var clientChannel = makeChannel();
var socket = {
put: serverChannel.put,
drain: serverChannel.drain,
take: clientChannel.take
};
var connected = false;
var ws = new WebSocket(proxyUrl + "tcp/" + host + "/" + port);
ws.binaryType = "arraybuffer";
ws.onopen = wrap(onOpen, onError);
ws.onclose = wrap(onClose, onError);
ws.onmessage = wrap(onMessage, onError);
ws.onerror = wrap(onWsError, onError);
return {
put: clientChannel.put,
drain: clientChannel.drain,
take: serverChannel.take
};
function onOpen() {
ws.send("connect");
}
function onClose() {
socket.put();
}
function onMessage(evt) {
if (!connected && evt.data === "connect") {
connected = true;
socket.take(onData);
return;
}
socket.put(new Uint8Array(evt.data));
}
function onWsError() {
console.error(arguments);
throw new Error("Generic websocket error");
}
function onData(chunk) {
ws.send(chunk.buffer);
socket.take(onData);
}
};
};
function wrap(fn, onError) {
return function () {
try {
return fn.apply(this, arguments);
}
catch (err) {
onError(err);
}
};
}
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.004 ]-- |