diff options
Diffstat (limited to 'package/libiscsi/libiscsi-0004-examples-fix-uint64_t-formatting-issues.patch')
-rw-r--r-- | package/libiscsi/libiscsi-0004-examples-fix-uint64_t-formatting-issues.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/package/libiscsi/libiscsi-0004-examples-fix-uint64_t-formatting-issues.patch b/package/libiscsi/libiscsi-0004-examples-fix-uint64_t-formatting-issues.patch new file mode 100644 index 0000000000..3a4504973c --- /dev/null +++ b/package/libiscsi/libiscsi-0004-examples-fix-uint64_t-formatting-issues.patch @@ -0,0 +1,49 @@ +From fdfeff0462e17e0f0e37e65e5b6be6e74a9b39fd Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> +Date: Tue, 2 Sep 2014 22:43:44 +0200 +Subject: [PATCH 4/4] examples: fix uint64_t formatting issues + +Using %lu to format uint64_t doesn't work for 32 bits architecture, +because uint64_t is an unsigned long long and therefore %llu should be +used. The solution is to use PRIu64 from <inttypes.h>, which is equal +to %lu on 64 bits architectures, and %llu on 32 bits architectures, +which corresponds to the definition of uint64_t. + +Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> +--- + examples/iscsi-dd.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/examples/iscsi-dd.c b/examples/iscsi-dd.c +index 4cc7c2b..33007c3 100644 +--- a/examples/iscsi-dd.c ++++ b/examples/iscsi-dd.c +@@ -19,6 +19,7 @@ + #include <stdlib.h> + #include <stdint.h> + #include <string.h> ++#include <inttypes.h> + #include <poll.h> + #include <getopt.h> + #include "iscsi.h" +@@ -79,7 +80,7 @@ void write_cb(struct iscsi_context *iscsi, int status, void *command_data, void + fill_read_queue(client); + + if (client->progress) { +- printf("\r%lu of %lu blocks transferred.", client->pos, client->src_num_blocks); ++ printf("\r%" PRIu64 " of %" PRIu64 " blocks transferred.", client->pos, client->src_num_blocks); + } + + if ((client->in_flight == 0) && (client->pos == client->src_num_blocks)) { +@@ -378,7 +379,7 @@ int main(int argc, char *argv[]) + } + + if (client.src_num_blocks > client.dst_num_blocks) { +- fprintf(stderr, "source LUN is bigger than destination (%lu > %lu sectors)\n", client.src_num_blocks, client.dst_num_blocks); ++ fprintf(stderr, "source LUN is bigger than destination (%" PRIu64 " > %" PRIu64 " sectors)\n", client.src_num_blocks, client.dst_num_blocks); + exit(10); + } + +-- +2.0.0 + |