diff options
author | Tobias Brunner <tobias@strongswan.org> | 2012-03-22 16:13:15 +0100 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2012-03-27 09:10:34 +0200 |
commit | 817ab8a8d428fe4854625ee0a804701449951833 (patch) | |
tree | e84d2c51f1b3986a69ca04e9c00a779b7c0fcf57 /src/libcharon/encoding/generator.c | |
parent | adfd3b992fc4effb81f8ce9268d66117e8c32557 (diff) | |
download | strongswan-817ab8a8d428fe4854625ee0a804701449951833.tar.bz2 strongswan-817ab8a8d428fe4854625ee0a804701449951833.tar.xz |
Don't cast second argument of mem_printf_hook (%b) to size_t.
Also treat the given number as unsigned int.
Due to the printf hook registration the second argument of
mem_printf_hook (if called via printf etc.) is always of type int*.
Casting this to a size_t pointer and then dereferencing that as int does
not work on big endian machines if int is smaller than size_t (e.g. on ppc64).
In order to make this change work if the argument is of a type larger
than int, size_t for instance, the second argument for %b has to be casted
to (u_)int.
Diffstat (limited to 'src/libcharon/encoding/generator.c')
-rw-r--r-- | src/libcharon/encoding/generator.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libcharon/encoding/generator.c b/src/libcharon/encoding/generator.c index ce3844361..60fa7e0c4 100644 --- a/src/libcharon/encoding/generator.c +++ b/src/libcharon/encoding/generator.c @@ -523,7 +523,7 @@ METHOD(generator_t, generate_payload, void, payload_type_names, payload_type); DBG3(DBG_ENC, "generated data for this payload %b", this->buffer + offset_start, - this->out_position - this->buffer - offset_start); + (u_int)(this->out_position - this->buffer - offset_start)); } METHOD(generator_t, destroy, void, |