Chore/bacnet-sc-unrelated-cleanup (#620)

* Added required linux Ethernet library for ethernet build

* Added .obj to gitignore

* Fixed BACnet port for APPLE to use BSD in CMake

* Changed format in CMake to enable cleaner SC merge

* Added create-object and delete-object recipes in GCC Makefile

* Added datalink timer to all example OS apps

* Changed most microcontroller ports to use BACAPP_MINIMAL to specify which datatypes can be written.

* Fixed zephyr OS for BACnet/IP warning

* Fixed zephyr OS log to not require log_strdup

* Added writefile API to file object example

* Added API to device-client to make it more robust.

* Added API in network-port object for getting the ASCII object-name

* Added debug print with a timestamp option

* Added debug print with hex dump print

* Added API to network port object for activate and discard

* Added default define for debug with timestamp

* Added prototype in header for disabled debug printf.

* Added fifo peek ahead function to peek at more than one byte.

* Added get-mac value for network port that uses buffer rather than octetstring
This commit is contained in:
Steve Karg
2024-04-19 12:54:56 -05:00
committed by GitHub
parent 600508c357
commit 770be70688
47 changed files with 687 additions and 152 deletions
+1
View File
@@ -188,6 +188,7 @@ target_compile_definitions(${EXECUTABLE} PRIVATE
-DPRINT_ENABLED=0
-DMAX_TSM_TRANSACTIONS=0
-DCRC_USE_TABLE
-DBACAPP_MINIMAL
)
# inhibit pedantic warnings
+1 -1
View File
@@ -22,7 +22,7 @@ BACNET_FLAGS += -DMAX_OCTET_STRING_BYTES=64
BACNET_FLAGS += -DPRINT_ENABLED=0
BACNET_FLAGS += -DMAX_APDU=480
BACNET_FLAGS += -DCRC_USE_TABLE
#BACNET_FLAGS += -DDLMSTP_TEST
BACNET_FLAGS += -DBACAPP_MINIMAL
ifeq (${LEGACY},true)
# disable deprecated function warnings for legacy builds
BACNET_FLAGS += -DBACNET_STACK_DEPRECATED_DISABLE
+1
View File
@@ -231,6 +231,7 @@
<state>PRINT_ENABLED=0</state>
<state>MAX_APDU=480</state>
<state>CRC_USE_TABLE</state>
<state>BACAPP_MINIMAL</state>
</option>
<option>
<name>CCPreprocFile</name>
+1 -1
View File
@@ -141,7 +141,7 @@ OPTIMIZE_FLAGS := -Os -ggdb
OPTIMIZE_FLAGS += -DNDEBUG
BACNET_FLAGS = -DBACDL_MSTP=1
BACNET_FLAGS += -DBACAPP_ALL
BACNET_FLAGS += -DBACAPP_MINIMAL
BACNET_FLAGS += -DMAX_APDU=480
BACNET_FLAGS += -DBIG_ENDIAN=0
BACNET_FLAGS += -DMAX_TSM_TRANSACTIONS=0
+1
View File
@@ -229,6 +229,7 @@
<state>BACDL_MSTP</state>
<state>MAX_APDU=480</state>
<state>MAX_TSM_TRANSACTIONS=0</state>
<state>BACAPP_MINIMAL</state>
</option>
<option>
<name>CCPreprocFile</name>
+1
View File
@@ -221,6 +221,7 @@ target_compile_definitions(${EXECUTABLE} PRIVATE
-DMAX_APDU=480
-DBIG_ENDIAN=0
-DMAX_TSM_TRANSACTIONS=1
-DBACAPP_MINIMAL
)
# inhibit pedantic warnings
+1 -1
View File
@@ -144,12 +144,12 @@ OPTIMIZE_FLAGS := -Os -ggdb
OPTIMIZE_FLAGS += -DNDEBUG
BACNET_FLAGS = -DBACDL_MSTP=1
BACNET_FLAGS += -DBACAPP_ALL
BACNET_FLAGS += -DMAX_APDU=1476
BACNET_FLAGS += -DBIG_ENDIAN=0
BACNET_FLAGS += -DMAX_TSM_TRANSACTIONS=0
BACNET_FLAGS += -DMAX_CHARACTER_STRING_BYTES=64
BACNET_FLAGS += -DMAX_OCTET_STRING_BYTES=64
BACNET_FLAGS += -DBACAPP_MINIMAL
# if called from root Makefile, PRINT was already defined
BACNET_FLAGS += -UPRINT_ENABLED
BACNET_FLAGS += -DPRINT_ENABLED=0
+1
View File
@@ -227,6 +227,7 @@
<state>MAX_APDU=1476</state>
<state>BIG_ENDIAN=0</state>
<state>MAX_TSM_TRANSACTIONS=1</state>
<state>BACAPP_MINIMAL</state>
</option>
<option>
<name>CCPreprocFile</name>
@@ -216,10 +216,8 @@
<ClInclude Include="..\..\..\..\src\bacnet\bacdef.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacdest.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacdevobjpropref.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacenum.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacerror.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacint.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacnet_stack_exports.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacprop.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacpropstates.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bacreal.h" />
@@ -339,9 +337,6 @@
<ClInclude Include="..\..\..\..\src\bacnet\basic\sys\ringbuf.h" />
<ClInclude Include="..\..\..\..\src\bacnet\basic\sys\sbuf.h" />
<ClInclude Include="..\..\..\..\src\bacnet\basic\tsm\tsm.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bits.h" />
<ClInclude Include="..\..\..\..\src\bacnet\bytes.h" />
<ClInclude Include="..\..\..\..\src\bacnet\config.h" />
<ClInclude Include="..\..\..\..\src\bacnet\cov.h" />
<ClInclude Include="..\..\..\..\src\bacnet\create_object.h" />
<ClInclude Include="..\..\..\..\src\bacnet\credential_authentication_factor.h" />
@@ -647,9 +647,6 @@
<ClInclude Include="..\..\..\..\src\bacnet\bacint.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\bacnet_stack_exports.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\bacprop.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
@@ -668,15 +665,6 @@
<ClInclude Include="..\..\..\..\src\bacnet\bactimevalue.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\bits.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\bytes.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\config.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\src\bacnet\cov.h">
<Filter>Source Files\src\bacnet</Filter>
</ClInclude>
+2 -2
View File
@@ -338,7 +338,7 @@ uint16_t bip_receive(
}
ZSOCK_FD_ZERO(&read_fds);
ZSOCK_FD_SET(BIP_Socket, &read_fds);
FD_SET(BIP_Broadcast_Socket, &read_fds);
ZSOCK_FD_SET(BIP_Broadcast_Socket, &read_fds);
max = BIP_Socket > BIP_Broadcast_Socket ? BIP_Socket : BIP_Broadcast_Socket;
@@ -507,7 +507,7 @@ void bip_set_interface(char *ifname)
bip_set_addr(&unicast);
bip_set_broadcast_addr(&broadcast);
LOG_INF("BACnet/IP Unicast: %u.%u.%u.%u:%d", unicast.address[0],
unicast.address[1], unicast.address[2], unicast.address[3],
unicast.address[1], unicast.address[2], unicast.address[3],
unicast.port);
LOG_INF("BACnet/IP Broadcast: %u.%u.%u.%u", broadcast.address[0],
broadcast.address[1], broadcast.address[2], broadcast.address[3]);
+9 -9
View File
@@ -93,7 +93,7 @@ static char* inet6_ntoa(struct in6_addr *a)
/* Avoid overwhelming the logging system */
while(log_buffered_cnt())
{
{
k_sleep(K_MSEC(1));
}
@@ -316,7 +316,7 @@ uint16_t bip6_receive(
/* we could just use a non-blocking socket, but that consumes all
the CPU time. We can use a timeout; it is only supported as
a select. */
if (timeout >= 1000) {
select_timeout.tv_sec = timeout / 1000;
select_timeout.tv_usec =
@@ -334,7 +334,7 @@ uint16_t bip6_receive(
received_bytes = zsock_recvfrom(BIP6_Socket, (char *)&npdu[0], max_npdu,
0, (struct sockaddr *)&sin, &sin_len);
}
else
else
{
return 0;
}
@@ -439,13 +439,13 @@ void bip6_set_interface(char *ifname)
for(x=0; x<NET_IF_MAX_IPV6_ADDR; x++)
{
inet6_ntoa(&interface->config.ip.ipv6->unicast[x].address.in6_addr );
LOG_INF(" unicast[%d]: %s", x, log_strdup(ipv6_addr_str));
LOG_INF(" unicast[%d]: %s", x, ipv6_addr_str);
}
for(x=0; x<NET_IF_MAX_IPV6_MADDR; x++)
{
inet6_ntoa(&interface->config.ip.ipv6->mcast[x].address.in6_addr );
LOG_INF(" multicast[%d]: %s", x, log_strdup(ipv6_addr_str));
LOG_INF(" multicast[%d]: %s", x, ipv6_addr_str);
}
if(CONFIG_BACDL_BIP6_ADDRESS_INDEX >= NET_IF_MAX_IPV6_ADDR)
@@ -459,7 +459,7 @@ void bip6_set_interface(char *ifname)
memcpy(&unicast.address, &interface->config.ip.ipv6->unicast
[CONFIG_BACDL_BIP6_ADDRESS_INDEX].address.in6_addr, IP6_ADDRESS_MAX);
if(net_addr_pton(AF_INET6, CONFIG_BACDL_BIP6_MCAST_ADDRESS, &multicast.address))
{
LOG_ERR("%s:%d - Failed to parse IPv6 multicast address: %s", THIS_FILE, __LINE__, CONFIG_BACDL_BIP6_MCAST_ADDRESS);
@@ -468,8 +468,8 @@ void bip6_set_interface(char *ifname)
bip6_set_addr(&unicast);
bip6_set_broadcast_addr(&multicast);
LOG_INF(" Unicast: %s", log_strdup(inet6_ntoa((struct in6_addr*)&unicast.address)));
LOG_INF(" Multicast: %s", log_strdup(inet6_ntoa((struct in6_addr*)&multicast.address)));
LOG_INF(" Unicast: %s", inet6_ntoa((struct in6_addr*)&unicast.address));
LOG_INF(" Multicast: %s", inet6_ntoa((struct in6_addr*)&multicast.address));
}
else
{
@@ -490,7 +490,7 @@ bool bip6_init(char *ifname)
bip6_set_interface(ifname);
if (BIP6_Address.s6_addr == 0) {
LOG_ERR("%s:%d - Failed to get an IPv6 address on interface: %s\n", THIS_FILE, __LINE__, log_strdup(ifname ? ifname : "[default]"));
LOG_ERR("%s:%d - Failed to get an IPv6 address on interface: %s\n", THIS_FILE, __LINE__, ifname ? ifname : "[default]");
return false;
}