From 6b8d3eab9bb7bafb851a93f78a2cd113ffe494cc Mon Sep 17 00:00:00 2001 From: Daniel Collins Date: Thu, 27 Sep 2018 22:22:56 +0100 Subject: [PATCH] HostEnumerator: Populate host address port correctly. --- src/HostEnumerator.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/HostEnumerator.cpp b/src/HostEnumerator.cpp index 2638ce7..a9a8db2 100644 --- a/src/HostEnumerator.cpp +++ b/src/HostEnumerator.cpp @@ -257,11 +257,10 @@ void HostEnumerator::handle_packet(const void *data, size_t size, struct sockadd sender_address->AddComponent(DPNA_KEY_HOSTNAME, from_addr_ip_s, strlen(from_addr_ip_s) + 1, DPNA_DATATYPE_STRING_ANSI); - char from_addr_port_s[8]; - snprintf(from_addr_port_s, sizeof(from_addr_port_s), "%u", (unsigned)(ntohs(from_addr->sin_port))); + DWORD from_port_dw = ntohs(from_addr->sin_port); sender_address->AddComponent(DPNA_KEY_PORT, - from_addr_port_s, strlen(from_addr_port_s) + 1, DPNA_DATATYPE_STRING_ANSI); + &from_port_dw, sizeof(from_port_dw), DPNA_DATATYPE_DWORD); /* Build a DirectPlay8Address with the interface we received the response on. * TODO: Actually do this.