Libosdp

Latest version: v3.0.8

Safety actively analyzes 701475 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

3.0.2

------

09 March 2024

Yet another minor release to address some of the issues that were identified in

3.0.1

------

20 February 2024

A quick follow up release adding a few key features that got left out in 3.0.0.
Most notably, packet trace and data trace infrastructure has been reworked and
a custom Wireshark protocol dissector for OSDP was added. Additionally, Some
efforts has been made to support Windows as a build platform.

Enhancements:
- libosdp: Add Packet scan skipped bytes instrumentation
- pcap: Move declarations to a separate header
- doc: Update info about dissector loading on windows
- libosdp: Add support for windows builds
- dissector: Append command/reply name to tree view for better analysis
- libosdp: Migrate rust code to a dedicated repo
- misc: dissector: Add support for data tracer
- libosdp: data_trace: Fix bug in packet length passed to tracer
- libosdp: pcap: Log the number of packets captured
- libosdp: pcap: Bump utils submodule to fix issues
- libosdp: Extend tracing infrastructure to DATA_TRACE
- libosdp: Add timestamp to trace files for uniqueness
- libosdp: Add a custom protocol disector for WireShark
- libosdp: Switch to pcap based packet tracing

Fixes:
- libosdp: Fix packet scan skipped bytes instrumentation
- Repaired references to osdp_millis_now()
- doc: Update debugging.rst and README.md with new tracing changes
- examples: python: Fixup some more minor issues
- libosdp: Rename samples/ as examples/ as it sounds better
- examples: python: Fix CP and PD examples for the higher level osdp module
- CI: Allow publish-pypi.yml to be activated on manual triggers
- CI: Update python publishing to multilinux

3.0.0

------

14 February 2024

This Major release bring rust support, CP state machine cleanups, API cleanups,
and many other enhancemtns and fixes.

Enhancements:
- Add rust support (single entry for 80+ patches)
- Rewrite osdpctl in rust (single entry for many patches)
- chore: Update copyright year to 2024
- python: vendor LibOSDP sources when packaging
- python: Remove code referring to CMakeLists.txt version
- API, python: Add LED color constants from v2.2 of the spec
- doc: Update top-level README.md
- libosdp: cp: Move keyset completion handler to get_next_ok_state()
- tests: pytest: Add install_mode SCBK set test
- libosdp: Unify StatusReport query and event structs
- libosdp: cp: Move functionality away from command builders
- pytests: Remove timeout from CP status test
- python: Adapt to changes to status event/command handling
- libosdp: Rework status command and event handling
- libosdp: cp: Reword event callback mechanism to use requests
- libosdp: Permit REPLY_COM response for CMD_COMSET
- rust: Add method to make a pair of unix channels
- libosdp: Split events data maxlen macro as we have for commands
- libosdp: Reduce command/event pool size
- python: Add a get_file_tx_status() for PD
- test: unit-test: Add command and event callback logging for file tx command
- pyosdp: Move set_log_level() to be module method
- tests: unit-tests: Add initial skeleton for command test
- libosdp: cp: Rework CP state machine
- libosdp: cp: Remove some more master key related code
- libosdp: cp: Move call to cp_cmd_free into cp_translate_cmd
- libosdp: cp: Add BUG() macro and call for file TX cmd translate
- libosdp: cp: Decouple internal and external command queue
- cmake: utils,samples: Bump minimum required version
- libosdp: CP: Lower comeset reply log level to info
- libosdp: API: Do not indiate SC active when using SCBK-D
- libosdp: phy: Also ignore commands with PD address.MSB set
- libosdp: phy: Ignore reply with PD address.MSB cleared
- Increasing the max data contained in an OSDP enevt to 128bytes
- utils: Bump submodule to latest commit
- doc: Add some notes about make build
- libosdp: API: Remove osdp_set_command_complete_callback
- libosdp: Set PD address to 0x7F for broadcast packets
- libosdp: API: common: Increase PD offline status timeout to 600ms
- scripts: Unify release generation scripts into one place
- rust: Add workaround for osdp_config.h.in copy to OUT_DIR
- rust: cp: Add support for the new status command
- libosdp: cp: Add different query options for OSDP_CMD_STATUS
- libosdp: cp: Refactor API command handling (translating) logic
- python: Update README.me and samples after testing
- python: osdp: pd: Add support sc_wait() method
- python: osdp: Add support for non-blocking get_{command,event}
- cmake: Remove python/ subdirectory from chain
- python: Merge test/pytest/testlib as main python package
- libosdp: const-annotate some more public API
- libosdp: Const-ize parameters of exposed methods
- libosdp: Remove deprecated methods tree-wide
- libosdp: Add support for Magenta and Cyan LED colors
- libosdp: Demote osdp_logger_init to a macro alias

Fixes:
- utils: Bump submodule to fix build failure due to VLA
- Fix regression in Rust binding. Commit
51b626c94bc39242f9793c916471bdadafe24679 increased buffer size to 128
bytes. Adjust binding accordingly.
- make: Fix configure.sh for linux
- libosdp: Fix warnings that break rust build
- utils: Bump submodule to fix log line termination issue
- libosdp: phy: Fix PACKET_TRACE command byte offset
- libosdp: phy: Fix packet trace mark byte logging
- doc: security: Update doc to have latest info; fix a typo
- libosdp: cp: Fix broken keyset for an install_mode PD
- CP: API: Fix callback signature in cpp header
- python: osdp_sys: fix memory leak in pyosdp_add_pd_cap
- pytest: Fix run.sh to be invokable from other dirs
- python: Fix pd_info builder after const qualification of info->cap
- src/osdp_common.c: waring: _GNU_SOURCE redefined
- utils: version bump - pickup fixes for gcc warnings/errors
- unit-test: Fix broken build due to old API drop changes
- Fix potential null pointer deref at LOG_* call site
- cp: disallow unexpected SC responses

