threads / patch / 6419

patch, 2 partsUse fixed-size integers for the on-disk pack structure.

Subject: [PATCH 1/2] Use fixed-size integers for the on-disk pack structure.

## tl;dr

One message between Jan 18, 2007 and Jan 18, 2007. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Junio C Hamano· Jan 18, 2007, 07:24 UTC · lore
From: Simon 'corecode' Schubert <corecode@fs.ei.tum.de>
Date: Wed, 17 Jan 2007 09:07:23 +0100

Plain integer types without a fixed size can vary between platforms. Even though all common platforms use 32-bit ints, there is no guarantee that this won't change at some point. Furthermore, specifying an integer type with explicit size makes the definition of structures more obvious.

Signed-off-by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 * For wider review -- this _might_ have issues with "not quite
   POSIX" systems (such as AIX exporting something undesirable
   under _ALL_SOURCE for example).
 git-compat-util.h |    1 +
 pack.h            |    6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)
Show changes to 2 files +4 −3

git-compat-util.h, pack.h

diff --git a/git-compat-util.h b/git-compat-util.h
index 8d244d0..bf3ceb8 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -46,6 +46,7 @@
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <pwd.h>
+#include <stdint.h>
 #undef _ALL_SOURCE /* AIX 5.3L defines a struct list with _ALL_SOURCE. */
 #include <grp.h>
 #define _ALL_SOURCE 1
diff --git a/pack.h b/pack.h
index 790ff4a..821706f 100644
--- a/pack.h
+++ b/pack.h
@@ -10,9 +10,9 @@
 #define PACK_VERSION 2
 #define pack_version_ok(v) ((v) == htonl(2) || (v) == htonl(3))
 struct pack_header {
-	unsigned int hdr_signature;
-	unsigned int hdr_version;
-	unsigned int hdr_entries;
+	uint32_t hdr_signature;
+	uint32_t hdr_version;
+	uint32_t hdr_entries;
 };
 
 /*
-- 
1.5.0.rc1.g05cf8

← back to recent threads