Commit Graph

430 Commits

Author SHA1 Message Date
skarg 278af89fa2 Added enhancement to address cache: Top Protected Entry: entries from 0 to Top_Protected_Entry are not removed by address_remove_oldest()function. When I-am attack occurs only entries between Top_Protected_Entry and MAX_ADDRESS_CACHE can be removed. 2016-08-12 21:57:57 +00:00
skarg 03de7f191e Added TimeSynchronization server example. 2016-07-26 21:27:34 +00:00
skarg 1302c1be7b Nikola Jelić implemented the Access Objects for BACnet (Access Door, Access Point, Access Credential, Access Rights, Access User, Access Zone, and Credential Data Input). 2016-07-17 19:23:19 +00:00
skarg 3465c43a6a Changed typedef structure to use const keyword to reduce RAM overhead. 2016-06-29 20:27:39 +00:00
skarg f8bcd58cea Fixed some warnings detected by CSTAT.
Consolidated some unit tests and added a single test prototype to header file.
2016-06-08 21:55:12 +00:00
skarg 397ef31d41 Added BACnet Error and Abort demos to send messages for Wireshark capture validation. 2016-05-20 20:43:05 +00:00
skarg b47afd500d Added UnconfirmedEventNotification demo application to generate Wireshark captures 2016-05-19 02:18:41 +00:00
skarg 40f25d8898 added I-Am demo and script to create vendor ID capture for Wireshark validation. 2016-05-16 17:33:50 +00:00
skarg 3362eecdff Added security for BACnet stack, based on the BACnet 2012 standard, clause 24.
Implemented the majority of functionalities presented in the standard, but there are several features that this patch currently lacks:
- Set-Master-Key message has a specific order of key adding and decoding which is not covered
- There is no general secure-apdu-handler function
- Checks for the type of keys used for signing/encryption of specific messages is not implemented
- The status of encrypted flag during the calculation of the signature is ambiguous
There is a Linux implementation using the OpenSSL library, with function prototypes broad enough to allow for different implementations.
Thank you, Nikola Jelić!
2016-04-20 17:00:51 +00:00
skarg 85143200af Merged revision(s) 2969 from branches/releases/bacnet-stack-0-8-0:
Fix Send_TimeSyncUTC() to calculate the right length for datalink_send_pdu(). Added Send_TimeSyncUTC_Remote(). [bugs:#44]
........
2016-03-30 20:46:43 +00:00
ekh 4f0efc6d75 A couple of bugfixes and Microsoft cleanups by Ed 2016-03-15 07:49:22 +00:00
skarg 94dbe3d429 Added BACnetTimeValue functions. Added demo Schedule object. Integrated new objects with demo server and unit tests. Thank you, Nikola Jelić! 2015-11-24 22:22:17 +00:00
skarg 23fb73fefc Added Date Time Wildcard compare functions and unit tests. Thank you, Nikola Jelić! 2015-11-24 20:34:54 +00:00
skarg 8a48241e14 Fixed the unit tests after integration of property-list property and device-object-property-reference properties. Thank you for noticing it was broken, Nikola Jelić, and for sending in fixes. 2015-11-04 16:53:21 +00:00
skarg 4db370cc3a Un-refactored property-list module to lower resource requirements on small devices. 2015-10-18 03:39:28 +00:00
skarg a294e3c691 Merged revision(s) 2900 from branches/releases/bacnet-stack-0-8-0:
Cleanup of unit test exports.
........
2015-10-18 00:30:43 +00:00
skarg 5a0ed5a9e0 Merged revision(s) 2898 from branches/releases/bacnet-stack-0-8-0:
Cleanup of unit test exports.
........
2015-10-18 00:27:09 +00:00
skarg b20ca46f89 Updated Max BACnet Services Supported and Max BACnet Object Types through Protocol_Revision 17. 2015-10-14 19:16:51 +00:00
skarg ec581ace70 cleaned up warnings from BACnet Ethernet 8802.3 compile on Linux 2015-09-24 21:51:29 +00:00
skarg 07bf4eba3b Deprecated Ringbuf_Alloc, and replaced with Ringbuf_Data_Peek() and Ringbuf_Data_Put() functions. Ringbuf_Alloc() was not interrupt or thread safe. 2015-09-09 14:54:02 +00:00
skarg 04c4becb8b Fixed AUTHENTICATION_STATUS Property name. Thank you, F. Chaxel! 2015-08-18 16:19:18 +00:00
skarg fad91ca9ce Merged revision(s) 2826 from branches/releases/bacnet-stack-0-8-0:
Expose some datetime internal functions in the API.
........
2015-06-28 13:14:48 +00:00
skarg fe8e60dd3d Added example MS/TP port to ATxmega XPLAINED A3BU evaluation board. 2015-04-16 13:23:29 +00:00
bow2 086840a763 get event information demo 2015-03-23 12:28:46 +00:00
skarg 98207470f4 Adds network address translation (NAT) handling to BVLC when the device is BBMD.
When the device is behind a NAT enabled IP router, the local subnet is not accessible from the WAN side. This means that the device's local IP address cannot be used by other devices to communicate with it. The router can port forward BACnet packets to one device in the local network, but to do so other devices need to use the global IP for communication. The considerations and limitations for NAT usage are specified in BACnet standard Annex J.7.8. Thank you, Sami Pietikäinen, for the contribution!
2015-02-24 21:54:19 +00:00
skarg efdb70b7f9 Added simple local interface to manage entries in the broadcast distribution table. Using this interface, the BDT can be supplied by local means, e.g. device's local user interface as stated in Annex J.4.4. Thank you, Sami Pietikäinen, for the contribution! 2015-02-24 20:01:18 +00:00
petermcs d7b40e0d8b Added explicit values for denoting optional device id not present
Modified bacapp_decode_device_obj_property_ref() and bacapp_decode_device_obj_ref() to use above values.
2015-02-16 10:49:50 +00:00
skarg ccad9165c5 Refactored address decoding from demo command line function into address library. 2014-08-15 13:17:46 +00:00
skarg 53ee8f309a Added COV unit test to check linked list of values, and added helper function to create the linked list. 2014-07-31 15:14:58 +00:00
skarg 8cdd480cc5 Added some enum extensions for the lighting output and life safety object. Thank you, Wolfgang! 2014-07-30 16:34:21 +00:00
skarg d65de8a69a added BACAPP_MINIMAL for defining some minimum appliacation encoding and decoding. 2014-06-15 00:25:13 +00:00
skarg 63288d062c Added parser for command line parsing of a BACnet BitString. This is nice if you want to write Event Enable, for example. Expects the ASCII bits as "1011001" or "1,0,1,1,0,0,1" or "1 0 1 1 0 0 1". 2014-06-13 21:25:40 +00:00
skarg f7724eea6a Fixed Send_TimeSyncUTC().
Fixes bug https://sourceforge.net/p/bacnet/bugs/28/
Added functions in s_ts.c that reference Device object Local_Time, UTC_Offset, and Daylight_Savings_Time properties.
Implements feature request https://sourceforge.net/p/bacnet/bugs/27/
2014-01-19 19:55:20 +00:00
skarg bfa26b769f New code for alarms and events: new functions get_alarm_summary_encode_apdu, Send_Get_Alarm_Summary_Address, Send_Get_Alarm_Summary, Send_Get_Event_Information_Address, Send_Get_Event_Information, get_event_ack_handler. Thank you Daniel Blazevic! 2014-01-14 19:49:39 +00:00
skarg 7f58784576 updated makefiles for unit tests to include prolist.c and lighting.c recently added modules 2013-12-09 20:06:20 +00:00
skarg d03e35ebda refactored the private-transfer printing 2013-12-09 19:19:19 +00:00
skarg 85bd51dca7 added some comments and max values 2013-11-18 02:11:43 +00:00
skarg 94cf94b09d added text printing for property-list property. Added property-list property to analog-input object. 2013-11-16 21:49:06 +00:00
skarg 2f0bf7744a Added property-list property to Lighting Output and Channel objects (untested). Fixed some compiler warnings. 2013-11-15 20:51:38 +00:00
skarg 4d79c26a8c Updated Lighting Output object. Added Channel object. Not complete and not fully tested. 2013-11-11 22:27:55 +00:00
skarg 56b65e9694 indented using indent.sh script. 2013-10-29 01:55:49 +00:00
skarg 51da546e28 added some extended application tags, including one for Lighting Command 2013-10-28 21:18:08 +00:00
skarg ec1ffa8598 Added TSM timeout callback function. 2013-10-16 17:41:10 +00:00
skarg 7361bb4650 1. Added new file s_wpm.c (Send_Write_Property_Multiple_Request_Data)
2. Changed file wpm.h (new struct added BACNET_WRITE_ACCESS_DATA, declaration for wpm_encode_apdu added)
3. Changed file wpm.c (definition added for wpm_encode_apdu)
4. client.h file updated with declaration for Send_Write_Property_Multiple_Request_Data

Thank you for the contribution, Daniel Blazevic!
2013-10-09 21:49:15 +00:00
skarg 0600454320 Renamed and fixed proprietary min-max range defines for units, program-error, restart-reason, reliability, event, life-safety-mode, life-safety-operation, life-safety-state, silenced-state, maintenance, object-type, and vt-class. Updated unit tests and other files affected. The max range must be declared inside of enum so that compilers will allocate adequate sized datatype for enum which is used to store decoded values. 2013-10-09 15:42:26 +00:00
skarg eaeea83e3d Renamed and fixed proprietary min-max range defines for reject and abort codes. 2013-10-09 15:08:29 +00:00
skarg c0843c8134 added channel object to proplist. Added unit test to proplist. 2013-10-08 15:57:41 +00:00
skarg 252ffd934c Enhanced mstpcap utility to show Device ID in statistics if any I-Am Requests were encountered in the MS/TP data stream. 2013-09-06 21:32:27 +00:00
skarg f33cfe79fd fixed proprietary min-max error code and class for unit tests. 2013-08-19 16:16:29 +00:00
skarg 8866f38dd9 Added record access to the AtomicReadFile and AtomicWriteFile data, services, and demos. Thank you, Nikola Jelić! 2013-08-19 16:05:08 +00:00