util/token: rename TOKEN_STRLEN to TOKEN_SIZE

TOKEN_STRLEN is not actually the strlen() of the token. It's the
size taken by the token included the final zero byte.

Change the name to make this clearer, and remove unnecessary +1's.
master
Simon Ser 1 year ago committed by Kirill Primak
parent 3232697252
commit 55be74ad86

@ -3,7 +3,8 @@
#include <stdbool.h> #include <stdbool.h>
#define TOKEN_STRLEN 33 #define TOKEN_SIZE 33
bool generate_token(char out[static TOKEN_STRLEN]);
bool generate_token(char out[static TOKEN_SIZE]);
#endif #endif

@ -60,7 +60,7 @@ static void token_handle_destroy(struct wl_client *client,
} }
static bool token_init( struct wlr_xdg_activation_token_v1 *token) { static bool token_init( struct wlr_xdg_activation_token_v1 *token) {
char token_str[TOKEN_STRLEN + 1] = {0}; char token_str[TOKEN_SIZE] = {0};
if (!generate_token(token_str)) { if (!generate_token(token_str)) {
return false; return false;
} }
@ -137,7 +137,7 @@ static void token_handle_commit(struct wl_client *client,
error:; error:;
// Here we send a generated token, but it's invalid and can't be used to // Here we send a generated token, but it's invalid and can't be used to
// request activation. // request activation.
char token_str[TOKEN_STRLEN + 1] = {0}; char token_str[TOKEN_SIZE] = {0};
if (!generate_token(token_str)) { if (!generate_token(token_str)) {
wl_client_post_no_memory(client); wl_client_post_no_memory(client);
return; return;

@ -11,7 +11,7 @@
#include <sys/stat.h> #include <sys/stat.h>
#include <unistd.h> #include <unistd.h>
bool generate_token(char out[static TOKEN_STRLEN]) { bool generate_token(char out[static TOKEN_SIZE]) {
static FILE *urandom = NULL; static FILE *urandom = NULL;
uint64_t data[2]; uint64_t data[2];
@ -31,7 +31,7 @@ bool generate_token(char out[static TOKEN_STRLEN]) {
wlr_log_errno(WLR_ERROR, "Failed to read from random device"); wlr_log_errno(WLR_ERROR, "Failed to read from random device");
return false; return false;
} }
if (snprintf(out, TOKEN_STRLEN, "%016" PRIx64 "%016" PRIx64, data[0], data[1]) != TOKEN_STRLEN - 1) { if (snprintf(out, TOKEN_SIZE, "%016" PRIx64 "%016" PRIx64, data[0], data[1]) != TOKEN_SIZE - 1) {
wlr_log_errno(WLR_ERROR, "Failed to format hex string token"); wlr_log_errno(WLR_ERROR, "Failed to format hex string token");
return false; return false;
} }

Loading…
Cancel
Save