]> jfr.im git - solanum.git/commitdiff
librb: silence some fairly harmless compiler warnings
authorAaron Jones <redacted>
Wed, 1 Jun 2016 19:50:09 +0000 (19:50 +0000)
committerAaron Jones <redacted>
Wed, 1 Jun 2016 19:50:09 +0000 (19:50 +0000)
These include warnings about "break" statements that will never be
executed (because they are after "return" statements), unused macros
(lost to code refactoring or never even used in the first place),
functions that call abort() or loop indefinitely but aren't marked with
the "noreturn" attribute, and use of variables possibly uninitialised
(a false positive).

librb/include/rb_helper.h
librb/include/rb_lib.h
librb/include/rb_memory.h
librb/src/balloc.c
librb/src/commio.c
librb/src/crypt.c
librb/src/linebuf.c
librb/src/patricia.c

index 0b4a90865312533d57b4c0c2c5f90d5c9d54c083..01868b6786a84ad979a74d7dbd0aaf1c5bba5e4a 100644 (file)
@@ -58,5 +58,5 @@ void rb_helper_write_flush(rb_helper *helper);
 void rb_helper_run(rb_helper *helper);
 void rb_helper_close(rb_helper *helper);
 int rb_helper_read(rb_helper *helper, void *buf, size_t bufsize);
-void rb_helper_loop(rb_helper *helper, long delay);
+void rb_helper_loop(rb_helper *helper, long delay) __attribute__((noreturn));
 #endif
index 7646718e6b744100bd227ef73f3c2ef27c2db60a..2a817408b8b11682f2fd7d83a4f6ae16c3e315ec 100644 (file)
@@ -215,14 +215,14 @@ typedef void die_cb(const char *buffer);
 char *rb_ctime(const time_t, char *, size_t);
 char *rb_date(const time_t, char *, size_t);
 void rb_lib_log(const char *, ...);
-void rb_lib_restart(const char *, ...);
+void rb_lib_restart(const char *, ...) __attribute__((noreturn));
 void rb_lib_die(const char *, ...);
 void rb_set_time(void);
 const char *rb_lib_version(void);
 
 void rb_lib_init(log_cb * xilog, restart_cb * irestart, die_cb * idie, int closeall, int maxfds,
                 size_t dh_size, size_t fd_heap_size);
-void rb_lib_loop(long delay);
+void rb_lib_loop(long delay) __attribute__((noreturn));
 
 time_t rb_current_time(void);
 const struct timeval *rb_current_time_tv(void);
index 1bc7af09880643e977c310096d52bfc6eec95bfb..222b5c8d92beb2960f98d7733aec21f9e86c30de 100644 (file)
@@ -33,7 +33,7 @@
 #include <stdlib.h>
 
 
-void rb_outofmemory(void);
+void rb_outofmemory(void) __attribute__((noreturn));
 
 static inline void *
 rb_malloc(size_t size)
index 71b36cabf9dd6e4244b79af2a4a9252c094fafbc..2cbe4350fbe9a0527270bf03511e6d74581689ad 100644 (file)
@@ -58,6 +58,8 @@
 #include <librb_config.h>
 #include <rb_lib.h>
 
+static void _rb_bh_fail(const char *reason, const char *file, int line) __attribute__((noreturn));
+
 static uintptr_t offset_pad;
 
 /* status information for an allocated block in heap */
index b40a5cc2d2483408ecc93bbd5cb25cadef869068..252e6e9d2d7ccbd94f21d5343ef4d6e46d098255 100644 (file)
@@ -1345,16 +1345,13 @@ rb_inet_ntop_sock(struct sockaddr *src, char *dst, unsigned int size)
        {
        case AF_INET:
                return (rb_inet_ntop(AF_INET, &((struct sockaddr_in *)src)->sin_addr, dst, size));
-               break;
 #ifdef RB_IPV6
        case AF_INET6:
                return (rb_inet_ntop
                        (AF_INET6, &((struct sockaddr_in6 *)src)->sin6_addr, dst, size));
-               break;
 #endif
        default:
                return NULL;
-               break;
        }
 }
 
index 9344e988d557eb2a4225002fa5476529864d870a..b2e37240192c2d8c34782c811abfdf28fae7e8c7 100644 (file)
@@ -46,16 +46,12 @@ rb_crypt(const char *key, const char *salt)
                {
                case '1':
                        return rb_md5_crypt(key, salt);
-                       break;
                case '5':
                        return rb_sha256_crypt(key, salt);
-                       break;
                case '6':
                        return rb_sha512_crypt(key, salt);
-                       break;
                default:
                        return NULL;
-                       break;
                };
        }
        else
@@ -536,7 +532,7 @@ rb_do_des(uint32_t l_in, uint32_t r_in, uint32_t *l_out, uint32_t *r_out, int co
         *      l_in, r_in, l_out, and r_out are in pseudo-"big-endian" format.
         */
        uint32_t l, r, *kl, *kr, *kl1, *kr1;
-       uint32_t f, r48l, r48r;
+       uint32_t f = 0, r48l, r48r;
        int round;
 
        if(count == 0)
@@ -748,9 +744,6 @@ rb_des_crypt(const char *key, const char *setting)
  * edited for clarity and style only.
  */
 
-#define MD5_BLOCK_LENGTH                64
-#define MD5_DIGEST_LENGTH               16
-#define MD5_DIGEST_STRING_LENGTH        (MD5_DIGEST_LENGTH * 2 + 1)
 #define MD5_SIZE                       16
 
 static void
index 33977f808783fd14e4a5bdbfc957b1f5c2262f7a..77fe9b7d8cd58882c98843bbf3e8107a18dfd17e 100644 (file)
@@ -31,10 +31,6 @@ static rb_bh *rb_linebuf_heap;
 
 static int bufline_count = 0;
 
-#ifndef LINEBUF_HEAP_SIZE
-#define LINEBUF_HEAP_SIZE 2048
-#endif
-
 /*
  * rb_linebuf_init
  *
index 9db07138d1dfb459f202aa85bb2a9d15f9945fcb..fe02c73c333aaf4a154878fdc23f279d86480790 100644 (file)
  * #define PATRICIA_DEBUG 1
  */
 
-#define PREFIX_HEAP_COUNT      1024
-#define NODE_HEAP_COUNT                1024
-#define PATRICIA_HEAP_COUNT    128
-
 void
 rb_init_patricia(void)
 {