Commit Graph

2837 Commits

Author SHA1 Message Date
Steve Karg 63a8735fa7 Create codeql-analysis.yml (#193)
* Create codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

fixing detected YML syntax error
2021-08-20 07:27:21 -05:00
Steve Karg efa975dac7 Copy travis CI workflow to github (#192)
* 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>
2021-08-18 15:08:02 -05:00
Greg Shue 8b8ef8f338 Issue 187 enable skipped ztest suites (#189)
* Fix some ztests that were skipped

* Expose bacapp_same_value()

* Fix bacapp, ptransfer tests

* Fix bugs in Load_Control object & tests

* refactor days functions from datetime module

* fix legacy ctests

* Add bacnet/basic/sys/days.[ch] to Zephyr build

* Update ztest to match from Zephyr v2.6.0; update ringbuf, datetime to build

* Fixup ztest test for object/acc

* Fix bvlc_address_from_ascii; enable/fix bvlc test

* Comment cleanup

* test/bacnet/basic/object/lc partially enabled

* Fix bacapp_decode_data_len return status on erroneous input

* fix ztest include fatal error

* fix ztest strsignal reference fatal error

* fix zassert_mem_equal reference syntax error

* fix zassert_mem_equal reference syntax error

Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-08-16 17:29:40 -05:00
Steve Karg 541f4024fb Bugfix/network port object bdt required (#184)
* 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>
2021-08-03 09:55:01 -05:00
Greg Shue 9acca32ba8 Moved west.yml to root; updated to zephyr v2.6.0 (#186)
Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
2021-08-03 09:12:45 -05:00
Steve Karg 4b9e154256 Feature/mstp extended frames cobs encoding (#183)
* 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>
2021-07-30 16:16:12 -05:00
Steve Karg 810a2f93de Feature/write property type check refactor (#182)
* 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>
2021-06-23 10:10:12 -05:00
Steve Karg 31b7fb3c40 Fix keylist signed integer wraparound (#179)
* 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>
2021-06-12 22:37:51 -05:00
Steve Karg 89d7af707e Fix FreeBSD 11 compile via gmake gcc (#180)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-06-12 19:27:29 -05:00
Steve Karg 40cce9f97c TSM transmit buffer static init not needed. Thank you, John Kehr (#177)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-06-11 08:20:33 -05:00
Steve Karg 3e9807327b Added characterstring change of value example (#175)
* 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>
2021-05-24 20:15:03 -05:00
Steve Karg 3ed77e2491 DSR-1471: fixes data race issues on ring buffer for MSTP (#9) (#174)
* DSR-1471: fixes data race issues on ring buffer

* DSR-1471: added missing semi-colon

Co-authored-by: Fraser Gordon <51318560+FraserG01@users.noreply.github.com>
2021-05-24 18:53:59 -05:00
Steve Karg 4349e53203 Added cppcheck of BACnet source into pipeline (#171)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-05-21 09:00:57 -05:00
Steve Karg b38d975f35 Bugfix/compiler warning (#172)
* Fix compiler and static analysis warning

* revise to use for loop pattern

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-05-21 09:00:40 -05:00
Steve Karg cea8c0e64c Added ethernet target for Makefile and Travis (#173)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-05-21 09:00:21 -05:00
Steve Karg a4fe367ac0 Added write BDT application (#170)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:46:21 -05:00
Steve Karg 70c1d8bd7a IPv6 MAC length is 3 after public review. (#169)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:45:57 -05:00
Steve Karg 9bc40ea9bd Check length of packet before decoding it (#168)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:45:41 -05:00
Steve Karg 5490101a4f Bug#76 Fix Send_WhoIs_Local destination address. Thanks, Duffy! (#167)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:45:02 -05:00
Steve Karg 541d4591e9 Reject DCC password out of range (#166)
* Reject DCC password out of range

* Fix unit test after return value change

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:44:39 -05:00
Steve Karg 297a11665b Fix MSTP skip data state to result in not-for-us (#165)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-23 13:44:20 -05:00
Steve Karg a7bc145c43 Feature/alarm ack application (#164)
* 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>
2021-04-22 08:33:04 -05:00
Steve Karg 2277ff903a Fix the gateway example routing and lookups. Thanks, Sam! (#163)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-02 14:13:31 -05:00
Steve Karg 7664b744d9 Fix the gateway example routing and lookups. Thanks, Sam! (#163)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-02 14:12:49 -05:00
Stephen Dawson-Haggerty adf66f412d Fixes Issue #157 (Router segfaults) (#159)
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.
2021-03-11 14:54:11 -06:00
Steve Karg 038ba9ec2b Feature/access event notification (#156)
* Added event notification for access event. Thank you, Ojdanic Andrijana!

* Added event notification for command failure. Thank you, Ojdanic Andrijana!

* Fix event notification ztest

* Fix event notification ztest

* Added ztest for command failure and access event

* fix zassert_equal test function args

* fix zassert_equal test function args

* fix zassert_true test function args.

Fix verifyBaseEventState().

* Fix octetstring_value_same to use zassert_true

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-02-22 13:23:48 -06:00
Steve Karg b2da64d93d Fix WPM for BTL - 9.23.2.X1 (#155)
* Fix WPM for BTL - 9.23.2.X1

* Fix WPM handler from scan-build error

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-02-15 19:39:26 -06:00
Steve Karg 117db88ce6 Feature/confirmed event notification app (#153)
* Initial ConfirmedEventNotification app

* Fixed event argument processing

* Adjust event argument processing.

Move the common event arguments
Enable text lookup for some event arguments.

* Fix CMAKE for event app.

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-02-10 10:58:47 -06:00
Steve Karg 80114088f9 Fix the encoding of network port number for BACnet IP (#147)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-01-14 00:00:27 -06:00
Steve Karg 69f876f1c9 Discard confirmed APDU from original broadcast in BIP and BIP6 datalink (#149)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-01-13 13:59:16 -06:00
Steve Karg 0a9fbaf438 Bug#74 Printing of the Read property acknowledgement when APDU len is > 255 bytes. Thank you unnakb! (#148)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-01-13 13:58:50 -06:00
Steve Karg 7cb63dcf06 RP and RPM Network Port indefinite object instance (#146)
* RP and RPM Network Port indefinite object instance

Added ReadProperty and ReadPropertyMultiple handling for
Network Port object indefinite object instance 4194303.

* Add network port object to some examples

* Fix stm32f10x build

* Fix Endian order of network port IP UDP port

* Add network port object to BDK Makefile

* Add network port object header to BDK device.c

* fix BDK and AT91SAM7S port builds

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-01-07 10:21:11 -06:00
Steve Karg 63e4fa1f4b fixes #141 Linux BIP with no default gateway (#144)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-12-21 13:07:24 -06:00
Steve Karg 70db2b4c52 Feature/stm32f4xx port mstp makefile (#143)
* Added stm32f4xx port to root Makefile

* Added stm32f4xx to travis CI.

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-12-21 13:07:05 -06:00
Michael Francis cb9b166515 Replace "bits/pthreadtypes.h" include with <sys/types.h> in /ports/linux/dlmstp_linux.h (#139)
This resolves #129 by making this file able to be built on Alpine Linux
2020-11-20 21:38:27 -06:00
Steve Karg 37abc561a8 Added stm32f4xx port to root Makefile (#138)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-11-06 11:31:48 -06:00
Steve Karg 84bfdb6c9d Fix STM32F10x CMSIS ASM for newer compilers (#137)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-30 12:04:32 -05:00
Steve Karg 06dde5050c Add MSTP port to nucleof429zi using DFR0259 RS485 shield (#136)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-30 11:53:57 -05:00
Steve Karg 511adb646c Added MSV object API create/delete/cleanup. Added BIP6 API for Contiki. (#134)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-10 10:45:58 -05:00
Steve Karg 4b1794f93a Fix atomic readfile app when file reports zero length (#133)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-10 10:45:34 -05:00
Steve Karg 762ffacc8e Bug#72 reading zero bytes in linux BIP. Thanks, Mikhail! (#132)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-10 10:45:12 -05:00
Steve Karg b6697c6f54 Refactored object COV encode into COV module. (#131)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-10-10 10:44:47 -05:00
Joshua Smith ef1a3b2a7d Fix mstp.c source include (#126)
See #125
2020-10-06 22:49:24 -05:00
Greg Shue c5f59af14b Zephyr cleanup (fix date-time.c, cleanout device.c, use full C lib) (#124)
Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
2020-09-23 14:27:52 -05:00
Greg Shue a95b7d597e Zephyr core bacnet server port; bacnet/device test (#123)
Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
2020-09-22 09:24:38 -05:00
Steve Karg cbaa106c59 Ignore FF padding in mstpcap (#120)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-09-17 09:59:48 -05:00
Greg Shue 5c2f198fd8 Issue 121 zephyr module cleanup west 0 8 0a1 (#122)
* Rm top-level west.yml; Cleanup manifests; Fix unit testing

* Cleanup sample

* Cleanup test CMakeLists

Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
2020-09-17 09:58:06 -05:00
Greg Shue 19869dccdb Feature/zephyr ztest (#118)
* Leverage (older) embedded unit tests into external unit tests build upon copy of Zephyr's ztest library and CMake.

* Expand top-level CMake build to run external unit tests.

* Expand Zephyr module extension to run external unit tests via west or sanitycheck.

Co-authored-by: Gregory Shue <gregory.shue@legrand.us>
2020-09-16 07:33:34 -05:00
Steve Karg a7b2e94cb7 Added repeat option to Who-Is and I-Am app (#117)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-09-03 22:03:10 -05:00
Steve Karg 8a866b6754 Bugfix/file object file size type (#116)
* Fix file object example file size type

* Add include for definition of BACnet unsigned.

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-09-03 22:02:49 -05:00