ソースを参照

Ported the TCPIPChecksum operation.
Main content has been moved to the IP lib file, as it is used in multiple files.
Changed the name, due to it originally containing a backslash, which caused issues with the script.

Callum Fraser 7 年 前
コミット
161f89c038
1 ファイル変更40 行追加0 行削除
  1. 40 0
      src/core/operations/TCPIPChecksum.mjs

+ 40 - 0
src/core/operations/TCPIPChecksum.mjs

@@ -0,0 +1,40 @@
+/**
+ * @author n1474335 [n1474335@gmail.com]
+ * @copyright Crown Copyright 2016
+ * @license Apache-2.0
+ */
+
+import Operation from "../Operation";
+import {calculateTCPIPChecksum} from "../lib/Ip";
+
+/**
+ * TCP/IP Checksum operation
+ */
+class TCPIPChecksum extends Operation {
+
+    /**
+     * TCP/IPChecksum constructor
+     */
+    constructor() {
+        super();
+
+        this.name = "TCP/IP Checksum";
+        this.module = "Hashing";
+        this.description = "Calculates the checksum for a TCP (Transport Control Protocol) or IP (Internet Protocol) header from an input of raw bytes.";
+        this.inputType = "byteArray";
+        this.outputType = "string";
+        this.args = [];
+    }
+
+    /**
+     * @param {byteArray} input
+     * @param {Object[]} args
+     * @returns {string}
+     */
+    run(input, args) {
+        return calculateTCPIPChecksum(input);
+    }
+
+}
+
+export default TCPIPChecksum;