!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/wa.picotech.app/public_html/node_modules/node-cleanup/tests/   drwxr-xr-x
Free 28.41 GB of 117.98 GB (24.08%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     multiple.js (8.56 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// tests in which spawned child installs multiple cleanup handlers

var t = require('tap');
var lib = require('./lib/library');

t.test("multiple handlers: normal exit", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        // no signal
    }, {
        exitReason: 0,
        stdout: "cleanup1 cleanup2",
        stderr: ""
    });
});

t.test("multiple handlers: uncaught exception - custom messages", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: {
            uncaughtException: "Not the surprise you're looking for."
        },
        messages2: {
            uncaughtException: "Look! A surprise!"
        },
        return1: true,
        return2: true,
        exception: true,
        uninstall: false
    }, function (childPID) {
        // no signal
    }, {
        exitReason: 1,
        stdout: "cleanup1 cleanup2",
        stderr: /^Look! A surprise!/
    });
});

t.test("multiple handlers: uncaught exception - removed message",
    function (t) {
        lib.test(t, {
            child: 'stackable',
            handlers: 2,
            messages1: {
                uncaughtException: "Not the surprise you're looking for."
            },
            messages2: {
                uncaughtException: ""
            },
            return1: true,
            return2: true,
            exception: true,
            uninstall: false
        }, function (childPID) {
            // no signal
        }, {
            exitReason: 1,
            stdout: "cleanup1 cleanup2",
            stderr: /tests[\/\\]bin[\/\\]stackable.js/
        });
    }
);

t.test("multiple handlers: uncaught exception - added message",
    function (t) {
        lib.test(t, {
            child: 'stackable',
            handlers: 2,
            messages1: {
                ctrl_C: "{^C}}"
            },
            messages2: {
                uncaughtException: "Oops!"
            },
            return1: true,
            return2: true,
            exception: true,
            uninstall: false
        }, function (childPID) {
            // no signal
        }, {
            exitReason: 1,
            stdout: "cleanup1 cleanup2",
            stderr: /^Oops!/
        });
    }
);

t.test("multiple handlers: uncaught exception - no message", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: true,
        uninstall: false
    }, function (childPID) {
        // no signal
    }, {
        exitReason: 1,
        stdout: "cleanup1 cleanup2",
        stderr: /tests[\/\\]bin[\/\\]stackable.js/
    });
});

t.test("multiple handlers: child SIGINT - both heeded, custom messages",
    function (t) {
        lib.test(t, {
            child: 'stackable',
            handlers: 2,
            messages1: {
                ctrl_C: "{^C1}"
            },
            messages2: {
                ctrl_C: "{^C2}"
            },
            return1: true,
            return2: true,
            exception: false,
            uninstall: false
        }, function (childPID) {
            process.kill(childPID, 'SIGINT');
        }, {
            exitReason: 'SIGINT',
            stdout: "cleanup1 cleanup2",
            stderr: "{^C2}\n"
        });
    }
);

t.test("multiple handlers: child SIGINT - first heeded, custom messages",
    function (t) {
        lib.test(t, {
            child: 'stackable',
            handlers: 2,
            messages1: {
                ctrl_C: "{^C1}"
            },
            messages2: {
                ctrl_C: "{^C2}"
            },
            return1: true,
            return2: false,
            exception: false,
            uninstall: false
        }, function (childPID) {
            process.kill(childPID, 'SIGINT');
        }, {
            exitReason: 0,
            stdout: "cleanup1 cleanup2",
            stderr: ""
        });
    }
);

t.test("multiple handlers: child SIGINT - second heeded, custom messages",
    function (t) {
        lib.test(t, {
            child: 'stackable',
            handlers: 2,
            messages1: {
                ctrl_C: "{^C1}"
            },
            messages2: {
                ctrl_C: "{^C2}"
            },
            return1: false,
            return2: true,
            exception: false,
            uninstall: false
        }, function (childPID) {
            process.kill(childPID, 'SIGINT');
        }, {
            exitReason: 0,
            stdout: "cleanup1 cleanup2",
            stderr: ""
        });
    }
);

t.test("multiple handlers: child SIGINT - removed message", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: {
            ctrl_C: "{^C1}"
        },
        messages2: {
            ctrl_C: ""
        },
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        process.kill(childPID, 'SIGINT');
    }, {
        exitReason: 'SIGINT',
        stdout: "cleanup1 cleanup2",
        stderr: ""
    });
});

t.test("multiple handlers: child SIGINT - added message", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: {
            uncaughtException: "Oops!"
        },
        messages2: {
            ctrl_C: "{^C1}"
        },
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        process.kill(childPID, 'SIGINT');
    }, {
        exitReason: 'SIGINT',
        stdout: "cleanup1 cleanup2",
        stderr: "{^C1}\n"
    });
});

t.test("multiple handlers: child SIGQUIT", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        process.kill(childPID, 'SIGQUIT');
    }, {
        exitReason: 'SIGQUIT',
        stdout: "cleanup1 cleanup2",
        stderr: ""
    });
});

t.test("multiple handlers: child SIGTERM", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        process.kill(childPID, 'SIGTERM');
    }, {
        exitReason: 'SIGTERM',
        stdout: "cleanup1 cleanup2",
        stderr: ""
    });
});

t.test("multiple handlers: child SIGKILL", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: false,
        uninstall: false
    }, function (childPID) {
        process.kill(childPID, 'SIGKILL');
    }, {
        exitReason: 'SIGKILL',
        stdout: "",
        stderr: ""
    });
});

t.test("multiple handlers/uninstall: normal child exit", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: null,
        messages2: null,
        return1: true,
        return2: true,
        exception: false,
        uninstall: true
    }, function (childPID) {
        // no signal
    }, {
        exitReason: 0,
        stdout: "",
        stderr: ""
    });
});

t.test("multiple handlers/uninstall: uncaught exception", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: {
            uncaughtException: "Shouldn't show."
        },
        messages2: {
            uncaughtException: "Also shouldn't show."
        },
        return1: true,
        return2: true,
        exception: true,
        uninstall: true
    }, function (childPID) {
        // no signal
    }, {
        exitReason: 1,
        stdout: "",
        stderr: /tests[\/\\]bin[\/\\]stackable.js/
    });
});

t.test("multiple handlers/uninstall: child SIGINT", function (t) {
    lib.test(t, {
        child: 'stackable',
        handlers: 2,
        messages1: {
            ctrl_C: "{^C1}"
        },
        messages2: {
            ctrl_C: "{^C2}"
        },
        return1: true,
        return2: true,
        exception: false,
        uninstall: true
    }, function (childPID) {
        process.kill(childPID, 'SIGINT');
    }, {
        exitReason: 'SIGINT',
        stdout: "",
        stderr: ""
    });
});

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0054 ]--