Commit 8cd53798 authored by 王思远's avatar 王思远

UTC:2025-11-25 8:09:42 :

parent 884ebf15
...@@ -339,8 +339,9 @@ int main(int argc, char *argv[]) ...@@ -339,8 +339,9 @@ int main(int argc, char *argv[])
::std::string dmd3aIP = argv[1]; ::std::string dmd3aIP = argv[1];
::std::uint16_t targetPort ::std::uint16_t targetPort
= static_cast<::std::uint16_t>(::std::strtoul(argv[2], nullptr, 10)); = static_cast<::std::uint16_t>(::std::strtoul(argv[2], nullptr, 10));
::std::string bindIP = argv[3];
::std::uint16_t listenPort ::std::uint16_t listenPort
= static_cast<::std::uint16_t>(::std::strtoul(argv[3], nullptr, 10)); = static_cast<::std::uint16_t>(::std::strtoul(argv[4], nullptr, 10));
// Create socket. // Create socket.
int fd = ::socket(AF_INET, SOCK_DGRAM, 0); int fd = ::socket(AF_INET, SOCK_DGRAM, 0);
...@@ -360,7 +361,10 @@ int main(int argc, char *argv[]) ...@@ -360,7 +361,10 @@ int main(int argc, char *argv[])
::sockaddr_in bindAddress; ::sockaddr_in bindAddress;
::memset(&bindAddress, 0, sizeof(bindAddress)); ::memset(&bindAddress, 0, sizeof(bindAddress));
bindAddress.sin_family = AF_INET; bindAddress.sin_family = AF_INET;
bindAddress.sin_addr.s_addr = INADDR_ANY; if (! ::inet_pton(AF_INET, bindIP.c_str(), &bindAddress.sin_addr)) {
::std::cerr << "Illegal local IP address \"" << bindIP << "\".";
return -1;
}
bindAddress.sin_port = listenPort; bindAddress.sin_port = listenPort;
auto bindResult = ::bind(fd, reinterpret_cast<::sockaddr *>(&bindAddress), auto bindResult = ::bind(fd, reinterpret_cast<::sockaddr *>(&bindAddress),
sizeof(bindAddress)); sizeof(bindAddress));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment