Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.20
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
nodejs /
@webassemblyjs /
validation /
esm /
[ HOME SHELL ]
Name
Size
Permission
Action
type-checker
[ DIR ]
drwxr-xr-x
duplicated-exports.js
734
B
-rw-r--r--
import-order.js
1.38
KB
-rw-r--r--
imports.js
548
B
-rw-r--r--
index.js
2.57
KB
-rw-r--r--
is-const.js
1.32
KB
-rw-r--r--
type-checker.js
9.14
KB
-rw-r--r--
type-inference.js
1.9
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : type-inference.js
import { signatures } from "@webassemblyjs/ast"; export function typeEq(l, r) { if (l.length !== r.length) { return false; } for (var i = 0; i < l.length; i++) { if (l[i] != r[i]) { return false; } } return true; } export function getType(instrs) { if (instrs.length === 0) { return; } // FIXME(sven): this shoudln't be needed, we need to inject our end // instructions after the validations var last = instrs[instrs.length - 1]; if (last.id === "end") { last = instrs[instrs.length - 2]; } // It's a ObjectInstruction if (typeof last.object === "string") { // u32 are in fact i32 // $FlowIgnore if (last.object === "u32") { // $FlowIgnore last.object = "i32"; } // $FlowIgnore var opName = "".concat(last.object, ".").concat(last.id); var signature = signatures[opName]; if (typeof signature === "undefined") { throw new Error("Unknow type signature for instruction: " + opName); } return signature[1]; } // Can't infer it, need to interpreter it if (last.id === "get_global" || last.id === "get_local") { return; } if (last.type === "LoopInstruction") { // $FlowIgnore: if id is `loop` we can assume it's a LoopInstruction var loop = last; if (loop.resulttype != null) { return [loop.resulttype]; } } if (last.type === "IfInstruction") { // $FlowIgnore: if id is `loop` we can assume it's a LoopInstruction var ifInstruction = last; var res = []; // The type is known if (typeof ifInstruction.result === "string") { res = [ifInstruction.result]; } // Continue on the branches var leftType = getType(ifInstruction.consequent) || []; var rightType = getType(ifInstruction.alternate) || []; if (typeEq(leftType, res) === false || typeEq(rightType, res) === false) { throw new Error("type mismatch in if branches"); } return res; } }
Close