From d1f91f7c723733113b4e9792042101c80dfc064c Mon Sep 17 00:00:00 2001
From: Jeremy Allison <jra@samba.org>
Date: Sat, 3 Dec 2005 06:46:46 +0000
Subject: r12043: It's amazing the warnings you find when compiling on a 64-bit
 box with gcc4 and -O6... Fix a bunch of C99 dereferencing type-punned pointer
 will break strict-aliasing rules errors. Also added prs_int32 (not uint32...)
 as it's needed in one place. Find places where prs_uint32 was being used to
 marshall/unmarshall a time_t (a big no no on 64-bits). More warning fixes to
 come. Thanks to Volker for nudging me to compile like this. Jeremy. (This
 used to be commit c65b752604f8f58abc4e7ae8514dc2c7f086271c)

---
 source3/lib/charcnv.c   | 2 +-
 source3/lib/clobber.c   | 2 +-
 source3/lib/crc32.c     | 2 +-
 source3/lib/util_file.c | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

(limited to 'source3/lib')

diff --git a/source3/lib/charcnv.c b/source3/lib/charcnv.c
index 4fbad0f3d1..0c806167f4 100644
--- a/source3/lib/charcnv.c
+++ b/source3/lib/charcnv.c
@@ -781,7 +781,7 @@ size_t unix_strlower(const char *src, size_t srclen, char *dest, size_t destlen)
 	smb_ucs2_t *buffer = NULL;
 	
 	size = convert_string_allocate(NULL, CH_UNIX, CH_UCS2, src, srclen,
-				       (void **) &buffer, True);
+				       (void **)(void *)&buffer, True);
 	if (size == (size_t)-1 || !buffer) {
 		smb_panic("failed to create UCS2 buffer");
 	}
diff --git a/source3/lib/clobber.c b/source3/lib/clobber.c
index fb3a0dc281..54b24ffed3 100644
--- a/source3/lib/clobber.c
+++ b/source3/lib/clobber.c
@@ -54,7 +54,7 @@ void clobber_region(const char *fn, unsigned int line, char *dest, size_t len)
 	 * (This is not redundant with the clobbering above.  The
 	 * marking might not actually take effect if we're not running
 	 * under valgrind.) */
-	VALGRIND_MAKE_WRITABLE(dest, len);
+//	VALGRIND_MAKE_WRITABLE(dest, len);
 #endif /* VALGRIND */
 #endif /* DEVELOPER */
 }
diff --git a/source3/lib/crc32.c b/source3/lib/crc32.c
index 7522ab7c81..a4ae90c469 100644
--- a/source3/lib/crc32.c
+++ b/source3/lib/crc32.c
@@ -93,7 +93,7 @@ uint32 crc32_calc_buffer(const char *buf, size_t size)
 	const unsigned char *p;
 	uint32 crc;
 
-	p = buf;
+	p = (const unsigned char *)buf;
 	crc = ~0U;
 
 	while (size--)
diff --git a/source3/lib/util_file.c b/source3/lib/util_file.c
index 963d610bef..407a8b24fc 100644
--- a/source3/lib/util_file.c
+++ b/source3/lib/util_file.c
@@ -525,7 +525,7 @@ static char **file_lines_parse(char *p, size_t size, int *numlines)
 char **file_lines_load(const char *fname, int *numlines)
 {
 	char *p;
-	size_t size;
+	size_t size = 0;
 
 	p = file_load(fname, &size);
 	if (!p) {
-- 
cgit