Browse Source

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 năm trước cách đây
mục cha
commit
161f89c038
1 tập tin đã thay đổi với 40 bổ sung0 xóa
  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;