big endian warning fixes
authorDenys Vlasenko <vda.linux@googlemail.com>
Sat, 7 Nov 2009 00:31:14 +0000 (01:31 +0100)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sat, 7 Nov 2009 00:31:14 +0000 (01:31 +0100)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
include/platform.h
libbb/sha1.c
util-linux/fdisk_osf.c
util-linux/mkfs_vfat.c

index 54bc27d5ba2300f174a8892b1d029cf8e6580b80..8ed05a4ad04afd1dbb2309e6a870e531b3416913 100644 (file)
@@ -324,7 +324,7 @@ typedef unsigned smalluint;
 # include <inttypes.h>
 # define PRIu32 "u"
 /* use legacy setpgrp(pid_t,pid_t) for now.  move to platform.c */
-# define bb_setpgrp() do { pid_t __me = getpid(); setpgrp(__me,__me); } while (0)
+# define bb_setpgrp() do { pid_t __me = getpid(); setpgrp(__me, __me); } while (0)
 # if !defined ADJ_OFFSET_SINGLESHOT && defined MOD_CLKA && defined MOD_OFFSET
 #  define ADJ_OFFSET_SINGLESHOT (MOD_CLKA | MOD_OFFSET)
 # endif
index ea645b735060e0d498550506543a1d2693d8e25e..5f42532cd7fa793f9354ca28097b5a19beaebf13 100644 (file)
@@ -408,7 +408,7 @@ void FAST_FUNC sha512_hash(const void *buffer, size_t len, sha512_ctx_t *ctx)
 /* Used also for sha256 */
 void FAST_FUNC sha1_end(void *resbuf, sha1_ctx_t *ctx)
 {
-       unsigned i, pad, in_buf;
+       unsigned pad, in_buf;
 
        in_buf = ctx->total64 & 63;
        /* Pad the buffer to the next 64-byte boundary with 0x80,0,0,0... */
@@ -434,16 +434,17 @@ void FAST_FUNC sha1_end(void *resbuf, sha1_ctx_t *ctx)
 
        in_buf = (ctx->process_block == sha1_process_block64) ? 5 : 8;
        /* This way we do not impose alignment constraints on resbuf: */
-#if BB_LITTLE_ENDIAN
-       for (i = 0; i < in_buf; ++i)
-               ctx->hash[i] = htonl(ctx->hash[i]);
-#endif
+       if (BB_LITTLE_ENDIAN) {
+               unsigned i;
+               for (i = 0; i < in_buf; ++i)
+                       ctx->hash[i] = htonl(ctx->hash[i]);
+       }
        memcpy(resbuf, ctx->hash, sizeof(ctx->hash[0]) * in_buf);
 }
 
 void FAST_FUNC sha512_end(void *resbuf, sha512_ctx_t *ctx)
 {
-       unsigned i, pad, in_buf;
+       unsigned pad, in_buf;
 
        in_buf = ctx->total64[0] & 127;
        /* Pad the buffer to the next 128-byte boundary with 0x80,0,0,0...
@@ -470,9 +471,10 @@ void FAST_FUNC sha512_end(void *resbuf, sha512_ctx_t *ctx)
                        break;
        }
 
-#if BB_LITTLE_ENDIAN
-       for (i = 0; i < ARRAY_SIZE(ctx->hash); ++i)
-               ctx->hash[i] = hton64(ctx->hash[i]);
-#endif
+       if (BB_LITTLE_ENDIAN) {
+               unsigned i;
+               for (i = 0; i < ARRAY_SIZE(ctx->hash); ++i)
+                       ctx->hash[i] = hton64(ctx->hash[i]);
+       }
        memcpy(resbuf, ctx->hash, sizeof(ctx->hash));
 }
index 09a68da83758486ac8046123a9c3cd8134dee7a4..b89a2b2af8952e574dfbbe30662f7f7a59578d83 100644 (file)
@@ -615,7 +615,7 @@ xbsd_create_disklabel(void)
 
        while (1) {
                c = read_nonempty("Do you want to create a disklabel? (y/n) ");
-               if (c == 'y' || c == 'Y') {
+               if ((c|0x20) == 'y') {
                        if (xbsd_initlabel(
 #if defined(__alpha__) || defined(__powerpc__) || defined(__hppa__) || \
        defined(__s390__) || defined(__s390x__)
@@ -629,7 +629,7 @@ xbsd_create_disklabel(void)
                        }
                        return 0;
                }
-               if (c == 'n')
+               if ((c|0x20) == 'n')
                        return 0;
        }
 }
@@ -964,6 +964,7 @@ xbsd_writelabel(struct partition *p)
 #if !defined(__alpha__) && !defined(__powerpc__) && !defined(__hppa__)
        sector = get_start_sect(p) + BSD_LABELSECTOR;
 #else
+       (void)p; /* silence warning */
        sector = BSD_LABELSECTOR;
 #endif
 
index de88a7443dd78674ab24c7f3439597d39ca43d66..e794b314587e3bbcaaf37eff8be121494ea7689d 100644 (file)
@@ -471,7 +471,8 @@ int mkfs_vfat_main(int argc UNUSED_PARAM, char **argv)
                strcpy(boot_blk->boot_jump, "\xeb\x58\x90" "mkdosfs"); // system_id[8] included :)
                STORE_LE(boot_blk->bytes_per_sect, bytes_per_sect);
                STORE_LE(boot_blk->sect_per_clust, sect_per_clust);
-               STORE_LE(boot_blk->reserved_sect, reserved_sect);
+               // cast in needed on big endian to suppress a warning
+               STORE_LE(boot_blk->reserved_sect, (uint16_t)reserved_sect);
                STORE_LE(boot_blk->fats, 2);
                //STORE_LE(boot_blk->dir_entries, 0); // for FAT32, stays 0
                if (volume_size_sect <= 0xffff)