[busybox] fix bbappend & patches for version 2.22.1
authorhschang <chang@dev3>
Wed, 2 Jul 2014 04:19:51 +0000 (13:19 +0900)
committerhschang <chang@dev3>
Wed, 2 Jul 2014 04:19:51 +0000 (13:19 +0900)
26 files changed:
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-ifupdown-support-post-up-pre-down-hooks.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-work-around-linux-ext2_fs.h-breakage.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-Create-and-use-our-own-copy-of-linux-ext2_fs.h.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-ifupdown-code-shrink.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-Drop-include-bb_linux_ext2_fs.h-use-existing-e2fspro.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-ifupdown-remove-interface-from-state_list-if-iface_u.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0004-ifupdown-support-metric-for-static-default-gw.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0005-ifupdown-improve-compatibility-with-Debian.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0006-get_linux_version_code-don-t-fail-on-3.0-foo.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0007-ifplugd-move-read_pid-to-libbb-pidfile.c-and-rename-.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0008-ifupdown-dhcp_down-wait-until-udhcpc-has-been-killed.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0009-udhcpc-calculate-broadcast-address-if-not-given-by-s.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0010-udhcpc-obtain-hostname-from-OS-by-default.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0011-mount-don-t-pass-option-auto-to-kernel.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/change-passwd-default-algorithm.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/defconfig [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd.conf [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.19.4/mount_single_uuid.patch [deleted file]
meta-openvuplus/recipes-core/busybox/busybox-1.22.1/0011-mount-don-t-pass-option-auto-to-kernel.patch [new file with mode: 0644]
meta-openvuplus/recipes-core/busybox/busybox-1.22.1/defconfig [new file with mode: 0644]
meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd [new file with mode: 0755]
meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd.conf [new file with mode: 0644]
meta-openvuplus/recipes-core/busybox/busybox-1.22.1/mount_single_uuid.patch [new file with mode: 0644]
meta-openvuplus/recipes-core/busybox/busybox_1.19.4.bbappend [deleted file]
meta-openvuplus/recipes-core/busybox/busybox_1.22.1.bbappend [new file with mode: 0644]

diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-ifupdown-support-post-up-pre-down-hooks.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-ifupdown-support-post-up-pre-down-hooks.patch
deleted file mode 100644 (file)
index ae78e6d..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-From b58a1a06ca695aed6a4f6e5039e2de0e5a3df111 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Wed, 19 Oct 2011 02:35:54 +0200
-Subject: [PATCH 01/10] ifupdown: support post-up / pre-down hooks
-
-function                                             old     new   delta
-set_environ                                          330     371     +41
-ifupdown_main                                       2156    2194     +38
-iface_up                                              97     113     +16
-iface_down                                            97     113     +16
-------------------------------------------------------------------------------
-(add/remove: 0/0 grow/shrink: 4/0 up/down: 111/0)             Total: 111 bytes
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c |    6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 3820330..abc6b58 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -891,6 +891,8 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
-                               if (strcmp(first_word, "up") != 0
-                                && strcmp(first_word, "down") != 0
-                                && strcmp(first_word, "pre-up") != 0
-+                               && strcmp(first_word, "pre-down") != 0
-+                               && strcmp(first_word, "post-up") != 0
-                                && strcmp(first_word, "post-down") != 0
-                               ) {
-                                       int i;
-@@ -987,6 +989,8 @@ static void set_environ(struct interface_defn_t *iface, const char *mode)
-               if (strcmp(iface->option[i].name, "up") == 0
-                || strcmp(iface->option[i].name, "down") == 0
-                || strcmp(iface->option[i].name, "pre-up") == 0
-+               || strcmp(iface->option[i].name, "pre-down") == 0
-+               || strcmp(iface->option[i].name, "post-up") == 0
-                || strcmp(iface->option[i].name, "post-down") == 0
-               ) {
-                       continue;
-@@ -1056,6 +1060,7 @@ static int iface_up(struct interface_defn_t *iface)
-       if (!execute_all(iface, "pre-up")) return 0;
-       if (!iface->method->up(iface, doit)) return 0;
-       if (!execute_all(iface, "up")) return 0;
-+      if (!execute_all(iface, "post-up")) return 0;
-       return 1;
- }
-@@ -1063,6 +1068,7 @@ static int iface_down(struct interface_defn_t *iface)
- {
-       if (!iface->method->down(iface,check)) return -1;
-       set_environ(iface, "stop");
-+      if (!execute_all(iface, "pre-down")) return 0;
-       if (!execute_all(iface, "down")) return 0;
-       if (!iface->method->down(iface, doit)) return 0;
-       if (!execute_all(iface, "post-down")) return 0;
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-work-around-linux-ext2_fs.h-breakage.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0001-work-around-linux-ext2_fs.h-breakage.patch
deleted file mode 100644 (file)
index fa2e237..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From caf5768154301697430f0a3718838967d0f55f95 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Thu, 12 Apr 2012 14:01:10 +0200
-Subject: [PATCH 01/33] work around linux/ext2_fs.h breakage
-
-See https://bugzilla.kernel.org/show_bug.cgi?id=42986
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- e2fsprogs/tune2fs.c    |    6 ++++++
- util-linux/mkfs_ext2.c |    6 ++++++
- 2 files changed, 12 insertions(+)
-
-diff --git a/e2fsprogs/tune2fs.c b/e2fsprogs/tune2fs.c
-index 020bdaa..8da7432 100644
---- a/e2fsprogs/tune2fs.c
-+++ b/e2fsprogs/tune2fs.c
-@@ -8,6 +8,12 @@
-  */
- #include "libbb.h"
- #include <linux/fs.h>
-+/*
-+ * Work around linux/ext2_fs.h breakage.
-+ * See https://bugzilla.kernel.org/show_bug.cgi?id=42986.
-+ */
-+typedef mode_t bb__umode_t;
-+#define umode_t bb__umode_t
- #include <linux/ext2_fs.h>
- // storage helpers
-diff --git a/util-linux/mkfs_ext2.c b/util-linux/mkfs_ext2.c
-index 6cbbe0e..759bb0a 100644
---- a/util-linux/mkfs_ext2.c
-+++ b/util-linux/mkfs_ext2.c
-@@ -48,6 +48,12 @@
- #include "libbb.h"
- #include <linux/fs.h>
-+/*
-+ * Work around linux/ext2_fs.h breakage.
-+ * See https://bugzilla.kernel.org/show_bug.cgi?id=42986.
-+ */
-+typedef mode_t bb__umode_t;
-+#define umode_t bb__umode_t
- #include <linux/ext2_fs.h>
- #define ENABLE_FEATURE_MKFS_EXT2_RESERVED_GDT 0
--- 
-1.7.9.5
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-Create-and-use-our-own-copy-of-linux-ext2_fs.h.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-Create-and-use-our-own-copy-of-linux-ext2_fs.h.patch
deleted file mode 100644 (file)
index f9de87f..0000000
+++ /dev/null
@@ -1,607 +0,0 @@
-From 0b2b0f31a38d77ebfb2a6416011562687ef58191 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Fri, 13 Apr 2012 16:39:18 +0200
-Subject: [PATCH 01/32] Create and use our own copy of linux/ext2_fs.h
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- e2fsprogs/tune2fs.c        |    8 +-
- include/bb_linux_ext2_fs.h |  547 ++++++++++++++++++++++++++++++++++++++++++++
- util-linux/mkfs_ext2.c     |    8 +-
- 3 files changed, 549 insertions(+), 14 deletions(-)
- create mode 100644 include/bb_linux_ext2_fs.h
-
-diff --git a/e2fsprogs/tune2fs.c b/e2fsprogs/tune2fs.c
-index 8da7432..841d58a 100644
---- a/e2fsprogs/tune2fs.c
-+++ b/e2fsprogs/tune2fs.c
-@@ -8,13 +8,7 @@
-  */
- #include "libbb.h"
- #include <linux/fs.h>
--/*
-- * Work around linux/ext2_fs.h breakage.
-- * See https://bugzilla.kernel.org/show_bug.cgi?id=42986.
-- */
--typedef mode_t bb__umode_t;
--#define umode_t bb__umode_t
--#include <linux/ext2_fs.h>
-+#include "bb_linux_ext2_fs.h"
- // storage helpers
- char BUG_wrong_field_size(void);
-diff --git a/include/bb_linux_ext2_fs.h b/include/bb_linux_ext2_fs.h
-new file mode 100644
-index 0000000..fdc470b
---- /dev/null
-+++ b/include/bb_linux_ext2_fs.h
-@@ -0,0 +1,547 @@
-+/*
-+ * Work around linux/ext2_fs.h breakage.
-+ * linux/ext2_fs.h might be removed from future kernel header distribution.
-+ * See https://bugzilla.kernel.org/show_bug.cgi?id=42986
-+ *
-+ * Licensed under GPLv2, see file LICENSE in this source tree.
-+ */
-+#ifndef BB_LINUX_EXT2_FS_H
-+#define BB_LINUX_EXT2_FS_H
-+
-+/*
-+ * From linux/magic.h
-+ */
-+
-+#define EXT2_SUPER_MAGIC        0xEF53
-+#define EXT3_SUPER_MAGIC        0xEF53
-+#define EXT4_SUPER_MAGIC        0xEF53
-+
-+/*
-+ * From linux/ext2_fs.h, with minor changes.
-+ */
-+
-+/*
-+ * Copyright (C) 1992, 1993, 1994, 1995
-+ * Remy Card (card@masi.ibp.fr)
-+ * Laboratoire MASI - Institut Blaise Pascal
-+ * Universite Pierre et Marie Curie (Paris VI)
-+ *
-+ *  from
-+ *
-+ *  linux/include/linux/minix_fs.h
-+ *
-+ *  Copyright (C) 1991, 1992  Linus Torvalds
-+ */
-+
-+/*
-+ * The second extended filesystem constants/structures
-+ */
-+
-+/*
-+ * Define EXT2_RESERVATION to reserve data blocks for expanding files
-+ */
-+#define EXT2_DEFAULT_RESERVE_BLOCKS     8
-+/*max window size: 1024(direct blocks) + 3([t,d]indirect blocks) */
-+#define EXT2_MAX_RESERVE_BLOCKS         1027
-+#define EXT2_RESERVE_WINDOW_NOT_ALLOCATED 0
-+
-+/*
-+ * Special inode numbers
-+ */
-+#define       EXT2_BAD_INO             1      /* Bad blocks inode */
-+#define EXT2_ROOT_INO          2      /* Root inode */
-+#define EXT2_BOOT_LOADER_INO   5      /* Boot loader inode */
-+#define EXT2_UNDEL_DIR_INO     6      /* Undelete directory inode */
-+
-+/* First non-reserved inode for old ext2 filesystems */
-+#define EXT2_GOOD_OLD_FIRST_INO       11
-+
-+/* Assume that user mode programs are passing in an ext2fs superblock, not
-+ * a kernel struct super_block.  This will allow us to call the feature-test
-+ * macros from user land. */
-+#define EXT2_SB(sb)   (sb)
-+
-+/*
-+ * Maximal count of links to a file
-+ */
-+#define EXT2_LINK_MAX         32000
-+
-+/*
-+ * Macro-instructions used to manage several block sizes
-+ */
-+#define EXT2_MIN_BLOCK_SIZE           1024
-+#define       EXT2_MAX_BLOCK_SIZE             4096
-+#define EXT2_MIN_BLOCK_LOG_SIZE                 10
-+# define EXT2_BLOCK_SIZE(s)           (EXT2_MIN_BLOCK_SIZE << (s)->s_log_block_size)
-+#define       EXT2_ADDR_PER_BLOCK(s)          (EXT2_BLOCK_SIZE(s) / sizeof (uint32_t))
-+# define EXT2_BLOCK_SIZE_BITS(s)      ((s)->s_log_block_size + 10)
-+#define EXT2_INODE_SIZE(s)    (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
-+                               EXT2_GOOD_OLD_INODE_SIZE : \
-+                               (s)->s_inode_size)
-+#define EXT2_FIRST_INO(s)     (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
-+                               EXT2_GOOD_OLD_FIRST_INO : \
-+                               (s)->s_first_ino)
-+
-+/*
-+ * Macro-instructions used to manage fragments
-+ */
-+#define EXT2_MIN_FRAG_SIZE            1024
-+#define       EXT2_MAX_FRAG_SIZE              4096
-+#define EXT2_MIN_FRAG_LOG_SIZE                  10
-+# define EXT2_FRAG_SIZE(s)            (EXT2_MIN_FRAG_SIZE << (s)->s_log_frag_size)
-+# define EXT2_FRAGS_PER_BLOCK(s)      (EXT2_BLOCK_SIZE(s) / EXT2_FRAG_SIZE(s))
-+
-+/*
-+ * Structure of a blocks group descriptor
-+ */
-+struct ext2_group_desc
-+{
-+      uint32_t        bg_block_bitmap;                /* Blocks bitmap block */
-+      uint32_t        bg_inode_bitmap;                /* Inodes bitmap block */
-+      uint32_t        bg_inode_table;         /* Inodes table block */
-+      uint16_t        bg_free_blocks_count;   /* Free blocks count */
-+      uint16_t        bg_free_inodes_count;   /* Free inodes count */
-+      uint16_t        bg_used_dirs_count;     /* Directories count */
-+      uint16_t        bg_pad;
-+      uint32_t        bg_reserved[3];
-+};
-+
-+/*
-+ * Macro-instructions used to manage group descriptors
-+ */
-+# define EXT2_BLOCKS_PER_GROUP(s)     ((s)->s_blocks_per_group)
-+# define EXT2_DESC_PER_BLOCK(s)               (EXT2_BLOCK_SIZE(s) / sizeof (struct ext2_group_desc))
-+# define EXT2_INODES_PER_GROUP(s)     ((s)->s_inodes_per_group)
-+
-+/*
-+ * Constants relative to the data blocks
-+ */
-+#define       EXT2_NDIR_BLOCKS                12
-+#define       EXT2_IND_BLOCK                  EXT2_NDIR_BLOCKS
-+#define       EXT2_DIND_BLOCK                 (EXT2_IND_BLOCK + 1)
-+#define       EXT2_TIND_BLOCK                 (EXT2_DIND_BLOCK + 1)
-+#define       EXT2_N_BLOCKS                   (EXT2_TIND_BLOCK + 1)
-+
-+/*
-+ * Inode flags (GETFLAGS/SETFLAGS)
-+ */
-+#define       EXT2_SECRM_FL                   FS_SECRM_FL     /* Secure deletion */
-+#define       EXT2_UNRM_FL                    FS_UNRM_FL      /* Undelete */
-+#define       EXT2_COMPR_FL                   FS_COMPR_FL     /* Compress file */
-+#define EXT2_SYNC_FL                  FS_SYNC_FL      /* Synchronous updates */
-+#define EXT2_IMMUTABLE_FL             FS_IMMUTABLE_FL /* Immutable file */
-+#define EXT2_APPEND_FL                        FS_APPEND_FL    /* writes to file may only append */
-+#define EXT2_NODUMP_FL                        FS_NODUMP_FL    /* do not dump file */
-+#define EXT2_NOATIME_FL                       FS_NOATIME_FL   /* do not update atime */
-+/* Reserved for compression usage... */
-+#define EXT2_DIRTY_FL                 FS_DIRTY_FL
-+#define EXT2_COMPRBLK_FL              FS_COMPRBLK_FL  /* One or more compressed clusters */
-+#define EXT2_NOCOMP_FL                        FS_NOCOMP_FL    /* Don't compress */
-+#define EXT2_ECOMPR_FL                        FS_ECOMPR_FL    /* Compression error */
-+/* End compression flags --- maybe not all used */
-+#define EXT2_BTREE_FL                 FS_BTREE_FL     /* btree format dir */
-+#define EXT2_INDEX_FL                 FS_INDEX_FL     /* hash-indexed directory */
-+#define EXT2_IMAGIC_FL                        FS_IMAGIC_FL    /* AFS directory */
-+#define EXT2_JOURNAL_DATA_FL          FS_JOURNAL_DATA_FL /* Reserved for ext3 */
-+#define EXT2_NOTAIL_FL                        FS_NOTAIL_FL    /* file tail should not be merged */
-+#define EXT2_DIRSYNC_FL                       FS_DIRSYNC_FL   /* dirsync behaviour (directories only) */
-+#define EXT2_TOPDIR_FL                        FS_TOPDIR_FL    /* Top of directory hierarchies*/
-+#define EXT2_RESERVED_FL              FS_RESERVED_FL  /* reserved for ext2 lib */
-+
-+#define EXT2_FL_USER_VISIBLE          FS_FL_USER_VISIBLE      /* User visible flags */
-+#define EXT2_FL_USER_MODIFIABLE               FS_FL_USER_MODIFIABLE   /* User modifiable flags */
-+
-+/* Flags that should be inherited by new inodes from their parent. */
-+#define EXT2_FL_INHERITED (EXT2_SECRM_FL | EXT2_UNRM_FL | EXT2_COMPR_FL |\
-+                         EXT2_SYNC_FL | EXT2_IMMUTABLE_FL | EXT2_APPEND_FL |\
-+                         EXT2_NODUMP_FL | EXT2_NOATIME_FL | EXT2_COMPRBLK_FL|\
-+                         EXT2_NOCOMP_FL | EXT2_JOURNAL_DATA_FL |\
-+                         EXT2_NOTAIL_FL | EXT2_DIRSYNC_FL)
-+
-+/* Flags that are appropriate for regular files (all but dir-specific ones). */
-+#define EXT2_REG_FLMASK (~(EXT2_DIRSYNC_FL | EXT2_TOPDIR_FL))
-+
-+/* Flags that are appropriate for non-directories/regular files. */
-+#define EXT2_OTHER_FLMASK (EXT2_NODUMP_FL | EXT2_NOATIME_FL)
-+
-+/* Mask out flags that are inappropriate for the given type of inode. */
-+static inline uint32_t ext2_mask_flags(mode_t mode, uint32_t flags)
-+{
-+      if (S_ISDIR(mode))
-+              return flags;
-+      else if (S_ISREG(mode))
-+              return flags & EXT2_REG_FLMASK;
-+      else
-+              return flags & EXT2_OTHER_FLMASK;
-+}
-+
-+/*
-+ * ioctl commands
-+ */
-+#define       EXT2_IOC_GETFLAGS               FS_IOC_GETFLAGS
-+#define       EXT2_IOC_SETFLAGS               FS_IOC_SETFLAGS
-+#define       EXT2_IOC_GETVERSION             FS_IOC_GETVERSION
-+#define       EXT2_IOC_SETVERSION             FS_IOC_SETVERSION
-+#define       EXT2_IOC_GETRSVSZ               _IOR('f', 5, long)
-+#define       EXT2_IOC_SETRSVSZ               _IOW('f', 6, long)
-+
-+/*
-+ * ioctl commands in 32 bit emulation
-+ */
-+#define EXT2_IOC32_GETFLAGS           FS_IOC32_GETFLAGS
-+#define EXT2_IOC32_SETFLAGS           FS_IOC32_SETFLAGS
-+#define EXT2_IOC32_GETVERSION         FS_IOC32_GETVERSION
-+#define EXT2_IOC32_SETVERSION         FS_IOC32_SETVERSION
-+
-+/*
-+ * Structure of an inode on the disk
-+ */
-+struct ext2_inode {
-+      uint16_t        i_mode;         /* File mode */
-+      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
-+      uint32_t        i_size;         /* Size in bytes */
-+      uint32_t        i_atime;        /* Access time */
-+      uint32_t        i_ctime;        /* Creation time */
-+      uint32_t        i_mtime;        /* Modification time */
-+      uint32_t        i_dtime;        /* Deletion Time */
-+      uint16_t        i_gid;          /* Low 16 bits of Group Id */
-+      uint16_t        i_links_count;  /* Links count */
-+      uint32_t        i_blocks;       /* Blocks count */
-+      uint32_t        i_flags;        /* File flags */
-+      union {
-+              struct {
-+                      uint32_t  l_i_reserved1;
-+              } linux1;
-+              struct {
-+                      uint32_t  h_i_translator;
-+              } hurd1;
-+              struct {
-+                      uint32_t  m_i_reserved1;
-+              } masix1;
-+      } osd1;                         /* OS dependent 1 */
-+      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
-+      uint32_t        i_generation;   /* File version (for NFS) */
-+      uint32_t        i_file_acl;     /* File ACL */
-+      uint32_t        i_dir_acl;      /* Directory ACL */
-+      uint32_t        i_faddr;        /* Fragment address */
-+      union {
-+              struct {
-+                      uint8_t l_i_frag;       /* Fragment number */
-+                      uint8_t l_i_fsize;      /* Fragment size */
-+                      uint16_t        i_pad1;
-+                      uint16_t        l_i_uid_high;   /* these 2 fields    */
-+                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
-+                      uint32_t        l_i_reserved2;
-+              } linux2;
-+              struct {
-+                      uint8_t h_i_frag;       /* Fragment number */
-+                      uint8_t h_i_fsize;      /* Fragment size */
-+                      uint16_t        h_i_mode_high;
-+                      uint16_t        h_i_uid_high;
-+                      uint16_t        h_i_gid_high;
-+                      uint32_t        h_i_author;
-+              } hurd2;
-+              struct {
-+                      uint8_t m_i_frag;       /* Fragment number */
-+                      uint8_t m_i_fsize;      /* Fragment size */
-+                      uint16_t        m_pad1;
-+                      uint32_t        m_i_reserved2[2];
-+              } masix2;
-+      } osd2;                         /* OS dependent 2 */
-+};
-+
-+#define i_size_high   i_dir_acl
-+
-+#if defined(__KERNEL__) || defined(__linux__)
-+#define i_reserved1   osd1.linux1.l_i_reserved1
-+#define i_frag                osd2.linux2.l_i_frag
-+#define i_fsize               osd2.linux2.l_i_fsize
-+#define i_uid_low     i_uid
-+#define i_gid_low     i_gid
-+#define i_uid_high    osd2.linux2.l_i_uid_high
-+#define i_gid_high    osd2.linux2.l_i_gid_high
-+#define i_reserved2   osd2.linux2.l_i_reserved2
-+#endif
-+
-+#ifdef        __hurd__
-+#define i_translator  osd1.hurd1.h_i_translator
-+#define i_frag                osd2.hurd2.h_i_frag
-+#define i_fsize               osd2.hurd2.h_i_fsize
-+#define i_uid_high    osd2.hurd2.h_i_uid_high
-+#define i_gid_high    osd2.hurd2.h_i_gid_high
-+#define i_author      osd2.hurd2.h_i_author
-+#endif
-+
-+#ifdef        __masix__
-+#define i_reserved1   osd1.masix1.m_i_reserved1
-+#define i_frag                osd2.masix2.m_i_frag
-+#define i_fsize               osd2.masix2.m_i_fsize
-+#define i_reserved2   osd2.masix2.m_i_reserved2
-+#endif
-+
-+/*
-+ * File system states
-+ */
-+#define       EXT2_VALID_FS                   0x0001  /* Unmounted cleanly */
-+#define       EXT2_ERROR_FS                   0x0002  /* Errors detected */
-+
-+/*
-+ * Mount flags
-+ */
-+#define EXT2_MOUNT_CHECK              0x000001  /* Do mount-time checks */
-+#define EXT2_MOUNT_OLDALLOC           0x000002  /* Don't use the new Orlov allocator */
-+#define EXT2_MOUNT_GRPID              0x000004  /* Create files with directory's group */
-+#define EXT2_MOUNT_DEBUG              0x000008  /* Some debugging messages */
-+#define EXT2_MOUNT_ERRORS_CONT                0x000010  /* Continue on errors */
-+#define EXT2_MOUNT_ERRORS_RO          0x000020  /* Remount fs ro on errors */
-+#define EXT2_MOUNT_ERRORS_PANIC               0x000040  /* Panic on errors */
-+#define EXT2_MOUNT_MINIX_DF           0x000080  /* Mimics the Minix statfs */
-+#define EXT2_MOUNT_NOBH                       0x000100  /* No buffer_heads */
-+#define EXT2_MOUNT_NO_UID32           0x000200  /* Disable 32-bit UIDs */
-+#define EXT2_MOUNT_XATTR_USER         0x004000  /* Extended user attributes */
-+#define EXT2_MOUNT_POSIX_ACL          0x008000  /* POSIX Access Control Lists */
-+#define EXT2_MOUNT_XIP                        0x010000  /* Execute in place */
-+#define EXT2_MOUNT_USRQUOTA           0x020000  /* user quota */
-+#define EXT2_MOUNT_GRPQUOTA           0x040000  /* group quota */
-+#define EXT2_MOUNT_RESERVATION                0x080000  /* Preallocation */
-+
-+
-+#define clear_opt(o, opt)             o &= ~EXT2_MOUNT_##opt
-+#define set_opt(o, opt)                       o |= EXT2_MOUNT_##opt
-+#define test_opt(sb, opt)             (EXT2_SB(sb)->s_mount_opt & \
-+                                       EXT2_MOUNT_##opt)
-+/*
-+ * Maximal mount counts between two filesystem checks
-+ */
-+#define EXT2_DFL_MAX_MNT_COUNT                20      /* Allow 20 mounts */
-+#define EXT2_DFL_CHECKINTERVAL                0       /* Don't use interval check */
-+
-+/*
-+ * Behaviour when detecting errors
-+ */
-+#define EXT2_ERRORS_CONTINUE          1       /* Continue execution */
-+#define EXT2_ERRORS_RO                        2       /* Remount fs read-only */
-+#define EXT2_ERRORS_PANIC             3       /* Panic */
-+#define EXT2_ERRORS_DEFAULT           EXT2_ERRORS_CONTINUE
-+
-+/*
-+ * Structure of the super block
-+ */
-+struct ext2_super_block {
-+      uint32_t        s_inodes_count;         /* Inodes count */
-+      uint32_t        s_blocks_count;         /* Blocks count */
-+      uint32_t        s_r_blocks_count;       /* Reserved blocks count */
-+      uint32_t        s_free_blocks_count;    /* Free blocks count */
-+      uint32_t        s_free_inodes_count;    /* Free inodes count */
-+      uint32_t        s_first_data_block;     /* First Data Block */
-+      uint32_t        s_log_block_size;       /* Block size */
-+      uint32_t        s_log_frag_size;        /* Fragment size */
-+      uint32_t        s_blocks_per_group;     /* # Blocks per group */
-+      uint32_t        s_frags_per_group;      /* # Fragments per group */
-+      uint32_t        s_inodes_per_group;     /* # Inodes per group */
-+      uint32_t        s_mtime;                /* Mount time */
-+      uint32_t        s_wtime;                /* Write time */
-+      uint16_t        s_mnt_count;            /* Mount count */
-+      uint16_t        s_max_mnt_count;        /* Maximal mount count */
-+      uint16_t        s_magic;                /* Magic signature */
-+      uint16_t        s_state;                /* File system state */
-+      uint16_t        s_errors;               /* Behaviour when detecting errors */
-+      uint16_t        s_minor_rev_level;      /* minor revision level */
-+      uint32_t        s_lastcheck;            /* time of last check */
-+      uint32_t        s_checkinterval;        /* max. time between checks */
-+      uint32_t        s_creator_os;           /* OS */
-+      uint32_t        s_rev_level;            /* Revision level */
-+      uint16_t        s_def_resuid;           /* Default uid for reserved blocks */
-+      uint16_t        s_def_resgid;           /* Default gid for reserved blocks */
-+      /*
-+       * These fields are for EXT2_DYNAMIC_REV superblocks only.
-+       *
-+       * Note: the difference between the compatible feature set and
-+       * the incompatible feature set is that if there is a bit set
-+       * in the incompatible feature set that the kernel doesn't
-+       * know about, it should refuse to mount the filesystem.
-+       *
-+       * e2fsck's requirements are more strict; if it doesn't know
-+       * about a feature in either the compatible or incompatible
-+       * feature set, it must abort and not try to meddle with
-+       * things it doesn't understand...
-+       */
-+      uint32_t        s_first_ino;            /* First non-reserved inode */
-+      uint16_t   s_inode_size;                /* size of inode structure */
-+      uint16_t        s_block_group_nr;       /* block group # of this superblock */
-+      uint32_t        s_feature_compat;       /* compatible feature set */
-+      uint32_t        s_feature_incompat;     /* incompatible feature set */
-+      uint32_t        s_feature_ro_compat;    /* readonly-compatible feature set */
-+      uint8_t s_uuid[16];             /* 128-bit uuid for volume */
-+      char    s_volume_name[16];      /* volume name */
-+      char    s_last_mounted[64];     /* directory where last mounted */
-+      uint32_t        s_algorithm_usage_bitmap; /* For compression */
-+      /*
-+       * Performance hints.  Directory preallocation should only
-+       * happen if the EXT2_COMPAT_PREALLOC flag is on.
-+       */
-+      uint8_t s_prealloc_blocks;      /* Nr of blocks to try to preallocate*/
-+      uint8_t s_prealloc_dir_blocks;  /* Nr to preallocate for dirs */
-+      uint16_t        s_padding1;
-+      /*
-+       * Journaling support valid if EXT3_FEATURE_COMPAT_HAS_JOURNAL set.
-+       */
-+      uint8_t s_journal_uuid[16];     /* uuid of journal superblock */
-+      uint32_t        s_journal_inum;         /* inode number of journal file */
-+      uint32_t        s_journal_dev;          /* device number of journal file */
-+      uint32_t        s_last_orphan;          /* start of list of inodes to delete */
-+      uint32_t        s_hash_seed[4];         /* HTREE hash seed */
-+      uint8_t s_def_hash_version;     /* Default hash version to use */
-+      uint8_t s_reserved_char_pad;
-+      uint16_t        s_reserved_word_pad;
-+      uint32_t        s_default_mount_opts;
-+      uint32_t        s_first_meta_bg;        /* First metablock block group */
-+      uint32_t        s_reserved[190];        /* Padding to the end of the block */
-+};
-+
-+/*
-+ * Codes for operating systems
-+ */
-+#define EXT2_OS_LINUX         0
-+#define EXT2_OS_HURD          1
-+#define EXT2_OS_MASIX         2
-+#define EXT2_OS_FREEBSD               3
-+#define EXT2_OS_LITES         4
-+
-+/*
-+ * Revision levels
-+ */
-+#define EXT2_GOOD_OLD_REV     0       /* The good old (original) format */
-+#define EXT2_DYNAMIC_REV      1       /* V2 format w/ dynamic inode sizes */
-+
-+#define EXT2_CURRENT_REV      EXT2_GOOD_OLD_REV
-+#define EXT2_MAX_SUPP_REV     EXT2_DYNAMIC_REV
-+
-+#define EXT2_GOOD_OLD_INODE_SIZE 128
-+
-+/*
-+ * Feature set definitions
-+ */
-+
-+#define EXT2_HAS_COMPAT_FEATURE(sb,mask)                      \
-+      ( EXT2_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask) )
-+#define EXT2_HAS_RO_COMPAT_FEATURE(sb,mask)                   \
-+      ( EXT2_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask) )
-+#define EXT2_HAS_INCOMPAT_FEATURE(sb,mask)                    \
-+      ( EXT2_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask) )
-+#define EXT2_SET_COMPAT_FEATURE(sb,mask)                      \
-+      EXT2_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
-+#define EXT2_SET_RO_COMPAT_FEATURE(sb,mask)                   \
-+      EXT2_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
-+#define EXT2_SET_INCOMPAT_FEATURE(sb,mask)                    \
-+      EXT2_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
-+#define EXT2_CLEAR_COMPAT_FEATURE(sb,mask)                    \
-+      EXT2_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
-+#define EXT2_CLEAR_RO_COMPAT_FEATURE(sb,mask)                 \
-+      EXT2_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
-+#define EXT2_CLEAR_INCOMPAT_FEATURE(sb,mask)                  \
-+      EXT2_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
-+
-+#define EXT2_FEATURE_COMPAT_DIR_PREALLOC      0x0001
-+#define EXT2_FEATURE_COMPAT_IMAGIC_INODES     0x0002
-+#define EXT3_FEATURE_COMPAT_HAS_JOURNAL               0x0004
-+#define EXT2_FEATURE_COMPAT_EXT_ATTR          0x0008
-+#define EXT2_FEATURE_COMPAT_RESIZE_INO                0x0010
-+#define EXT2_FEATURE_COMPAT_DIR_INDEX         0x0020
-+#define EXT2_FEATURE_COMPAT_ANY                       0xffffffff
-+
-+#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER   0x0001
-+#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
-+#define EXT2_FEATURE_RO_COMPAT_BTREE_DIR      0x0004
-+#define EXT2_FEATURE_RO_COMPAT_ANY            0xffffffff
-+
-+#define EXT2_FEATURE_INCOMPAT_COMPRESSION     0x0001
-+#define EXT2_FEATURE_INCOMPAT_FILETYPE                0x0002
-+#define EXT3_FEATURE_INCOMPAT_RECOVER         0x0004
-+#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV     0x0008
-+#define EXT2_FEATURE_INCOMPAT_META_BG         0x0010
-+#define EXT2_FEATURE_INCOMPAT_ANY             0xffffffff
-+
-+#define EXT2_FEATURE_COMPAT_SUPP      EXT2_FEATURE_COMPAT_EXT_ATTR
-+#define EXT2_FEATURE_INCOMPAT_SUPP    (EXT2_FEATURE_INCOMPAT_FILETYPE| \
-+                                       EXT2_FEATURE_INCOMPAT_META_BG)
-+#define EXT2_FEATURE_RO_COMPAT_SUPP   (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \
-+                                       EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
-+                                       EXT2_FEATURE_RO_COMPAT_BTREE_DIR)
-+#define EXT2_FEATURE_RO_COMPAT_UNSUPPORTED    ~EXT2_FEATURE_RO_COMPAT_SUPP
-+#define EXT2_FEATURE_INCOMPAT_UNSUPPORTED     ~EXT2_FEATURE_INCOMPAT_SUPP
-+
-+/*
-+ * Default values for user and/or group using reserved blocks
-+ */
-+#define       EXT2_DEF_RESUID         0
-+#define       EXT2_DEF_RESGID         0
-+
-+/*
-+ * Default mount options
-+ */
-+#define EXT2_DEFM_DEBUG               0x0001
-+#define EXT2_DEFM_BSDGROUPS   0x0002
-+#define EXT2_DEFM_XATTR_USER  0x0004
-+#define EXT2_DEFM_ACL         0x0008
-+#define EXT2_DEFM_UID16               0x0010
-+    /* Not used by ext2, but reserved for use by ext3 */
-+#define EXT3_DEFM_JMODE               0x0060 
-+#define EXT3_DEFM_JMODE_DATA  0x0020
-+#define EXT3_DEFM_JMODE_ORDERED       0x0040
-+#define EXT3_DEFM_JMODE_WBACK 0x0060
-+
-+/*
-+ * Structure of a directory entry
-+ */
-+#define EXT2_NAME_LEN 255
-+
-+struct ext2_dir_entry {
-+      uint32_t        inode;                  /* Inode number */
-+      uint16_t        rec_len;                /* Directory entry length */
-+      uint16_t        name_len;               /* Name length */
-+      char    name[EXT2_NAME_LEN];    /* File name */
-+};
-+
-+/*
-+ * The new version of the directory entry.  Since EXT2 structures are
-+ * stored in intel byte order, and the name_len field could never be
-+ * bigger than 255 chars, it's safe to reclaim the extra byte for the
-+ * file_type field.
-+ */
-+struct ext2_dir_entry_2 {
-+      uint32_t        inode;                  /* Inode number */
-+      uint16_t        rec_len;                /* Directory entry length */
-+      uint8_t name_len;               /* Name length */
-+      uint8_t file_type;
-+      char    name[EXT2_NAME_LEN];    /* File name */
-+};
-+
-+/*
-+ * Ext2 directory file types.  Only the low 3 bits are used.  The
-+ * other bits are reserved for now.
-+ */
-+enum {
-+      EXT2_FT_UNKNOWN         = 0,
-+      EXT2_FT_REG_FILE        = 1,
-+      EXT2_FT_DIR             = 2,
-+      EXT2_FT_CHRDEV          = 3,
-+      EXT2_FT_BLKDEV          = 4,
-+      EXT2_FT_FIFO            = 5,
-+      EXT2_FT_SOCK            = 6,
-+      EXT2_FT_SYMLINK         = 7,
-+      EXT2_FT_MAX
-+};
-+
-+/*
-+ * EXT2_DIR_PAD defines the directory entries boundaries
-+ *
-+ * NOTE: It must be a multiple of 4
-+ */
-+#define EXT2_DIR_PAD                  4
-+#define EXT2_DIR_ROUND                        (EXT2_DIR_PAD - 1)
-+#define EXT2_DIR_REC_LEN(name_len)    (((name_len) + 8 + EXT2_DIR_ROUND) & \
-+                                       ~EXT2_DIR_ROUND)
-+#define EXT2_MAX_REC_LEN              ((1<<16)-1)
-+
-+#endif
-diff --git a/util-linux/mkfs_ext2.c b/util-linux/mkfs_ext2.c
-index 759bb0a..2d9d720 100644
---- a/util-linux/mkfs_ext2.c
-+++ b/util-linux/mkfs_ext2.c
-@@ -48,13 +48,7 @@
- #include "libbb.h"
- #include <linux/fs.h>
--/*
-- * Work around linux/ext2_fs.h breakage.
-- * See https://bugzilla.kernel.org/show_bug.cgi?id=42986.
-- */
--typedef mode_t bb__umode_t;
--#define umode_t bb__umode_t
--#include <linux/ext2_fs.h>
-+#include "bb_linux_ext2_fs.h"
- #define ENABLE_FEATURE_MKFS_EXT2_RESERVED_GDT 0
- #define ENABLE_FEATURE_MKFS_EXT2_DIR_INDEX    1
--- 
-1.7.9.5
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-ifupdown-code-shrink.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0002-ifupdown-code-shrink.patch
deleted file mode 100644 (file)
index 2d9d695..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-From e5221a142e8ee4509734c17584f898a1f4ac86cc Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Wed, 19 Oct 2011 02:37:08 +0200
-Subject: [PATCH 02/10] ifupdown: code shrink
-
-function                                             old     new   delta
-keywords_up_down                                       -      43     +43
-set_environ                                          371     259    -112
-ifupdown_main                                       2194    2073    -121
-------------------------------------------------------------------------------
-(add/remove: 1/0 grow/shrink: 0/2 up/down: 43/-233)          Total: -190 bytes
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c |   42 +++++++++++++++---------------------------
- 1 file changed, 15 insertions(+), 27 deletions(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index abc6b58..5946323 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -87,7 +87,6 @@ struct mapping_defn_t {
-       char *script;
--      int max_mappings;
-       int n_mappings;
-       char **mapping;
- };
-@@ -102,7 +101,6 @@ struct interface_defn_t {
-       const struct method_t *method;
-       char *iface;
--      int max_options;
-       int n_options;
-       struct variable_t *option;
- };
-@@ -138,6 +136,16 @@ struct globals {
- #define INIT_G() do { } while (0)
-+static const char keywords_up_down[] ALIGN1 =
-+      "up\0"
-+      "down\0"
-+      "pre-up\0"
-+      "pre-down\0"
-+      "post-up\0"
-+      "post-down\0"
-+;
-+
-+
- #if ENABLE_FEATURE_IFUPDOWN_IPV4 || ENABLE_FEATURE_IFUPDOWN_IPV6
- static void addstr(char **bufp, const char *str, size_t str_length)
-@@ -803,7 +811,6 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
-                               currmap->match = xrealloc_vector(currmap->match, 4, currmap->n_matches);
-                               currmap->match[currmap->n_matches++] = xstrdup(first_word);
-                       }
--                      /*currmap->max_mappings = 0; - done by xzalloc */
-                       /*currmap->n_mappings = 0;*/
-                       /*currmap->mapping = NULL;*/
-                       /*currmap->script = NULL;*/
-@@ -888,25 +895,16 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
-                               if (rest_of_line[0] == '\0')
-                                       bb_error_msg_and_die("option with empty value \"%s\"", buf);
--                              if (strcmp(first_word, "up") != 0
--                               && strcmp(first_word, "down") != 0
--                               && strcmp(first_word, "pre-up") != 0
--                               && strcmp(first_word, "pre-down") != 0
--                               && strcmp(first_word, "post-up") != 0
--                               && strcmp(first_word, "post-down") != 0
--                              ) {
-+                              /* If not one of "up", "down",... words... */
-+                              if (index_in_strings(keywords_up_down, first_word) < 0) {
-                                       int i;
-                                       for (i = 0; i < currif->n_options; i++) {
-                                               if (strcmp(currif->option[i].name, first_word) == 0)
-                                                       bb_error_msg_and_die("duplicate option \"%s\"", buf);
-                                       }
-                               }
--                              if (currif->n_options >= currif->max_options) {
--                                      currif->max_options += 10;
--                                      currif->option = xrealloc(currif->option,
--                                              sizeof(*currif->option) * currif->max_options);
--                              }
-                               debug_noise("\t%s=%s\n", first_word, rest_of_line);
-+                              currif->option = xrealloc_vector(currif->option, 4, currif->n_options);
-                               currif->option[currif->n_options].name = xstrdup(first_word);
-                               currif->option[currif->n_options].value = xstrdup(rest_of_line);
-                               currif->n_options++;
-@@ -918,11 +916,7 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
-                                               bb_error_msg_and_die("duplicate script in mapping \"%s\"", buf);
-                                       currmap->script = xstrdup(next_word(&rest_of_line));
-                               } else if (strcmp(first_word, "map") == 0) {
--                                      if (currmap->n_mappings >= currmap->max_mappings) {
--                                              currmap->max_mappings = currmap->max_mappings * 2 + 1;
--                                              currmap->mapping = xrealloc(currmap->mapping,
--                                                      sizeof(char *) * currmap->max_mappings);
--                                      }
-+                                      currmap->mapping = xrealloc_vector(currmap->mapping, 2, currmap->n_mappings);
-                                       currmap->mapping[currmap->n_mappings] = xstrdup(next_word(&rest_of_line));
-                                       currmap->n_mappings++;
-                               } else {
-@@ -986,13 +980,7 @@ static void set_environ(struct interface_defn_t *iface, const char *mode)
-       pp = G.my_environ;
-       for (i = 0; i < iface->n_options; i++) {
--              if (strcmp(iface->option[i].name, "up") == 0
--               || strcmp(iface->option[i].name, "down") == 0
--               || strcmp(iface->option[i].name, "pre-up") == 0
--               || strcmp(iface->option[i].name, "pre-down") == 0
--               || strcmp(iface->option[i].name, "post-up") == 0
--               || strcmp(iface->option[i].name, "post-down") == 0
--              ) {
-+              if (index_in_strings(keywords_up_down, iface->option[i].name) >= 0) {
-                       continue;
-               }
-               *pp++ = setlocalenv("IF_%s=%s", iface->option[i].name, iface->option[i].value);
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-Drop-include-bb_linux_ext2_fs.h-use-existing-e2fspro.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-Drop-include-bb_linux_ext2_fs.h-use-existing-e2fspro.patch
deleted file mode 100644 (file)
index 2a3b21b..0000000
+++ /dev/null
@@ -1,1877 +0,0 @@
-From 176bc344751dfc41e87976182381ae0560c94f22 Mon Sep 17 00:00:00 2001
-From: Denys Vlasenko <vda.linux@googlemail.com>
-Date: Tue, 17 Apr 2012 15:06:55 +0200
-Subject: [PATCH 04/32] Drop include/bb_linux_ext2_fs.h, use existing
- e2fsprogs/e2fs_defs.h
-
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- e2fsprogs/e2fs_defs.h                       |  561 ---------------------------
- e2fsprogs/e2fs_lib.h                        |    2 +-
- e2fsprogs/old_e2fsprogs/e2fsck.c            |    6 +-
- e2fsprogs/old_e2fsprogs/e2p/feature.c       |    2 +-
- e2fsprogs/old_e2fsprogs/ext2fs/ext2_fs.h    |    2 +-
- e2fsprogs/old_e2fsprogs/ext2fs/ext2fs.h     |    2 +-
- e2fsprogs/old_e2fsprogs/ext2fs/initialize.c |    2 +-
- e2fsprogs/old_e2fsprogs/mke2fs.c            |    8 +-
- e2fsprogs/tune2fs.c                         |    2 +-
- include/bb_e2fs_defs.h                      |  561 +++++++++++++++++++++++++++
- include/bb_linux_ext2_fs.h                  |  547 --------------------------
- util-linux/mkfs_ext2.c                      |    2 +-
- 12 files changed, 575 insertions(+), 1122 deletions(-)
- delete mode 100644 e2fsprogs/e2fs_defs.h
- create mode 100644 include/bb_e2fs_defs.h
- delete mode 100644 include/bb_linux_ext2_fs.h
-
-diff --git a/e2fsprogs/e2fs_defs.h b/e2fsprogs/e2fs_defs.h
-deleted file mode 100644
-index 379640e..0000000
---- a/e2fsprogs/e2fs_defs.h
-+++ /dev/null
-@@ -1,561 +0,0 @@
--/* vi: set sw=4 ts=4: */
--/*
-- *  linux/include/linux/ext2_fs.h
-- *
-- * Copyright (C) 1992, 1993, 1994, 1995
-- * Remy Card (card@masi.ibp.fr)
-- * Laboratoire MASI - Institut Blaise Pascal
-- * Universite Pierre et Marie Curie (Paris VI)
-- *
-- * Copyright (C) 1991, 1992  Linus Torvalds
-- */
--
--#ifndef LINUX_EXT2_FS_H
--#define LINUX_EXT2_FS_H 1
--
--/*
-- * Special inode numbers
-- */
--#define EXT2_BAD_INO           1      /* Bad blocks inode */
--#define EXT2_ROOT_INO          2      /* Root inode */
--#define EXT2_ACL_IDX_INO       3      /* ACL inode */
--#define EXT2_ACL_DATA_INO      4      /* ACL inode */
--#define EXT2_BOOT_LOADER_INO   5      /* Boot loader inode */
--#define EXT2_UNDEL_DIR_INO     6      /* Undelete directory inode */
--#define EXT2_RESIZE_INO                7      /* Reserved group descriptors inode */
--#define EXT2_JOURNAL_INO       8      /* Journal inode */
--
--/* First non-reserved inode for old ext2 filesystems */
--#define EXT2_GOOD_OLD_FIRST_INO       11
--
--/*
-- * The second extended file system magic number
-- */
--#define EXT2_SUPER_MAGIC      0xEF53
--
--/* Assume that user mode programs are passing in an ext2fs superblock, not
-- * a kernel struct super_block.  This will allow us to call the feature-test
-- * macros from user land. */
--#define EXT2_SB(sb)   (sb)
--
--/*
-- * Maximal count of links to a file
-- */
--#define EXT2_LINK_MAX         32000
--
--/*
-- * Macro-instructions used to manage several block sizes
-- */
--#define EXT2_MIN_BLOCK_LOG_SIZE               10      /* 1024 */
--#define EXT2_MAX_BLOCK_LOG_SIZE               16      /* 65536 */
--#define EXT2_MIN_BLOCK_SIZE   (1 << EXT2_MIN_BLOCK_LOG_SIZE)
--#define EXT2_MAX_BLOCK_SIZE   (1 << EXT2_MAX_BLOCK_LOG_SIZE)
--#define EXT2_BLOCK_SIZE(s)    (EXT2_MIN_BLOCK_SIZE << (s)->s_log_block_size)
--#define EXT2_BLOCK_SIZE_BITS(s)       ((s)->s_log_block_size + 10)
--#define EXT2_INODE_SIZE(s)    (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
--                               EXT2_GOOD_OLD_INODE_SIZE : (s)->s_inode_size)
--#define EXT2_FIRST_INO(s)     (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
--                               EXT2_GOOD_OLD_FIRST_INO : (s)->s_first_ino)
--#define EXT2_ADDR_PER_BLOCK(s)        (EXT2_BLOCK_SIZE(s) / sizeof(uint32_t))
--
--/*
-- * Macro-instructions used to manage fragments
-- */
--#define EXT2_MIN_FRAG_SIZE            EXT2_MIN_BLOCK_SIZE
--#define EXT2_MAX_FRAG_SIZE            EXT2_MAX_BLOCK_SIZE
--#define EXT2_MIN_FRAG_LOG_SIZE                EXT2_MIN_BLOCK_LOG_SIZE
--#define EXT2_FRAG_SIZE(s)             (EXT2_MIN_FRAG_SIZE << (s)->s_log_frag_size)
--#define EXT2_FRAGS_PER_BLOCK(s)               (EXT2_BLOCK_SIZE(s) / EXT2_FRAG_SIZE(s))
--
--/*
-- * ACL structures
-- */
--struct ext2_acl_header {      /* Header of Access Control Lists */
--      uint32_t        aclh_size;
--      uint32_t        aclh_file_count;
--      uint32_t        aclh_acle_count;
--      uint32_t        aclh_first_acle;
--};
--
--struct ext2_acl_entry {       /* Access Control List Entry */
--      uint32_t        acle_size;
--      uint16_t        acle_perms;     /* Access permissions */
--      uint16_t        acle_type;      /* Type of entry */
--      uint16_t        acle_tag;       /* User or group identity */
--      uint16_t        acle_pad1;
--      uint32_t        acle_next;      /* Pointer on next entry for the */
--                                      /* same inode or on next free entry */
--};
--
--/*
-- * Structure of a blocks group descriptor
-- */
--struct ext2_group_desc {
--      uint32_t        bg_block_bitmap;        /* Blocks bitmap block */
--      uint32_t        bg_inode_bitmap;        /* Inodes bitmap block */
--      uint32_t        bg_inode_table;         /* Inodes table block */
--      uint16_t        bg_free_blocks_count;   /* Free blocks count */
--      uint16_t        bg_free_inodes_count;   /* Free inodes count */
--      uint16_t        bg_used_dirs_count;     /* Directories count */
--      uint16_t        bg_pad;
--      uint32_t        bg_reserved[3];
--};
--
--/*
-- * Data structures used by the directory indexing feature
-- *
-- * Note: all of the multibyte integer fields are little endian.
-- */
--
--/*
-- * Note: dx_root_info is laid out so that if it should somehow get
-- * overlaid by a dirent the two low bits of the hash version will be
-- * zero.  Therefore, the hash version mod 4 should never be 0.
-- * Sincerely, the paranoia department.
-- */
--struct ext2_dx_root_info {
--      uint32_t        reserved_zero;
--      uint8_t         hash_version; /* 0 now, 1 at release */
--      uint8_t         info_length; /* 8 */
--      uint8_t         indirect_levels;
--      uint8_t         unused_flags;
--};
--
--#define EXT2_HASH_LEGACY      0
--#define EXT2_HASH_HALF_MD4    1
--#define EXT2_HASH_TEA         2
--
--#define EXT2_HASH_FLAG_INCOMPAT       0x1
--
--struct ext2_dx_entry {
--      uint32_t hash;
--      uint32_t block;
--};
--
--struct ext2_dx_countlimit {
--      uint16_t limit;
--      uint16_t count;
--};
--
--
--/*
-- * Macro-instructions used to manage group descriptors
-- */
--#define EXT2_BLOCKS_PER_GROUP(s)      (EXT2_SB(s)->s_blocks_per_group)
--#define EXT2_INODES_PER_GROUP(s)      (EXT2_SB(s)->s_inodes_per_group)
--#define EXT2_INODES_PER_BLOCK(s)      (EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s))
--/* limits imposed by 16-bit value gd_free_{blocks,inode}_count */
--#define EXT2_MAX_BLOCKS_PER_GROUP(s)  ((1 << 16) - 8)
--#define EXT2_MAX_INODES_PER_GROUP(s)  ((1 << 16) - EXT2_INODES_PER_BLOCK(s))
--#define EXT2_DESC_PER_BLOCK(s)                (EXT2_BLOCK_SIZE(s) / sizeof (struct ext2_group_desc))
--
--/*
-- * Constants relative to the data blocks
-- */
--#define EXT2_NDIR_BLOCKS              12
--#define EXT2_IND_BLOCK                        EXT2_NDIR_BLOCKS
--#define EXT2_DIND_BLOCK                       (EXT2_IND_BLOCK + 1)
--#define EXT2_TIND_BLOCK                       (EXT2_DIND_BLOCK + 1)
--#define EXT2_N_BLOCKS                 (EXT2_TIND_BLOCK + 1)
--
--/*
-- * Inode flags
-- */
--#define EXT2_SECRM_FL                 0x00000001 /* Secure deletion */
--#define EXT2_UNRM_FL                  0x00000002 /* Undelete */
--#define EXT2_COMPR_FL                 0x00000004 /* Compress file */
--#define EXT2_SYNC_FL                  0x00000008 /* Synchronous updates */
--#define EXT2_IMMUTABLE_FL             0x00000010 /* Immutable file */
--#define EXT2_APPEND_FL                        0x00000020 /* writes to file may only append */
--#define EXT2_NODUMP_FL                        0x00000040 /* do not dump file */
--#define EXT2_NOATIME_FL                       0x00000080 /* do not update atime */
--/* Reserved for compression usage... */
--#define EXT2_DIRTY_FL                 0x00000100
--#define EXT2_COMPRBLK_FL              0x00000200 /* One or more compressed clusters */
--#define EXT2_NOCOMPR_FL                       0x00000400 /* Access raw compressed data */
--#define EXT2_ECOMPR_FL                        0x00000800 /* Compression error */
--/* End compression flags --- maybe not all used */
--#define EXT2_BTREE_FL                 0x00001000 /* btree format dir */
--#define EXT2_INDEX_FL                 0x00001000 /* hash-indexed directory */
--#define EXT2_IMAGIC_FL                        0x00002000
--#define EXT3_JOURNAL_DATA_FL          0x00004000 /* file data should be journaled */
--#define EXT2_NOTAIL_FL                        0x00008000 /* file tail should not be merged */
--#define EXT2_DIRSYNC_FL                       0x00010000 /* Synchronous directory modifications */
--#define EXT2_TOPDIR_FL                        0x00020000 /* Top of directory hierarchies*/
--#define EXT3_EXTENTS_FL                       0x00080000 /* Inode uses extents */
--#define EXT2_RESERVED_FL              0x80000000 /* reserved for ext2 lib */
--
--#define EXT2_FL_USER_VISIBLE          0x0003DFFF /* User visible flags */
--#define EXT2_FL_USER_MODIFIABLE               0x000080FF /* User modifiable flags */
--
--/*
-- * ioctl commands
-- */
--#define EXT2_IOC_GETFLAGS             _IOR('f', 1, long)
--#define EXT2_IOC_SETFLAGS             _IOW('f', 2, long)
--#define EXT2_IOC_GETVERSION           _IOR('v', 1, long)
--#define EXT2_IOC_SETVERSION           _IOW('v', 2, long)
--
--/*
-- * Structure of an inode on the disk
-- */
--struct ext2_inode {
--      uint16_t        i_mode;         /* File mode */
--      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
--      uint32_t        i_size;         /* Size in bytes */
--      uint32_t        i_atime;        /* Access time */
--      uint32_t        i_ctime;        /* Creation time */
--      uint32_t        i_mtime;        /* Modification time */
--      uint32_t        i_dtime;        /* Deletion Time */
--      uint16_t        i_gid;          /* Low 16 bits of Group Id */
--      uint16_t        i_links_count;  /* Links count */
--      uint32_t        i_blocks;       /* Blocks count */
--      uint32_t        i_flags;        /* File flags */
--      union {
--              struct {
--                      uint32_t  l_i_reserved1;
--              } linux1;
--              struct {
--                      uint32_t  h_i_translator;
--              } hurd1;
--              struct {
--                      uint32_t  m_i_reserved1;
--              } masix1;
--      } osd1;                         /* OS dependent 1 */
--      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
--      uint32_t        i_generation;   /* File version (for NFS) */
--      uint32_t        i_file_acl;     /* File ACL */
--      uint32_t        i_dir_acl;      /* Directory ACL */
--      uint32_t        i_faddr;        /* Fragment address */
--      union {
--              struct {
--                      uint8_t         l_i_frag;       /* Fragment number */
--                      uint8_t         l_i_fsize;      /* Fragment size */
--                      uint16_t        i_pad1;
--                      uint16_t        l_i_uid_high;   /* these 2 fields    */
--                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
--                      uint32_t        l_i_reserved2;
--              } linux2;
--              struct {
--                      uint8_t         h_i_frag;       /* Fragment number */
--                      uint8_t         h_i_fsize;      /* Fragment size */
--                      uint16_t        h_i_mode_high;
--                      uint16_t        h_i_uid_high;
--                      uint16_t        h_i_gid_high;
--                      uint32_t        h_i_author;
--              } hurd2;
--              struct {
--                      uint8_t         m_i_frag;       /* Fragment number */
--                      uint8_t         m_i_fsize;      /* Fragment size */
--                      uint16_t        m_pad1;
--                      uint32_t        m_i_reserved2[2];
--              } masix2;
--      } osd2;                         /* OS dependent 2 */
--};
--
--/*
-- * Permanent part of an large inode on the disk
-- */
--struct ext2_inode_large {
--      uint16_t        i_mode;         /* File mode */
--      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
--      uint32_t        i_size;         /* Size in bytes */
--      uint32_t        i_atime;        /* Access time */
--      uint32_t        i_ctime;        /* Creation time */
--      uint32_t        i_mtime;        /* Modification time */
--      uint32_t        i_dtime;        /* Deletion Time */
--      uint16_t        i_gid;          /* Low 16 bits of Group Id */
--      uint16_t        i_links_count;  /* Links count */
--      uint32_t        i_blocks;       /* Blocks count */
--      uint32_t        i_flags;        /* File flags */
--      union {
--              struct {
--                      uint32_t  l_i_reserved1;
--              } linux1;
--              struct {
--                      uint32_t  h_i_translator;
--              } hurd1;
--              struct {
--                      uint32_t  m_i_reserved1;
--              } masix1;
--      } osd1;                         /* OS dependent 1 */
--      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
--      uint32_t        i_generation;   /* File version (for NFS) */
--      uint32_t        i_file_acl;     /* File ACL */
--      uint32_t        i_dir_acl;      /* Directory ACL */
--      uint32_t        i_faddr;        /* Fragment address */
--      union {
--              struct {
--                      uint8_t         l_i_frag;       /* Fragment number */
--                      uint8_t         l_i_fsize;      /* Fragment size */
--                      uint16_t        i_pad1;
--                      uint16_t        l_i_uid_high;   /* these 2 fields    */
--                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
--                      uint32_t        l_i_reserved2;
--              } linux2;
--              struct {
--                      uint8_t         h_i_frag;       /* Fragment number */
--                      uint8_t         h_i_fsize;      /* Fragment size */
--                      uint16_t        h_i_mode_high;
--                      uint16_t        h_i_uid_high;
--                      uint16_t        h_i_gid_high;
--                      uint32_t        h_i_author;
--              } hurd2;
--              struct {
--                      uint8_t         m_i_frag;       /* Fragment number */
--                      uint8_t         m_i_fsize;      /* Fragment size */
--                      uint16_t        m_pad1;
--                      uint32_t        m_i_reserved2[2];
--              } masix2;
--      } osd2;                         /* OS dependent 2 */
--      uint16_t        i_extra_isize;
--      uint16_t        i_pad1;
--};
--
--#define i_size_high   i_dir_acl
--
--/*
-- * File system states
-- */
--#define EXT2_VALID_FS                 0x0001  /* Unmounted cleanly */
--#define EXT2_ERROR_FS                 0x0002  /* Errors detected */
--
--/*
-- * Mount flags
-- */
--#define EXT2_MOUNT_CHECK              0x0001  /* Do mount-time checks */
--#define EXT2_MOUNT_GRPID              0x0004  /* Create files with directory's group */
--#define EXT2_MOUNT_DEBUG              0x0008  /* Some debugging messages */
--#define EXT2_MOUNT_ERRORS_CONT                0x0010  /* Continue on errors */
--#define EXT2_MOUNT_ERRORS_RO          0x0020  /* Remount fs ro on errors */
--#define EXT2_MOUNT_ERRORS_PANIC               0x0040  /* Panic on errors */
--#define EXT2_MOUNT_MINIX_DF           0x0080  /* Mimics the Minix statfs */
--#define EXT2_MOUNT_NO_UID32           0x0200  /* Disable 32-bit UIDs */
--
--#define clear_opt(o, opt)             o &= ~EXT2_MOUNT_##opt
--#define set_opt(o, opt)                       o |= EXT2_MOUNT_##opt
--#define test_opt(sb, opt)             (EXT2_SB(sb)->s_mount_opt & \
--                                       EXT2_MOUNT_##opt)
--/*
-- * Maximal mount counts between two filesystem checks
-- */
--#define EXT2_DFL_MAX_MNT_COUNT                20      /* Allow 20 mounts */
--#define EXT2_DFL_CHECKINTERVAL                0       /* Don't use interval check */
--
--/*
-- * Behaviour when detecting errors
-- */
--#define EXT2_ERRORS_CONTINUE          1       /* Continue execution */
--#define EXT2_ERRORS_RO                        2       /* Remount fs read-only */
--#define EXT2_ERRORS_PANIC             3       /* Panic */
--#define EXT2_ERRORS_DEFAULT           EXT2_ERRORS_CONTINUE
--
--/*
-- * Structure of the super block
-- */
--struct ext2_super_block {
--      uint32_t        s_inodes_count;         /* Inodes count */
--      uint32_t        s_blocks_count;         /* Blocks count */
--      uint32_t        s_r_blocks_count;       /* Reserved blocks count */
--      uint32_t        s_free_blocks_count;    /* Free blocks count */
--      uint32_t        s_free_inodes_count;    /* Free inodes count */
--      uint32_t        s_first_data_block;     /* First Data Block */
--      uint32_t        s_log_block_size;       /* Block size */
--      int32_t         s_log_frag_size;        /* Fragment size */
--      uint32_t        s_blocks_per_group;     /* # Blocks per group */
--      uint32_t        s_frags_per_group;      /* # Fragments per group */
--      uint32_t        s_inodes_per_group;     /* # Inodes per group */
--      uint32_t        s_mtime;                /* Mount time */
--      uint32_t        s_wtime;                /* Write time */
--      uint16_t        s_mnt_count;            /* Mount count */
--      int16_t         s_max_mnt_count;        /* Maximal mount count */
--      uint16_t        s_magic;                /* Magic signature */
--      uint16_t        s_state;                /* File system state */
--      uint16_t        s_errors;               /* Behaviour when detecting errors */
--      uint16_t        s_minor_rev_level;      /* minor revision level */
--      uint32_t        s_lastcheck;            /* time of last check */
--      uint32_t        s_checkinterval;        /* max. time between checks */
--      uint32_t        s_creator_os;           /* OS */
--      uint32_t        s_rev_level;            /* Revision level */
--      uint16_t        s_def_resuid;           /* Default uid for reserved blocks */
--      uint16_t        s_def_resgid;           /* Default gid for reserved blocks */
--      /*
--       * These fields are for EXT2_DYNAMIC_REV superblocks only.
--       *
--       * Note: the difference between the compatible feature set and
--       * the incompatible feature set is that if there is a bit set
--       * in the incompatible feature set that the kernel doesn't
--       * know about, it should refuse to mount the filesystem.
--       *
--       * e2fsck's requirements are more strict; if it doesn't know
--       * about a feature in either the compatible or incompatible
--       * feature set, it must abort and not try to meddle with
--       * things it doesn't understand...
--       */
--      uint32_t        s_first_ino;            /* First non-reserved inode */
--      uint16_t        s_inode_size;           /* size of inode structure */
--      uint16_t        s_block_group_nr;       /* block group # of this superblock */
--      uint32_t        s_feature_compat;       /* compatible feature set */
--      uint32_t        s_feature_incompat;     /* incompatible feature set */
--      uint32_t        s_feature_ro_compat;    /* readonly-compatible feature set */
--      uint8_t         s_uuid[16];             /* 128-bit uuid for volume */
--      char            s_volume_name[16];      /* volume name */
--      char            s_last_mounted[64];     /* directory where last mounted */
--      uint32_t        s_algorithm_usage_bitmap; /* For compression */
--      /*
--       * Performance hints.  Directory preallocation should only
--       * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on.
--       */
--      uint8_t s_prealloc_blocks;      /* Nr of blocks to try to preallocate*/
--      uint8_t s_prealloc_dir_blocks;  /* Nr to preallocate for dirs */
--      uint16_t        s_reserved_gdt_blocks;  /* Per group table for online growth */
--      /*
--       * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set.
--       */
--      uint8_t         s_journal_uuid[16];     /* uuid of journal superblock */
--      uint32_t        s_journal_inum;         /* inode number of journal file */
--      uint32_t        s_journal_dev;          /* device number of journal file */
--      uint32_t        s_last_orphan;          /* start of list of inodes to delete */
--      uint32_t        s_hash_seed[4];         /* HTREE hash seed */
--      uint8_t         s_def_hash_version;     /* Default hash version to use */
--      uint8_t         s_jnl_backup_type;      /* Default type of journal backup */
--      uint16_t        s_reserved_word_pad;
--      uint32_t        s_default_mount_opts;
--      uint32_t        s_first_meta_bg;        /* First metablock group */
--      uint32_t        s_mkfs_time;            /* When the filesystem was created */
--      uint32_t        s_jnl_blocks[17];       /* Backup of the journal inode */
--      uint32_t        s_reserved[172];        /* Padding to the end of the block */
--};
--
--/*
-- * Codes for operating systems
-- */
--#define EXT2_OS_LINUX         0
--#define EXT2_OS_HURD          1
--#define EXT2_OS_MASIX         2
--#define EXT2_OS_FREEBSD               3
--#define EXT2_OS_LITES         4
--
--/*
-- * Revision levels
-- */
--#define EXT2_GOOD_OLD_REV     0       /* The good old (original) format */
--#define EXT2_DYNAMIC_REV      1       /* V2 format w/ dynamic inode sizes */
--
--#define EXT2_CURRENT_REV      EXT2_GOOD_OLD_REV
--#define EXT2_MAX_SUPP_REV     EXT2_DYNAMIC_REV
--
--#define EXT2_GOOD_OLD_INODE_SIZE 128
--
--/*
-- * Journal inode backup types
-- */
--#define EXT3_JNL_BACKUP_BLOCKS        1
--
--/*
-- * Feature set definitions
-- */
--
--#define EXT2_HAS_COMPAT_FEATURE(sb,mask)                      \
--      ( EXT2_SB(sb)->s_feature_compat & (mask) )
--#define EXT2_HAS_RO_COMPAT_FEATURE(sb,mask)                   \
--      ( EXT2_SB(sb)->s_feature_ro_compat & (mask) )
--#define EXT2_HAS_INCOMPAT_FEATURE(sb,mask)                    \
--      ( EXT2_SB(sb)->s_feature_incompat & (mask) )
--
--#define EXT2_FEATURE_COMPAT_DIR_PREALLOC      0x0001
--#define EXT2_FEATURE_COMPAT_IMAGIC_INODES     0x0002
--#define EXT3_FEATURE_COMPAT_HAS_JOURNAL               0x0004
--#define EXT2_FEATURE_COMPAT_EXT_ATTR          0x0008
--#define EXT2_FEATURE_COMPAT_RESIZE_INODE      0x0010
--#define EXT2_FEATURE_COMPAT_DIR_INDEX         0x0020
--
--#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER   0x0001
--#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
--/* #define EXT2_FEATURE_RO_COMPAT_BTREE_DIR   0x0004 not used */
--
--#define EXT2_FEATURE_INCOMPAT_COMPRESSION     0x0001
--#define EXT2_FEATURE_INCOMPAT_FILETYPE                0x0002
--#define EXT3_FEATURE_INCOMPAT_RECOVER         0x0004 /* Needs recovery */
--#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV     0x0008 /* Journal device */
--#define EXT2_FEATURE_INCOMPAT_META_BG         0x0010
--#define EXT3_FEATURE_INCOMPAT_EXTENTS         0x0040
--
--
--#define EXT2_FEATURE_COMPAT_SUPP      0
--#define EXT2_FEATURE_INCOMPAT_SUPP    (EXT2_FEATURE_INCOMPAT_FILETYPE)
--#define EXT2_FEATURE_RO_COMPAT_SUPP   (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \
--                                       EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
--                                       EXT2_FEATURE_RO_COMPAT_BTREE_DIR)
--
--/*
-- * Default values for user and/or group using reserved blocks
-- */
--#define EXT2_DEF_RESUID               0
--#define EXT2_DEF_RESGID               0
--
--/*
-- * Default mount options
-- */
--#define EXT2_DEFM_DEBUG               0x0001
--#define EXT2_DEFM_BSDGROUPS   0x0002
--#define EXT2_DEFM_XATTR_USER  0x0004
--#define EXT2_DEFM_ACL         0x0008
--#define EXT2_DEFM_UID16               0x0010
--#define EXT3_DEFM_JMODE               0x0060
--#define EXT3_DEFM_JMODE_DATA  0x0020
--#define EXT3_DEFM_JMODE_ORDERED       0x0040
--#define EXT3_DEFM_JMODE_WBACK 0x0060
--
--/*
-- * Structure of a directory entry
-- */
--#define EXT2_NAME_LEN 255
--
--struct ext2_dir_entry {
--      uint32_t        inode;                  /* Inode number */
--      uint16_t        rec_len;                /* Directory entry length */
--      uint16_t        name_len;               /* Name length */
--      char            name[EXT2_NAME_LEN];    /* File name */
--};
--
--/*
-- * The new version of the directory entry.  Since EXT2 structures are
-- * stored in intel byte order, and the name_len field could never be
-- * bigger than 255 chars, it's safe to reclaim the extra byte for the
-- * file_type field.
-- */
--struct ext2_dir_entry_2 {
--      uint32_t        inode;                  /* Inode number */
--      uint16_t        rec_len;                /* Directory entry length */
--      uint8_t         name_len;               /* Name length */
--      uint8_t         file_type;
--      char            name[EXT2_NAME_LEN];    /* File name */
--};
--
--/*
-- * Ext2 directory file types.  Only the low 3 bits are used.  The
-- * other bits are reserved for now.
-- */
--#define EXT2_FT_UNKNOWN               0
--#define EXT2_FT_REG_FILE      1
--#define EXT2_FT_DIR           2
--#define EXT2_FT_CHRDEV                3
--#define EXT2_FT_BLKDEV                4
--#define EXT2_FT_FIFO          5
--#define EXT2_FT_SOCK          6
--#define EXT2_FT_SYMLINK               7
--
--#define EXT2_FT_MAX           8
--
--/*
-- * EXT2_DIR_PAD defines the directory entries boundaries
-- *
-- * NOTE: It must be a multiple of 4
-- */
--#define EXT2_DIR_PAD                  4
--#define EXT2_DIR_ROUND                        (EXT2_DIR_PAD - 1)
--#define EXT2_DIR_REC_LEN(name_len)    (((name_len) + 8 + EXT2_DIR_ROUND) & \
--                                       ~EXT2_DIR_ROUND)
--
--#endif
-diff --git a/e2fsprogs/e2fs_lib.h b/e2fsprogs/e2fs_lib.h
-index 3905ee7..f2ae56f 100644
---- a/e2fsprogs/e2fs_lib.h
-+++ b/e2fsprogs/e2fs_lib.h
-@@ -7,7 +7,7 @@
-  */
- /* Constants and structures */
--#include "e2fs_defs.h"
-+#include "bb_e2fs_defs.h"
- PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
-diff --git a/e2fsprogs/old_e2fsprogs/e2fsck.c b/e2fsprogs/old_e2fsprogs/e2fsck.c
-index 8fffa7f..373e8ce 100644
---- a/e2fsprogs/old_e2fsprogs/e2fsck.c
-+++ b/e2fsprogs/old_e2fsprogs/e2fsck.c
-@@ -11577,7 +11577,7 @@ static void check_resize_inode(e2fsck_t ctx)
-        * s_reserved_gdt_blocks must be zero.
-        */
-       if (!(fs->super->s_feature_compat &
--            EXT2_FEATURE_COMPAT_RESIZE_INODE)) {
-+            EXT2_FEATURE_COMPAT_RESIZE_INO)) {
-               if (fs->super->s_reserved_gdt_blocks) {
-                       pctx.num = fs->super->s_reserved_gdt_blocks;
-                       if (fix_problem(ctx, PR_0_NONZERO_RESERVED_GDT_BLOCKS,
-@@ -11593,7 +11593,7 @@ static void check_resize_inode(e2fsck_t ctx)
-       retval = ext2fs_read_inode(fs, EXT2_RESIZE_INO, &inode);
-       if (retval) {
-               if (fs->super->s_feature_compat &
--                  EXT2_FEATURE_COMPAT_RESIZE_INODE)
-+                  EXT2_FEATURE_COMPAT_RESIZE_INO)
-                       ctx->flags |= E2F_FLAG_RESIZE_INODE;
-               return;
-       }
-@@ -11603,7 +11603,7 @@ static void check_resize_inode(e2fsck_t ctx)
-        * the resize inode is cleared; then we're done.
-        */
-       if (!(fs->super->s_feature_compat &
--            EXT2_FEATURE_COMPAT_RESIZE_INODE)) {
-+            EXT2_FEATURE_COMPAT_RESIZE_INO)) {
-               for (i=0; i < EXT2_N_BLOCKS; i++) {
-                       if (inode.i_block[i])
-                               break;
-diff --git a/e2fsprogs/old_e2fsprogs/e2p/feature.c b/e2fsprogs/old_e2fsprogs/e2p/feature.c
-index b45754f..2102ed8 100644
---- a/e2fsprogs/old_e2fsprogs/e2p/feature.c
-+++ b/e2fsprogs/old_e2fsprogs/e2p/feature.c
-@@ -34,7 +34,7 @@ static const struct feature feature_list[] = {
-                       "ext_attr" },
-       {       E2P_FEATURE_COMPAT, EXT2_FEATURE_COMPAT_DIR_INDEX,
-                       "dir_index" },
--      {       E2P_FEATURE_COMPAT, EXT2_FEATURE_COMPAT_RESIZE_INODE,
-+      {       E2P_FEATURE_COMPAT, EXT2_FEATURE_COMPAT_RESIZE_INO,
-                       "resize_inode" },
-       {       E2P_FEATURE_RO_INCOMPAT, EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER,
-                       "sparse_super" },
-diff --git a/e2fsprogs/old_e2fsprogs/ext2fs/ext2_fs.h b/e2fsprogs/old_e2fsprogs/ext2fs/ext2_fs.h
-index 6f4f708..80ea2cb 100644
---- a/e2fsprogs/old_e2fsprogs/ext2fs/ext2_fs.h
-+++ b/e2fsprogs/old_e2fsprogs/ext2fs/ext2_fs.h
-@@ -475,7 +475,7 @@ struct ext2_super_block {
- #define EXT2_FEATURE_COMPAT_IMAGIC_INODES     0x0002
- #define EXT3_FEATURE_COMPAT_HAS_JOURNAL               0x0004
- #define EXT2_FEATURE_COMPAT_EXT_ATTR          0x0008
--#define EXT2_FEATURE_COMPAT_RESIZE_INODE      0x0010
-+#define EXT2_FEATURE_COMPAT_RESIZE_INO                0x0010
- #define EXT2_FEATURE_COMPAT_DIR_INDEX         0x0020
- #define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER   0x0001
-diff --git a/e2fsprogs/old_e2fsprogs/ext2fs/ext2fs.h b/e2fsprogs/old_e2fsprogs/ext2fs/ext2fs.h
-index 9f77201..39fb116 100644
---- a/e2fsprogs/old_e2fsprogs/ext2fs/ext2fs.h
-+++ b/e2fsprogs/old_e2fsprogs/ext2fs/ext2fs.h
-@@ -383,7 +383,7 @@ typedef struct ext2_icount *ext2_icount_t;
- #define EXT2_LIB_FEATURE_COMPAT_SUPP  (EXT2_FEATURE_COMPAT_DIR_PREALLOC|\
-                                        EXT2_FEATURE_COMPAT_IMAGIC_INODES|\
-                                        EXT3_FEATURE_COMPAT_HAS_JOURNAL|\
--                                       EXT2_FEATURE_COMPAT_RESIZE_INODE|\
-+                                       EXT2_FEATURE_COMPAT_RESIZE_INO|\
-                                        EXT2_FEATURE_COMPAT_DIR_INDEX|\
-                                        EXT2_FEATURE_COMPAT_EXT_ATTR)
-diff --git a/e2fsprogs/old_e2fsprogs/ext2fs/initialize.c b/e2fsprogs/old_e2fsprogs/ext2fs/initialize.c
-index ef1d343..da2d151 100644
---- a/e2fsprogs/old_e2fsprogs/ext2fs/initialize.c
-+++ b/e2fsprogs/old_e2fsprogs/ext2fs/initialize.c
-@@ -284,7 +284,7 @@ retry:
-       /*
-        * check the number of reserved group descriptor table blocks
-        */
--      if (super->s_feature_compat & EXT2_FEATURE_COMPAT_RESIZE_INODE)
-+      if (super->s_feature_compat & EXT2_FEATURE_COMPAT_RESIZE_INO)
-               rsv_gdt = calc_reserved_gdt_blocks(fs);
-       else
-               rsv_gdt = 0;
-diff --git a/e2fsprogs/old_e2fsprogs/mke2fs.c b/e2fsprogs/old_e2fsprogs/mke2fs.c
-index 7555650..35d717a 100644
---- a/e2fsprogs/old_e2fsprogs/mke2fs.c
-+++ b/e2fsprogs/old_e2fsprogs/mke2fs.c
-@@ -757,7 +757,7 @@ static void parse_extended_opts(struct ext2_super_block *sb_param,
-                       if (rsv_gdb > 0) {
-                               sb_param->s_feature_compat |=
--                                      EXT2_FEATURE_COMPAT_RESIZE_INODE;
-+                                      EXT2_FEATURE_COMPAT_RESIZE_INO;
-                               sb_param->s_reserved_gdt_blocks = rsv_gdb;
-                       }
-@@ -778,7 +778,7 @@ static void parse_extended_opts(struct ext2_super_block *sb_param,
- static __u32 ok_features[3] = {
-       EXT3_FEATURE_COMPAT_HAS_JOURNAL |
--              EXT2_FEATURE_COMPAT_RESIZE_INODE |
-+              EXT2_FEATURE_COMPAT_RESIZE_INO |
-               EXT2_FEATURE_COMPAT_DIR_INDEX,  /* Compat */
-       EXT2_FEATURE_INCOMPAT_FILETYPE|         /* Incompat */
-               EXT3_FEATURE_INCOMPAT_JOURNAL_DEV|
-@@ -1123,7 +1123,7 @@ static int PRS(int argc, char **argv)
-       /* Since sparse_super is the default, we would only have a problem
-        * here if it was explicitly disabled.
-        */
--      if ((param.s_feature_compat & EXT2_FEATURE_COMPAT_RESIZE_INODE) &&
-+      if ((param.s_feature_compat & EXT2_FEATURE_COMPAT_RESIZE_INO) &&
-           !(param.s_feature_ro_compat&EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER)) {
-               bb_error_msg_and_die("reserved online resize blocks not supported "
-                         "on non-sparse filesystem");
-@@ -1312,7 +1312,7 @@ int mke2fs_main (int argc, char **argv)
-               reserve_inodes(fs);
-               create_bad_block_inode(fs, bb_list);
-               if (fs->super->s_feature_compat &
--                  EXT2_FEATURE_COMPAT_RESIZE_INODE) {
-+                  EXT2_FEATURE_COMPAT_RESIZE_INO) {
-                       retval = ext2fs_create_resize_inode(fs);
-                       mke2fs_error_msg_and_die(retval, "reserve blocks for online resize");
-               }
-diff --git a/e2fsprogs/tune2fs.c b/e2fsprogs/tune2fs.c
-index 841d58a..46a745e 100644
---- a/e2fsprogs/tune2fs.c
-+++ b/e2fsprogs/tune2fs.c
-@@ -8,7 +8,7 @@
-  */
- #include "libbb.h"
- #include <linux/fs.h>
--#include "bb_linux_ext2_fs.h"
-+#include "bb_e2fs_defs.h"
- // storage helpers
- char BUG_wrong_field_size(void);
-diff --git a/include/bb_e2fs_defs.h b/include/bb_e2fs_defs.h
-new file mode 100644
-index 0000000..7974497
---- /dev/null
-+++ b/include/bb_e2fs_defs.h
-@@ -0,0 +1,561 @@
-+/* vi: set sw=4 ts=4: */
-+/*
-+ *  linux/include/linux/ext2_fs.h
-+ *
-+ * Copyright (C) 1992, 1993, 1994, 1995
-+ * Remy Card (card@masi.ibp.fr)
-+ * Laboratoire MASI - Institut Blaise Pascal
-+ * Universite Pierre et Marie Curie (Paris VI)
-+ *
-+ * Copyright (C) 1991, 1992  Linus Torvalds
-+ */
-+
-+#ifndef LINUX_EXT2_FS_H
-+#define LINUX_EXT2_FS_H 1
-+
-+/*
-+ * Special inode numbers
-+ */
-+#define EXT2_BAD_INO           1      /* Bad blocks inode */
-+#define EXT2_ROOT_INO          2      /* Root inode */
-+#define EXT2_ACL_IDX_INO       3      /* ACL inode */
-+#define EXT2_ACL_DATA_INO      4      /* ACL inode */
-+#define EXT2_BOOT_LOADER_INO   5      /* Boot loader inode */
-+#define EXT2_UNDEL_DIR_INO     6      /* Undelete directory inode */
-+#define EXT2_RESIZE_INO                7      /* Reserved group descriptors inode */
-+#define EXT2_JOURNAL_INO       8      /* Journal inode */
-+
-+/* First non-reserved inode for old ext2 filesystems */
-+#define EXT2_GOOD_OLD_FIRST_INO       11
-+
-+/*
-+ * The second extended file system magic number
-+ */
-+#define EXT2_SUPER_MAGIC      0xEF53
-+
-+/* Assume that user mode programs are passing in an ext2fs superblock, not
-+ * a kernel struct super_block.  This will allow us to call the feature-test
-+ * macros from user land. */
-+#define EXT2_SB(sb)   (sb)
-+
-+/*
-+ * Maximal count of links to a file
-+ */
-+#define EXT2_LINK_MAX         32000
-+
-+/*
-+ * Macro-instructions used to manage several block sizes
-+ */
-+#define EXT2_MIN_BLOCK_LOG_SIZE               10      /* 1024 */
-+#define EXT2_MAX_BLOCK_LOG_SIZE               16      /* 65536 */
-+#define EXT2_MIN_BLOCK_SIZE   (1 << EXT2_MIN_BLOCK_LOG_SIZE)
-+#define EXT2_MAX_BLOCK_SIZE   (1 << EXT2_MAX_BLOCK_LOG_SIZE)
-+#define EXT2_BLOCK_SIZE(s)    (EXT2_MIN_BLOCK_SIZE << (s)->s_log_block_size)
-+#define EXT2_BLOCK_SIZE_BITS(s)       ((s)->s_log_block_size + 10)
-+#define EXT2_INODE_SIZE(s)    (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
-+                               EXT2_GOOD_OLD_INODE_SIZE : (s)->s_inode_size)
-+#define EXT2_FIRST_INO(s)     (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
-+                               EXT2_GOOD_OLD_FIRST_INO : (s)->s_first_ino)
-+#define EXT2_ADDR_PER_BLOCK(s)        (EXT2_BLOCK_SIZE(s) / sizeof(uint32_t))
-+
-+/*
-+ * Macro-instructions used to manage fragments
-+ */
-+#define EXT2_MIN_FRAG_SIZE            EXT2_MIN_BLOCK_SIZE
-+#define EXT2_MAX_FRAG_SIZE            EXT2_MAX_BLOCK_SIZE
-+#define EXT2_MIN_FRAG_LOG_SIZE                EXT2_MIN_BLOCK_LOG_SIZE
-+#define EXT2_FRAG_SIZE(s)             (EXT2_MIN_FRAG_SIZE << (s)->s_log_frag_size)
-+#define EXT2_FRAGS_PER_BLOCK(s)               (EXT2_BLOCK_SIZE(s) / EXT2_FRAG_SIZE(s))
-+
-+/*
-+ * ACL structures
-+ */
-+struct ext2_acl_header {      /* Header of Access Control Lists */
-+      uint32_t        aclh_size;
-+      uint32_t        aclh_file_count;
-+      uint32_t        aclh_acle_count;
-+      uint32_t        aclh_first_acle;
-+};
-+
-+struct ext2_acl_entry {       /* Access Control List Entry */
-+      uint32_t        acle_size;
-+      uint16_t        acle_perms;     /* Access permissions */
-+      uint16_t        acle_type;      /* Type of entry */
-+      uint16_t        acle_tag;       /* User or group identity */
-+      uint16_t        acle_pad1;
-+      uint32_t        acle_next;      /* Pointer on next entry for the */
-+                                      /* same inode or on next free entry */
-+};
-+
-+/*
-+ * Structure of a blocks group descriptor
-+ */
-+struct ext2_group_desc {
-+      uint32_t        bg_block_bitmap;        /* Blocks bitmap block */
-+      uint32_t        bg_inode_bitmap;        /* Inodes bitmap block */
-+      uint32_t        bg_inode_table;         /* Inodes table block */
-+      uint16_t        bg_free_blocks_count;   /* Free blocks count */
-+      uint16_t        bg_free_inodes_count;   /* Free inodes count */
-+      uint16_t        bg_used_dirs_count;     /* Directories count */
-+      uint16_t        bg_pad;
-+      uint32_t        bg_reserved[3];
-+};
-+
-+/*
-+ * Data structures used by the directory indexing feature
-+ *
-+ * Note: all of the multibyte integer fields are little endian.
-+ */
-+
-+/*
-+ * Note: dx_root_info is laid out so that if it should somehow get
-+ * overlaid by a dirent the two low bits of the hash version will be
-+ * zero.  Therefore, the hash version mod 4 should never be 0.
-+ * Sincerely, the paranoia department.
-+ */
-+struct ext2_dx_root_info {
-+      uint32_t        reserved_zero;
-+      uint8_t         hash_version; /* 0 now, 1 at release */
-+      uint8_t         info_length; /* 8 */
-+      uint8_t         indirect_levels;
-+      uint8_t         unused_flags;
-+};
-+
-+#define EXT2_HASH_LEGACY      0
-+#define EXT2_HASH_HALF_MD4    1
-+#define EXT2_HASH_TEA         2
-+
-+#define EXT2_HASH_FLAG_INCOMPAT       0x1
-+
-+struct ext2_dx_entry {
-+      uint32_t hash;
-+      uint32_t block;
-+};
-+
-+struct ext2_dx_countlimit {
-+      uint16_t limit;
-+      uint16_t count;
-+};
-+
-+
-+/*
-+ * Macro-instructions used to manage group descriptors
-+ */
-+#define EXT2_BLOCKS_PER_GROUP(s)      (EXT2_SB(s)->s_blocks_per_group)
-+#define EXT2_INODES_PER_GROUP(s)      (EXT2_SB(s)->s_inodes_per_group)
-+#define EXT2_INODES_PER_BLOCK(s)      (EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s))
-+/* limits imposed by 16-bit value gd_free_{blocks,inode}_count */
-+#define EXT2_MAX_BLOCKS_PER_GROUP(s)  ((1 << 16) - 8)
-+#define EXT2_MAX_INODES_PER_GROUP(s)  ((1 << 16) - EXT2_INODES_PER_BLOCK(s))
-+#define EXT2_DESC_PER_BLOCK(s)                (EXT2_BLOCK_SIZE(s) / sizeof (struct ext2_group_desc))
-+
-+/*
-+ * Constants relative to the data blocks
-+ */
-+#define EXT2_NDIR_BLOCKS              12
-+#define EXT2_IND_BLOCK                        EXT2_NDIR_BLOCKS
-+#define EXT2_DIND_BLOCK                       (EXT2_IND_BLOCK + 1)
-+#define EXT2_TIND_BLOCK                       (EXT2_DIND_BLOCK + 1)
-+#define EXT2_N_BLOCKS                 (EXT2_TIND_BLOCK + 1)
-+
-+/*
-+ * Inode flags
-+ */
-+#define EXT2_SECRM_FL                 0x00000001 /* Secure deletion */
-+#define EXT2_UNRM_FL                  0x00000002 /* Undelete */
-+#define EXT2_COMPR_FL                 0x00000004 /* Compress file */
-+#define EXT2_SYNC_FL                  0x00000008 /* Synchronous updates */
-+#define EXT2_IMMUTABLE_FL             0x00000010 /* Immutable file */
-+#define EXT2_APPEND_FL                        0x00000020 /* writes to file may only append */
-+#define EXT2_NODUMP_FL                        0x00000040 /* do not dump file */
-+#define EXT2_NOATIME_FL                       0x00000080 /* do not update atime */
-+/* Reserved for compression usage... */
-+#define EXT2_DIRTY_FL                 0x00000100
-+#define EXT2_COMPRBLK_FL              0x00000200 /* One or more compressed clusters */
-+#define EXT2_NOCOMPR_FL                       0x00000400 /* Access raw compressed data */
-+#define EXT2_ECOMPR_FL                        0x00000800 /* Compression error */
-+/* End compression flags --- maybe not all used */
-+#define EXT2_BTREE_FL                 0x00001000 /* btree format dir */
-+#define EXT2_INDEX_FL                 0x00001000 /* hash-indexed directory */
-+#define EXT2_IMAGIC_FL                        0x00002000
-+#define EXT3_JOURNAL_DATA_FL          0x00004000 /* file data should be journaled */
-+#define EXT2_NOTAIL_FL                        0x00008000 /* file tail should not be merged */
-+#define EXT2_DIRSYNC_FL                       0x00010000 /* Synchronous directory modifications */
-+#define EXT2_TOPDIR_FL                        0x00020000 /* Top of directory hierarchies*/
-+#define EXT3_EXTENTS_FL                       0x00080000 /* Inode uses extents */
-+#define EXT2_RESERVED_FL              0x80000000 /* reserved for ext2 lib */
-+
-+#define EXT2_FL_USER_VISIBLE          0x0003DFFF /* User visible flags */
-+#define EXT2_FL_USER_MODIFIABLE               0x000080FF /* User modifiable flags */
-+
-+/*
-+ * ioctl commands
-+ */
-+#define EXT2_IOC_GETFLAGS             _IOR('f', 1, long)
-+#define EXT2_IOC_SETFLAGS             _IOW('f', 2, long)
-+#define EXT2_IOC_GETVERSION           _IOR('v', 1, long)
-+#define EXT2_IOC_SETVERSION           _IOW('v', 2, long)
-+
-+/*
-+ * Structure of an inode on the disk
-+ */
-+struct ext2_inode {
-+      uint16_t        i_mode;         /* File mode */
-+      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
-+      uint32_t        i_size;         /* Size in bytes */
-+      uint32_t        i_atime;        /* Access time */
-+      uint32_t        i_ctime;        /* Creation time */
-+      uint32_t        i_mtime;        /* Modification time */
-+      uint32_t        i_dtime;        /* Deletion Time */
-+      uint16_t        i_gid;          /* Low 16 bits of Group Id */
-+      uint16_t        i_links_count;  /* Links count */
-+      uint32_t        i_blocks;       /* Blocks count */
-+      uint32_t        i_flags;        /* File flags */
-+      union {
-+              struct {
-+                      uint32_t  l_i_reserved1;
-+              } linux1;
-+              struct {
-+                      uint32_t  h_i_translator;
-+              } hurd1;
-+              struct {
-+                      uint32_t  m_i_reserved1;
-+              } masix1;
-+      } osd1;                         /* OS dependent 1 */
-+      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
-+      uint32_t        i_generation;   /* File version (for NFS) */
-+      uint32_t        i_file_acl;     /* File ACL */
-+      uint32_t        i_dir_acl;      /* Directory ACL */
-+      uint32_t        i_faddr;        /* Fragment address */
-+      union {
-+              struct {
-+                      uint8_t         l_i_frag;       /* Fragment number */
-+                      uint8_t         l_i_fsize;      /* Fragment size */
-+                      uint16_t        i_pad1;
-+                      uint16_t        l_i_uid_high;   /* these 2 fields    */
-+                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
-+                      uint32_t        l_i_reserved2;
-+              } linux2;
-+              struct {
-+                      uint8_t         h_i_frag;       /* Fragment number */
-+                      uint8_t         h_i_fsize;      /* Fragment size */
-+                      uint16_t        h_i_mode_high;
-+                      uint16_t        h_i_uid_high;
-+                      uint16_t        h_i_gid_high;
-+                      uint32_t        h_i_author;
-+              } hurd2;
-+              struct {
-+                      uint8_t         m_i_frag;       /* Fragment number */
-+                      uint8_t         m_i_fsize;      /* Fragment size */
-+                      uint16_t        m_pad1;
-+                      uint32_t        m_i_reserved2[2];
-+              } masix2;
-+      } osd2;                         /* OS dependent 2 */
-+};
-+
-+/*
-+ * Permanent part of an large inode on the disk
-+ */
-+struct ext2_inode_large {
-+      uint16_t        i_mode;         /* File mode */
-+      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
-+      uint32_t        i_size;         /* Size in bytes */
-+      uint32_t        i_atime;        /* Access time */
-+      uint32_t        i_ctime;        /* Creation time */
-+      uint32_t        i_mtime;        /* Modification time */
-+      uint32_t        i_dtime;        /* Deletion Time */
-+      uint16_t        i_gid;          /* Low 16 bits of Group Id */
-+      uint16_t        i_links_count;  /* Links count */
-+      uint32_t        i_blocks;       /* Blocks count */
-+      uint32_t        i_flags;        /* File flags */
-+      union {
-+              struct {
-+                      uint32_t  l_i_reserved1;
-+              } linux1;
-+              struct {
-+                      uint32_t  h_i_translator;
-+              } hurd1;
-+              struct {
-+                      uint32_t  m_i_reserved1;
-+              } masix1;
-+      } osd1;                         /* OS dependent 1 */
-+      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
-+      uint32_t        i_generation;   /* File version (for NFS) */
-+      uint32_t        i_file_acl;     /* File ACL */
-+      uint32_t        i_dir_acl;      /* Directory ACL */
-+      uint32_t        i_faddr;        /* Fragment address */
-+      union {
-+              struct {
-+                      uint8_t         l_i_frag;       /* Fragment number */
-+                      uint8_t         l_i_fsize;      /* Fragment size */
-+                      uint16_t        i_pad1;
-+                      uint16_t        l_i_uid_high;   /* these 2 fields    */
-+                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
-+                      uint32_t        l_i_reserved2;
-+              } linux2;
-+              struct {
-+                      uint8_t         h_i_frag;       /* Fragment number */
-+                      uint8_t         h_i_fsize;      /* Fragment size */
-+                      uint16_t        h_i_mode_high;
-+                      uint16_t        h_i_uid_high;
-+                      uint16_t        h_i_gid_high;
-+                      uint32_t        h_i_author;
-+              } hurd2;
-+              struct {
-+                      uint8_t         m_i_frag;       /* Fragment number */
-+                      uint8_t         m_i_fsize;      /* Fragment size */
-+                      uint16_t        m_pad1;
-+                      uint32_t        m_i_reserved2[2];
-+              } masix2;
-+      } osd2;                         /* OS dependent 2 */
-+      uint16_t        i_extra_isize;
-+      uint16_t        i_pad1;
-+};
-+
-+#define i_size_high   i_dir_acl
-+
-+/*
-+ * File system states
-+ */
-+#define EXT2_VALID_FS                 0x0001  /* Unmounted cleanly */
-+#define EXT2_ERROR_FS                 0x0002  /* Errors detected */
-+
-+/*
-+ * Mount flags
-+ */
-+#define EXT2_MOUNT_CHECK              0x0001  /* Do mount-time checks */
-+#define EXT2_MOUNT_GRPID              0x0004  /* Create files with directory's group */
-+#define EXT2_MOUNT_DEBUG              0x0008  /* Some debugging messages */
-+#define EXT2_MOUNT_ERRORS_CONT                0x0010  /* Continue on errors */
-+#define EXT2_MOUNT_ERRORS_RO          0x0020  /* Remount fs ro on errors */
-+#define EXT2_MOUNT_ERRORS_PANIC               0x0040  /* Panic on errors */
-+#define EXT2_MOUNT_MINIX_DF           0x0080  /* Mimics the Minix statfs */
-+#define EXT2_MOUNT_NO_UID32           0x0200  /* Disable 32-bit UIDs */
-+
-+#define clear_opt(o, opt)             o &= ~EXT2_MOUNT_##opt
-+#define set_opt(o, opt)                       o |= EXT2_MOUNT_##opt
-+#define test_opt(sb, opt)             (EXT2_SB(sb)->s_mount_opt & \
-+                                       EXT2_MOUNT_##opt)
-+/*
-+ * Maximal mount counts between two filesystem checks
-+ */
-+#define EXT2_DFL_MAX_MNT_COUNT                20      /* Allow 20 mounts */
-+#define EXT2_DFL_CHECKINTERVAL                0       /* Don't use interval check */
-+
-+/*
-+ * Behaviour when detecting errors
-+ */
-+#define EXT2_ERRORS_CONTINUE          1       /* Continue execution */
-+#define EXT2_ERRORS_RO                        2       /* Remount fs read-only */
-+#define EXT2_ERRORS_PANIC             3       /* Panic */
-+#define EXT2_ERRORS_DEFAULT           EXT2_ERRORS_CONTINUE
-+
-+/*
-+ * Structure of the super block
-+ */
-+struct ext2_super_block {
-+      uint32_t        s_inodes_count;         /* Inodes count */
-+      uint32_t        s_blocks_count;         /* Blocks count */
-+      uint32_t        s_r_blocks_count;       /* Reserved blocks count */
-+      uint32_t        s_free_blocks_count;    /* Free blocks count */
-+      uint32_t        s_free_inodes_count;    /* Free inodes count */
-+      uint32_t        s_first_data_block;     /* First Data Block */
-+      uint32_t        s_log_block_size;       /* Block size */
-+      int32_t         s_log_frag_size;        /* Fragment size */
-+      uint32_t        s_blocks_per_group;     /* # Blocks per group */
-+      uint32_t        s_frags_per_group;      /* # Fragments per group */
-+      uint32_t        s_inodes_per_group;     /* # Inodes per group */
-+      uint32_t        s_mtime;                /* Mount time */
-+      uint32_t        s_wtime;                /* Write time */
-+      uint16_t        s_mnt_count;            /* Mount count */
-+      int16_t         s_max_mnt_count;        /* Maximal mount count */
-+      uint16_t        s_magic;                /* Magic signature */
-+      uint16_t        s_state;                /* File system state */
-+      uint16_t        s_errors;               /* Behaviour when detecting errors */
-+      uint16_t        s_minor_rev_level;      /* minor revision level */
-+      uint32_t        s_lastcheck;            /* time of last check */
-+      uint32_t        s_checkinterval;        /* max. time between checks */
-+      uint32_t        s_creator_os;           /* OS */
-+      uint32_t        s_rev_level;            /* Revision level */
-+      uint16_t        s_def_resuid;           /* Default uid for reserved blocks */
-+      uint16_t        s_def_resgid;           /* Default gid for reserved blocks */
-+      /*
-+       * These fields are for EXT2_DYNAMIC_REV superblocks only.
-+       *
-+       * Note: the difference between the compatible feature set and
-+       * the incompatible feature set is that if there is a bit set
-+       * in the incompatible feature set that the kernel doesn't
-+       * know about, it should refuse to mount the filesystem.
-+       *
-+       * e2fsck's requirements are more strict; if it doesn't know
-+       * about a feature in either the compatible or incompatible
-+       * feature set, it must abort and not try to meddle with
-+       * things it doesn't understand...
-+       */
-+      uint32_t        s_first_ino;            /* First non-reserved inode */
-+      uint16_t        s_inode_size;           /* size of inode structure */
-+      uint16_t        s_block_group_nr;       /* block group # of this superblock */
-+      uint32_t        s_feature_compat;       /* compatible feature set */
-+      uint32_t        s_feature_incompat;     /* incompatible feature set */
-+      uint32_t        s_feature_ro_compat;    /* readonly-compatible feature set */
-+      uint8_t         s_uuid[16];             /* 128-bit uuid for volume */
-+      char            s_volume_name[16];      /* volume name */
-+      char            s_last_mounted[64];     /* directory where last mounted */
-+      uint32_t        s_algorithm_usage_bitmap; /* For compression */
-+      /*
-+       * Performance hints.  Directory preallocation should only
-+       * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on.
-+       */
-+      uint8_t s_prealloc_blocks;      /* Nr of blocks to try to preallocate*/
-+      uint8_t s_prealloc_dir_blocks;  /* Nr to preallocate for dirs */
-+      uint16_t        s_reserved_gdt_blocks;  /* Per group table for online growth */
-+      /*
-+       * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set.
-+       */
-+      uint8_t         s_journal_uuid[16];     /* uuid of journal superblock */
-+      uint32_t        s_journal_inum;         /* inode number of journal file */
-+      uint32_t        s_journal_dev;          /* device number of journal file */
-+      uint32_t        s_last_orphan;          /* start of list of inodes to delete */
-+      uint32_t        s_hash_seed[4];         /* HTREE hash seed */
-+      uint8_t         s_def_hash_version;     /* Default hash version to use */
-+      uint8_t         s_jnl_backup_type;      /* Default type of journal backup */
-+      uint16_t        s_reserved_word_pad;
-+      uint32_t        s_default_mount_opts;
-+      uint32_t        s_first_meta_bg;        /* First metablock group */
-+      uint32_t        s_mkfs_time;            /* When the filesystem was created */
-+      uint32_t        s_jnl_blocks[17];       /* Backup of the journal inode */
-+      uint32_t        s_reserved[172];        /* Padding to the end of the block */
-+};
-+
-+/*
-+ * Codes for operating systems
-+ */
-+#define EXT2_OS_LINUX         0
-+#define EXT2_OS_HURD          1
-+#define EXT2_OS_MASIX         2
-+#define EXT2_OS_FREEBSD               3
-+#define EXT2_OS_LITES         4
-+
-+/*
-+ * Revision levels
-+ */
-+#define EXT2_GOOD_OLD_REV     0       /* The good old (original) format */
-+#define EXT2_DYNAMIC_REV      1       /* V2 format w/ dynamic inode sizes */
-+
-+#define EXT2_CURRENT_REV      EXT2_GOOD_OLD_REV
-+#define EXT2_MAX_SUPP_REV     EXT2_DYNAMIC_REV
-+
-+#define EXT2_GOOD_OLD_INODE_SIZE 128
-+
-+/*
-+ * Journal inode backup types
-+ */
-+#define EXT3_JNL_BACKUP_BLOCKS        1
-+
-+/*
-+ * Feature set definitions
-+ */
-+
-+#define EXT2_HAS_COMPAT_FEATURE(sb,mask)                      \
-+      ( EXT2_SB(sb)->s_feature_compat & (mask) )
-+#define EXT2_HAS_RO_COMPAT_FEATURE(sb,mask)                   \
-+      ( EXT2_SB(sb)->s_feature_ro_compat & (mask) )
-+#define EXT2_HAS_INCOMPAT_FEATURE(sb,mask)                    \
-+      ( EXT2_SB(sb)->s_feature_incompat & (mask) )
-+
-+#define EXT2_FEATURE_COMPAT_DIR_PREALLOC      0x0001
-+#define EXT2_FEATURE_COMPAT_IMAGIC_INODES     0x0002
-+#define EXT3_FEATURE_COMPAT_HAS_JOURNAL               0x0004
-+#define EXT2_FEATURE_COMPAT_EXT_ATTR          0x0008
-+#define EXT2_FEATURE_COMPAT_RESIZE_INO                0x0010
-+#define EXT2_FEATURE_COMPAT_DIR_INDEX         0x0020
-+
-+#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER   0x0001
-+#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
-+/* #define EXT2_FEATURE_RO_COMPAT_BTREE_DIR   0x0004 not used */
-+
-+#define EXT2_FEATURE_INCOMPAT_COMPRESSION     0x0001
-+#define EXT2_FEATURE_INCOMPAT_FILETYPE                0x0002
-+#define EXT3_FEATURE_INCOMPAT_RECOVER         0x0004 /* Needs recovery */
-+#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV     0x0008 /* Journal device */
-+#define EXT2_FEATURE_INCOMPAT_META_BG         0x0010
-+#define EXT3_FEATURE_INCOMPAT_EXTENTS         0x0040
-+
-+
-+#define EXT2_FEATURE_COMPAT_SUPP      0
-+#define EXT2_FEATURE_INCOMPAT_SUPP    (EXT2_FEATURE_INCOMPAT_FILETYPE)
-+#define EXT2_FEATURE_RO_COMPAT_SUPP   (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \
-+                                       EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
-+                                       EXT2_FEATURE_RO_COMPAT_BTREE_DIR)
-+
-+/*
-+ * Default values for user and/or group using reserved blocks
-+ */
-+#define EXT2_DEF_RESUID               0
-+#define EXT2_DEF_RESGID               0
-+
-+/*
-+ * Default mount options
-+ */
-+#define EXT2_DEFM_DEBUG               0x0001
-+#define EXT2_DEFM_BSDGROUPS   0x0002
-+#define EXT2_DEFM_XATTR_USER  0x0004
-+#define EXT2_DEFM_ACL         0x0008
-+#define EXT2_DEFM_UID16               0x0010
-+#define EXT3_DEFM_JMODE               0x0060
-+#define EXT3_DEFM_JMODE_DATA  0x0020
-+#define EXT3_DEFM_JMODE_ORDERED       0x0040
-+#define EXT3_DEFM_JMODE_WBACK 0x0060
-+
-+/*
-+ * Structure of a directory entry
-+ */
-+#define EXT2_NAME_LEN 255
-+
-+struct ext2_dir_entry {
-+      uint32_t        inode;                  /* Inode number */
-+      uint16_t        rec_len;                /* Directory entry length */
-+      uint16_t        name_len;               /* Name length */
-+      char            name[EXT2_NAME_LEN];    /* File name */
-+};
-+
-+/*
-+ * The new version of the directory entry.  Since EXT2 structures are
-+ * stored in intel byte order, and the name_len field could never be
-+ * bigger than 255 chars, it's safe to reclaim the extra byte for the
-+ * file_type field.
-+ */
-+struct ext2_dir_entry_2 {
-+      uint32_t        inode;                  /* Inode number */
-+      uint16_t        rec_len;                /* Directory entry length */
-+      uint8_t         name_len;               /* Name length */
-+      uint8_t         file_type;
-+      char            name[EXT2_NAME_LEN];    /* File name */
-+};
-+
-+/*
-+ * Ext2 directory file types.  Only the low 3 bits are used.  The
-+ * other bits are reserved for now.
-+ */
-+#define EXT2_FT_UNKNOWN               0
-+#define EXT2_FT_REG_FILE      1
-+#define EXT2_FT_DIR           2
-+#define EXT2_FT_CHRDEV                3
-+#define EXT2_FT_BLKDEV                4
-+#define EXT2_FT_FIFO          5
-+#define EXT2_FT_SOCK          6
-+#define EXT2_FT_SYMLINK               7
-+
-+#define EXT2_FT_MAX           8
-+
-+/*
-+ * EXT2_DIR_PAD defines the directory entries boundaries
-+ *
-+ * NOTE: It must be a multiple of 4
-+ */
-+#define EXT2_DIR_PAD                  4
-+#define EXT2_DIR_ROUND                        (EXT2_DIR_PAD - 1)
-+#define EXT2_DIR_REC_LEN(name_len)    (((name_len) + 8 + EXT2_DIR_ROUND) & \
-+                                       ~EXT2_DIR_ROUND)
-+
-+#endif
-diff --git a/include/bb_linux_ext2_fs.h b/include/bb_linux_ext2_fs.h
-deleted file mode 100644
-index fdc470b..0000000
---- a/include/bb_linux_ext2_fs.h
-+++ /dev/null
-@@ -1,547 +0,0 @@
--/*
-- * Work around linux/ext2_fs.h breakage.
-- * linux/ext2_fs.h might be removed from future kernel header distribution.
-- * See https://bugzilla.kernel.org/show_bug.cgi?id=42986
-- *
-- * Licensed under GPLv2, see file LICENSE in this source tree.
-- */
--#ifndef BB_LINUX_EXT2_FS_H
--#define BB_LINUX_EXT2_FS_H
--
--/*
-- * From linux/magic.h
-- */
--
--#define EXT2_SUPER_MAGIC        0xEF53
--#define EXT3_SUPER_MAGIC        0xEF53
--#define EXT4_SUPER_MAGIC        0xEF53
--
--/*
-- * From linux/ext2_fs.h, with minor changes.
-- */
--
--/*
-- * Copyright (C) 1992, 1993, 1994, 1995
-- * Remy Card (card@masi.ibp.fr)
-- * Laboratoire MASI - Institut Blaise Pascal
-- * Universite Pierre et Marie Curie (Paris VI)
-- *
-- *  from
-- *
-- *  linux/include/linux/minix_fs.h
-- *
-- *  Copyright (C) 1991, 1992  Linus Torvalds
-- */
--
--/*
-- * The second extended filesystem constants/structures
-- */
--
--/*
-- * Define EXT2_RESERVATION to reserve data blocks for expanding files
-- */
--#define EXT2_DEFAULT_RESERVE_BLOCKS     8
--/*max window size: 1024(direct blocks) + 3([t,d]indirect blocks) */
--#define EXT2_MAX_RESERVE_BLOCKS         1027
--#define EXT2_RESERVE_WINDOW_NOT_ALLOCATED 0
--
--/*
-- * Special inode numbers
-- */
--#define       EXT2_BAD_INO             1      /* Bad blocks inode */
--#define EXT2_ROOT_INO          2      /* Root inode */
--#define EXT2_BOOT_LOADER_INO   5      /* Boot loader inode */
--#define EXT2_UNDEL_DIR_INO     6      /* Undelete directory inode */
--
--/* First non-reserved inode for old ext2 filesystems */
--#define EXT2_GOOD_OLD_FIRST_INO       11
--
--/* Assume that user mode programs are passing in an ext2fs superblock, not
-- * a kernel struct super_block.  This will allow us to call the feature-test
-- * macros from user land. */
--#define EXT2_SB(sb)   (sb)
--
--/*
-- * Maximal count of links to a file
-- */
--#define EXT2_LINK_MAX         32000
--
--/*
-- * Macro-instructions used to manage several block sizes
-- */
--#define EXT2_MIN_BLOCK_SIZE           1024
--#define       EXT2_MAX_BLOCK_SIZE             4096
--#define EXT2_MIN_BLOCK_LOG_SIZE                 10
--# define EXT2_BLOCK_SIZE(s)           (EXT2_MIN_BLOCK_SIZE << (s)->s_log_block_size)
--#define       EXT2_ADDR_PER_BLOCK(s)          (EXT2_BLOCK_SIZE(s) / sizeof (uint32_t))
--# define EXT2_BLOCK_SIZE_BITS(s)      ((s)->s_log_block_size + 10)
--#define EXT2_INODE_SIZE(s)    (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
--                               EXT2_GOOD_OLD_INODE_SIZE : \
--                               (s)->s_inode_size)
--#define EXT2_FIRST_INO(s)     (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
--                               EXT2_GOOD_OLD_FIRST_INO : \
--                               (s)->s_first_ino)
--
--/*
-- * Macro-instructions used to manage fragments
-- */
--#define EXT2_MIN_FRAG_SIZE            1024
--#define       EXT2_MAX_FRAG_SIZE              4096
--#define EXT2_MIN_FRAG_LOG_SIZE                  10
--# define EXT2_FRAG_SIZE(s)            (EXT2_MIN_FRAG_SIZE << (s)->s_log_frag_size)
--# define EXT2_FRAGS_PER_BLOCK(s)      (EXT2_BLOCK_SIZE(s) / EXT2_FRAG_SIZE(s))
--
--/*
-- * Structure of a blocks group descriptor
-- */
--struct ext2_group_desc
--{
--      uint32_t        bg_block_bitmap;                /* Blocks bitmap block */
--      uint32_t        bg_inode_bitmap;                /* Inodes bitmap block */
--      uint32_t        bg_inode_table;         /* Inodes table block */
--      uint16_t        bg_free_blocks_count;   /* Free blocks count */
--      uint16_t        bg_free_inodes_count;   /* Free inodes count */
--      uint16_t        bg_used_dirs_count;     /* Directories count */
--      uint16_t        bg_pad;
--      uint32_t        bg_reserved[3];
--};
--
--/*
-- * Macro-instructions used to manage group descriptors
-- */
--# define EXT2_BLOCKS_PER_GROUP(s)     ((s)->s_blocks_per_group)
--# define EXT2_DESC_PER_BLOCK(s)               (EXT2_BLOCK_SIZE(s) / sizeof (struct ext2_group_desc))
--# define EXT2_INODES_PER_GROUP(s)     ((s)->s_inodes_per_group)
--
--/*
-- * Constants relative to the data blocks
-- */
--#define       EXT2_NDIR_BLOCKS                12
--#define       EXT2_IND_BLOCK                  EXT2_NDIR_BLOCKS
--#define       EXT2_DIND_BLOCK                 (EXT2_IND_BLOCK + 1)
--#define       EXT2_TIND_BLOCK                 (EXT2_DIND_BLOCK + 1)
--#define       EXT2_N_BLOCKS                   (EXT2_TIND_BLOCK + 1)
--
--/*
-- * Inode flags (GETFLAGS/SETFLAGS)
-- */
--#define       EXT2_SECRM_FL                   FS_SECRM_FL     /* Secure deletion */
--#define       EXT2_UNRM_FL                    FS_UNRM_FL      /* Undelete */
--#define       EXT2_COMPR_FL                   FS_COMPR_FL     /* Compress file */
--#define EXT2_SYNC_FL                  FS_SYNC_FL      /* Synchronous updates */
--#define EXT2_IMMUTABLE_FL             FS_IMMUTABLE_FL /* Immutable file */
--#define EXT2_APPEND_FL                        FS_APPEND_FL    /* writes to file may only append */
--#define EXT2_NODUMP_FL                        FS_NODUMP_FL    /* do not dump file */
--#define EXT2_NOATIME_FL                       FS_NOATIME_FL   /* do not update atime */
--/* Reserved for compression usage... */
--#define EXT2_DIRTY_FL                 FS_DIRTY_FL
--#define EXT2_COMPRBLK_FL              FS_COMPRBLK_FL  /* One or more compressed clusters */
--#define EXT2_NOCOMP_FL                        FS_NOCOMP_FL    /* Don't compress */
--#define EXT2_ECOMPR_FL                        FS_ECOMPR_FL    /* Compression error */
--/* End compression flags --- maybe not all used */
--#define EXT2_BTREE_FL                 FS_BTREE_FL     /* btree format dir */
--#define EXT2_INDEX_FL                 FS_INDEX_FL     /* hash-indexed directory */
--#define EXT2_IMAGIC_FL                        FS_IMAGIC_FL    /* AFS directory */
--#define EXT2_JOURNAL_DATA_FL          FS_JOURNAL_DATA_FL /* Reserved for ext3 */
--#define EXT2_NOTAIL_FL                        FS_NOTAIL_FL    /* file tail should not be merged */
--#define EXT2_DIRSYNC_FL                       FS_DIRSYNC_FL   /* dirsync behaviour (directories only) */
--#define EXT2_TOPDIR_FL                        FS_TOPDIR_FL    /* Top of directory hierarchies*/
--#define EXT2_RESERVED_FL              FS_RESERVED_FL  /* reserved for ext2 lib */
--
--#define EXT2_FL_USER_VISIBLE          FS_FL_USER_VISIBLE      /* User visible flags */
--#define EXT2_FL_USER_MODIFIABLE               FS_FL_USER_MODIFIABLE   /* User modifiable flags */
--
--/* Flags that should be inherited by new inodes from their parent. */
--#define EXT2_FL_INHERITED (EXT2_SECRM_FL | EXT2_UNRM_FL | EXT2_COMPR_FL |\
--                         EXT2_SYNC_FL | EXT2_IMMUTABLE_FL | EXT2_APPEND_FL |\
--                         EXT2_NODUMP_FL | EXT2_NOATIME_FL | EXT2_COMPRBLK_FL|\
--                         EXT2_NOCOMP_FL | EXT2_JOURNAL_DATA_FL |\
--                         EXT2_NOTAIL_FL | EXT2_DIRSYNC_FL)
--
--/* Flags that are appropriate for regular files (all but dir-specific ones). */
--#define EXT2_REG_FLMASK (~(EXT2_DIRSYNC_FL | EXT2_TOPDIR_FL))
--
--/* Flags that are appropriate for non-directories/regular files. */
--#define EXT2_OTHER_FLMASK (EXT2_NODUMP_FL | EXT2_NOATIME_FL)
--
--/* Mask out flags that are inappropriate for the given type of inode. */
--static inline uint32_t ext2_mask_flags(mode_t mode, uint32_t flags)
--{
--      if (S_ISDIR(mode))
--              return flags;
--      else if (S_ISREG(mode))
--              return flags & EXT2_REG_FLMASK;
--      else
--              return flags & EXT2_OTHER_FLMASK;
--}
--
--/*
-- * ioctl commands
-- */
--#define       EXT2_IOC_GETFLAGS               FS_IOC_GETFLAGS
--#define       EXT2_IOC_SETFLAGS               FS_IOC_SETFLAGS
--#define       EXT2_IOC_GETVERSION             FS_IOC_GETVERSION
--#define       EXT2_IOC_SETVERSION             FS_IOC_SETVERSION
--#define       EXT2_IOC_GETRSVSZ               _IOR('f', 5, long)
--#define       EXT2_IOC_SETRSVSZ               _IOW('f', 6, long)
--
--/*
-- * ioctl commands in 32 bit emulation
-- */
--#define EXT2_IOC32_GETFLAGS           FS_IOC32_GETFLAGS
--#define EXT2_IOC32_SETFLAGS           FS_IOC32_SETFLAGS
--#define EXT2_IOC32_GETVERSION         FS_IOC32_GETVERSION
--#define EXT2_IOC32_SETVERSION         FS_IOC32_SETVERSION
--
--/*
-- * Structure of an inode on the disk
-- */
--struct ext2_inode {
--      uint16_t        i_mode;         /* File mode */
--      uint16_t        i_uid;          /* Low 16 bits of Owner Uid */
--      uint32_t        i_size;         /* Size in bytes */
--      uint32_t        i_atime;        /* Access time */
--      uint32_t        i_ctime;        /* Creation time */
--      uint32_t        i_mtime;        /* Modification time */
--      uint32_t        i_dtime;        /* Deletion Time */
--      uint16_t        i_gid;          /* Low 16 bits of Group Id */
--      uint16_t        i_links_count;  /* Links count */
--      uint32_t        i_blocks;       /* Blocks count */
--      uint32_t        i_flags;        /* File flags */
--      union {
--              struct {
--                      uint32_t  l_i_reserved1;
--              } linux1;
--              struct {
--                      uint32_t  h_i_translator;
--              } hurd1;
--              struct {
--                      uint32_t  m_i_reserved1;
--              } masix1;
--      } osd1;                         /* OS dependent 1 */
--      uint32_t        i_block[EXT2_N_BLOCKS];/* Pointers to blocks */
--      uint32_t        i_generation;   /* File version (for NFS) */
--      uint32_t        i_file_acl;     /* File ACL */
--      uint32_t        i_dir_acl;      /* Directory ACL */
--      uint32_t        i_faddr;        /* Fragment address */
--      union {
--              struct {
--                      uint8_t l_i_frag;       /* Fragment number */
--                      uint8_t l_i_fsize;      /* Fragment size */
--                      uint16_t        i_pad1;
--                      uint16_t        l_i_uid_high;   /* these 2 fields    */
--                      uint16_t        l_i_gid_high;   /* were reserved2[0] */
--                      uint32_t        l_i_reserved2;
--              } linux2;
--              struct {
--                      uint8_t h_i_frag;       /* Fragment number */
--                      uint8_t h_i_fsize;      /* Fragment size */
--                      uint16_t        h_i_mode_high;
--                      uint16_t        h_i_uid_high;
--                      uint16_t        h_i_gid_high;
--                      uint32_t        h_i_author;
--              } hurd2;
--              struct {
--                      uint8_t m_i_frag;       /* Fragment number */
--                      uint8_t m_i_fsize;      /* Fragment size */
--                      uint16_t        m_pad1;
--                      uint32_t        m_i_reserved2[2];
--              } masix2;
--      } osd2;                         /* OS dependent 2 */
--};
--
--#define i_size_high   i_dir_acl
--
--#if defined(__KERNEL__) || defined(__linux__)
--#define i_reserved1   osd1.linux1.l_i_reserved1
--#define i_frag                osd2.linux2.l_i_frag
--#define i_fsize               osd2.linux2.l_i_fsize
--#define i_uid_low     i_uid
--#define i_gid_low     i_gid
--#define i_uid_high    osd2.linux2.l_i_uid_high
--#define i_gid_high    osd2.linux2.l_i_gid_high
--#define i_reserved2   osd2.linux2.l_i_reserved2
--#endif
--
--#ifdef        __hurd__
--#define i_translator  osd1.hurd1.h_i_translator
--#define i_frag                osd2.hurd2.h_i_frag
--#define i_fsize               osd2.hurd2.h_i_fsize
--#define i_uid_high    osd2.hurd2.h_i_uid_high
--#define i_gid_high    osd2.hurd2.h_i_gid_high
--#define i_author      osd2.hurd2.h_i_author
--#endif
--
--#ifdef        __masix__
--#define i_reserved1   osd1.masix1.m_i_reserved1
--#define i_frag                osd2.masix2.m_i_frag
--#define i_fsize               osd2.masix2.m_i_fsize
--#define i_reserved2   osd2.masix2.m_i_reserved2
--#endif
--
--/*
-- * File system states
-- */
--#define       EXT2_VALID_FS                   0x0001  /* Unmounted cleanly */
--#define       EXT2_ERROR_FS                   0x0002  /* Errors detected */
--
--/*
-- * Mount flags
-- */
--#define EXT2_MOUNT_CHECK              0x000001  /* Do mount-time checks */
--#define EXT2_MOUNT_OLDALLOC           0x000002  /* Don't use the new Orlov allocator */
--#define EXT2_MOUNT_GRPID              0x000004  /* Create files with directory's group */
--#define EXT2_MOUNT_DEBUG              0x000008  /* Some debugging messages */
--#define EXT2_MOUNT_ERRORS_CONT                0x000010  /* Continue on errors */
--#define EXT2_MOUNT_ERRORS_RO          0x000020  /* Remount fs ro on errors */
--#define EXT2_MOUNT_ERRORS_PANIC               0x000040  /* Panic on errors */
--#define EXT2_MOUNT_MINIX_DF           0x000080  /* Mimics the Minix statfs */
--#define EXT2_MOUNT_NOBH                       0x000100  /* No buffer_heads */
--#define EXT2_MOUNT_NO_UID32           0x000200  /* Disable 32-bit UIDs */
--#define EXT2_MOUNT_XATTR_USER         0x004000  /* Extended user attributes */
--#define EXT2_MOUNT_POSIX_ACL          0x008000  /* POSIX Access Control Lists */
--#define EXT2_MOUNT_XIP                        0x010000  /* Execute in place */
--#define EXT2_MOUNT_USRQUOTA           0x020000  /* user quota */
--#define EXT2_MOUNT_GRPQUOTA           0x040000  /* group quota */
--#define EXT2_MOUNT_RESERVATION                0x080000  /* Preallocation */
--
--
--#define clear_opt(o, opt)             o &= ~EXT2_MOUNT_##opt
--#define set_opt(o, opt)                       o |= EXT2_MOUNT_##opt
--#define test_opt(sb, opt)             (EXT2_SB(sb)->s_mount_opt & \
--                                       EXT2_MOUNT_##opt)
--/*
-- * Maximal mount counts between two filesystem checks
-- */
--#define EXT2_DFL_MAX_MNT_COUNT                20      /* Allow 20 mounts */
--#define EXT2_DFL_CHECKINTERVAL                0       /* Don't use interval check */
--
--/*
-- * Behaviour when detecting errors
-- */
--#define EXT2_ERRORS_CONTINUE          1       /* Continue execution */
--#define EXT2_ERRORS_RO                        2       /* Remount fs read-only */
--#define EXT2_ERRORS_PANIC             3       /* Panic */
--#define EXT2_ERRORS_DEFAULT           EXT2_ERRORS_CONTINUE
--
--/*
-- * Structure of the super block
-- */
--struct ext2_super_block {
--      uint32_t        s_inodes_count;         /* Inodes count */
--      uint32_t        s_blocks_count;         /* Blocks count */
--      uint32_t        s_r_blocks_count;       /* Reserved blocks count */
--      uint32_t        s_free_blocks_count;    /* Free blocks count */
--      uint32_t        s_free_inodes_count;    /* Free inodes count */
--      uint32_t        s_first_data_block;     /* First Data Block */
--      uint32_t        s_log_block_size;       /* Block size */
--      uint32_t        s_log_frag_size;        /* Fragment size */
--      uint32_t        s_blocks_per_group;     /* # Blocks per group */
--      uint32_t        s_frags_per_group;      /* # Fragments per group */
--      uint32_t        s_inodes_per_group;     /* # Inodes per group */
--      uint32_t        s_mtime;                /* Mount time */
--      uint32_t        s_wtime;                /* Write time */
--      uint16_t        s_mnt_count;            /* Mount count */
--      uint16_t        s_max_mnt_count;        /* Maximal mount count */
--      uint16_t        s_magic;                /* Magic signature */
--      uint16_t        s_state;                /* File system state */
--      uint16_t        s_errors;               /* Behaviour when detecting errors */
--      uint16_t        s_minor_rev_level;      /* minor revision level */
--      uint32_t        s_lastcheck;            /* time of last check */
--      uint32_t        s_checkinterval;        /* max. time between checks */
--      uint32_t        s_creator_os;           /* OS */
--      uint32_t        s_rev_level;            /* Revision level */
--      uint16_t        s_def_resuid;           /* Default uid for reserved blocks */
--      uint16_t        s_def_resgid;           /* Default gid for reserved blocks */
--      /*
--       * These fields are for EXT2_DYNAMIC_REV superblocks only.
--       *
--       * Note: the difference between the compatible feature set and
--       * the incompatible feature set is that if there is a bit set
--       * in the incompatible feature set that the kernel doesn't
--       * know about, it should refuse to mount the filesystem.
--       *
--       * e2fsck's requirements are more strict; if it doesn't know
--       * about a feature in either the compatible or incompatible
--       * feature set, it must abort and not try to meddle with
--       * things it doesn't understand...
--       */
--      uint32_t        s_first_ino;            /* First non-reserved inode */
--      uint16_t   s_inode_size;                /* size of inode structure */
--      uint16_t        s_block_group_nr;       /* block group # of this superblock */
--      uint32_t        s_feature_compat;       /* compatible feature set */
--      uint32_t        s_feature_incompat;     /* incompatible feature set */
--      uint32_t        s_feature_ro_compat;    /* readonly-compatible feature set */
--      uint8_t s_uuid[16];             /* 128-bit uuid for volume */
--      char    s_volume_name[16];      /* volume name */
--      char    s_last_mounted[64];     /* directory where last mounted */
--      uint32_t        s_algorithm_usage_bitmap; /* For compression */
--      /*
--       * Performance hints.  Directory preallocation should only
--       * happen if the EXT2_COMPAT_PREALLOC flag is on.
--       */
--      uint8_t s_prealloc_blocks;      /* Nr of blocks to try to preallocate*/
--      uint8_t s_prealloc_dir_blocks;  /* Nr to preallocate for dirs */
--      uint16_t        s_padding1;
--      /*
--       * Journaling support valid if EXT3_FEATURE_COMPAT_HAS_JOURNAL set.
--       */
--      uint8_t s_journal_uuid[16];     /* uuid of journal superblock */
--      uint32_t        s_journal_inum;         /* inode number of journal file */
--      uint32_t        s_journal_dev;          /* device number of journal file */
--      uint32_t        s_last_orphan;          /* start of list of inodes to delete */
--      uint32_t        s_hash_seed[4];         /* HTREE hash seed */
--      uint8_t s_def_hash_version;     /* Default hash version to use */
--      uint8_t s_reserved_char_pad;
--      uint16_t        s_reserved_word_pad;
--      uint32_t        s_default_mount_opts;
--      uint32_t        s_first_meta_bg;        /* First metablock block group */
--      uint32_t        s_reserved[190];        /* Padding to the end of the block */
--};
--
--/*
-- * Codes for operating systems
-- */
--#define EXT2_OS_LINUX         0
--#define EXT2_OS_HURD          1
--#define EXT2_OS_MASIX         2
--#define EXT2_OS_FREEBSD               3
--#define EXT2_OS_LITES         4
--
--/*
-- * Revision levels
-- */
--#define EXT2_GOOD_OLD_REV     0       /* The good old (original) format */
--#define EXT2_DYNAMIC_REV      1       /* V2 format w/ dynamic inode sizes */
--
--#define EXT2_CURRENT_REV      EXT2_GOOD_OLD_REV
--#define EXT2_MAX_SUPP_REV     EXT2_DYNAMIC_REV
--
--#define EXT2_GOOD_OLD_INODE_SIZE 128
--
--/*
-- * Feature set definitions
-- */
--
--#define EXT2_HAS_COMPAT_FEATURE(sb,mask)                      \
--      ( EXT2_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask) )
--#define EXT2_HAS_RO_COMPAT_FEATURE(sb,mask)                   \
--      ( EXT2_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask) )
--#define EXT2_HAS_INCOMPAT_FEATURE(sb,mask)                    \
--      ( EXT2_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask) )
--#define EXT2_SET_COMPAT_FEATURE(sb,mask)                      \
--      EXT2_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
--#define EXT2_SET_RO_COMPAT_FEATURE(sb,mask)                   \
--      EXT2_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
--#define EXT2_SET_INCOMPAT_FEATURE(sb,mask)                    \
--      EXT2_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
--#define EXT2_CLEAR_COMPAT_FEATURE(sb,mask)                    \
--      EXT2_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
--#define EXT2_CLEAR_RO_COMPAT_FEATURE(sb,mask)                 \
--      EXT2_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
--#define EXT2_CLEAR_INCOMPAT_FEATURE(sb,mask)                  \
--      EXT2_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
--
--#define EXT2_FEATURE_COMPAT_DIR_PREALLOC      0x0001
--#define EXT2_FEATURE_COMPAT_IMAGIC_INODES     0x0002
--#define EXT3_FEATURE_COMPAT_HAS_JOURNAL               0x0004
--#define EXT2_FEATURE_COMPAT_EXT_ATTR          0x0008
--#define EXT2_FEATURE_COMPAT_RESIZE_INO                0x0010
--#define EXT2_FEATURE_COMPAT_DIR_INDEX         0x0020
--#define EXT2_FEATURE_COMPAT_ANY                       0xffffffff
--
--#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER   0x0001
--#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
--#define EXT2_FEATURE_RO_COMPAT_BTREE_DIR      0x0004
--#define EXT2_FEATURE_RO_COMPAT_ANY            0xffffffff
--
--#define EXT2_FEATURE_INCOMPAT_COMPRESSION     0x0001
--#define EXT2_FEATURE_INCOMPAT_FILETYPE                0x0002
--#define EXT3_FEATURE_INCOMPAT_RECOVER         0x0004
--#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV     0x0008
--#define EXT2_FEATURE_INCOMPAT_META_BG         0x0010
--#define EXT2_FEATURE_INCOMPAT_ANY             0xffffffff
--
--#define EXT2_FEATURE_COMPAT_SUPP      EXT2_FEATURE_COMPAT_EXT_ATTR
--#define EXT2_FEATURE_INCOMPAT_SUPP    (EXT2_FEATURE_INCOMPAT_FILETYPE| \
--                                       EXT2_FEATURE_INCOMPAT_META_BG)
--#define EXT2_FEATURE_RO_COMPAT_SUPP   (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \
--                                       EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
--                                       EXT2_FEATURE_RO_COMPAT_BTREE_DIR)
--#define EXT2_FEATURE_RO_COMPAT_UNSUPPORTED    ~EXT2_FEATURE_RO_COMPAT_SUPP
--#define EXT2_FEATURE_INCOMPAT_UNSUPPORTED     ~EXT2_FEATURE_INCOMPAT_SUPP
--
--/*
-- * Default values for user and/or group using reserved blocks
-- */
--#define       EXT2_DEF_RESUID         0
--#define       EXT2_DEF_RESGID         0
--
--/*
-- * Default mount options
-- */
--#define EXT2_DEFM_DEBUG               0x0001
--#define EXT2_DEFM_BSDGROUPS   0x0002
--#define EXT2_DEFM_XATTR_USER  0x0004
--#define EXT2_DEFM_ACL         0x0008
--#define EXT2_DEFM_UID16               0x0010
--    /* Not used by ext2, but reserved for use by ext3 */
--#define EXT3_DEFM_JMODE               0x0060 
--#define EXT3_DEFM_JMODE_DATA  0x0020
--#define EXT3_DEFM_JMODE_ORDERED       0x0040
--#define EXT3_DEFM_JMODE_WBACK 0x0060
--
--/*
-- * Structure of a directory entry
-- */
--#define EXT2_NAME_LEN 255
--
--struct ext2_dir_entry {
--      uint32_t        inode;                  /* Inode number */
--      uint16_t        rec_len;                /* Directory entry length */
--      uint16_t        name_len;               /* Name length */
--      char    name[EXT2_NAME_LEN];    /* File name */
--};
--
--/*
-- * The new version of the directory entry.  Since EXT2 structures are
-- * stored in intel byte order, and the name_len field could never be
-- * bigger than 255 chars, it's safe to reclaim the extra byte for the
-- * file_type field.
-- */
--struct ext2_dir_entry_2 {
--      uint32_t        inode;                  /* Inode number */
--      uint16_t        rec_len;                /* Directory entry length */
--      uint8_t name_len;               /* Name length */
--      uint8_t file_type;
--      char    name[EXT2_NAME_LEN];    /* File name */
--};
--
--/*
-- * Ext2 directory file types.  Only the low 3 bits are used.  The
-- * other bits are reserved for now.
-- */
--enum {
--      EXT2_FT_UNKNOWN         = 0,
--      EXT2_FT_REG_FILE        = 1,
--      EXT2_FT_DIR             = 2,
--      EXT2_FT_CHRDEV          = 3,
--      EXT2_FT_BLKDEV          = 4,
--      EXT2_FT_FIFO            = 5,
--      EXT2_FT_SOCK            = 6,
--      EXT2_FT_SYMLINK         = 7,
--      EXT2_FT_MAX
--};
--
--/*
-- * EXT2_DIR_PAD defines the directory entries boundaries
-- *
-- * NOTE: It must be a multiple of 4
-- */
--#define EXT2_DIR_PAD                  4
--#define EXT2_DIR_ROUND                        (EXT2_DIR_PAD - 1)
--#define EXT2_DIR_REC_LEN(name_len)    (((name_len) + 8 + EXT2_DIR_ROUND) & \
--                                       ~EXT2_DIR_ROUND)
--#define EXT2_MAX_REC_LEN              ((1<<16)-1)
--
--#endif
-diff --git a/util-linux/mkfs_ext2.c b/util-linux/mkfs_ext2.c
-index 2d9d720..69b25c9 100644
---- a/util-linux/mkfs_ext2.c
-+++ b/util-linux/mkfs_ext2.c
-@@ -48,7 +48,7 @@
- #include "libbb.h"
- #include <linux/fs.h>
--#include "bb_linux_ext2_fs.h"
-+#include "bb_e2fs_defs.h"
- #define ENABLE_FEATURE_MKFS_EXT2_RESERVED_GDT 0
- #define ENABLE_FEATURE_MKFS_EXT2_DIR_INDEX    1
--- 
-1.7.9.5
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-ifupdown-remove-interface-from-state_list-if-iface_u.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0003-ifupdown-remove-interface-from-state_list-if-iface_u.patch
deleted file mode 100644 (file)
index 2f96179..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-From a7b406ba64b7a4d9c9610726cb72568fc9848f5d Mon Sep 17 00:00:00 2001
-From: Lauri Hintsala <lauri.hintsala@bluegiga.com>
-Date: Wed, 14 Dec 2011 16:49:58 +0200
-Subject: [PATCH 03/10] ifupdown: remove interface from state_list if iface_up
- fails
-
-Fix the issue where interface is set to the configured state even if
-configuration has failed. Add error check to state setting logic.
-
-Signed-off-by: Lauri Hintsala <lauri.hintsala@bluegiga.com>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 5946323..9c2cad2 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -1311,7 +1311,7 @@ int ifupdown_main(int argc UNUSED_PARAM, char **argv)
-                       llist_t *state_list = read_iface_state();
-                       llist_t *iface_state = find_iface_state(state_list, iface);
--                      if (cmds == iface_up) {
-+                      if (cmds == iface_up && !any_failures) {
-                               char * const newiface = xasprintf("%s=%s", iface, liface);
-                               if (iface_state == NULL) {
-                                       llist_add_to_end(&state_list, newiface);
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0004-ifupdown-support-metric-for-static-default-gw.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0004-ifupdown-support-metric-for-static-default-gw.patch
deleted file mode 100644 (file)
index d9c14aa..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-From fecb0cbff5ca703f8fc00a8e0e93f1f2e3ae942b Mon Sep 17 00:00:00 2001
-From: Natanael Copa <natanael.copa@gmail.com>
-Date: Fri, 17 Feb 2012 19:36:26 +0000
-Subject: [PATCH 04/10] ifupdown: support metric for static default gw
-
-This is useful when you have multiple ISPs with failover. It allows
-setting the priority of the static gateway and makes it possible
-to specify multiple static gateways.
-
-The ubuntu ifupdown supports it.
-
-function                                             old     new   delta
-.rodata                                           116725  116797     +72
-------------------------------------------------------------------------------
-(add/remove: 0/0 grow/shrink: 1/0 up/down: 72/0)               Total: 72 bytes
-   text    data     bss     dec     hex filename
- 953343    7313    8984  969640   ecba8 busybox_old
- 953415    7313    8984  969712   ecbf0 busybox_unstripped
-
-Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c |    8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 9c2cad2..9f49619 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -403,11 +403,11 @@ static int FAST_FUNC static_up6(struct interface_defn_t *ifd, execfn *exec)
-       result = execute("ip addr add %address%/%netmask% dev %iface%[[ label %label%]]", ifd, exec);
-       result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec);
-       /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */
--      result += execute("[[ip route add ::/0 via %gateway%]]", ifd, exec);
-+      result += execute("[[ip route add ::/0 via %gateway%]][[ prio %metric%]]", ifd, exec);
- # else
-       result = execute("ifconfig %iface%[[ media %media%]][[ hw %hwaddress%]][[ mtu %mtu%]] up", ifd, exec);
-       result += execute("ifconfig %iface% add %address%/%netmask%", ifd, exec);
--      result += execute("[[route -A inet6 add ::/0 gw %gateway%]]", ifd, exec);
-+      result += execute("[[route -A inet6 add ::/0 gw %gateway%[[ metric %metric%]]]]", ifd, exec);
- # endif
-       return ((result == 3) ? 3 : 0);
- }
-@@ -490,7 +490,7 @@ static int FAST_FUNC static_up(struct interface_defn_t *ifd, execfn *exec)
-       result = execute("ip addr add %address%/%bnmask%[[ broadcast %broadcast%]] "
-                       "dev %iface%[[ peer %pointopoint%]][[ label %label%]]", ifd, exec);
-       result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec);
--      result += execute("[[ip route add default via %gateway% dev %iface%]]", ifd, exec);
-+      result += execute("[[ip route add default via %gateway% dev %iface%[[ prio %metric%]]]]", ifd, exec);
-       return ((result == 3) ? 3 : 0);
- # else
-       /* ifconfig said to set iface up before it processes hw %hwaddress%,
-@@ -500,7 +500,7 @@ static int FAST_FUNC static_up(struct interface_defn_t *ifd, execfn *exec)
-       result += execute("ifconfig %iface% %address% netmask %netmask%"
-                               "[[ broadcast %broadcast%]][[ pointopoint %pointopoint%]] ",
-                               ifd, exec);
--      result += execute("[[route add default gw %gateway% %iface%]]", ifd, exec);
-+      result += execute("[[route add default gw %gateway%[[ metric %metric%]] %iface%]]", ifd, exec);
-       return ((result == 3) ? 3 : 0);
- # endif
- }
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0005-ifupdown-improve-compatibility-with-Debian.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0005-ifupdown-improve-compatibility-with-Debian.patch
deleted file mode 100644 (file)
index ae1f725..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-From 7ec30bf273cbdf5f0ae335684939a883182e493e Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Mon, 23 Apr 2012 22:08:39 +0200
-Subject: [PATCH 05/10] ifupdown: improve compatibility with Debian
-
-Set environment variable 'PHASE'.
-Treat post-up and pre-down as aliases for up and down.
-Uses the same logic as ifupdown.nw from ifupdown-0.6.16.
-Makes it possible to execute Debian's ifupdown script for
-wpa-supplicant.
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
-Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
----
- networking/ifupdown.c |   20 ++++++++++++--------
- 1 file changed, 12 insertions(+), 8 deletions(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 9f49619..5c3dcec 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -140,8 +140,6 @@ static const char keywords_up_down[] ALIGN1 =
-       "up\0"
-       "down\0"
-       "pre-up\0"
--      "pre-down\0"
--      "post-up\0"
-       "post-down\0"
- ;
-@@ -895,6 +893,11 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
-                               if (rest_of_line[0] == '\0')
-                                       bb_error_msg_and_die("option with empty value \"%s\"", buf);
-+                              if (strcmp(first_word, "post-up") == 0)
-+                                      first_word += 5; /* "up" */
-+                              else if (strcmp(first_word, "pre-down") == 0)
-+                                      first_word += 4; /* "down" */
-+
-                               /* If not one of "up", "down",... words... */
-                               if (index_in_strings(keywords_up_down, first_word) < 0) {
-                                       int i;
-@@ -963,7 +966,7 @@ static char *setlocalenv(const char *format, const char *name, const char *value
-       return result;
- }
--static void set_environ(struct interface_defn_t *iface, const char *mode)
-+static void set_environ(struct interface_defn_t *iface, const char *mode, const char *opt)
- {
-       int i;
-       char **pp;
-@@ -976,7 +979,7 @@ static void set_environ(struct interface_defn_t *iface, const char *mode)
-       }
-       /* note: last element will stay NULL: */
--      G.my_environ = xzalloc(sizeof(char *) * (iface->n_options + 6));
-+      G.my_environ = xzalloc(sizeof(char *) * (iface->n_options + 7));
-       pp = G.my_environ;
-       for (i = 0; i < iface->n_options; i++) {
-@@ -990,6 +993,7 @@ static void set_environ(struct interface_defn_t *iface, const char *mode)
-       *pp++ = setlocalenv("%s=%s", "ADDRFAM", iface->address_family->name);
-       *pp++ = setlocalenv("%s=%s", "METHOD", iface->method->name);
-       *pp++ = setlocalenv("%s=%s", "MODE", mode);
-+      *pp++ = setlocalenv("%s=%s", "PHASE", opt);
-       if (G.startup_PATH)
-               *pp++ = setlocalenv("%s=%s", "PATH", G.startup_PATH);
- }
-@@ -1044,21 +1048,21 @@ static int check(char *str)
- static int iface_up(struct interface_defn_t *iface)
- {
-       if (!iface->method->up(iface, check)) return -1;
--      set_environ(iface, "start");
-+      set_environ(iface, "start", "pre-up");
-       if (!execute_all(iface, "pre-up")) return 0;
-       if (!iface->method->up(iface, doit)) return 0;
-+      set_environ(iface, "start", "post-up");
-       if (!execute_all(iface, "up")) return 0;
--      if (!execute_all(iface, "post-up")) return 0;
-       return 1;
- }
- static int iface_down(struct interface_defn_t *iface)
- {
-       if (!iface->method->down(iface,check)) return -1;
--      set_environ(iface, "stop");
--      if (!execute_all(iface, "pre-down")) return 0;
-+      set_environ(iface, "stop", "pre-down");
-       if (!execute_all(iface, "down")) return 0;
-       if (!iface->method->down(iface, doit)) return 0;
-+      set_environ(iface, "stop", "post-down");
-       if (!execute_all(iface, "post-down")) return 0;
-       return 1;
- }
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0006-get_linux_version_code-don-t-fail-on-3.0-foo.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0006-get_linux_version_code-don-t-fail-on-3.0-foo.patch
deleted file mode 100644 (file)
index f061814..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From c011ab2fb52c2ee03aa9544b0d242683ee4362e1 Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Fri, 27 Apr 2012 01:40:25 +0200
-Subject: [PATCH 06/10] get_linux_version_code: don't fail on 3.0-foo
-
-Fixes segmentation fault in mount (nfs):
-
- #0 __GI_____strtol_l_internal (nptr=0x0, endptr=0x0, base=10, group=<optimized out>, loc=0x77f6f3c8) at strtol_l.c:298
- #1 __GI_strtol (nptr=<optimized out>, endptr=<optimized out>, base=<optimized out>) at strtol.c:110
- #2 get_linux_version_code () at libbb/kernel_version.c:34
- #3 find_kernel_nfs_mount_version () at util-linux/mount.c:979
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- libbb/kernel_version.c |    5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/libbb/kernel_version.c b/libbb/kernel_version.c
-index a168a1e..12f1146 100644
---- a/libbb/kernel_version.c
-+++ b/libbb/kernel_version.c
-@@ -20,7 +20,7 @@
- int FAST_FUNC get_linux_version_code(void)
- {
-       struct utsname name;
--      char *s;
-+      char *s, *t;
-       int i, r;
-       if (uname(&name) == -1) {
-@@ -31,7 +31,8 @@ int FAST_FUNC get_linux_version_code(void)
-       s = name.release;
-       r = 0;
-       for (i = 0; i < 3; i++) {
--              r = r * 256 + atoi(strtok(s, "."));
-+              t = strtok(s, ".");
-+              r = r * 256 + (t ? atoi(t) : 0);
-               s = NULL;
-       }
-       return r;
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0007-ifplugd-move-read_pid-to-libbb-pidfile.c-and-rename-.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0007-ifplugd-move-read_pid-to-libbb-pidfile.c-and-rename-.patch
deleted file mode 100644 (file)
index 742e79b..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-From 4119652f74ce6f8f370df3c80076792d509bc941 Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Mon, 14 May 2012 16:15:50 +0200
-Subject: [PATCH 07/10] ifplugd: move read_pid to libbb/pidfile.c and rename
- it to read_pidfile
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- include/libbb.h      |    2 ++
- libbb/pidfile.c      |   14 ++++++++++++++
- networking/ifplugd.c |   18 +-----------------
- 3 files changed, 17 insertions(+), 17 deletions(-)
-
-diff --git a/include/libbb.h b/include/libbb.h
-index 63d0419..e9538e7 100644
---- a/include/libbb.h
-+++ b/include/libbb.h
-@@ -1031,10 +1031,12 @@ llist_t *llist_find_str(llist_t *first, const char *str) FAST_FUNC;
- #if ENABLE_FEATURE_PIDFILE || defined(WANT_PIDFILE)
- /* True only if we created pidfile which is *file*, not /dev/null etc */
- extern smallint wrote_pidfile;
-+pid_t read_pidfile(const char *path) FAST_FUNC;
- void write_pidfile(const char *path) FAST_FUNC;
- #define remove_pidfile(path) do { if (wrote_pidfile) unlink(path); } while (0)
- #else
- enum { wrote_pidfile = 0 };
-+#define read_pidfile(path)   ((void)0)
- #define write_pidfile(path)  ((void)0)
- #define remove_pidfile(path) ((void)0)
- #endif
-diff --git a/libbb/pidfile.c b/libbb/pidfile.c
-index a48dfc3..6734a2d 100644
---- a/libbb/pidfile.c
-+++ b/libbb/pidfile.c
-@@ -13,6 +13,20 @@
- smallint wrote_pidfile;
-+pid_t FAST_FUNC read_pidfile(const char *filename)
-+{
-+      int len;
-+      char buf[128];
-+
-+      len = open_read_close(filename, buf, 127);
-+      if (len > 0) {
-+              buf[len] = '\0';
-+              /* returns ULONG_MAX on error => -1 */
-+              return bb_strtoul(buf, NULL, 10);
-+      }
-+      return 0;
-+}
-+
- void FAST_FUNC write_pidfile(const char *path)
- {
-       int pid_fd;
-diff --git a/networking/ifplugd.c b/networking/ifplugd.c
-index d8358cd..9a15576 100644
---- a/networking/ifplugd.c
-+++ b/networking/ifplugd.c
-@@ -510,22 +510,6 @@ static NOINLINE int check_existence_through_netlink(void)
-       return G.iface_exists;
- }
--#if ENABLE_FEATURE_PIDFILE
--static NOINLINE pid_t read_pid(const char *filename)
--{
--      int len;
--      char buf[128];
--
--      len = open_read_close(filename, buf, 127);
--      if (len > 0) {
--              buf[len] = '\0';
--              /* returns ULONG_MAX on error => -1 */
--              return bb_strtoul(buf, NULL, 10);
--      }
--      return 0;
--}
--#endif
--
- int ifplugd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
- int ifplugd_main(int argc UNUSED_PARAM, char **argv)
- {
-@@ -552,7 +536,7 @@ int ifplugd_main(int argc UNUSED_PARAM, char **argv)
- #if ENABLE_FEATURE_PIDFILE
-       pidfile_name = xasprintf(_PATH_VARRUN"ifplugd.%s.pid", G.iface);
--      pid_from_pidfile = read_pid(pidfile_name);
-+      pid_from_pidfile = read_pidfile(pidfile_name);
-       if (opts & FLAG_KILL) {
-               if (pid_from_pidfile > 0)
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0008-ifupdown-dhcp_down-wait-until-udhcpc-has-been-killed.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0008-ifupdown-dhcp_down-wait-until-udhcpc-has-been-killed.patch
deleted file mode 100644 (file)
index 3b43d3d..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-From 517f8da0345752d3cc5e2c99b8acd88c60355373 Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Mon, 14 May 2012 16:20:36 +0200
-Subject: [PATCH 08/10] ifupdown: dhcp_down: wait until udhcpc has been killed
-
-* Otherwise there's a race condition between ifdown and udhcpc,
-  which executes deconfig scripts in /etc/udhcpc.d.
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- networking/ifupdown.c |   23 +++++++++++++++++------
- 1 file changed, 17 insertions(+), 6 deletions(-)
-
-diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 5c3dcec..35e5035 100644
---- a/networking/ifupdown.c
-+++ b/networking/ifupdown.c
-@@ -618,18 +618,29 @@ static int FAST_FUNC dhcp_down(struct interface_defn_t *ifd, execfn *exec)
- static int FAST_FUNC dhcp_down(struct interface_defn_t *ifd, execfn *exec)
- {
-       int result;
--      result = execute(
--              "test -f /var/run/udhcpc.%iface%.pid && "
--              "kill `cat /var/run/udhcpc.%iface%.pid` 2>/dev/null",
--              ifd, exec);
-+      char *pidfile_name;
-+      pid_t pid_from_pidfile;
-+
-+      pidfile_name = xasprintf(_PATH_VARRUN "udhcpc.%s.pid", ifd->iface);
-+      pid_from_pidfile = read_pidfile(pidfile_name);
-+      result = (pid_from_pidfile > 0);
-       /* Also bring the hardware interface down since
-          killing the dhcp client alone doesn't do it.
-          This enables consecutive ifup->ifdown->ifup */
-       /* Sleep a bit, otherwise static_down tries to bring down interface too soon,
-          and it may come back up because udhcpc is still shutting down */
--      usleep(100000);
-+      if (result && kill(pid_from_pidfile, SIGTERM) == 0) {
-+              unsigned int i;
-+              for (i = 0; i < 100; i++) {
-+                      if (kill(pid_from_pidfile, 0) < 0) {
-+                              result++;
-+                              break;
-+                      }
-+                      usleep(100000);
-+              }
-+      }
-       result += static_down(ifd, exec);
--      return ((result == 3) ? 3 : 0);
-+      return ((result == 4) ? 4 : 0);
- }
- # else
- static int FAST_FUNC dhcp_down(struct interface_defn_t *ifd UNUSED_PARAM,
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0009-udhcpc-calculate-broadcast-address-if-not-given-by-s.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0009-udhcpc-calculate-broadcast-address-if-not-given-by-s.patch
deleted file mode 100644 (file)
index b623e3f..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-From 7f3d0f0e58602e8d96988736d80ba28d31338ea2 Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Mon, 14 May 2012 17:32:16 +0200
-Subject: [PATCH 09/10] udhcpc: calculate broadcast address if not given by
- server
-
-* This is more efficient than doing it in the scripts
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- networking/udhcp/common.h |    2 +-
- networking/udhcp/dhcpc.c  |   16 ++++++++++++++++
- 2 files changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/networking/udhcp/common.h b/networking/udhcp/common.h
-index ad6991c..1517498 100644
---- a/networking/udhcp/common.h
-+++ b/networking/udhcp/common.h
-@@ -122,7 +122,7 @@ enum {
- //#define DHCP_ROOT_PATH        0x11
- //#define DHCP_IP_TTL           0x17
- //#define DHCP_MTU              0x1a
--//#define DHCP_BROADCAST        0x1c
-+#define DHCP_BROADCAST          0x1c
- //#define DHCP_ROUTES           0x21
- //#define DHCP_NIS_DOMAIN       0x28
- //#define DHCP_NIS_SERVER       0x29
-diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 4d755e6..9fbd3b3 100644
---- a/networking/udhcp/dhcpc.c
-+++ b/networking/udhcp/dhcpc.c
-@@ -399,6 +399,22 @@ static char **fill_envp(struct dhcp_packet *packet)
-               }
-               i++;
-       }
-+      /* Calculate the broadcast address, if it wasn't provided
-+       * by the server, but a subnet mask of /30 or lower was given.
-+       */
-+      if (udhcp_get_option(packet, DHCP_BROADCAST) == NULL) {
-+              temp = udhcp_get_option(packet, DHCP_SUBNET);
-+              if (temp) {
-+                      uint32_t subnet;
-+                      move_from_unaligned32(subnet, temp);
-+                      if (ntohl(subnet) <= 0xfffffffc) {
-+                              uint32_t broadcast = packet->yiaddr | ~subnet;
-+                              *curr = xmalloc(sizeof("broadcast=255.255.255.255"));
-+                              sprint_nip(*curr, "broadcast=", (uint8_t *)&broadcast);
-+                              putenv(*curr++);
-+                      }
-+              }
-+      }
-       return envp;
- }
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0010-udhcpc-obtain-hostname-from-OS-by-default.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0010-udhcpc-obtain-hostname-from-OS-by-default.patch
deleted file mode 100644 (file)
index 489c735..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 2b4773b6ae48fee56c60fb4a1835672cbca78aee Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Tue, 15 Jan 2013 17:33:53 +0100
-Subject: [PATCH 10/10] udhcpc: obtain hostname from OS by default
-
-* Doesn't require the 'hostname' option in /etc/network/interfaces,
-  and thus makes udhcpc behave like other clients.
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- networking/udhcp/dhcpc.c |    7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 9fbd3b3..ec9f25d 100644
---- a/networking/udhcp/dhcpc.c
-+++ b/networking/udhcp/dhcpc.c
-@@ -1117,6 +1117,13 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
-               );
-       if (opt & (OPT_h|OPT_H))
-               client_config.hostname = alloc_dhcp_option(DHCP_HOST_NAME, str_h, 0);
-+      else {
-+              char hostname[256];     /* SUSv2: hostnames are <= 255 bytes */
-+              if (gethostname(hostname, sizeof(hostname)) == 0) {
-+                      hostname[sizeof(hostname) - 1] = '\0';
-+                      client_config.hostname = alloc_dhcp_option(DHCP_HOST_NAME, hostname, 0);
-+              }
-+      }
-       if (opt & OPT_F) {
-               /* FQDN option format: [0x51][len][flags][0][0]<fqdn> */
-               client_config.fqdn = alloc_dhcp_option(DHCP_FQDN, str_F, 3);
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0011-mount-don-t-pass-option-auto-to-kernel.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/0011-mount-don-t-pass-option-auto-to-kernel.patch
deleted file mode 100644 (file)
index b25d587..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From 7c462943dd3c283314e68e945d544dfbaaa4cb25 Mon Sep 17 00:00:00 2001
-From: Andreas Oberritter <obi@opendreambox.org>
-Date: Mon, 22 Apr 2013 10:40:36 +0200
-Subject: [PATCH 11/11] mount: don't pass option "auto" to kernel
-
-Fixes the following error if "auto" is set in fs options:
-| EXT3-fs (sda1): error: unrecognized mount option "auto" or missing value
-| EXT4-fs (sda1): Unrecognized mount option "auto" or missing value
-| XFS (sda1): unknown mount option [auto].
-
-Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
----
- util-linux/mount.c |    2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/util-linux/mount.c b/util-linux/mount.c
-index 05e532c..670935d 100644
---- a/util-linux/mount.c
-+++ b/util-linux/mount.c
-@@ -212,6 +212,7 @@ static const int32_t mount_options[] = {
-       IF_FEATURE_MOUNT_FSTAB(
-               /* "defaults" */ 0,
-               /* "quiet" 0 - do not filter out, vfat wants to see it */
-+              /* "auto" */ 0,
-               /* "noauto" */ MOUNT_NOAUTO,
-               /* "sw"     */ MOUNT_SWAP,
-               /* "swap"   */ MOUNT_SWAP,
-@@ -269,6 +270,7 @@ static const char mount_option_str[] =
-       IF_FEATURE_MOUNT_FSTAB(
-               "defaults\0"
-               // "quiet\0" - do not filter out, vfat wants to see it
-+              "auto\0"
-               "noauto\0"
-               "sw\0"
-               "swap\0"
--- 
-1.7.10.4
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/change-passwd-default-algorithm.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/change-passwd-default-algorithm.patch
deleted file mode 100644 (file)
index 43bbb8c..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/loginutils/passwd.c b/loginutils/passwd.c
-index 1cfafae..3231b23 100644
---- a/loginutils/passwd.c
-+++ b/loginutils/passwd.c
-@@ -94,7 +94,7 @@ int passwd_main(int argc UNUSED_PARAM, char **argv)
-       };
-       unsigned opt;
-       int rc;
--      const char *opt_a = "d"; /* des */
-+      const char *opt_a = "sha512"; /* sha512 */
-       const char *filename;
-       char *myname;
-       char *name;
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/defconfig b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/defconfig
deleted file mode 100644 (file)
index 25e9b3b..0000000
+++ /dev/null
@@ -1,1013 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Busybox version: 1.19.4
-# Tue Jan 29 14:06:37 2013
-#
-CONFIG_HAVE_DOT_CONFIG=y
-
-#
-# Busybox Settings
-#
-
-#
-# General Configuration
-#
-# CONFIG_DESKTOP is not set
-# CONFIG_EXTRA_COMPAT is not set
-# CONFIG_INCLUDE_SUSv2 is not set
-# CONFIG_USE_PORTABLE_CODE is not set
-CONFIG_PLATFORM_LINUX=y
-CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
-# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
-# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
-CONFIG_SHOW_USAGE=y
-CONFIG_FEATURE_VERBOSE_USAGE=y
-CONFIG_FEATURE_COMPRESS_USAGE=y
-# CONFIG_FEATURE_INSTALLER is not set
-# CONFIG_INSTALL_NO_USR is not set
-# CONFIG_LOCALE_SUPPORT is not set
-CONFIG_UNICODE_SUPPORT=y
-# CONFIG_UNICODE_USING_LOCALE is not set
-CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y
-CONFIG_SUBST_WCHAR=0
-CONFIG_LAST_SUPPORTED_WCHAR=0
-# CONFIG_UNICODE_COMBINING_WCHARS is not set
-# CONFIG_UNICODE_WIDE_WCHARS is not set
-# CONFIG_UNICODE_BIDI_SUPPORT is not set
-# CONFIG_UNICODE_NEUTRAL_TABLE is not set
-# CONFIG_UNICODE_PRESERVE_BROKEN is not set
-CONFIG_LONG_OPTS=y
-CONFIG_FEATURE_DEVPTS=y
-# CONFIG_FEATURE_CLEAN_UP is not set
-CONFIG_FEATURE_UTMP=y
-CONFIG_FEATURE_WTMP=y
-CONFIG_FEATURE_PIDFILE=y
-CONFIG_FEATURE_SUID=y
-CONFIG_FEATURE_SUID_CONFIG=y
-CONFIG_FEATURE_SUID_CONFIG_QUIET=y
-# CONFIG_SELINUX is not set
-# CONFIG_FEATURE_PREFER_APPLETS is not set
-CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
-CONFIG_FEATURE_SYSLOG=y
-CONFIG_FEATURE_HAVE_RPC=y
-
-#
-# Build Options
-#
-# CONFIG_STATIC is not set
-# CONFIG_PIE is not set
-# CONFIG_NOMMU is not set
-# CONFIG_BUILD_LIBBUSYBOX is not set
-# CONFIG_FEATURE_INDIVIDUAL is not set
-# CONFIG_FEATURE_SHARED_BUSYBOX is not set
-CONFIG_LFS=y
-CONFIG_CROSS_COMPILER_PREFIX="mipsel-oe-linux-"
-CONFIG_EXTRA_CFLAGS=" -Os -pipe -g -feliminate-unused-debug-types"
-
-#
-# Debugging Options
-#
-# CONFIG_DEBUG is not set
-# CONFIG_DEBUG_PESSIMIZE is not set
-# CONFIG_WERROR is not set
-CONFIG_NO_DEBUG_LIB=y
-# CONFIG_DMALLOC is not set
-# CONFIG_EFENCE is not set
-
-#
-# Installation Options ("make install" behavior)
-#
-CONFIG_INSTALL_APPLET_SYMLINKS=y
-# CONFIG_INSTALL_APPLET_HARDLINKS is not set
-# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
-# CONFIG_INSTALL_APPLET_DONT is not set
-# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
-# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
-# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
-CONFIG_PREFIX="./_install"
-
-#
-# Busybox Library Tuning
-#
-CONFIG_FEATURE_SYSTEMD=y
-CONFIG_FEATURE_RTMINMAX=y
-CONFIG_PASSWORD_MINLEN=6
-CONFIG_MD5_SIZE_VS_SPEED=2
-CONFIG_FEATURE_FAST_TOP=y
-# CONFIG_FEATURE_ETC_NETWORKS is not set
-CONFIG_FEATURE_USE_TERMIOS=y
-CONFIG_FEATURE_EDITING=y
-CONFIG_FEATURE_EDITING_MAX_LEN=1024
-CONFIG_FEATURE_EDITING_VI=y
-CONFIG_FEATURE_EDITING_HISTORY=63
-CONFIG_FEATURE_EDITING_SAVEHISTORY=y
-CONFIG_FEATURE_REVERSE_SEARCH=y
-CONFIG_FEATURE_TAB_COMPLETION=y
-# CONFIG_FEATURE_USERNAME_COMPLETION is not set
-CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
-CONFIG_FEATURE_EDITING_ASK_TERMINAL=y
-# CONFIG_FEATURE_NON_POSIX_CP is not set
-CONFIG_FEATURE_VERBOSE_CP_MESSAGE=y
-CONFIG_FEATURE_COPYBUF_KB=64
-CONFIG_FEATURE_SKIP_ROOTFS=y
-CONFIG_MONOTONIC_SYSCALL=y
-CONFIG_IOCTL_HEX2STR_ERROR=y
-# CONFIG_FEATURE_HWIB is not set
-
-#
-# Applets
-#
-
-#
-# Archival Utilities
-#
-CONFIG_FEATURE_SEAMLESS_XZ=y
-CONFIG_FEATURE_SEAMLESS_LZMA=y
-CONFIG_FEATURE_SEAMLESS_BZ2=y
-CONFIG_FEATURE_SEAMLESS_GZ=y
-CONFIG_FEATURE_SEAMLESS_Z=y
-CONFIG_AR=y
-# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
-# CONFIG_FEATURE_AR_CREATE is not set
-CONFIG_BUNZIP2=y
-CONFIG_BZIP2=y
-CONFIG_CPIO=y
-# CONFIG_FEATURE_CPIO_O is not set
-# CONFIG_FEATURE_CPIO_P is not set
-# CONFIG_DPKG is not set
-# CONFIG_DPKG_DEB is not set
-# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
-CONFIG_GUNZIP=y
-CONFIG_GZIP=y
-# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
-# CONFIG_LZOP is not set
-# CONFIG_LZOP_COMPR_HIGH is not set
-# CONFIG_RPM2CPIO is not set
-# CONFIG_RPM is not set
-CONFIG_TAR=y
-CONFIG_FEATURE_TAR_CREATE=y
-CONFIG_FEATURE_TAR_AUTODETECT=y
-CONFIG_FEATURE_TAR_FROM=y
-CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
-# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
-CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
-# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
-# CONFIG_FEATURE_TAR_TO_COMMAND is not set
-# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
-# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
-# CONFIG_FEATURE_TAR_SELINUX is not set
-# CONFIG_UNCOMPRESS is not set
-CONFIG_UNLZMA=y
-# CONFIG_FEATURE_LZMA_FAST is not set
-# CONFIG_LZMA is not set
-CONFIG_UNXZ=y
-# CONFIG_XZ is not set
-CONFIG_UNZIP=y
-
-#
-# Coreutils
-#
-CONFIG_BASENAME=y
-CONFIG_CAT=y
-CONFIG_DATE=y
-CONFIG_FEATURE_DATE_ISOFMT=y
-# CONFIG_FEATURE_DATE_NANO is not set
-CONFIG_FEATURE_DATE_COMPAT=y
-CONFIG_ID=y
-CONFIG_GROUPS=y
-CONFIG_TEST=y
-CONFIG_FEATURE_TEST_64=y
-CONFIG_TOUCH=y
-CONFIG_TR=y
-CONFIG_FEATURE_TR_CLASSES=y
-# CONFIG_FEATURE_TR_EQUIV is not set
-CONFIG_BASE64=y
-CONFIG_WHO=y
-CONFIG_USERS=y
-# CONFIG_CAL is not set
-# CONFIG_CATV is not set
-CONFIG_CHGRP=y
-CONFIG_CHMOD=y
-CONFIG_CHOWN=y
-# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
-CONFIG_CHROOT=y
-# CONFIG_CKSUM is not set
-# CONFIG_COMM is not set
-CONFIG_CP=y
-# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
-CONFIG_CUT=y
-CONFIG_DD=y
-CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
-CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
-CONFIG_FEATURE_DD_IBS_OBS=y
-CONFIG_DF=y
-CONFIG_FEATURE_DF_FANCY=y
-CONFIG_DIRNAME=y
-CONFIG_DOS2UNIX=y
-CONFIG_UNIX2DOS=y
-CONFIG_DU=y
-CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
-CONFIG_ECHO=y
-CONFIG_FEATURE_FANCY_ECHO=y
-CONFIG_ENV=y
-CONFIG_FEATURE_ENV_LONG_OPTIONS=y
-# CONFIG_EXPAND is not set
-# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
-CONFIG_EXPR=y
-CONFIG_EXPR_MATH_SUPPORT_64=y
-CONFIG_FALSE=y
-# CONFIG_FOLD is not set
-# CONFIG_FSYNC is not set
-CONFIG_HEAD=y
-# CONFIG_FEATURE_FANCY_HEAD is not set
-# CONFIG_HOSTID is not set
-# CONFIG_INSTALL is not set
-# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
-CONFIG_LN=y
-CONFIG_LOGNAME=y
-CONFIG_LS=y
-CONFIG_FEATURE_LS_FILETYPES=y
-CONFIG_FEATURE_LS_FOLLOWLINKS=y
-CONFIG_FEATURE_LS_RECURSIVE=y
-CONFIG_FEATURE_LS_SORTFILES=y
-CONFIG_FEATURE_LS_TIMESTAMPS=y
-CONFIG_FEATURE_LS_USERNAME=y
-CONFIG_FEATURE_LS_COLOR=y
-CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
-CONFIG_MD5SUM=y
-CONFIG_MKDIR=y
-CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
-CONFIG_MKFIFO=y
-CONFIG_MKNOD=y
-CONFIG_MV=y
-# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
-CONFIG_NICE=y
-CONFIG_NOHUP=y
-CONFIG_OD=y
-# CONFIG_PRINTENV is not set
-CONFIG_PRINTF=y
-CONFIG_PWD=y
-CONFIG_READLINK=y
-CONFIG_FEATURE_READLINK_FOLLOW=y
-CONFIG_REALPATH=y
-CONFIG_RM=y
-CONFIG_RMDIR=y
-# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
-CONFIG_SEQ=y
-CONFIG_SHA1SUM=y
-CONFIG_SHA256SUM=y
-CONFIG_SHA512SUM=y
-CONFIG_SLEEP=y
-CONFIG_FEATURE_FANCY_SLEEP=y
-CONFIG_FEATURE_FLOAT_SLEEP=y
-CONFIG_SORT=y
-CONFIG_FEATURE_SORT_BIG=y
-# CONFIG_SPLIT is not set
-# CONFIG_FEATURE_SPLIT_FANCY is not set
-# CONFIG_STAT is not set
-# CONFIG_FEATURE_STAT_FORMAT is not set
-CONFIG_STTY=y
-# CONFIG_SUM is not set
-CONFIG_SYNC=y
-# CONFIG_TAC is not set
-CONFIG_TAIL=y
-CONFIG_FEATURE_FANCY_TAIL=y
-CONFIG_TEE=y
-CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
-CONFIG_TRUE=y
-CONFIG_TTY=y
-CONFIG_UNAME=y
-# CONFIG_UNEXPAND is not set
-# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
-CONFIG_UNIQ=y
-CONFIG_USLEEP=y
-CONFIG_UUDECODE=y
-CONFIG_UUENCODE=y
-CONFIG_WC=y
-# CONFIG_FEATURE_WC_LARGE is not set
-CONFIG_WHOAMI=y
-CONFIG_YES=y
-
-#
-# Common options for cp and mv
-#
-CONFIG_FEATURE_PRESERVE_HARDLINKS=y
-
-#
-# Common options for ls, more and telnet
-#
-CONFIG_FEATURE_AUTOWIDTH=y
-
-#
-# Common options for df, du, ls
-#
-CONFIG_FEATURE_HUMAN_READABLE=y
-
-#
-# Common options for md5sum, sha1sum, sha256sum, sha512sum
-#
-CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
-
-#
-# Console Utilities
-#
-CONFIG_CHVT=y
-# CONFIG_FGCONSOLE is not set
-CONFIG_CLEAR=y
-CONFIG_DEALLOCVT=y
-CONFIG_DUMPKMAP=y
-CONFIG_KBD_MODE=y
-CONFIG_LOADFONT=y
-CONFIG_LOADKMAP=y
-CONFIG_OPENVT=y
-CONFIG_RESET=y
-# CONFIG_RESIZE is not set
-# CONFIG_FEATURE_RESIZE_PRINT is not set
-CONFIG_SETCONSOLE=y
-# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
-CONFIG_SETFONT=y
-# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
-CONFIG_DEFAULT_SETFONT_DIR=""
-CONFIG_SETKEYCODES=y
-CONFIG_SETLOGCONS=y
-CONFIG_SHOWKEY=y
-
-#
-# Common options for loadfont and setfont
-#
-# CONFIG_FEATURE_LOADFONT_PSF2 is not set
-# CONFIG_FEATURE_LOADFONT_RAW is not set
-
-#
-# Debian Utilities
-#
-CONFIG_MKTEMP=y
-# CONFIG_PIPE_PROGRESS is not set
-CONFIG_RUN_PARTS=y
-CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
-# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
-CONFIG_START_STOP_DAEMON=y
-CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
-CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
-CONFIG_WHICH=y
-
-#
-# Editors
-#
-CONFIG_PATCH=y
-CONFIG_VI=y
-CONFIG_FEATURE_VI_MAX_LEN=4096
-CONFIG_FEATURE_VI_8BIT=y
-CONFIG_FEATURE_VI_COLON=y
-CONFIG_FEATURE_VI_YANKMARK=y
-CONFIG_FEATURE_VI_SEARCH=y
-CONFIG_FEATURE_VI_REGEX_SEARCH=y
-CONFIG_FEATURE_VI_USE_SIGNALS=y
-CONFIG_FEATURE_VI_DOT_CMD=y
-CONFIG_FEATURE_VI_READONLY=y
-CONFIG_FEATURE_VI_SETOPTS=y
-CONFIG_FEATURE_VI_SET=y
-CONFIG_FEATURE_VI_WIN_RESIZE=y
-CONFIG_FEATURE_VI_ASK_TERMINAL=y
-CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
-CONFIG_AWK=y
-# CONFIG_FEATURE_AWK_LIBM is not set
-CONFIG_CMP=y
-CONFIG_DIFF=y
-# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set
-CONFIG_FEATURE_DIFF_DIR=y
-# CONFIG_ED is not set
-CONFIG_SED=y
-CONFIG_FEATURE_ALLOW_EXEC=y
-
-#
-# Finding Utilities
-#
-CONFIG_FIND=y
-CONFIG_FEATURE_FIND_PRINT0=y
-CONFIG_FEATURE_FIND_MTIME=y
-CONFIG_FEATURE_FIND_MMIN=y
-CONFIG_FEATURE_FIND_PERM=y
-CONFIG_FEATURE_FIND_TYPE=y
-CONFIG_FEATURE_FIND_XDEV=y
-CONFIG_FEATURE_FIND_MAXDEPTH=y
-CONFIG_FEATURE_FIND_NEWER=y
-CONFIG_FEATURE_FIND_INUM=y
-CONFIG_FEATURE_FIND_EXEC=y
-CONFIG_FEATURE_FIND_USER=y
-CONFIG_FEATURE_FIND_GROUP=y
-CONFIG_FEATURE_FIND_NOT=y
-CONFIG_FEATURE_FIND_DEPTH=y
-CONFIG_FEATURE_FIND_PAREN=y
-CONFIG_FEATURE_FIND_SIZE=y
-CONFIG_FEATURE_FIND_PRUNE=y
-CONFIG_FEATURE_FIND_DELETE=y
-CONFIG_FEATURE_FIND_PATH=y
-CONFIG_FEATURE_FIND_REGEX=y
-# CONFIG_FEATURE_FIND_CONTEXT is not set
-CONFIG_FEATURE_FIND_LINKS=y
-CONFIG_GREP=y
-CONFIG_FEATURE_GREP_EGREP_ALIAS=y
-CONFIG_FEATURE_GREP_FGREP_ALIAS=y
-CONFIG_FEATURE_GREP_CONTEXT=y
-CONFIG_XARGS=y
-CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
-CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
-CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
-CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
-
-#
-# Init Utilities
-#
-# CONFIG_BOOTCHARTD is not set
-# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
-# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
-# CONFIG_HALT is not set
-# CONFIG_FEATURE_CALL_TELINIT is not set
-CONFIG_TELINIT_PATH=""
-# CONFIG_INIT is not set
-# CONFIG_FEATURE_USE_INITTAB is not set
-# CONFIG_FEATURE_KILL_REMOVED is not set
-CONFIG_FEATURE_KILL_DELAY=0
-# CONFIG_FEATURE_INIT_SCTTY is not set
-# CONFIG_FEATURE_INIT_SYSLOG is not set
-# CONFIG_FEATURE_EXTRA_QUIET is not set
-# CONFIG_FEATURE_INIT_COREDUMPS is not set
-# CONFIG_FEATURE_INITRD is not set
-CONFIG_INIT_TERMINAL_TYPE=""
-# CONFIG_MESG is not set
-# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set
-
-#
-# Login/Password Management Utilities
-#
-# CONFIG_ADD_SHELL is not set
-# CONFIG_REMOVE_SHELL is not set
-CONFIG_FEATURE_SHADOWPASSWDS=y
-# CONFIG_USE_BB_PWD_GRP is not set
-# CONFIG_USE_BB_SHADOW is not set
-CONFIG_USE_BB_CRYPT=y
-CONFIG_USE_BB_CRYPT_SHA=y
-# CONFIG_ADDUSER is not set
-# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
-# CONFIG_FEATURE_CHECK_NAMES is not set
-CONFIG_FIRST_SYSTEM_ID=0
-CONFIG_LAST_SYSTEM_ID=0
-# CONFIG_ADDGROUP is not set
-# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
-# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
-# CONFIG_DELUSER is not set
-# CONFIG_DELGROUP is not set
-# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
-CONFIG_GETTY=y
-CONFIG_LOGIN=y
-# CONFIG_PAM is not set
-CONFIG_LOGIN_SCRIPTS=y
-CONFIG_FEATURE_NOLOGIN=y
-CONFIG_FEATURE_SECURETTY=y
-CONFIG_PASSWD=y
-CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
-# CONFIG_CRYPTPW is not set
-# CONFIG_CHPASSWD is not set
-# CONFIG_SU is not set
-# CONFIG_FEATURE_SU_SYSLOG is not set
-# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
-CONFIG_SULOGIN=y
-# CONFIG_VLOCK is not set
-
-#
-# Linux Ext2 FS Progs
-#
-CONFIG_CHATTR=y
-# CONFIG_FSCK is not set
-CONFIG_LSATTR=y
-CONFIG_TUNE2FS=y
-
-#
-# Linux Module Utilities
-#
-CONFIG_MODINFO=y
-# CONFIG_MODPROBE_SMALL is not set
-# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
-# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
-CONFIG_INSMOD=y
-CONFIG_RMMOD=y
-CONFIG_LSMOD=y
-CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
-CONFIG_MODPROBE=y
-CONFIG_FEATURE_MODPROBE_BLACKLIST=y
-# CONFIG_DEPMOD is not set
-
-#
-# Options common to multiple modutils
-#
-# CONFIG_FEATURE_2_4_MODULES is not set
-# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
-# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
-# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
-# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
-# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
-# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
-CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
-CONFIG_FEATURE_MODUTILS_ALIAS=y
-CONFIG_FEATURE_MODUTILS_SYMBOLS=y
-CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
-CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
-
-#
-# Linux System Utilities
-#
-# CONFIG_BLOCKDEV is not set
-# CONFIG_REV is not set
-# CONFIG_ACPID is not set
-# CONFIG_FEATURE_ACPID_COMPAT is not set
-# CONFIG_BLKID is not set
-# CONFIG_FEATURE_BLKID_TYPE is not set
-CONFIG_DMESG=y
-CONFIG_FEATURE_DMESG_PRETTY=y
-CONFIG_FBSET=y
-CONFIG_FEATURE_FBSET_FANCY=y
-CONFIG_FEATURE_FBSET_READMODE=y
-# CONFIG_FDFLUSH is not set
-# CONFIG_FDFORMAT is not set
-CONFIG_FDISK=y
-# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
-CONFIG_FEATURE_FDISK_WRITABLE=y
-# CONFIG_FEATURE_AIX_LABEL is not set
-# CONFIG_FEATURE_SGI_LABEL is not set
-# CONFIG_FEATURE_SUN_LABEL is not set
-# CONFIG_FEATURE_OSF_LABEL is not set
-CONFIG_FEATURE_GPT_LABEL=y
-CONFIG_FEATURE_FDISK_ADVANCED=y
-CONFIG_FINDFS=y
-CONFIG_FLOCK=y
-# CONFIG_FREERAMDISK is not set
-# CONFIG_FSCK_MINIX is not set
-# CONFIG_MKFS_EXT2 is not set
-# CONFIG_MKFS_MINIX is not set
-# CONFIG_FEATURE_MINIX2 is not set
-# CONFIG_MKFS_REISER is not set
-CONFIG_MKFS_VFAT=y
-CONFIG_GETOPT=y
-CONFIG_FEATURE_GETOPT_LONG=y
-CONFIG_HEXDUMP=y
-# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
-CONFIG_HD=y
-# CONFIG_HWCLOCK is not set
-# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set
-# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
-# CONFIG_IPCRM is not set
-# CONFIG_IPCS is not set
-CONFIG_LOSETUP=y
-CONFIG_LSPCI=y
-CONFIG_LSUSB=y
-# CONFIG_MDEV is not set
-# CONFIG_FEATURE_MDEV_CONF is not set
-# CONFIG_FEATURE_MDEV_RENAME is not set
-# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
-# CONFIG_FEATURE_MDEV_EXEC is not set
-# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
-CONFIG_MKSWAP=y
-CONFIG_FEATURE_MKSWAP_UUID=y
-CONFIG_MORE=y
-CONFIG_MOUNT=y
-# CONFIG_FEATURE_MOUNT_FAKE is not set
-# CONFIG_FEATURE_MOUNT_VERBOSE is not set
-CONFIG_FEATURE_MOUNT_HELPERS=y
-CONFIG_FEATURE_MOUNT_LABEL=y
-CONFIG_FEATURE_MOUNT_NFS=y
-CONFIG_FEATURE_MOUNT_CIFS=y
-CONFIG_FEATURE_MOUNT_FLAGS=y
-CONFIG_FEATURE_MOUNT_FSTAB=y
-# CONFIG_PIVOT_ROOT is not set
-CONFIG_RDATE=y
-CONFIG_RDEV=y
-CONFIG_READPROFILE=y
-# CONFIG_RTCWAKE is not set
-# CONFIG_SCRIPT is not set
-# CONFIG_SCRIPTREPLAY is not set
-# CONFIG_SETARCH is not set
-CONFIG_SWAPONOFF=y
-# CONFIG_FEATURE_SWAPON_PRI is not set
-CONFIG_SWITCH_ROOT=y
-CONFIG_UMOUNT=y
-CONFIG_FEATURE_UMOUNT_ALL=y
-
-#
-# Common options for mount/umount
-#
-CONFIG_FEATURE_MOUNT_LOOP=y
-CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
-# CONFIG_FEATURE_MTAB_SUPPORT is not set
-CONFIG_VOLUMEID=y
-
-#
-# Filesystem/Volume identification
-#
-CONFIG_FEATURE_VOLUMEID_EXT=y
-CONFIG_FEATURE_VOLUMEID_BTRFS=y
-CONFIG_FEATURE_VOLUMEID_REISERFS=y
-CONFIG_FEATURE_VOLUMEID_FAT=y
-CONFIG_FEATURE_VOLUMEID_HFS=y
-CONFIG_FEATURE_VOLUMEID_JFS=y
-CONFIG_FEATURE_VOLUMEID_XFS=y
-CONFIG_FEATURE_VOLUMEID_NTFS=y
-CONFIG_FEATURE_VOLUMEID_ISO9660=y
-CONFIG_FEATURE_VOLUMEID_UDF=y
-CONFIG_FEATURE_VOLUMEID_LUKS=y
-CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
-CONFIG_FEATURE_VOLUMEID_CRAMFS=y
-CONFIG_FEATURE_VOLUMEID_ROMFS=y
-CONFIG_FEATURE_VOLUMEID_SYSV=y
-CONFIG_FEATURE_VOLUMEID_OCFS2=y
-CONFIG_FEATURE_VOLUMEID_LINUXRAID=y
-
-#
-# Miscellaneous Utilities
-#
-# CONFIG_CONSPY is not set
-CONFIG_LESS=y
-CONFIG_FEATURE_LESS_MAXLINES=9999999
-CONFIG_FEATURE_LESS_BRACKETS=y
-CONFIG_FEATURE_LESS_FLAGS=y
-# CONFIG_FEATURE_LESS_MARKS is not set
-CONFIG_FEATURE_LESS_REGEXP=y
-CONFIG_FEATURE_LESS_WINCH=y
-CONFIG_FEATURE_LESS_ASK_TERMINAL=y
-# CONFIG_FEATURE_LESS_DASHCMD is not set
-# CONFIG_FEATURE_LESS_LINENUMS is not set
-# CONFIG_NANDWRITE is not set
-# CONFIG_NANDDUMP is not set
-CONFIG_SETSERIAL=y
-# CONFIG_UBIATTACH is not set
-# CONFIG_UBIDETACH is not set
-# CONFIG_UBIMKVOL is not set
-# CONFIG_UBIRMVOL is not set
-# CONFIG_UBIRSVOL is not set
-# CONFIG_UBIUPDATEVOL is not set
-# CONFIG_ADJTIMEX is not set
-CONFIG_BBCONFIG=y
-CONFIG_FEATURE_COMPRESS_BBCONFIG=y
-# CONFIG_BEEP is not set
-CONFIG_FEATURE_BEEP_FREQ=0
-CONFIG_FEATURE_BEEP_LENGTH_MS=0
-# CONFIG_CHAT is not set
-# CONFIG_FEATURE_CHAT_NOFAIL is not set
-# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
-# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
-# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
-# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
-# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
-# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
-CONFIG_CHRT=y
-CONFIG_CROND=y
-# CONFIG_FEATURE_CROND_D is not set
-# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
-CONFIG_FEATURE_CROND_DIR="/etc/cron"
-CONFIG_CRONTAB=y
-CONFIG_DC=y
-# CONFIG_FEATURE_DC_LIBM is not set
-# CONFIG_DEVFSD is not set
-# CONFIG_DEVFSD_MODLOAD is not set
-# CONFIG_DEVFSD_FG_NP is not set
-# CONFIG_DEVFSD_VERBOSE is not set
-# CONFIG_FEATURE_DEVFS is not set
-CONFIG_DEVMEM=y
-CONFIG_EJECT=y
-CONFIG_FEATURE_EJECT_SCSI=y
-CONFIG_FBSPLASH=y
-# CONFIG_FLASHCP is not set
-# CONFIG_FLASH_LOCK is not set
-# CONFIG_FLASH_UNLOCK is not set
-# CONFIG_FLASH_ERASEALL is not set
-CONFIG_IONICE=y
-CONFIG_INOTIFYD=y
-# CONFIG_LAST is not set
-# CONFIG_FEATURE_LAST_SMALL is not set
-# CONFIG_FEATURE_LAST_FANCY is not set
-# CONFIG_HDPARM is not set
-# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
-# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
-# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
-# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
-# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
-# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
-# CONFIG_MAKEDEVS is not set
-# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
-# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
-# CONFIG_MAN is not set
-CONFIG_MICROCOM=y
-# CONFIG_MOUNTPOINT is not set
-# CONFIG_MT is not set
-# CONFIG_RAIDAUTORUN is not set
-CONFIG_READAHEAD=y
-# CONFIG_RFKILL is not set
-# CONFIG_RUNLEVEL is not set
-# CONFIG_RX is not set
-CONFIG_SETSID=y
-CONFIG_STRINGS=y
-CONFIG_TASKSET=y
-CONFIG_FEATURE_TASKSET_FANCY=y
-CONFIG_TIME=y
-CONFIG_TIMEOUT=y
-# CONFIG_TTYSIZE is not set
-CONFIG_VOLNAME=y
-# CONFIG_WALL is not set
-# CONFIG_WATCHDOG is not set
-
-#
-# Networking Utilities
-#
-CONFIG_NAMEIF=y
-CONFIG_FEATURE_NAMEIF_EXTENDED=y
-CONFIG_NBDCLIENT=y
-CONFIG_NC=y
-CONFIG_NC_SERVER=y
-CONFIG_NC_EXTRA=y
-# CONFIG_NC_110_COMPAT is not set
-CONFIG_PING=y
-CONFIG_PING6=y
-CONFIG_FEATURE_FANCY_PING=y
-CONFIG_WHOIS=y
-CONFIG_FEATURE_IPV6=y
-# CONFIG_FEATURE_UNIX_LOCAL is not set
-CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
-# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
-CONFIG_ARP=y
-# CONFIG_ARPING is not set
-CONFIG_BRCTL=y
-CONFIG_FEATURE_BRCTL_FANCY=y
-CONFIG_FEATURE_BRCTL_SHOW=y
-# CONFIG_DNSD is not set
-CONFIG_ETHER_WAKE=y
-# CONFIG_FAKEIDENTD is not set
-# CONFIG_FTPD is not set
-# CONFIG_FEATURE_FTP_WRITE is not set
-# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set
-# CONFIG_FTPGET is not set
-# CONFIG_FTPPUT is not set
-# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
-CONFIG_HOSTNAME=y
-# CONFIG_HTTPD is not set
-# CONFIG_FEATURE_HTTPD_RANGES is not set
-# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set
-# CONFIG_FEATURE_HTTPD_SETUID is not set
-# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
-# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
-# CONFIG_FEATURE_HTTPD_CGI is not set
-# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
-# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
-# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set
-# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
-# CONFIG_FEATURE_HTTPD_PROXY is not set
-# CONFIG_FEATURE_HTTPD_GZIP is not set
-CONFIG_IFCONFIG=y
-CONFIG_FEATURE_IFCONFIG_STATUS=y
-# CONFIG_FEATURE_IFCONFIG_SLIP is not set
-# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
-CONFIG_FEATURE_IFCONFIG_HW=y
-# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
-# CONFIG_IFENSLAVE is not set
-# CONFIG_IFPLUGD is not set
-CONFIG_IFUPDOWN=y
-CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
-CONFIG_FEATURE_IFUPDOWN_IP=y
-CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
-# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
-CONFIG_FEATURE_IFUPDOWN_IPV4=y
-CONFIG_FEATURE_IFUPDOWN_IPV6=y
-CONFIG_FEATURE_IFUPDOWN_MAPPING=y
-# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
-CONFIG_INETD=y
-CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y
-CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y
-CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y
-CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y
-CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y
-CONFIG_FEATURE_INETD_RPC=y
-CONFIG_IP=y
-CONFIG_FEATURE_IP_ADDRESS=y
-CONFIG_FEATURE_IP_LINK=y
-CONFIG_FEATURE_IP_ROUTE=y
-CONFIG_FEATURE_IP_TUNNEL=y
-CONFIG_FEATURE_IP_RULE=y
-# CONFIG_FEATURE_IP_SHORT_FORMS is not set
-# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
-# CONFIG_IPADDR is not set
-# CONFIG_IPLINK is not set
-# CONFIG_IPROUTE is not set
-# CONFIG_IPTUNNEL is not set
-# CONFIG_IPRULE is not set
-# CONFIG_IPCALC is not set
-# CONFIG_FEATURE_IPCALC_FANCY is not set
-# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
-CONFIG_NETSTAT=y
-CONFIG_FEATURE_NETSTAT_WIDE=y
-CONFIG_FEATURE_NETSTAT_PRG=y
-CONFIG_NSLOOKUP=y
-# CONFIG_NTPD is not set
-# CONFIG_FEATURE_NTPD_SERVER is not set
-# CONFIG_PSCAN is not set
-CONFIG_ROUTE=y
-# CONFIG_SLATTACH is not set
-# CONFIG_TCPSVD is not set
-CONFIG_TELNET=y
-CONFIG_FEATURE_TELNET_TTYPE=y
-CONFIG_FEATURE_TELNET_AUTOLOGIN=y
-CONFIG_TELNETD=y
-# CONFIG_FEATURE_TELNETD_STANDALONE is not set
-# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
-CONFIG_TFTP=y
-# CONFIG_TFTPD is not set
-
-#
-# Common options for tftp/tftpd
-#
-CONFIG_FEATURE_TFTP_GET=y
-CONFIG_FEATURE_TFTP_PUT=y
-# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
-# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
-# CONFIG_TFTP_DEBUG is not set
-CONFIG_TRACEROUTE=y
-CONFIG_TRACEROUTE6=y
-CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
-# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
-CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
-CONFIG_TUNCTL=y
-CONFIG_FEATURE_TUNCTL_UG=y
-# CONFIG_UDHCPD is not set
-# CONFIG_DHCPRELAY is not set
-# CONFIG_DUMPLEASES is not set
-# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
-# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
-CONFIG_DHCPD_LEASES_FILE=""
-CONFIG_UDHCPC=y
-CONFIG_FEATURE_UDHCPC_ARPING=y
-# CONFIG_FEATURE_UDHCP_PORT is not set
-CONFIG_UDHCP_DEBUG=0
-# CONFIG_FEATURE_UDHCP_RFC3397 is not set
-CONFIG_FEATURE_UDHCP_8021Q=y
-CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
-CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
-CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -b -T3 -A10"
-# CONFIG_UDPSVD is not set
-CONFIG_VCONFIG=y
-CONFIG_WGET=y
-CONFIG_FEATURE_WGET_STATUSBAR=y
-CONFIG_FEATURE_WGET_AUTHENTICATION=y
-CONFIG_FEATURE_WGET_LONG_OPTIONS=y
-CONFIG_FEATURE_WGET_TIMEOUT=y
-# CONFIG_ZCIP is not set
-
-#
-# Print Utilities
-#
-# CONFIG_LPD is not set
-# CONFIG_LPR is not set
-# CONFIG_LPQ is not set
-
-#
-# Mail Utilities
-#
-# CONFIG_MAKEMIME is not set
-CONFIG_FEATURE_MIME_CHARSET="us-ascii"
-# CONFIG_POPMAILDIR is not set
-# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
-# CONFIG_REFORMIME is not set
-# CONFIG_FEATURE_REFORMIME_COMPAT is not set
-CONFIG_SENDMAIL=y
-
-#
-# Process Utilities
-#
-CONFIG_IOSTAT=y
-CONFIG_MPSTAT=y
-CONFIG_NMETER=y
-# CONFIG_PMAP is not set
-CONFIG_POWERTOP=y
-# CONFIG_PSTREE is not set
-# CONFIG_PWDX is not set
-CONFIG_SMEMCAP=y
-# CONFIG_UPTIME is not set
-# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set
-# CONFIG_FREE is not set
-# CONFIG_FUSER is not set
-# CONFIG_KILL is not set
-# CONFIG_KILLALL is not set
-# CONFIG_KILLALL5 is not set
-# CONFIG_PGREP is not set
-CONFIG_PIDOF=y
-CONFIG_FEATURE_PIDOF_SINGLE=y
-CONFIG_FEATURE_PIDOF_OMIT=y
-# CONFIG_PKILL is not set
-# CONFIG_PS is not set
-# CONFIG_FEATURE_PS_WIDE is not set
-# CONFIG_FEATURE_PS_TIME is not set
-# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
-# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
-CONFIG_RENICE=y
-# CONFIG_BB_SYSCTL is not set
-# CONFIG_TOP is not set
-# CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set
-# CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS is not set
-# CONFIG_FEATURE_TOP_SMP_CPU is not set
-# CONFIG_FEATURE_TOP_DECIMALS is not set
-# CONFIG_FEATURE_TOP_SMP_PROCESS is not set
-# CONFIG_FEATURE_TOPMEM is not set
-# CONFIG_FEATURE_SHOW_THREADS is not set
-# CONFIG_WATCH is not set
-
-#
-# Runit Utilities
-#
-# CONFIG_RUNSV is not set
-# CONFIG_RUNSVDIR is not set
-# CONFIG_FEATURE_RUNSVDIR_LOG is not set
-# CONFIG_SV is not set
-CONFIG_SV_DEFAULT_SERVICE_DIR=""
-# CONFIG_SVLOGD is not set
-# CONFIG_CHPST is not set
-# CONFIG_SETUIDGID is not set
-# CONFIG_ENVUIDGID is not set
-# CONFIG_ENVDIR is not set
-# CONFIG_SOFTLIMIT is not set
-# CONFIG_CHCON is not set
-# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
-# CONFIG_GETENFORCE is not set
-# CONFIG_GETSEBOOL is not set
-# CONFIG_LOAD_POLICY is not set
-# CONFIG_MATCHPATHCON is not set
-# CONFIG_RESTORECON is not set
-# CONFIG_RUNCON is not set
-# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
-# CONFIG_SELINUXENABLED is not set
-# CONFIG_SETENFORCE is not set
-# CONFIG_SETFILES is not set
-# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
-# CONFIG_SETSEBOOL is not set
-# CONFIG_SESTATUS is not set
-
-#
-# Shells
-#
-CONFIG_ASH=y
-CONFIG_ASH_BASH_COMPAT=y
-CONFIG_ASH_IDLE_TIMEOUT=y
-CONFIG_ASH_JOB_CONTROL=y
-CONFIG_ASH_ALIAS=y
-CONFIG_ASH_GETOPTS=y
-CONFIG_ASH_BUILTIN_ECHO=y
-CONFIG_ASH_BUILTIN_PRINTF=y
-CONFIG_ASH_BUILTIN_TEST=y
-# CONFIG_ASH_CMDCMD is not set
-# CONFIG_ASH_MAIL is not set
-CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
-CONFIG_ASH_RANDOM_SUPPORT=y
-CONFIG_ASH_EXPAND_PRMT=y
-# CONFIG_CTTYHACK is not set
-# CONFIG_HUSH is not set
-# CONFIG_HUSH_BASH_COMPAT is not set
-# CONFIG_HUSH_BRACE_EXPANSION is not set
-# CONFIG_HUSH_HELP is not set
-# CONFIG_HUSH_INTERACTIVE is not set
-# CONFIG_HUSH_SAVEHISTORY is not set
-# CONFIG_HUSH_JOB is not set
-# CONFIG_HUSH_TICK is not set
-# CONFIG_HUSH_IF is not set
-# CONFIG_HUSH_LOOPS is not set
-# CONFIG_HUSH_CASE is not set
-# CONFIG_HUSH_FUNCTIONS is not set
-# CONFIG_HUSH_LOCAL is not set
-# CONFIG_HUSH_RANDOM_SUPPORT is not set
-# CONFIG_HUSH_EXPORT_N is not set
-# CONFIG_HUSH_MODE_X is not set
-# CONFIG_MSH is not set
-CONFIG_FEATURE_SH_IS_ASH=y
-# CONFIG_FEATURE_SH_IS_HUSH is not set
-# CONFIG_FEATURE_SH_IS_NONE is not set
-CONFIG_FEATURE_BASH_IS_ASH=y
-# CONFIG_FEATURE_BASH_IS_HUSH is not set
-# CONFIG_FEATURE_BASH_IS_NONE is not set
-CONFIG_SH_MATH_SUPPORT=y
-# CONFIG_SH_MATH_SUPPORT_64 is not set
-CONFIG_FEATURE_SH_EXTRA_QUIET=y
-# CONFIG_FEATURE_SH_STANDALONE is not set
-# CONFIG_FEATURE_SH_NOFORK is not set
-CONFIG_FEATURE_SH_HISTFILESIZE=y
-
-#
-# System Logging Utilities
-#
-CONFIG_SYSLOGD=y
-CONFIG_FEATURE_ROTATE_LOGFILE=y
-CONFIG_FEATURE_REMOTE_LOG=y
-CONFIG_FEATURE_SYSLOGD_DUP=y
-CONFIG_FEATURE_SYSLOGD_CFG=y
-CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
-CONFIG_FEATURE_IPC_SYSLOG=y
-CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
-CONFIG_LOGREAD=y
-CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
-CONFIG_KLOGD=y
-CONFIG_FEATURE_KLOGD_KLOGCTL=y
-CONFIG_LOGGER=y
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd
deleted file mode 100755 (executable)
index cf50bcd..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh
-#
-# start/stop inetd super server.
-
-if ! [ -x /usr/sbin/inetd ]; then
-       exit 0
-fi
-
-case "$1" in
-    start)
-       echo -n "Starting internet superserver:"
-       echo -n " inetd" ; start-stop-daemon -S -x /usr/sbin/inetd > /dev/null
-       echo "."
-       ;;
-    stop)
-       echo -n "Stopping internet superserver:"
-       echo -n " inetd" ; start-stop-daemon -K -x /usr/sbin/inetd > /dev/null
-       echo "."
-       ;;
-    restart)
-       echo -n "Restarting internet superserver:"
-       echo -n " inetd "
-       killall -HUP inetd
-       echo "."
-       ;;
-    *)
-       echo "Usage: /etc/init.d/inetd {start|stop|restart}"
-       exit 1
-       ;;
-esac
-
-exit 0
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd.conf b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/inetd.conf
deleted file mode 100644 (file)
index bafaf40..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-# /etc/inetd.conf:  see inetd(8) for further informations.
-#
-# Internet server configuration database
-#
-# If you want to disable an entry so it isn't touched during
-# package updates just comment it out with a single '#' character.
-#
-# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
-#
-#:INTERNAL: Internal services
-#echo          stream  tcp     nowait  root    internal
-#echo          dgram   udp     wait    root    internal
-#chargen       stream  tcp     nowait  root    internal
-#chargen       dgram   udp     wait    root    internal
-#discard               stream  tcp     nowait  root    internal
-#discard               dgram   udp     wait    root    internal
-#daytime               stream  tcp     nowait  root    internal
-#daytime       dgram   udp     wait    root    internal
-#time          stream  tcp     nowait  root    internal
-#time          dgram   udp     wait    root    internal
-ftp            stream  tcp     nowait  root    /usr/sbin/vsftpd        vsftpd
-telnet         stream  tcp     nowait  root    /usr/sbin/telnetd       telnetd
-8001    stream  tcp nowait      root    /usr/bin/streamproxy streamproxy
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/mount_single_uuid.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.19.4/mount_single_uuid.patch
deleted file mode 100644 (file)
index 9577c07..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: busybox-1.18.5/util-linux/mount.c
-===================================================================
---- busybox-1.18.5.orig/util-linux/mount.c
-+++ busybox-1.18.5/util-linux/mount.c
-@@ -1934,6 +1934,8 @@ int mount_main(int argc UNUSED_PARAM, ch
-               // "proc") or a full path from root
-               if (argv[0]) {
-+                      // Check for UUID= or LABEL= entries too
-+                      resolve_mount_spec(&mtcur->mnt_fsname);
-                       // Is this what we're looking for?
-                       if (strcmp(argv[0], mtcur->mnt_fsname) != 0
-                        && strcmp(storage_path, mtcur->mnt_fsname) != 0
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/0011-mount-don-t-pass-option-auto-to-kernel.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/0011-mount-don-t-pass-option-auto-to-kernel.patch
new file mode 100644 (file)
index 0000000..b25d587
--- /dev/null
@@ -0,0 +1,38 @@
+From 7c462943dd3c283314e68e945d544dfbaaa4cb25 Mon Sep 17 00:00:00 2001
+From: Andreas Oberritter <obi@opendreambox.org>
+Date: Mon, 22 Apr 2013 10:40:36 +0200
+Subject: [PATCH 11/11] mount: don't pass option "auto" to kernel
+
+Fixes the following error if "auto" is set in fs options:
+| EXT3-fs (sda1): error: unrecognized mount option "auto" or missing value
+| EXT4-fs (sda1): Unrecognized mount option "auto" or missing value
+| XFS (sda1): unknown mount option [auto].
+
+Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
+---
+ util-linux/mount.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/util-linux/mount.c b/util-linux/mount.c
+index 05e532c..670935d 100644
+--- a/util-linux/mount.c
++++ b/util-linux/mount.c
+@@ -212,6 +212,7 @@ static const int32_t mount_options[] = {
+       IF_FEATURE_MOUNT_FSTAB(
+               /* "defaults" */ 0,
+               /* "quiet" 0 - do not filter out, vfat wants to see it */
++              /* "auto" */ 0,
+               /* "noauto" */ MOUNT_NOAUTO,
+               /* "sw"     */ MOUNT_SWAP,
+               /* "swap"   */ MOUNT_SWAP,
+@@ -269,6 +270,7 @@ static const char mount_option_str[] =
+       IF_FEATURE_MOUNT_FSTAB(
+               "defaults\0"
+               // "quiet\0" - do not filter out, vfat wants to see it
++              "auto\0"
+               "noauto\0"
+               "sw\0"
+               "swap\0"
+-- 
+1.7.10.4
+
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/defconfig b/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/defconfig
new file mode 100644 (file)
index 0000000..e81bdc7
--- /dev/null
@@ -0,0 +1,1038 @@
+#
+# Automatically generated make config: don't edit
+# Busybox version: 1.22.1
+# Thu Jun 19 14:19:41 2014
+#
+CONFIG_HAVE_DOT_CONFIG=y
+
+#
+# Busybox Settings
+#
+
+#
+# General Configuration
+#
+# CONFIG_DESKTOP is not set
+# CONFIG_EXTRA_COMPAT is not set
+# CONFIG_INCLUDE_SUSv2 is not set
+# CONFIG_USE_PORTABLE_CODE is not set
+CONFIG_PLATFORM_LINUX=y
+CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
+# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
+# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
+CONFIG_SHOW_USAGE=y
+CONFIG_FEATURE_VERBOSE_USAGE=y
+CONFIG_FEATURE_COMPRESS_USAGE=y
+# CONFIG_FEATURE_INSTALLER is not set
+# CONFIG_INSTALL_NO_USR is not set
+# CONFIG_LOCALE_SUPPORT is not set
+CONFIG_UNICODE_SUPPORT=y
+# CONFIG_UNICODE_USING_LOCALE is not set
+CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y
+CONFIG_SUBST_WCHAR=0
+CONFIG_LAST_SUPPORTED_WCHAR=0
+# CONFIG_UNICODE_COMBINING_WCHARS is not set
+# CONFIG_UNICODE_WIDE_WCHARS is not set
+# CONFIG_UNICODE_BIDI_SUPPORT is not set
+# CONFIG_UNICODE_NEUTRAL_TABLE is not set
+# CONFIG_UNICODE_PRESERVE_BROKEN is not set
+CONFIG_LONG_OPTS=y
+CONFIG_FEATURE_DEVPTS=y
+# CONFIG_FEATURE_CLEAN_UP is not set
+CONFIG_FEATURE_UTMP=y
+CONFIG_FEATURE_WTMP=y
+CONFIG_FEATURE_PIDFILE=y
+CONFIG_PID_FILE_PATH="/var/run"
+CONFIG_FEATURE_SUID=y
+CONFIG_FEATURE_SUID_CONFIG=y
+CONFIG_FEATURE_SUID_CONFIG_QUIET=y
+# CONFIG_SELINUX is not set
+# CONFIG_FEATURE_PREFER_APPLETS is not set
+CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
+CONFIG_FEATURE_SYSLOG=y
+CONFIG_FEATURE_HAVE_RPC=y
+
+#
+# Build Options
+#
+# CONFIG_STATIC is not set
+# CONFIG_PIE is not set
+# CONFIG_NOMMU is not set
+# CONFIG_BUILD_LIBBUSYBOX is not set
+# CONFIG_FEATURE_INDIVIDUAL is not set
+# CONFIG_FEATURE_SHARED_BUSYBOX is not set
+CONFIG_LFS=y
+CONFIG_CROSS_COMPILER_PREFIX="mipsel-oe-linux-"
+CONFIG_SYSROOT=""
+CONFIG_EXTRA_CFLAGS=" -Os -pipe -g -feliminate-unused-debug-types"
+CONFIG_EXTRA_LDFLAGS=""
+CONFIG_EXTRA_LDLIBS=""
+
+#
+# Debugging Options
+#
+# CONFIG_DEBUG is not set
+# CONFIG_DEBUG_PESSIMIZE is not set
+# CONFIG_WERROR is not set
+CONFIG_NO_DEBUG_LIB=y
+# CONFIG_DMALLOC is not set
+# CONFIG_EFENCE is not set
+
+#
+# Installation Options ("make install" behavior)
+#
+CONFIG_INSTALL_APPLET_SYMLINKS=y
+# CONFIG_INSTALL_APPLET_HARDLINKS is not set
+# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
+# CONFIG_INSTALL_APPLET_DONT is not set
+# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
+# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
+# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
+CONFIG_PREFIX="./_install"
+
+#
+# Busybox Library Tuning
+#
+CONFIG_FEATURE_SYSTEMD=y
+CONFIG_FEATURE_RTMINMAX=y
+CONFIG_PASSWORD_MINLEN=6
+CONFIG_MD5_SMALL=1
+CONFIG_SHA3_SMALL=1
+CONFIG_FEATURE_FAST_TOP=y
+# CONFIG_FEATURE_ETC_NETWORKS is not set
+CONFIG_FEATURE_USE_TERMIOS=y
+CONFIG_FEATURE_EDITING=y
+CONFIG_FEATURE_EDITING_MAX_LEN=1024
+CONFIG_FEATURE_EDITING_VI=y
+CONFIG_FEATURE_EDITING_HISTORY=63
+CONFIG_FEATURE_EDITING_SAVEHISTORY=y
+# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
+CONFIG_FEATURE_REVERSE_SEARCH=y
+CONFIG_FEATURE_TAB_COMPLETION=y
+# CONFIG_FEATURE_USERNAME_COMPLETION is not set
+CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
+CONFIG_FEATURE_EDITING_ASK_TERMINAL=y
+# CONFIG_FEATURE_NON_POSIX_CP is not set
+CONFIG_FEATURE_VERBOSE_CP_MESSAGE=y
+CONFIG_FEATURE_COPYBUF_KB=64
+CONFIG_FEATURE_SKIP_ROOTFS=y
+CONFIG_MONOTONIC_SYSCALL=y
+CONFIG_IOCTL_HEX2STR_ERROR=y
+# CONFIG_FEATURE_HWIB is not set
+
+#
+# Applets
+#
+
+#
+# Archival Utilities
+#
+CONFIG_FEATURE_SEAMLESS_XZ=y
+CONFIG_FEATURE_SEAMLESS_LZMA=y
+CONFIG_FEATURE_SEAMLESS_BZ2=y
+CONFIG_FEATURE_SEAMLESS_GZ=y
+CONFIG_FEATURE_SEAMLESS_Z=y
+CONFIG_AR=y
+# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
+# CONFIG_FEATURE_AR_CREATE is not set
+# CONFIG_UNCOMPRESS is not set
+CONFIG_GUNZIP=y
+CONFIG_BUNZIP2=y
+CONFIG_UNLZMA=y
+# CONFIG_FEATURE_LZMA_FAST is not set
+# CONFIG_LZMA is not set
+CONFIG_UNXZ=y
+# CONFIG_XZ is not set
+CONFIG_BZIP2=y
+CONFIG_CPIO=y
+# CONFIG_FEATURE_CPIO_O is not set
+# CONFIG_FEATURE_CPIO_P is not set
+# CONFIG_DPKG is not set
+# CONFIG_DPKG_DEB is not set
+# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
+CONFIG_GZIP=y
+# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
+CONFIG_GZIP_FAST=0
+# CONFIG_LZOP is not set
+# CONFIG_LZOP_COMPR_HIGH is not set
+# CONFIG_RPM is not set
+# CONFIG_RPM2CPIO is not set
+CONFIG_TAR=y
+CONFIG_FEATURE_TAR_CREATE=y
+CONFIG_FEATURE_TAR_AUTODETECT=y
+CONFIG_FEATURE_TAR_FROM=y
+CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
+# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
+CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
+# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
+# CONFIG_FEATURE_TAR_TO_COMMAND is not set
+# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
+# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
+# CONFIG_FEATURE_TAR_SELINUX is not set
+CONFIG_UNZIP=y
+
+#
+# Coreutils
+#
+CONFIG_BASENAME=y
+CONFIG_CAT=y
+CONFIG_DATE=y
+CONFIG_FEATURE_DATE_ISOFMT=y
+# CONFIG_FEATURE_DATE_NANO is not set
+CONFIG_FEATURE_DATE_COMPAT=y
+# CONFIG_HOSTID is not set
+CONFIG_ID=y
+CONFIG_GROUPS=y
+CONFIG_TEST=y
+CONFIG_FEATURE_TEST_64=y
+CONFIG_TOUCH=y
+CONFIG_FEATURE_TOUCH_NODEREF=y
+CONFIG_FEATURE_TOUCH_SUSV3=y
+CONFIG_TR=y
+CONFIG_FEATURE_TR_CLASSES=y
+# CONFIG_FEATURE_TR_EQUIV is not set
+CONFIG_BASE64=y
+CONFIG_WHO=y
+CONFIG_USERS=y
+# CONFIG_CAL is not set
+# CONFIG_CATV is not set
+CONFIG_CHGRP=y
+CONFIG_CHMOD=y
+CONFIG_CHOWN=y
+# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
+CONFIG_CHROOT=y
+# CONFIG_CKSUM is not set
+# CONFIG_COMM is not set
+CONFIG_CP=y
+# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
+CONFIG_CUT=y
+CONFIG_DD=y
+CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
+CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
+CONFIG_FEATURE_DD_IBS_OBS=y
+CONFIG_DF=y
+CONFIG_FEATURE_DF_FANCY=y
+CONFIG_DIRNAME=y
+CONFIG_DOS2UNIX=y
+CONFIG_UNIX2DOS=y
+CONFIG_DU=y
+CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
+CONFIG_ECHO=y
+CONFIG_FEATURE_FANCY_ECHO=y
+CONFIG_ENV=y
+CONFIG_FEATURE_ENV_LONG_OPTIONS=y
+# CONFIG_EXPAND is not set
+# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
+CONFIG_EXPR=y
+CONFIG_EXPR_MATH_SUPPORT_64=y
+CONFIG_FALSE=y
+# CONFIG_FOLD is not set
+# CONFIG_FSYNC is not set
+CONFIG_HEAD=y
+# CONFIG_FEATURE_FANCY_HEAD is not set
+# CONFIG_INSTALL is not set
+# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
+CONFIG_LN=y
+CONFIG_LOGNAME=y
+CONFIG_LS=y
+CONFIG_FEATURE_LS_FILETYPES=y
+CONFIG_FEATURE_LS_FOLLOWLINKS=y
+CONFIG_FEATURE_LS_RECURSIVE=y
+CONFIG_FEATURE_LS_SORTFILES=y
+CONFIG_FEATURE_LS_TIMESTAMPS=y
+CONFIG_FEATURE_LS_USERNAME=y
+CONFIG_FEATURE_LS_COLOR=y
+CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
+CONFIG_MD5SUM=y
+CONFIG_MKDIR=y
+CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
+CONFIG_MKFIFO=y
+CONFIG_MKNOD=y
+CONFIG_MV=y
+# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
+CONFIG_NICE=y
+CONFIG_NOHUP=y
+CONFIG_OD=y
+# CONFIG_PRINTENV is not set
+CONFIG_PRINTF=y
+CONFIG_PWD=y
+CONFIG_READLINK=y
+CONFIG_FEATURE_READLINK_FOLLOW=y
+CONFIG_REALPATH=y
+CONFIG_RM=y
+CONFIG_RMDIR=y
+# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
+CONFIG_SEQ=y
+CONFIG_SHA1SUM=y
+CONFIG_SHA256SUM=y
+CONFIG_SHA512SUM=y
+CONFIG_SHA3SUM=y
+CONFIG_SLEEP=y
+CONFIG_FEATURE_FANCY_SLEEP=y
+CONFIG_FEATURE_FLOAT_SLEEP=y
+CONFIG_SORT=y
+CONFIG_FEATURE_SORT_BIG=y
+# CONFIG_SPLIT is not set
+# CONFIG_FEATURE_SPLIT_FANCY is not set
+# CONFIG_STAT is not set
+# CONFIG_FEATURE_STAT_FORMAT is not set
+CONFIG_STTY=y
+# CONFIG_SUM is not set
+CONFIG_SYNC=y
+# CONFIG_TAC is not set
+CONFIG_TAIL=y
+CONFIG_FEATURE_FANCY_TAIL=y
+CONFIG_TEE=y
+CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
+CONFIG_TRUE=y
+CONFIG_TTY=y
+CONFIG_UNAME=y
+# CONFIG_UNEXPAND is not set
+# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
+CONFIG_UNIQ=y
+CONFIG_USLEEP=y
+CONFIG_UUDECODE=y
+CONFIG_UUENCODE=y
+CONFIG_WC=y
+# CONFIG_FEATURE_WC_LARGE is not set
+CONFIG_WHOAMI=y
+CONFIG_YES=y
+
+#
+# Common options for cp and mv
+#
+CONFIG_FEATURE_PRESERVE_HARDLINKS=y
+
+#
+# Common options for ls, more and telnet
+#
+CONFIG_FEATURE_AUTOWIDTH=y
+
+#
+# Common options for df, du, ls
+#
+CONFIG_FEATURE_HUMAN_READABLE=y
+
+#
+# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum
+#
+CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
+
+#
+# Console Utilities
+#
+CONFIG_CHVT=y
+# CONFIG_FGCONSOLE is not set
+CONFIG_CLEAR=y
+CONFIG_DEALLOCVT=y
+CONFIG_DUMPKMAP=y
+CONFIG_KBD_MODE=y
+CONFIG_LOADFONT=y
+CONFIG_LOADKMAP=y
+CONFIG_OPENVT=y
+CONFIG_RESET=y
+# CONFIG_RESIZE is not set
+# CONFIG_FEATURE_RESIZE_PRINT is not set
+CONFIG_SETCONSOLE=y
+# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
+CONFIG_SETFONT=y
+# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
+CONFIG_DEFAULT_SETFONT_DIR=""
+CONFIG_SETKEYCODES=y
+CONFIG_SETLOGCONS=y
+CONFIG_SHOWKEY=y
+
+#
+# Common options for loadfont and setfont
+#
+# CONFIG_FEATURE_LOADFONT_PSF2 is not set
+# CONFIG_FEATURE_LOADFONT_RAW is not set
+
+#
+# Debian Utilities
+#
+CONFIG_MKTEMP=y
+# CONFIG_PIPE_PROGRESS is not set
+CONFIG_RUN_PARTS=y
+CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
+# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
+CONFIG_START_STOP_DAEMON=y
+CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
+CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
+CONFIG_WHICH=y
+
+#
+# Editors
+#
+CONFIG_AWK=y
+# CONFIG_FEATURE_AWK_LIBM is not set
+CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y
+CONFIG_CMP=y
+CONFIG_DIFF=y
+# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set
+CONFIG_FEATURE_DIFF_DIR=y
+# CONFIG_ED is not set
+CONFIG_PATCH=y
+CONFIG_SED=y
+CONFIG_VI=y
+CONFIG_FEATURE_VI_MAX_LEN=4096
+CONFIG_FEATURE_VI_8BIT=y
+CONFIG_FEATURE_VI_COLON=y
+CONFIG_FEATURE_VI_YANKMARK=y
+CONFIG_FEATURE_VI_SEARCH=y
+CONFIG_FEATURE_VI_REGEX_SEARCH=y
+CONFIG_FEATURE_VI_USE_SIGNALS=y
+CONFIG_FEATURE_VI_DOT_CMD=y
+CONFIG_FEATURE_VI_READONLY=y
+CONFIG_FEATURE_VI_SETOPTS=y
+CONFIG_FEATURE_VI_SET=y
+CONFIG_FEATURE_VI_WIN_RESIZE=y
+CONFIG_FEATURE_VI_ASK_TERMINAL=y
+CONFIG_FEATURE_ALLOW_EXEC=y
+
+#
+# Finding Utilities
+#
+CONFIG_FIND=y
+CONFIG_FEATURE_FIND_PRINT0=y
+CONFIG_FEATURE_FIND_MTIME=y
+CONFIG_FEATURE_FIND_MMIN=y
+CONFIG_FEATURE_FIND_PERM=y
+CONFIG_FEATURE_FIND_TYPE=y
+CONFIG_FEATURE_FIND_XDEV=y
+CONFIG_FEATURE_FIND_MAXDEPTH=y
+CONFIG_FEATURE_FIND_NEWER=y
+CONFIG_FEATURE_FIND_INUM=y
+CONFIG_FEATURE_FIND_EXEC=y
+CONFIG_FEATURE_FIND_USER=y
+CONFIG_FEATURE_FIND_GROUP=y
+CONFIG_FEATURE_FIND_NOT=y
+CONFIG_FEATURE_FIND_DEPTH=y
+CONFIG_FEATURE_FIND_PAREN=y
+CONFIG_FEATURE_FIND_SIZE=y
+CONFIG_FEATURE_FIND_PRUNE=y
+CONFIG_FEATURE_FIND_DELETE=y
+CONFIG_FEATURE_FIND_PATH=y
+CONFIG_FEATURE_FIND_REGEX=y
+# CONFIG_FEATURE_FIND_CONTEXT is not set
+CONFIG_FEATURE_FIND_LINKS=y
+CONFIG_GREP=y
+CONFIG_FEATURE_GREP_EGREP_ALIAS=y
+CONFIG_FEATURE_GREP_FGREP_ALIAS=y
+CONFIG_FEATURE_GREP_CONTEXT=y
+CONFIG_XARGS=y
+CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
+CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
+CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
+CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
+
+#
+# Init Utilities
+#
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
+# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
+# CONFIG_HALT is not set
+# CONFIG_FEATURE_CALL_TELINIT is not set
+CONFIG_TELINIT_PATH=""
+# CONFIG_INIT is not set
+# CONFIG_FEATURE_USE_INITTAB is not set
+# CONFIG_FEATURE_KILL_REMOVED is not set
+CONFIG_FEATURE_KILL_DELAY=0
+# CONFIG_FEATURE_INIT_SCTTY is not set
+# CONFIG_FEATURE_INIT_SYSLOG is not set
+# CONFIG_FEATURE_EXTRA_QUIET is not set
+# CONFIG_FEATURE_INIT_COREDUMPS is not set
+# CONFIG_FEATURE_INITRD is not set
+CONFIG_INIT_TERMINAL_TYPE=""
+# CONFIG_MESG is not set
+# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set
+
+#
+# Login/Password Management Utilities
+#
+# CONFIG_ADD_SHELL is not set
+# CONFIG_REMOVE_SHELL is not set
+CONFIG_FEATURE_SHADOWPASSWDS=y
+# CONFIG_USE_BB_PWD_GRP is not set
+# CONFIG_USE_BB_SHADOW is not set
+CONFIG_USE_BB_CRYPT=y
+CONFIG_USE_BB_CRYPT_SHA=y
+# CONFIG_ADDUSER is not set
+# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
+# CONFIG_FEATURE_CHECK_NAMES is not set
+CONFIG_FIRST_SYSTEM_ID=0
+CONFIG_LAST_SYSTEM_ID=0
+# CONFIG_ADDGROUP is not set
+# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
+# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
+# CONFIG_DELUSER is not set
+# CONFIG_DELGROUP is not set
+# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
+CONFIG_GETTY=y
+CONFIG_LOGIN=y
+# CONFIG_LOGIN_SESSION_AS_CHILD is not set
+# CONFIG_PAM is not set
+CONFIG_LOGIN_SCRIPTS=y
+CONFIG_FEATURE_NOLOGIN=y
+CONFIG_FEATURE_SECURETTY=y
+CONFIG_PASSWD=y
+CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
+# CONFIG_CRYPTPW is not set
+# CONFIG_CHPASSWD is not set
+CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="sha512"
+# CONFIG_SU is not set
+# CONFIG_FEATURE_SU_SYSLOG is not set
+# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
+CONFIG_SULOGIN=y
+# CONFIG_VLOCK is not set
+
+#
+# Linux Ext2 FS Progs
+#
+CONFIG_CHATTR=y
+# CONFIG_FSCK is not set
+CONFIG_LSATTR=y
+CONFIG_TUNE2FS=y
+
+#
+# Linux Module Utilities
+#
+CONFIG_MODINFO=y
+# CONFIG_MODPROBE_SMALL is not set
+# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
+# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
+CONFIG_INSMOD=y
+CONFIG_RMMOD=y
+CONFIG_LSMOD=y
+CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
+CONFIG_MODPROBE=y
+CONFIG_FEATURE_MODPROBE_BLACKLIST=y
+# CONFIG_DEPMOD is not set
+
+#
+# Options common to multiple modutils
+#
+# CONFIG_FEATURE_2_4_MODULES is not set
+# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
+# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
+# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
+# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
+CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
+CONFIG_FEATURE_MODUTILS_ALIAS=y
+CONFIG_FEATURE_MODUTILS_SYMBOLS=y
+CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
+CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
+
+#
+# Linux System Utilities
+#
+# CONFIG_BLOCKDEV is not set
+CONFIG_FSTRIM=y
+# CONFIG_MDEV is not set
+# CONFIG_FEATURE_MDEV_CONF is not set
+# CONFIG_FEATURE_MDEV_RENAME is not set
+# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
+# CONFIG_FEATURE_MDEV_EXEC is not set
+# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
+# CONFIG_REV is not set
+# CONFIG_ACPID is not set
+# CONFIG_FEATURE_ACPID_COMPAT is not set
+# CONFIG_BLKID is not set
+# CONFIG_FEATURE_BLKID_TYPE is not set
+CONFIG_DMESG=y
+CONFIG_FEATURE_DMESG_PRETTY=y
+CONFIG_FBSET=y
+CONFIG_FEATURE_FBSET_FANCY=y
+CONFIG_FEATURE_FBSET_READMODE=y
+# CONFIG_FDFLUSH is not set
+# CONFIG_FDFORMAT is not set
+CONFIG_FDISK=y
+# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
+CONFIG_FEATURE_FDISK_WRITABLE=y
+# CONFIG_FEATURE_AIX_LABEL is not set
+# CONFIG_FEATURE_SGI_LABEL is not set
+# CONFIG_FEATURE_SUN_LABEL is not set
+# CONFIG_FEATURE_OSF_LABEL is not set
+CONFIG_FEATURE_GPT_LABEL=y
+CONFIG_FEATURE_FDISK_ADVANCED=y
+CONFIG_FINDFS=y
+CONFIG_FLOCK=y
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK_MINIX is not set
+# CONFIG_MKFS_EXT2 is not set
+# CONFIG_MKFS_MINIX is not set
+# CONFIG_FEATURE_MINIX2 is not set
+# CONFIG_MKFS_REISER is not set
+CONFIG_MKFS_VFAT=y
+CONFIG_GETOPT=y
+CONFIG_FEATURE_GETOPT_LONG=y
+CONFIG_HEXDUMP=y
+# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
+CONFIG_HD=y
+# CONFIG_HWCLOCK is not set
+# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set
+# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
+# CONFIG_IPCRM is not set
+# CONFIG_IPCS is not set
+CONFIG_LOSETUP=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
+CONFIG_MKSWAP=y
+CONFIG_FEATURE_MKSWAP_UUID=y
+CONFIG_MORE=y
+CONFIG_MOUNT=y
+# CONFIG_FEATURE_MOUNT_FAKE is not set
+# CONFIG_FEATURE_MOUNT_VERBOSE is not set
+CONFIG_FEATURE_MOUNT_HELPERS=y
+CONFIG_FEATURE_MOUNT_LABEL=y
+CONFIG_FEATURE_MOUNT_NFS=y
+CONFIG_FEATURE_MOUNT_CIFS=y
+CONFIG_FEATURE_MOUNT_FLAGS=y
+CONFIG_FEATURE_MOUNT_FSTAB=y
+# CONFIG_PIVOT_ROOT is not set
+CONFIG_RDATE=y
+CONFIG_RDEV=y
+CONFIG_READPROFILE=y
+# CONFIG_RTCWAKE is not set
+# CONFIG_SCRIPT is not set
+# CONFIG_SCRIPTREPLAY is not set
+# CONFIG_SETARCH is not set
+CONFIG_SWAPONOFF=y
+# CONFIG_FEATURE_SWAPON_PRI is not set
+CONFIG_SWITCH_ROOT=y
+CONFIG_UMOUNT=y
+CONFIG_FEATURE_UMOUNT_ALL=y
+
+#
+# Common options for mount/umount
+#
+CONFIG_FEATURE_MOUNT_LOOP=y
+CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
+# CONFIG_FEATURE_MTAB_SUPPORT is not set
+CONFIG_VOLUMEID=y
+
+#
+# Filesystem/Volume identification
+#
+CONFIG_FEATURE_VOLUMEID_BTRFS=y
+CONFIG_FEATURE_VOLUMEID_CRAMFS=y
+CONFIG_FEATURE_VOLUMEID_EXFAT=y
+CONFIG_FEATURE_VOLUMEID_EXT=y
+CONFIG_FEATURE_VOLUMEID_F2FS=y
+CONFIG_FEATURE_VOLUMEID_FAT=y
+CONFIG_FEATURE_VOLUMEID_HFS=y
+CONFIG_FEATURE_VOLUMEID_ISO9660=y
+CONFIG_FEATURE_VOLUMEID_JFS=y
+CONFIG_FEATURE_VOLUMEID_LINUXRAID=y
+CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
+CONFIG_FEATURE_VOLUMEID_LUKS=y
+CONFIG_FEATURE_VOLUMEID_NILFS=y
+CONFIG_FEATURE_VOLUMEID_NTFS=y
+CONFIG_FEATURE_VOLUMEID_OCFS2=y
+CONFIG_FEATURE_VOLUMEID_REISERFS=y
+CONFIG_FEATURE_VOLUMEID_ROMFS=y
+# CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set
+CONFIG_FEATURE_VOLUMEID_SYSV=y
+CONFIG_FEATURE_VOLUMEID_UDF=y
+CONFIG_FEATURE_VOLUMEID_XFS=y
+
+#
+# Miscellaneous Utilities
+#
+# CONFIG_CONSPY is not set
+CONFIG_LESS=y
+CONFIG_FEATURE_LESS_MAXLINES=9999999
+CONFIG_FEATURE_LESS_BRACKETS=y
+CONFIG_FEATURE_LESS_FLAGS=y
+# CONFIG_FEATURE_LESS_MARKS is not set
+CONFIG_FEATURE_LESS_REGEXP=y
+CONFIG_FEATURE_LESS_WINCH=y
+CONFIG_FEATURE_LESS_ASK_TERMINAL=y
+# CONFIG_FEATURE_LESS_DASHCMD is not set
+# CONFIG_FEATURE_LESS_LINENUMS is not set
+# CONFIG_NANDWRITE is not set
+# CONFIG_NANDDUMP is not set
+# CONFIG_RFKILL is not set
+CONFIG_SETSERIAL=y
+# CONFIG_UBIATTACH is not set
+# CONFIG_UBIDETACH is not set
+# CONFIG_UBIMKVOL is not set
+# CONFIG_UBIRMVOL is not set
+# CONFIG_UBIRSVOL is not set
+# CONFIG_UBIUPDATEVOL is not set
+# CONFIG_WALL is not set
+# CONFIG_ADJTIMEX is not set
+CONFIG_BBCONFIG=y
+CONFIG_FEATURE_COMPRESS_BBCONFIG=y
+# CONFIG_BEEP is not set
+CONFIG_FEATURE_BEEP_FREQ=0
+CONFIG_FEATURE_BEEP_LENGTH_MS=0
+# CONFIG_CHAT is not set
+# CONFIG_FEATURE_CHAT_NOFAIL is not set
+# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
+# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
+# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
+# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
+# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
+# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
+CONFIG_CHRT=y
+CONFIG_CROND=y
+# CONFIG_FEATURE_CROND_D is not set
+# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
+CONFIG_FEATURE_CROND_DIR="/etc/cron"
+CONFIG_CRONTAB=y
+CONFIG_DC=y
+# CONFIG_FEATURE_DC_LIBM is not set
+# CONFIG_DEVFSD is not set
+# CONFIG_DEVFSD_MODLOAD is not set
+# CONFIG_DEVFSD_FG_NP is not set
+# CONFIG_DEVFSD_VERBOSE is not set
+# CONFIG_FEATURE_DEVFS is not set
+CONFIG_DEVMEM=y
+CONFIG_EJECT=y
+CONFIG_FEATURE_EJECT_SCSI=y
+CONFIG_FBSPLASH=y
+# CONFIG_FLASHCP is not set
+# CONFIG_FLASH_LOCK is not set
+# CONFIG_FLASH_UNLOCK is not set
+# CONFIG_FLASH_ERASEALL is not set
+CONFIG_IONICE=y
+CONFIG_INOTIFYD=y
+# CONFIG_LAST is not set
+# CONFIG_FEATURE_LAST_SMALL is not set
+# CONFIG_FEATURE_LAST_FANCY is not set
+# CONFIG_HDPARM is not set
+# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
+# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
+# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
+# CONFIG_MAKEDEVS is not set
+# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
+# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
+# CONFIG_MAN is not set
+CONFIG_MICROCOM=y
+# CONFIG_MOUNTPOINT is not set
+# CONFIG_MT is not set
+# CONFIG_RAIDAUTORUN is not set
+CONFIG_READAHEAD=y
+# CONFIG_RUNLEVEL is not set
+# CONFIG_RX is not set
+CONFIG_SETSID=y
+CONFIG_STRINGS=y
+CONFIG_TASKSET=y
+CONFIG_FEATURE_TASKSET_FANCY=y
+CONFIG_TIME=y
+CONFIG_TIMEOUT=y
+# CONFIG_TTYSIZE is not set
+CONFIG_VOLNAME=y
+# CONFIG_WATCHDOG is not set
+
+#
+# Networking Utilities
+#
+CONFIG_NAMEIF=y
+CONFIG_FEATURE_NAMEIF_EXTENDED=y
+CONFIG_NBDCLIENT=y
+CONFIG_NC=y
+CONFIG_NC_SERVER=y
+CONFIG_NC_EXTRA=y
+# CONFIG_NC_110_COMPAT is not set
+CONFIG_PING=y
+CONFIG_PING6=y
+CONFIG_FEATURE_FANCY_PING=y
+CONFIG_WHOIS=y
+CONFIG_FEATURE_IPV6=y
+# CONFIG_FEATURE_UNIX_LOCAL is not set
+CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
+# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
+CONFIG_ARP=y
+# CONFIG_ARPING is not set
+CONFIG_BRCTL=y
+CONFIG_FEATURE_BRCTL_FANCY=y
+CONFIG_FEATURE_BRCTL_SHOW=y
+# CONFIG_DNSD is not set
+CONFIG_ETHER_WAKE=y
+# CONFIG_FAKEIDENTD is not set
+# CONFIG_FTPD is not set
+# CONFIG_FEATURE_FTP_WRITE is not set
+# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
+CONFIG_HOSTNAME=y
+# CONFIG_HTTPD is not set
+# CONFIG_FEATURE_HTTPD_RANGES is not set
+# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set
+# CONFIG_FEATURE_HTTPD_SETUID is not set
+# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
+# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
+# CONFIG_FEATURE_HTTPD_CGI is not set
+# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
+# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
+# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set
+# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
+# CONFIG_FEATURE_HTTPD_PROXY is not set
+# CONFIG_FEATURE_HTTPD_GZIP is not set
+CONFIG_IFCONFIG=y
+CONFIG_FEATURE_IFCONFIG_STATUS=y
+# CONFIG_FEATURE_IFCONFIG_SLIP is not set
+# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
+CONFIG_FEATURE_IFCONFIG_HW=y
+# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
+# CONFIG_IFENSLAVE is not set
+# CONFIG_IFPLUGD is not set
+CONFIG_IFUPDOWN=y
+CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
+CONFIG_FEATURE_IFUPDOWN_IP=y
+CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
+# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
+CONFIG_FEATURE_IFUPDOWN_IPV4=y
+CONFIG_FEATURE_IFUPDOWN_IPV6=y
+CONFIG_FEATURE_IFUPDOWN_MAPPING=y
+# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
+CONFIG_INETD=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y
+CONFIG_FEATURE_INETD_RPC=y
+CONFIG_IP=y
+CONFIG_FEATURE_IP_ADDRESS=y
+CONFIG_FEATURE_IP_LINK=y
+CONFIG_FEATURE_IP_ROUTE=y
+CONFIG_FEATURE_IP_TUNNEL=y
+CONFIG_FEATURE_IP_RULE=y
+# CONFIG_FEATURE_IP_SHORT_FORMS is not set
+# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
+# CONFIG_IPADDR is not set
+# CONFIG_IPLINK is not set
+# CONFIG_IPROUTE is not set
+# CONFIG_IPTUNNEL is not set
+# CONFIG_IPRULE is not set
+# CONFIG_IPCALC is not set
+# CONFIG_FEATURE_IPCALC_FANCY is not set
+# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
+CONFIG_NETSTAT=y
+CONFIG_FEATURE_NETSTAT_WIDE=y
+CONFIG_FEATURE_NETSTAT_PRG=y
+CONFIG_NSLOOKUP=y
+# CONFIG_NTPD is not set
+# CONFIG_FEATURE_NTPD_SERVER is not set
+# CONFIG_PSCAN is not set
+CONFIG_ROUTE=y
+# CONFIG_SLATTACH is not set
+# CONFIG_TCPSVD is not set
+CONFIG_TELNET=y
+CONFIG_FEATURE_TELNET_TTYPE=y
+CONFIG_FEATURE_TELNET_AUTOLOGIN=y
+CONFIG_TELNETD=y
+# CONFIG_FEATURE_TELNETD_STANDALONE is not set
+# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
+CONFIG_TFTP=y
+# CONFIG_TFTPD is not set
+
+#
+# Common options for tftp/tftpd
+#
+CONFIG_FEATURE_TFTP_GET=y
+CONFIG_FEATURE_TFTP_PUT=y
+# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
+# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
+# CONFIG_TFTP_DEBUG is not set
+CONFIG_TRACEROUTE=y
+CONFIG_TRACEROUTE6=y
+CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
+# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
+CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
+CONFIG_TUNCTL=y
+CONFIG_FEATURE_TUNCTL_UG=y
+# CONFIG_UDHCPC6 is not set
+# CONFIG_UDHCPD is not set
+# CONFIG_DHCPRELAY is not set
+# CONFIG_DUMPLEASES is not set
+# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
+# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
+CONFIG_DHCPD_LEASES_FILE=""
+CONFIG_UDHCPC=y
+CONFIG_FEATURE_UDHCPC_ARPING=y
+# CONFIG_FEATURE_UDHCP_PORT is not set
+CONFIG_UDHCP_DEBUG=0
+# CONFIG_FEATURE_UDHCP_RFC3397 is not set
+CONFIG_FEATURE_UDHCP_8021Q=y
+CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -b -T3 -A10"
+# CONFIG_UDPSVD is not set
+CONFIG_VCONFIG=y
+CONFIG_WGET=y
+CONFIG_FEATURE_WGET_STATUSBAR=y
+CONFIG_FEATURE_WGET_AUTHENTICATION=y
+CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+CONFIG_FEATURE_WGET_TIMEOUT=y
+# CONFIG_ZCIP is not set
+
+#
+# Print Utilities
+#
+# CONFIG_LPD is not set
+# CONFIG_LPR is not set
+# CONFIG_LPQ is not set
+
+#
+# Mail Utilities
+#
+# CONFIG_MAKEMIME is not set
+CONFIG_FEATURE_MIME_CHARSET="us-ascii"
+# CONFIG_POPMAILDIR is not set
+# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
+# CONFIG_REFORMIME is not set
+# CONFIG_FEATURE_REFORMIME_COMPAT is not set
+CONFIG_SENDMAIL=y
+
+#
+# Process Utilities
+#
+CONFIG_IOSTAT=y
+CONFIG_LSOF=y
+CONFIG_MPSTAT=y
+CONFIG_NMETER=y
+# CONFIG_PMAP is not set
+CONFIG_POWERTOP=y
+# CONFIG_PSTREE is not set
+# CONFIG_PWDX is not set
+CONFIG_SMEMCAP=y
+# CONFIG_TOP is not set
+# CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set
+# CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS is not set
+# CONFIG_FEATURE_TOP_SMP_CPU is not set
+# CONFIG_FEATURE_TOP_DECIMALS is not set
+# CONFIG_FEATURE_TOP_SMP_PROCESS is not set
+# CONFIG_FEATURE_TOPMEM is not set
+# CONFIG_UPTIME is not set
+# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set
+# CONFIG_FREE is not set
+# CONFIG_FUSER is not set
+# CONFIG_KILL is not set
+# CONFIG_KILLALL is not set
+# CONFIG_KILLALL5 is not set
+# CONFIG_PGREP is not set
+CONFIG_PIDOF=y
+CONFIG_FEATURE_PIDOF_SINGLE=y
+CONFIG_FEATURE_PIDOF_OMIT=y
+# CONFIG_PKILL is not set
+# CONFIG_PS is not set
+# CONFIG_FEATURE_PS_WIDE is not set
+# CONFIG_FEATURE_PS_LONG is not set
+# CONFIG_FEATURE_PS_TIME is not set
+# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
+# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
+CONFIG_RENICE=y
+# CONFIG_BB_SYSCTL is not set
+# CONFIG_FEATURE_SHOW_THREADS is not set
+# CONFIG_WATCH is not set
+
+#
+# Runit Utilities
+#
+# CONFIG_RUNSV is not set
+# CONFIG_RUNSVDIR is not set
+# CONFIG_FEATURE_RUNSVDIR_LOG is not set
+# CONFIG_SV is not set
+CONFIG_SV_DEFAULT_SERVICE_DIR=""
+# CONFIG_SVLOGD is not set
+# CONFIG_CHPST is not set
+# CONFIG_SETUIDGID is not set
+# CONFIG_ENVUIDGID is not set
+# CONFIG_ENVDIR is not set
+# CONFIG_SOFTLIMIT is not set
+# CONFIG_CHCON is not set
+# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETSEBOOL is not set
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_MATCHPATHCON is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_RUNCON is not set
+# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
+# CONFIG_SELINUXENABLED is not set
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFILES is not set
+# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
+# CONFIG_SETSEBOOL is not set
+# CONFIG_SESTATUS is not set
+
+#
+# Shells
+#
+CONFIG_ASH=y
+CONFIG_ASH_BASH_COMPAT=y
+CONFIG_ASH_IDLE_TIMEOUT=y
+CONFIG_ASH_JOB_CONTROL=y
+CONFIG_ASH_ALIAS=y
+CONFIG_ASH_GETOPTS=y
+CONFIG_ASH_BUILTIN_ECHO=y
+CONFIG_ASH_BUILTIN_PRINTF=y
+CONFIG_ASH_BUILTIN_TEST=y
+# CONFIG_ASH_CMDCMD is not set
+# CONFIG_ASH_MAIL is not set
+CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
+CONFIG_ASH_RANDOM_SUPPORT=y
+CONFIG_ASH_EXPAND_PRMT=y
+# CONFIG_CTTYHACK is not set
+# CONFIG_HUSH is not set
+# CONFIG_HUSH_BASH_COMPAT is not set
+# CONFIG_HUSH_BRACE_EXPANSION is not set
+# CONFIG_HUSH_HELP is not set
+# CONFIG_HUSH_INTERACTIVE is not set
+# CONFIG_HUSH_SAVEHISTORY is not set
+# CONFIG_HUSH_JOB is not set
+# CONFIG_HUSH_TICK is not set
+# CONFIG_HUSH_IF is not set
+# CONFIG_HUSH_LOOPS is not set
+# CONFIG_HUSH_CASE is not set
+# CONFIG_HUSH_FUNCTIONS is not set
+# CONFIG_HUSH_LOCAL is not set
+# CONFIG_HUSH_RANDOM_SUPPORT is not set
+# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_MODE_X is not set
+# CONFIG_MSH is not set
+CONFIG_FEATURE_SH_IS_ASH=y
+# CONFIG_FEATURE_SH_IS_HUSH is not set
+# CONFIG_FEATURE_SH_IS_NONE is not set
+CONFIG_FEATURE_BASH_IS_ASH=y
+# CONFIG_FEATURE_BASH_IS_HUSH is not set
+# CONFIG_FEATURE_BASH_IS_NONE is not set
+CONFIG_SH_MATH_SUPPORT=y
+# CONFIG_SH_MATH_SUPPORT_64 is not set
+CONFIG_FEATURE_SH_EXTRA_QUIET=y
+# CONFIG_FEATURE_SH_STANDALONE is not set
+# CONFIG_FEATURE_SH_NOFORK is not set
+CONFIG_FEATURE_SH_HISTFILESIZE=y
+
+#
+# System Logging Utilities
+#
+CONFIG_SYSLOGD=y
+CONFIG_FEATURE_ROTATE_LOGFILE=y
+CONFIG_FEATURE_REMOTE_LOG=y
+CONFIG_FEATURE_SYSLOGD_DUP=y
+CONFIG_FEATURE_SYSLOGD_CFG=y
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
+CONFIG_FEATURE_IPC_SYSLOG=y
+CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
+CONFIG_LOGREAD=y
+CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
+CONFIG_FEATURE_KMSG_SYSLOG=y
+CONFIG_KLOGD=y
+
+#
+# klogd should not be used together with syslog to kernel printk buffer
+#
+CONFIG_FEATURE_KLOGD_KLOGCTL=y
+CONFIG_LOGGER=y
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd b/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd
new file mode 100755 (executable)
index 0000000..cf50bcd
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/sh
+#
+# start/stop inetd super server.
+
+if ! [ -x /usr/sbin/inetd ]; then
+       exit 0
+fi
+
+case "$1" in
+    start)
+       echo -n "Starting internet superserver:"
+       echo -n " inetd" ; start-stop-daemon -S -x /usr/sbin/inetd > /dev/null
+       echo "."
+       ;;
+    stop)
+       echo -n "Stopping internet superserver:"
+       echo -n " inetd" ; start-stop-daemon -K -x /usr/sbin/inetd > /dev/null
+       echo "."
+       ;;
+    restart)
+       echo -n "Restarting internet superserver:"
+       echo -n " inetd "
+       killall -HUP inetd
+       echo "."
+       ;;
+    *)
+       echo "Usage: /etc/init.d/inetd {start|stop|restart}"
+       exit 1
+       ;;
+esac
+
+exit 0
+
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd.conf b/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/inetd.conf
new file mode 100644 (file)
index 0000000..bafaf40
--- /dev/null
@@ -0,0 +1,23 @@
+# /etc/inetd.conf:  see inetd(8) for further informations.
+#
+# Internet server configuration database
+#
+# If you want to disable an entry so it isn't touched during
+# package updates just comment it out with a single '#' character.
+#
+# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
+#
+#:INTERNAL: Internal services
+#echo          stream  tcp     nowait  root    internal
+#echo          dgram   udp     wait    root    internal
+#chargen       stream  tcp     nowait  root    internal
+#chargen       dgram   udp     wait    root    internal
+#discard               stream  tcp     nowait  root    internal
+#discard               dgram   udp     wait    root    internal
+#daytime               stream  tcp     nowait  root    internal
+#daytime       dgram   udp     wait    root    internal
+#time          stream  tcp     nowait  root    internal
+#time          dgram   udp     wait    root    internal
+ftp            stream  tcp     nowait  root    /usr/sbin/vsftpd        vsftpd
+telnet         stream  tcp     nowait  root    /usr/sbin/telnetd       telnetd
+8001    stream  tcp nowait      root    /usr/bin/streamproxy streamproxy
diff --git a/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/mount_single_uuid.patch b/meta-openvuplus/recipes-core/busybox/busybox-1.22.1/mount_single_uuid.patch
new file mode 100644 (file)
index 0000000..9577c07
--- /dev/null
@@ -0,0 +1,13 @@
+Index: busybox-1.18.5/util-linux/mount.c
+===================================================================
+--- busybox-1.18.5.orig/util-linux/mount.c
++++ busybox-1.18.5/util-linux/mount.c
+@@ -1934,6 +1934,8 @@ int mount_main(int argc UNUSED_PARAM, ch
+               // "proc") or a full path from root
+               if (argv[0]) {
++                      // Check for UUID= or LABEL= entries too
++                      resolve_mount_spec(&mtcur->mnt_fsname);
+                       // Is this what we're looking for?
+                       if (strcmp(argv[0], mtcur->mnt_fsname) != 0
+                        && strcmp(storage_path, mtcur->mnt_fsname) != 0
diff --git a/meta-openvuplus/recipes-core/busybox/busybox_1.19.4.bbappend b/meta-openvuplus/recipes-core/busybox/busybox_1.19.4.bbappend
deleted file mode 100644 (file)
index cf4cd40..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-PR .= "-vuplus11"
-
-SRC_URI += " \
-            file://0001-ifupdown-support-post-up-pre-down-hooks.patch \
-            file://0002-ifupdown-code-shrink.patch \
-            file://0003-ifupdown-remove-interface-from-state_list-if-iface_u.patch \
-            file://0004-ifupdown-support-metric-for-static-default-gw.patch \
-            file://0005-ifupdown-improve-compatibility-with-Debian.patch \
-            file://0006-get_linux_version_code-don-t-fail-on-3.0-foo.patch \
-            file://0007-ifplugd-move-read_pid-to-libbb-pidfile.c-and-rename-.patch \
-            file://0009-udhcpc-calculate-broadcast-address-if-not-given-by-s.patch \
-            file://0010-udhcpc-obtain-hostname-from-OS-by-default.patch \
-            file://0011-mount-don-t-pass-option-auto-to-kernel.patch \
-            file://0001-work-around-linux-ext2_fs.h-breakage.patch \
-            file://0002-Create-and-use-our-own-copy-of-linux-ext2_fs.h.patch \
-            file://0003-Drop-include-bb_linux_ext2_fs.h-use-existing-e2fspro.patch \
-            file://mount_single_uuid.patch \
-            file://change-passwd-default-algorithm.patch \
-           file://inetd \
-           file://inetd.conf \
-"
-# 0008-ifupdown-dhcp_down-wait-until-udhcpc-has-been-killed.patch is removed. if patched, postdown is not working.(/etc/network/interfaces)
-
-DEPENDS += "mtd-utils"
-
-PACKAGES =+ "${PN}-inetd"
-INITSCRIPT_PACKAGES += "${PN}-inetd"
-INITSCRIPT_NAME_${PN}-inetd = "inetd.${BPN}"
-CONFFILES_${PN}-inetd = "${sysconfdir}/inetd.conf"
-FILES_${PN}-inetd = "${sysconfdir}/init.d/inetd.${BPN} ${sysconfdir}/inetd.conf"
-RDEPENDS_${PN}-inetd += "${PN}"
-
-RRECOMMENDS_${PN} += "${PN}-inetd"
-
-do_install_append() {
-        if grep -q "CONFIG_CRONTAB=y" ${WORKDIR}/defconfig; then
-                install -d ${D}${sysconfdir}/cron/crontabs
-        fi
-}
-
-FILESEXTRAPATHS_prepend := "${THISDIR}/${P}:"
-
diff --git a/meta-openvuplus/recipes-core/busybox/busybox_1.22.1.bbappend b/meta-openvuplus/recipes-core/busybox/busybox_1.22.1.bbappend
new file mode 100644 (file)
index 0000000..52c9f78
--- /dev/null
@@ -0,0 +1,28 @@
+PR .= "-vuplus0"
+
+SRC_URI += " \
+            file://0011-mount-don-t-pass-option-auto-to-kernel.patch \
+            file://mount_single_uuid.patch \
+           file://inetd \
+           file://inetd.conf \
+"
+
+DEPENDS += "mtd-utils"
+
+PACKAGES =+ "${PN}-inetd"
+INITSCRIPT_PACKAGES += "${PN}-inetd"
+INITSCRIPT_NAME_${PN}-inetd = "inetd.${BPN}"
+CONFFILES_${PN}-inetd = "${sysconfdir}/inetd.conf"
+FILES_${PN}-inetd = "${sysconfdir}/init.d/inetd.${BPN} ${sysconfdir}/inetd.conf"
+RDEPENDS_${PN}-inetd += "${PN}"
+
+RRECOMMENDS_${PN} += "${PN}-inetd"
+
+do_install_append() {
+        if grep -q "CONFIG_CRONTAB=y" ${WORKDIR}/defconfig; then
+                install -d ${D}${sysconfdir}/cron/crontabs
+        fi
+}
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/${P}:"
+