Skip to content

Latest commit

 

History

History
24 lines (15 loc) · 1.26 KB

CHANGELOG.md

File metadata and controls

24 lines (15 loc) · 1.26 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project aims to follow Semantic Versioning.

[Unreleased]

Added

  • Added mc_free_buffer() and mc_free_string() as public helper APIs for releasing heap memory returned by string-oriented read APIs.
  • Added GitHub Actions CI workflow for Linux Make builds on push and pull request.

Changed

  • Updated public headers, README files, and protocol manual to document ownership rules for mc_read_string, mc_ascii_read_string, mc_read_plc_type, and mc_ascii_read_plc_type.
  • Updated example usage in main.c and documentation to prefer mc_free_string() over direct free() for library-returned strings.
  • Updated Make include path configuration to reference the actual source include directory.

Fixed

  • Removed nested locking between transaction-scoped request serialization and socket send/receive wrappers by introducing unlocked internal transport helpers.
  • Hardened PLC address parsing so malformed device strings fail fast instead of silently resolving to address zero.
  • Aligned binary mc_read_string() behavior with the documented contract by null-initializing the output pointer and returning a NUL-terminated heap string.