Add enet_address_set_address() function to allow ENetAddress to be populated from sockaddr directly

This commit is contained in:
Cameron Gutman
2016-04-02 14:04:31 -04:00
parent a602abf244
commit 2bc07bb50d
3 changed files with 23 additions and 0 deletions
+1
View File
@@ -505,6 +505,7 @@ ENET_API int enet_socketset_select (ENetSocket, ENetSocketSet *, ENetSock
@returns the address of the given hostName in address on success
*/
ENET_API int enet_address_set_host (ENetAddress * address, const char * hostName);
ENET_API int enet_address_set_address (ENetAddress * address, struct sockaddr * addr, socklen_t addrlen);
ENET_API int enet_address_set_port (ENetAddress * address, enet_uint16 port);
ENET_API int enet_address_equal (ENetAddress * address1, ENetAddress * address2);
+11
View File
@@ -158,6 +158,17 @@ enet_address_set_port (ENetAddress * address, enet_uint16 port)
}
}
int
enet_address_set_address (ENetAddress * address, struct sockaddr * addr, socklen_t addrlen)
{
if (addrlen > sizeof(struct sockaddr_storage))
return -1;
memcpy (&address->address, addr, addrlen);
address->addressLength = addrlen;
return 0;
}
int
enet_address_set_host (ENetAddress * address, const char * name)
{
+11
View File
@@ -80,6 +80,17 @@ enet_address_set_port (ENetAddress * address, enet_uint16 port)
}
}
int
enet_address_set_address (ENetAddress * address, struct sockaddr * addr, socklen_t addrlen)
{
if (addrlen > sizeof(struct sockaddr_storage))
return -1;
memcpy (&address->address, addr, addrlen);
address->addressLength = addrlen;
return 0;
}
int
enet_address_equal (ENetAddress * address1, ENetAddress * address2)
{