Skip to content

v1.0.3

Choose a tag to compare

@github-actions github-actions released this 06 Nov 09:52
· 15 commits to main since this release

Maintenance release: the native addon moves to current versions of its two main Rust libraries. Nothing changes for flows.

Highlights

  • Node-API layer on napi-rs 3. The bridge between Node.js and the Rust clients uses the new napi-rs 3 API. The JavaScript API, the values and the error messages are the same: the output of every call was compared byte for byte with 1.0.2.
  • AES library 0.9 for the S7CommPlus password login (legitimation), checked against the official NIST test vectors.
  • Checked against a real S7-1200 (read only) over S7comm and S7CommPlus.

Upgrade notes

None.

Details (CHANGELOG)

Changed

  • Node-API layer on napi 3 / napi-derive 3 (native API, no compat mode): results are built by ToNapiValue types, callbacks are weak thread-safe functions, status is converted with the serde-json feature instead of JSON.parse. The JS API and the values are the same (byte-identical output against the fake PLCs).
  • aes 0.9 (cipher 0.5) for the S7CommPlus legitimation.

Added

  • Tests: NIST SP 800-38A known-answer test for AES-256-CBC; test/addon.test.js for the shapes and value conversions at the Node-API boundary.

Full diff: v1.0.2...v1.0.3