Compiler warnings

Ken Brown <[email protected]>
Newsgroups gmane.comp.gnu.mailutils.bugs
Message-ID <[email protected]>
I'm getting the following compiler warnings on Cygwin with gcc-5.4.0:

system.c:122:30: warning: unused variable ‘auth_data’ [-Wunused-variable]
    const struct mu_auth_data *auth_data = key;

copyfile.c:166:16: warning: cast from pointer to integer of different 
size [-Wpointer-to-int-cast]
     if (fchmod ((int) trans[0], mode))
                 ^
copyfile.c:196:17: warning: cast from pointer to integer of different 
size [-Wpointer-to-int-cast]
      if (fchown ((int) trans[0], uid, gid))
                  ^

The attached patch silences the warnings.  I'm not sure whether the 
patch to copyfile.c is correct; it seems strange to be casting a pointer 
to an integer which is then used as a file descriptor.  But I admit that 
I haven't studied the code.

Ken

_______________________________________________
Bug-mailutils mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-mailutils
0001-Avoid-compiler-warnings.patch (text/plain, 1.8 KB)
From f5bdee69facb521421e6e5dd198d3061cd716951 Mon Sep 17 00:00:00 2001
From: Ken Brown <[email protected]>
Date: Thu, 27 Apr 2017 13:42:30 -0400
Subject: [PATCH] Avoid compiler warnings

* libmailutils/auth/system.c (mu_authenticate_system): Only
declare auth_data if HAVE_SHADOW_H is defined.
* libmailutils/base/copyfile.c (copy_regular_file): Cast trans[0]
to intptr_t instead of int.
---
 libmailutils/auth/system.c   | 2 +-
 libmailutils/base/copyfile.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libmailutils/auth/system.c b/libmailutils/auth/system.c
index d6a8db065..6a7fdb236 100644
--- a/libmailutils/auth/system.c
+++ b/libmailutils/auth/system.c
@@ -119,9 +119,9 @@ mu_authenticate_system (struct mu_auth_data **return_data MU_ARG_UNUSED,
 			void *func_data MU_ARG_UNUSED,
 			void *call_data)
 {
+#ifdef HAVE_SHADOW_H
   const struct mu_auth_data *auth_data = key;
 
-#ifdef HAVE_SHADOW_H
   char *pass = call_data;
   
   if (auth_data)
diff --git a/libmailutils/base/copyfile.c b/libmailutils/base/copyfile.c
index 9a72228ce..dd9dbac7e 100644
--- a/libmailutils/base/copyfile.c
+++ b/libmailutils/base/copyfile.c
@@ -163,7 +163,7 @@ copy_regular_file (const char *srcpath, const char *dstpath, int flags,
       rc = mu_stream_ioctl (dst, MU_IOCTL_TRANSPORT, MU_IOCTL_OP_GET, trans);
       if (rc == 0)
 	{	    
-	  if (fchmod ((int) trans[0], mode))
+	  if (fchmod ((intptr_t) trans[0], mode))
 	    {
 	      mu_debug (MU_DEBCAT_STREAM, MU_DEBUG_ERROR,
 			(_("%s: cannot chmod: %s"),
@@ -193,7 +193,7 @@ copy_regular_file (const char *srcpath, const char *dstpath, int flags,
 
 	      if (gid != -1)
 		{
-		  if (fchown ((int) trans[0], uid, gid))
+		  if (fchown ((intptr_t) trans[0], uid, gid))
 		    {
 		      mu_debug (MU_DEBCAT_STREAM, MU_DEBUG_ERROR,
 				(_("%s: cannot chown to %lu.%lu: %s"),
-- 
2.12.2
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.