From 0feda1fa2f9d8311cf4a27bc0d16dd62bdc7eb32 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Wed, 18 Mar 2020 15:34:01 -0400 Subject: [PATCH] GUACAMOLE-513: Make packet size a constant. --- src/libguac/guacamole/wol-constants.h | 7 +++++++ src/libguac/wol.c | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/libguac/guacamole/wol-constants.h b/src/libguac/guacamole/wol-constants.h index 358d26b0..48e470c3 100644 --- a/src/libguac/guacamole/wol-constants.h +++ b/src/libguac/guacamole/wol-constants.h @@ -40,5 +40,12 @@ */ #define GUAC_WOL_DEFAULT_WAIT_TIME 60 +/** + * The size of the magic Wake-on-LAN packet to send to wake a remote host. This + * consists of 6 bytes of 0xFF, and then the MAC address repeated 16 times. + * https://en.wikipedia.org/wiki/Wake-on-LAN#Magic_packet + */ +#define GUAC_WOL_PACKET_SIZE 102 + #endif /* GUAC_WOL_CONSTANTS_H */ diff --git a/src/libguac/wol.c b/src/libguac/wol.c index c2b76660..2bf706a1 100644 --- a/src/libguac/wol.c +++ b/src/libguac/wol.c @@ -99,7 +99,7 @@ static ssize_t __guac_wol_send_packet(const char* broadcast_addr, int guac_wol_wake(const char* mac_addr, const char* broadcast_addr) { - unsigned char wol_packet[102]; + unsigned char wol_packet[GUAC_WOL_PACKET_SIZE]; unsigned int dest_mac[6]; /* Parse mac address and return with error if parsing fails. */