* ground up. It still has remnents of the old code lying about, but it is
* very different now (i.e. cleaner, less global variables, etc)
*
- * Copyright (C) 2000 by Lineo, inc.
+ * Copyright (C) 1999,2000,2001 by Lineo, inc.
* Written by Erik Andersen <andersen@lineo.com>, <andersee@debian.org>
*
* Based in part in the tar implementation in sash
#include <sys/sysmacros.h>
#include <getopt.h>
#include <fnmatch.h>
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
#ifdef BB_FEATURE_TAR_GZIP
extern int unzip(int in, int out);
#define MINOR(dev) ((dev)&0xff)
#endif
-#define NAME_SIZE 100
+enum { NAME_SIZE = 100 }; /* because gcc won't let me use 'static const int' */
/* POSIX tar Header Block, from POSIX 1003.1-1990 */
struct TarHeader
/* A few useful constants */
#define TAR_MAGIC "ustar" /* ustar and a null */
#define TAR_VERSION " " /* Be compatable with GNU tar format */
-#define TAR_MAGIC_LEN 6
-#define TAR_VERSION_LEN 2
-#define TAR_BLOCK_SIZE 512
+static const int TAR_MAGIC_LEN = 6;
+static const int TAR_VERSION_LEN = 2;
+static const int TAR_BLOCK_SIZE = 512;
/* A nice enum with all the possible tar file content types */
enum TarFileType