Feature/bacnet ipv6 foreign device registration (#355)

* Added IPv6 Foreign Device Registration for apps

* Fix debug message in BACnet/IPv6 Linux port

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
This commit is contained in:
Steve Karg
2022-11-17 08:14:33 -06:00
committed by GitHub
parent 27d368e0e8
commit 70c290d1ad
5 changed files with 150 additions and 21 deletions
+1 -7
View File
@@ -113,7 +113,6 @@ void bip6_set_interface(char *ifname)
int i, RetVal;
struct addrinfo Hints, *AddrInfo, *AI;
struct sockaddr_in6 *sin;
struct sockaddr_in6 server = {};
struct in6_addr broadcast_address = {};
struct ipv6_mreq join_request = {};
SOCKET ServSock[FD_SETSIZE] = {};
@@ -224,12 +223,7 @@ void bip6_set_interface(char *ifname)
// the application is a server that has a well-known port
// that clients know about in advance.
//
memset(&server, 0, sizeof(server));
server.sin6_family = AF_INET6;
server.sin6_port = htons(BIP6_Addr.port);
server.sin6_addr = in6addr_any;
if (bind(BIP6_Socket, (struct sockaddr *)&server, sizeof(server)) ==
SOCKET_ERROR) {
if (bind(BIP6_Socket, AI->ai_addr, AI->ai_addrlen) == SOCKET_ERROR) {
fprintf(stderr, "BIP6: bind() failed with error %d: %s\n",
WSAGetLastError(), PrintError(WSAGetLastError()));
closesocket(ServSock[i]);