mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-21 13:51:26 +02:00
BUILD: stick-table: fix build error on 32-bit platforms
Commit 9b2717e7b ("MINOR: stktable: use {show,set,clear} table with ptr") stores a pointer in a long long (64bit), which fails the cas to void* on 32-bit platforms: src/stick_table.c: In function 'table_process_entry_per_ptr': src/stick_table.c:5136:37: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] 5136 | ts = stktable_lookup_ptr(t, (void *)ptr); On all our supported platforms, longs and pointers are of the same size, so let's just turn this to a ulong instead.
This commit is contained in:
parent
6e5aa16145
commit
cdc993b19e
@ -5121,7 +5121,7 @@ static int table_process_entry_per_ptr(struct appctx *appctx, char **args)
|
||||
{
|
||||
struct show_table_ctx *ctx = appctx->svcctx;
|
||||
struct stktable *t = ctx->target;
|
||||
long long int ptr;
|
||||
ulong ptr;
|
||||
char *error;
|
||||
struct stksess *ts;
|
||||
|
||||
@ -5129,7 +5129,7 @@ static int table_process_entry_per_ptr(struct appctx *appctx, char **args)
|
||||
return cli_err(appctx, "Pointer expected (0xffff notation)\n");
|
||||
|
||||
/* Convert argument to integer value */
|
||||
ptr = strtoll(args[4], &error, 16);
|
||||
ptr = strtoul(args[4], &error, 16);
|
||||
if (*error != '\0')
|
||||
return cli_err(appctx, "Malformed ptr.\n");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user