Commit Graph

508 Commits

Author SHA1 Message Date
Steve Karg 6b6be4a434 Added check for zero length buffer size in primitive decoders that returns zero to enable simpler complex value optional element decoding. (#876) 2024-12-18 15:29:27 -06:00
Jonathan 389b6a7d4d h_dcc.c : Return correct error when no service request (#877) 2024-12-18 11:40:23 -06:00
Steve Karg be9c30026b Updated comments in datalink header file 2024-12-11 16:12:19 -06:00
Steve Karg c7867f1ca9 Revert "DCC initiation disabled, only proceess and initiate allowed services for protocol-revision 20 (#868)"
This reverts commit 5a89525fec.

The honoring of DCC initiation disabled is accomplished in the various
bacnet/basic/service/s_xyz.c sending service modules.
2024-12-11 07:53:23 -06:00
pkjkaindi 5a89525fec DCC initiation disabled, only proceess and initiate allowed services for protocol-revision 20 (#868) 2024-12-10 14:22:28 -06:00
Steve Karg 11682ca484 Removed use of 'class' keyword as a variable in BACnet/SC (#872) 2024-12-10 13:46:03 -06:00
Jonathan 791c1e5d3b bacdcode.c : Fix ability to write empty string (#871) 2024-12-10 12:23:34 -06:00
Steve Karg d4cbec91e2 Enabled style and CERT-C addon for CPPCHECK (#869)
* Enabled style and CERT-C addon for CPPCHECK with some suppressions and fixed the defects found..
2024-12-10 07:56:24 -06:00
Steve Karg f38b75b389 Fixed DeviceCommunicationControl service handler to return Service Request Denied when the DISABLE parameter is given in protocol-revision 20 or higher builds. (#867) 2024-12-05 10:17:44 -06:00
Steve Karg 001b69cbd8 Fixed dlmstp ringbuffer initialization corruption (#865)
* Added ringbuf API for testing.

* Fixed basic ms/tp datalink packet ringbuffer initialization buffer overrun.

* Added basic ms/tp datalink unit test

* Added Ringbuf_Initialize() API with buffer size checking.

* Changed examples to use Ringbuf_Initialize() API for buffer size checking.
2024-12-02 07:32:57 -06:00
Jonathan f28b03bf81 msv.c : Fix typo in Object_Name (#864) 2024-11-26 20:18:38 -06:00
Jonathan 1924ab9540 device.c : Add BitString_Value_Create and BitString_Value_Delete in Object_Table (#863) 2024-11-26 20:18:06 -06:00
Jonathan 8c82dbb76c Add ability to compile with BACNET_PROTOCOL_REVISION<17 (#862) 2024-11-26 20:17:27 -06:00
Steve Karg fd3be47d86 Feature/date time mstimer clock (#861)
* Added daylight savings time calculation module with unit testing.

* Added datetime daylight savings time and clock API

* Added basic datetime_local() clock using mstimer as basis and time-sync option.  Integrated clock with ports/stm32f4xx example.
2024-11-24 11:20:25 -06:00
Steve Karg cdda524afc Added Time-Of-Device-Restart property to example device. (#860)
* Added Time-Of-Device-Restart property to example device.

* Added BACnetTimeStamp bacapp support for encode, decode, and parse.

* Added specific addresses handling to apps/writeprop bacwp command line.
2024-11-22 19:14:09 -06:00
Steve Karg 776b212995 Removed strcasecmp and strncasecmp because they are non-standand C functions. (#858) 2024-11-21 12:29:08 -06:00
Steve Karg f149481eff Added API for datetime based clocks 2024-11-21 06:55:46 -06:00
Steve Karg 1375347ab6 Added bacnet_strnlen and bacnet_stricmp to avoid libc compiler problems (#857)
* Added bacnet_strnlen and bacnet_stricmp to avoid libc compiler problems

* FIxed compiler warnings in printf conversions.
2024-11-21 06:43:37 -06:00
Tomasz Kazimierz Motyl c71b2e3a66 Merge pull request #82 from se-apc/devel/object_event_state (#853)
Replacing hardcoded NORMAL event state with the factual objects event…

Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-11-21 05:20:30 -06:00
Steve Karg 5bb2546efb Fixed compiler warning in write-group module constant. (#856) 2024-11-14 10:09:15 -06:00
Steve Karg 51c915a5da Bugfix/lighting output dimming refactor (#855)
* Refactored lighting command operations from the lighting output object, and added unit testing. Integrated the result back into lighting-output object.
2024-11-13 15:24:25 -06:00
Tomasz Kazimierz Motyl 35d49a14ee Merge pull request #81 from se-apc/dc_Analogs_Event_Detection_Enable (#854)
Dc analogs event detection enable

Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
Co-authored-by: dcmaverick <150046088+dcmaverick@users.noreply.github.com>
2024-11-13 08:37:08 -06:00
Tomasz Kazimierz Motyl ab74620449 Merge pull request #83 from se-apc/bugfix/fixing_error_condition_for__max_recipients_wp (#852)
Fixing ERROR_CODE_NO_SPACE_TO_WRITE_PROPERTY condition

Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-11-13 08:26:46 -06:00
Steve Karg 9da3bad465 Added DLMSTP start, valid, and invalid frame complete callbacks in common DLMSTP module. (#848) 2024-11-06 08:16:55 -06:00
Steve Karg 568bd130c6 Remove extraneous structure dereferences 2024-11-06 06:35:28 -06:00
Steve Karg f332225b19 Release/version 1.4.0 candidate (#758) 2024-11-04 07:40:17 -06:00
Steve Karg cf77abac9b Feature/bacnet secure connect hub (#818)
* Added BACnet Secure Connect datalink.

* Added BACnet/SC hub application
---------

Co-authored-by: Kirill Neznamov <kirill.neznamov@dsr-corporation.com>
Co-authored-by: Mikhail Antropov <michail.antropov@dsr-corporation.com>
Co-authored-by: Ondřej Hruška <ondra@ondrovo.com>
Co-authored-by: Patrick Grimm <patrick@lunatiki.de>
2024-11-04 07:05:26 -06:00
Steve Karg 90cdc4920b Fixed MS/TP module flush stderr compile error from leftover. (#844)
* Fixed MS/TP module flush stderr compile error from leftover.

* Fixed MS/TP zero-config preferred-station setting to not filter getter.
2024-11-03 10:28:42 -06:00
Steve Karg 7b6a0923f0 Added missing MS/TP zero configuration preferred address API and usage. (#840) 2024-10-29 20:09:16 -05:00
Steve Karg a41e8177ba Added IPv6 Zone Index function to return ASCII. (#838) 2024-10-29 15:32:54 -05:00
Steve Karg 1444715c5a Add network port callbacks for pending changes activate and discard. (#836) 2024-10-29 14:28:21 -05:00
Steve Karg 089caf7e4b Fixed BACnet basic file object to have dynamic name, mime-type, path. (#835) 2024-10-29 13:30:03 -05:00
Steve Karg a38cc531d2 Added WriteProperty setter for BACnet Unsigned Integer values. (#834) 2024-10-29 13:17:39 -05:00
Steve Karg 05c6d06265 Fixed MS/TP Slave Node FSM to enable receiving DNER frames (#832) 2024-10-29 03:53:01 -05:00
Steve Karg 3329dff337 Added WriteGroup service and Channel object interfaces (#829) 2024-10-25 10:43:29 -05:00
Steve Karg 9397cfaafb Fixed BACnetLightingCommand decode options by setting them. (#830) 2024-10-25 09:06:47 -05:00
Steve Karg 44662fdb35 Added code to parse BACnetAccessRule from ASCII command line. (#827) 2024-10-24 15:12:30 -05:00
Steve Karg 4bb18a34a9 Added a common BACnetARRAY write property iterator function. (#826) 2024-10-24 14:46:16 -05:00
Steve Karg dcf79b038f Enabled BACnetARRAY checking when using proplist.c and added to apps/epics (#823) 2024-10-23 13:54:48 -05:00
Patrick Grimm 987ce816ea fix EXC_BAD_ACCESS in datalink_set() strcasecmp() (#816)
If -DBACDL_MULTIPLE and runtime env BACNET_DATALINK is null
'''
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x00007ff819a0e782 libsystem_c.dylib`strcasecmp_l + 91
'''

Set default datalink with priority bip,bip6,mstp,ethernet,arcnet
2024-10-18 13:21:40 -05:00
Steve Karg c3cb72bc41 Fixed BACNET_APPLICATION_DATA_VALUE declarations to be initialized so that the next pointer is NULL by default. (#814) 2024-10-18 07:43:39 -05:00
Steve Karg ac7dee0021 Issues/issue 811 mstpcap considers valid frames as invalid if used as a standalone tool (#812)
* Fixed mstpcap utility by setting This-Station to the MS/TP promiscuous mode address 255.

* Fixed MS/TP receive filter for valid data frames which was missing.

* Fixed MS/TP zero-config duplicate node detection

* Reset silence during MS/TP capture after writing packet to prevent endless packets when stream is interrupted.
2024-10-15 15:38:25 -05:00
Steve Karg 52a2cd437a Fixed MS/TP FSM TS filter that was removed for zero-config permiscuous feature. (#803) 2024-10-10 15:50:57 -05:00
Tomasz Kazimierz Motyl bcb82841fb Merge pull request #78 from se-apc/bugfix/stack_smashing_on_cov_subscriptions_encoding (#802)
Resolving stack-smashing problem associated with variable length of subscriber's process ID 2..5 bytes

Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-10-09 12:31:13 -05:00
Steve Karg c4c1d9f921 Added define to control IP_DHCP_Enable property being present in Network Port object (#796) 2024-10-04 22:15:31 -05:00
Patrick Grimm 712dda8bbe fix server app doesn't work with BAC_ROUTING (#783) 2024-10-04 13:47:52 -05:00
Jonathan 97cb612d6d netport.c : Tiny improvements (#792) 2024-10-02 08:05:06 -05:00
Steve Karg c18768ba61 Fixed BACnetAccessRule application integration into Access Rights object. Improved unit testing and code coverage. (#790) 2024-09-30 14:04:30 -05:00
Steve Karg 7b18add6d3 Issues/issue 787 app bacepics misses optional parameters for the device object (#789)
* Added some optional properties into the object property lists up to protocol-revision 22

* Added serial-number property to basic device object example.
2024-09-27 16:22:58 -05:00
Steve Karg 3eee88dd31 Added optional description property to basic network port object example. (#788) 2024-09-27 14:43:41 -05:00