Vodz, last_patch_114
[oweals/busybox.git] / libbb / inode_hash.c
index db68025dd3516c0a942b44eb7ec549e8fdd26ee5..ea82e8ce6c1b77589c7249a264358c6b9f802eb5 100644 (file)
@@ -2,36 +2,40 @@
 /*
  * Utility routines.
  *
- * Copyright (C) tons of folks.  Tracking down who wrote what
- * isn't something I'm going to worry about...  If you wrote something
- * here, please feel free to acknowledge your work.
+ * Copyright (C) many different people.  
+ * If you wrote this, please acknowledge your work.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
  *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  * General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * Based in part on code from sash, Copyright (c) 1999 by David I. Bell 
- * Permission has been granted to redistribute this code under the GPL.
- *
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
  */
 
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include "libbb.h"
 
 #define HASH_SIZE      311             /* Should be prime */
 #define hash_inode(i)  ((i) % HASH_SIZE)
 
+typedef struct ino_dev_hash_bucket_struct {
+  struct ino_dev_hash_bucket_struct *next;
+  ino_t ino;
+  dev_t dev;
+  char name[1];
+} ino_dev_hashtable_bucket_t;
+
 static ino_dev_hashtable_bucket_t *ino_dev_hashtable[HASH_SIZE];
 
 /*
@@ -79,6 +83,7 @@ void add_to_ino_dev_hashtable(const struct stat *statbuf, const char *name)
        ino_dev_hashtable[i] = bucket;
 }
 
+#ifdef CONFIG_FEATURE_CLEAN_UP
 /* Clear statbuf hash table */
 void reset_ino_dev_hashtable(void)
 {
@@ -93,6 +98,7 @@ void reset_ino_dev_hashtable(void)
                }
        }
 }
+#endif
 
 
 /* END CODE */