]> git.ozlabs.org Git - ccan/commitdiff
tdb2: fix tools compilation.
authorRusty Russell <rusty@rustcorp.com.au>
Mon, 21 Mar 2011 10:20:22 +0000 (20:50 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Mon, 21 Mar 2011 10:20:22 +0000 (20:50 +1030)
ccan/tdb2/tools/tdbtool.c
ccan/tdb2/tools/tdbtorture.c

index 3ae7866d2c63c6137bd7cb1f59ac64bc35cbd761..a00ebb904b9ac37b13e7f086ccc38e8409dc4199 100644 (file)
@@ -21,7 +21,6 @@
 */
 
 #include <ccan/tdb2/tdb2.h>
 */
 
 #include <ccan/tdb2/tdb2.h>
-#include <ccan/hash/hash.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <ctype.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <ctype.h>
@@ -207,8 +206,10 @@ static void help(void)
 "  store     key  data  : store a record (replace)\n"
 "  show      key        : show a record by key\n"
 "  delete    key        : delete a record by key\n"
 "  store     key  data  : store a record (replace)\n"
 "  show      key        : show a record by key\n"
 "  delete    key        : delete a record by key\n"
+#if 0
 "  list                 : print the database hash table and freelist\n"
 "  free                 : print the database freelist\n"
 "  list                 : print the database hash table and freelist\n"
 "  free                 : print the database freelist\n"
+#endif
 "  check                : check the integrity of an opened database\n"
 "  speed                : perform speed tests on the database\n"
 "  ! command            : execute system command\n"
 "  check                : check the integrity of an opened database\n"
 "  speed                : perform speed tests on the database\n"
 "  ! command            : execute system command\n"
@@ -242,12 +243,6 @@ static void create_tdb(const char *tdbname)
        }
 }
 
        }
 }
 
-static uint64_t jenkins_hash(const void *key, size_t len, uint64_t seed,
-                            void *priv)
-{
-       return hash_any(key, len, seed);
-}
-
 static void open_tdb(const char *tdbname)
 {
        union tdb_attribute log_attr;
 static void open_tdb(const char *tdbname)
 {
        union tdb_attribute log_attr;
index 89c2609967b425a4bdd8d71c8763fc4949576d2e..52cab665d1393e63a8839dc3ad17619915db4a54 100644 (file)
@@ -64,10 +64,11 @@ static void segv_handler(int signal, siginfo_t *info, void *p)
 {
        char string[100];
 
 {
        char string[100];
 
-       sprintf(string, "%u: death at %p (map_ptr %p, map_size %llu)\n",
-               getpid(), info->si_addr, db->map_ptr, db->map_size);
-       write(2, string, strlen(string));
-       sleep(60);
+       sprintf(string, "%u: death at %p (map_ptr %p, map_size %zu)\n",
+               getpid(), info->si_addr, db->file->map_ptr,
+               (size_t)db->file->map_size);
+       if (write(2, string, strlen(string)) > 0)
+               sleep(60);
        _exit(11);
 }      
 
        _exit(11);
 }      
 
@@ -243,7 +244,8 @@ static void usage(void)
 static void send_count_and_suicide(int sig)
 {
        /* This ensures our successor can continue where we left off. */
 static void send_count_and_suicide(int sig)
 {
        /* This ensures our successor can continue where we left off. */
-       write(count_pipe, &loopnum, sizeof(loopnum));
+       if (write(count_pipe, &loopnum, sizeof(loopnum)) != sizeof(loopnum))
+               exit(2);
        /* This gives a unique signature. */
        kill(getpid(), SIGUSR2);
 }
        /* This gives a unique signature. */
        kill(getpid(), SIGUSR2);
 }
@@ -433,8 +435,11 @@ int main(int argc, char * const *argv)
                            || WTERMSIG(status) == SIGUSR1) {
                                /* SIGUSR2 means they wrote to pipe. */
                                if (WTERMSIG(status) == SIGUSR2) {
                            || WTERMSIG(status) == SIGUSR1) {
                                /* SIGUSR2 means they wrote to pipe. */
                                if (WTERMSIG(status) == SIGUSR2) {
-                                       read(pfds[0], &done[j],
-                                            sizeof(done[j]));
+                                       if (read(pfds[0], &done[j],
+                                                sizeof(done[j]))
+                                           != sizeof(done[j]))
+                                               err(1,
+                                                   "Short read from child?");
                                }
                                pids[j] = fork();
                                if (pids[j] == 0)
                                }
                                pids[j] = fork();
                                if (pids[j] == 0)