* added make targets spell and codespell for spelling checks
* fix spelling errors detected by codespell
* added codespell to github workflow
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Avoid redefining MSTP timeouts
* Remove duplicate MS/TP time definitions
Ports of MS/TP datalink included #defines of several time values, which
were already defined in src/bacnet/datalink/mstpdef.h. All those ports
already include that header.
* dlmstp callbacks for prmiscuous read
Add callback functions for start and completion of received frames to
inform the caller of these events.
* Fix exports and grammar
* Clarify naming of frame-complete callback
* Fixup code style and variable naming
* bitstring capacity 8-bit size bug
Codify the 8-bit size limit for bit-string capacity.
Thank you, Chris Ellec!
* Allow up to 32 byte bitstrings
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
Used Yaniv S posted solution for MS VS 2017 which took
the sln (solution) from version 0.9.1 and updated it to
compile as static lib for 1.x.x branch.
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Change uci device_init from src/bacnet/basic/object/device to apps/server to make it more maintainable
Signed-off-by: Patrick Grimm <patrick@lunatiki.de>
* add --time and --date options to command line time sync for override
* remove PRINT_ENABLED compile overreach
* fix bacstr.c for non-PRINT_ENABLED compile
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Move win32 specific checks to bacport.h module
* Create IPv6 snprintf function in bvlc6.c module
* Improve BIP6 debug for win32 port
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* add dockerfile for easier testing
* whitespace
* update tools source location in bin readme
* add target to example build and remove optional CMD from example run
* Fix to BVLC6 bounds checking
* Convert MSTP capture to use datetime library
* Convert timesync app to use datetime and mstimer library
* fix workflow per warning
* fix BSD mstimer init function name
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Initial port of travis CI workflow to github
* fix embedded github workflow
* fix embedded github workflow
* fix gcc and lint github workflow
* fix gcc and lint github workflow
* Remove appveyor and travis CI to reduce maintainence
* fix lint CI workflow
* restore appveyor CI
* restore appveyor CI badge
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Added BDT encoding to network port object.
* Added BDT encoding rules from clause 21
* Added FDT encoding to network port object.
* added more unit tests for BVLC
* Fix network port and device object unit tests
* fix router build for bvlc dependencies
* fix router build for bvlc dependencies
* fix network port MSTP compile
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
Co-authored-by: Steve Karg <steve.karg@legrand.us>
* added COBS encode and decode from BACnet standard
* Add unit tests for COBS encoding and decoding
* Improve COBS unit test and API.
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* refactor write-property tag check
* modify ports objects to use write-property tag check API
* modify example objects to use write-property tag check API
* Fix object unit test builds
* Fix and run unit ztests via CMake
* Enable unit testing on Travis CI
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Fix keylist signed integer wraparound
Fix the keylist to handle large number of nodes where the signed integer
would wrap around.
* Add explict keylist new size case for less than zero
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
Co-authored-by: Steve Karg <steve.karg@legrand.us>
* Added characterstring change of value example
* Add COV to unit tests
* Add memcopy to object COV unit tests
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
* Added alarm-ack application
* fix error and simple ack handling for event notification
* Added ack-alarm application
* Update CMake for ack-alarm
* update example objects for alarm and events
* Allow repeated ack-alarm for same transition
* add event state API. Fix COV event state.
* add event state API to AV. Fix COV event state.
* Use event time for ack notification
* Enable notifications for all transitions by default. For testing.
* Use unconfirmed device notification to 4194303 for testing.
* initialize local vars
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
Found a number of problems with the router when compiling on linux
* Expected malloc()'ed memory to be zeroed resulting in segfault
* IPC_NOWAIT in iplayer loop means incoming traffic will be delayed until outgoing traffic is received.
* When configured with two BIP interfaces, broadcast loops ensue because the broacast traffic is not correctly filtered. I think the safest thing to do here is to use the SO_BINDTODEVICE setsockopt.