2.4.0

------

28 October 2023

This release marks the end of 2.x version of libosdp. Bring some minor
updates and fixes.

Enhancements:
- libosdp: Add new API to set a log callback function
- unit-test: Add line noise simulation methods
- pytest: Add new test for CP/PD status reports
- pyosdp: pd: Expose a new API to check online status
- libosdp: Update to new logger API
- Expose new configure time macro REPO_ROOT
- configure: Add new option --debug to enable debug symbols
- make: Don't remove and rebuild unit-test target each time
- cmake: Add hook to checkout submodules
- pd: Use teardown in peripheral destructor only if context exists
- cp: Use teardown in control panel destructor only if context exists

Fixes:
- libosdp: Fix stable API change violation
- unit-tests: Fix warning due to change of fclose sinature
- libosdp: cmake: Fix static builds with local openssl
- c++: add header guards
- pytest: testlib: Fix bug in retry count
- pytest: Make CP and PD restart-able
- API: common: Fix osdp_get_status_mask for PD mode
- Fix null pointer deref issue osdp_reply_name
- doc: Update domain name to sidcha.dev as gotomain.io has expired
- Update copyright year to 2023
- Remove obsolete travis CI config file and it's refs
- check osdp close file status (according prototype function comments)
- save PD Local Status

2.3.0

------

27 June 2023

A standard mid-year release with accumulated fixes and enhancements.
Interestingly, this release has a high number of community contributions :)

Enhancements:
- Add support for additional baud rate 57600
- Add deprecation notice for command_complete_callback API
- pyosdp: refactor make_(struct|dict) methods into translators
- pyosdp: Move similar methods closer for maintainability
- pyosdp: Refactor event handling method names
- pyosdp: refactor command handling method names
- pytest: Add tests for IO and status events
- pyosdp: export IO and status events to use in pytests
- libosdp: Add support for tamper and power status events
- phy: Allow sequence repeat packets
- libosdp: Limit max packet size to reported peer RX size
- pd: Add support for handling multiple records in output command
- pytest: More multidrop test related changes
- zephyr: Refactor command_callback into a method
- PD: Reset phy state when ignoring a packet
- libosdp: file: Promote to be a fist-class citizen
- libosdp: Allow file transfers to be aborted
- pd: Handle OSDP_EVENT_MFGREP case in pd_translate_event
- pyosdp, pytests: Add test case for mfgrep event

Fixes:
- pyosdp: Hoist cmd->id set in pyosdp_make_struct_cmd
- fix LED & Buzzer repeated command
- mbedtls: fix incorrect mode in ecb encryption
- fix: converts uint64 to uint32 for arm device capability.
- Disable FindMbedTLS.cmake to fix issue in 108
- Fix typos in secure channel docs
- Make installation with cmake happier
- pd: Fix CMD_ABORT length check
- cp: Add support for local status query command
- Fix sequence reversing issue during phy_reset()
- libosdp: Fix plethora of bugs in input/output events
- pyosdp: Drop Py_TPFLAGS_HAVE_GC flags on osdp class
- Fix issues in configure.sh
- corrected typo in doxygen documentation
- file: Fix bug in return value processing in build_command
- libosdp: raw loops to memcpy and other zephyr review fixes
- fixup! libosdp: file: Promote to be a fist-class citizen
- pytest: Add file transfer abort test
- unit-test: Fix test failure due to missing extern
- unit-test: Fix a use-after-free bug in test async runner
- fixup! pd: Handle OSDP_EVENT_MFGREP case in pd_translate_event

2.2.0

------

01 December 2022

Yet another minor release with accumulated fixes and enhancements. Notable
changes since last release include,

Enhancements:
- pd: add method to flush event queue
- Enable REPLY_ISTATR and REPLY_OSTATR support
- libosdp: Added opaque argument to command_complete_callback
- pytest: Add events tests
- phy: Only flush channel on errors in osdp_phy_state_reset
- phy: Don't attempt to send a NACK for some early failures
- libosdp: Make osdp_cmd_mfg and osdp_mfgrep identical
- cp: Do not propagate PHY errors as-is
- libosdp: Add a ring buffer to store the RX data
- libosdp: Move channel read/writes into phy layer
- unit-tests: Resurrect the old unit-tests modules
- libosdp: Add a softname for PDs in the info struct
- Avoid one ifdef by reorg and static inline-ing
- libosdp: Add support for I/O status monitoring/reporting
- Enable address sanitizer enabled builds

Fixes:
- libosdp: Fix CMD_ABORT's assigned command code
- cp: Fix cardread and keypress event decode cases
- unit-tests: Add a test case to validate the mark-byte skip
- pytest: Fix is_sc_active() to return boolean
- fixup: libosdp: Add support for I/O status monitoring/reporting
- Fix build failure
- Fix OSDP_QUEUE_SLAB_SIZE defintion and some typos
- Fix a heap-buffer-overflow in __cp_setup()

Page 2 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.