include $(TOPDIR)/rules.mk
PKG_NAME:=mtd-utils
-PKG_VERSION:=2.1.1
+PKG_VERSION:=2.1.2
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/mtd-utils/
-PKG_HASH:=8d15e8b70f036d6af1a66011f8ca0e048e9675fa7983d33bea92c24313a232d2
+PKG_HASH:=8ad4c5f34716d40646aa28724a2f5616d325a6f119254f914e26976f1f76e9d6
PKG_FIXUP:=autoreconf
--- a/jffsX-utils/mkfs.jffs2.c
+++ b/jffsX-utils/mkfs.jffs2.c
-@@ -427,7 +427,7 @@ static int interpret_table_entry(struct
+@@ -428,7 +428,7 @@ static int interpret_table_entry(struct
if (sscanf (line, "%" SCANF_PREFIX "s %c %lo %lu %lu %lu %lu %lu %lu %lu",
SCANF_STRING(name), &type, &mode, &uid, &gid, &major, &minor,
#include <sys/types.h>
--- a/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c
+++ b/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c
-@@ -1503,6 +1503,7 @@ static int add_inode(struct stat *st, in
+@@ -1549,6 +1549,7 @@ static int add_inode(struct stat *st, in
if (c->default_compr != UBIFS_COMPR_NONE)
use_flags |= UBIFS_COMPR_FL;
if (flags & FS_COMPR_FL)
use_flags |= UBIFS_COMPR_FL;
if (flags & FS_SYNC_FL)
-@@ -1515,6 +1516,7 @@ static int add_inode(struct stat *st, in
+@@ -1561,6 +1562,7 @@ static int add_inode(struct stat *st, in
use_flags |= UBIFS_DIRSYNC_FL;
if (fctx)
use_flags |= UBIFS_CRYPT_FL;
memset(ino, 0, UBIFS_INO_NODE_SZ);
ino_key_init(&key, inum);
-@@ -1600,7 +1602,9 @@ static int add_dir_inode(const char *pat
+@@ -1646,7 +1648,9 @@ static int add_dir_inode(const char *pat
fd = dirfd(dir);
if (fd == -1)
return sys_err_msg("dirfd failed");
flags = 0;
}
-@@ -1811,6 +1815,7 @@ static int add_file(const char *path_nam
+@@ -1857,6 +1861,7 @@ static int add_file(const char *path_nam
dn->ch.node_type = UBIFS_DATA_NODE;
key_write(&key, &dn->key);
out_len = NODE_BUFFER_SIZE - UBIFS_DATA_NODE_SZ;
if (c->default_compr == UBIFS_COMPR_NONE &&
!c->encrypted && (flags & FS_COMPR_FL))
#ifdef WITHOUT_LZO
-@@ -1819,6 +1824,7 @@ static int add_file(const char *path_nam
+@@ -1865,6 +1870,7 @@ static int add_file(const char *path_nam
use_compr = UBIFS_COMPR_LZO;
#endif
else
use_compr = c->default_compr;
compr_type = compress_data(buf, bytes_read, &dn->data,
&out_len, use_compr);
-@@ -1876,7 +1882,9 @@ static int add_non_dir(const char *path_
+@@ -1924,7 +1930,9 @@ static int add_non_dir(const char *path_
if (fd == -1)
return sys_err_msg("failed to open file '%s'",
path_name);
+}
--- a/jffsX-utils/mkfs.jffs2.c
+++ b/jffsX-utils/mkfs.jffs2.c
-@@ -1666,11 +1666,11 @@ int main(int argc, char **argv)
+@@ -1667,11 +1667,11 @@ int main(int argc, char **argv)
}
erase_block_size *= units;
out_free:
--- a/include/libubigen.h
+++ b/include/libubigen.h
-@@ -188,6 +188,9 @@ int ubigen_write_layout_vol(const struct
+@@ -187,6 +187,9 @@ int ubigen_write_layout_vol(const struct
long long ec1, long long ec2,
struct ubi_vtbl_record *vtbl, int fd);
int target_endian = __BYTE_ORDER;
static uint32_t find_hardlink(struct filesystem_entry *e)
-@@ -250,8 +250,8 @@ static struct filesystem_entry *add_host
+@@ -251,8 +251,8 @@ static struct filesystem_entry *add_host
mode &= ~(S_ISUID | S_ISGID);
}
}
}
entry = xcalloc(1, sizeof(struct filesystem_entry));
-@@ -1557,6 +1557,20 @@ static void parse_image(void){
+@@ -1558,6 +1558,20 @@ static void parse_image(void){
close(in_fd);
}
int main(int argc, char **argv)
{
int c, opt;
-@@ -1575,6 +1589,7 @@ int main(int argc, char **argv)
+@@ -1576,6 +1590,7 @@ int main(int argc, char **argv)
warn_page_size = 1; /* warn user if page size not 4096 */
jffs2_compressors_init();
while ((opt = getopt_long(argc, argv,
"D:d:r:s:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0)
-@@ -1625,7 +1640,7 @@ int main(int argc, char **argv)
+@@ -1626,7 +1641,7 @@ int main(int argc, char **argv)
break;
case 'f':