diff options
Diffstat (limited to 'ubifs-utils')
| -rw-r--r-- | ubifs-utils/mkfs.ubifs/mkfs.ubifs.c | 13 | ||||
| -rw-r--r-- | ubifs-utils/mkfs.ubifs/ubifs.h | 1 | 
2 files changed, 13 insertions, 1 deletions
| diff --git a/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c b/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c index fc1b0cb..09c28ab 100644 --- a/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c +++ b/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c @@ -2357,6 +2357,15 @@ static int finalize_leb_cnt(void)  	return 0;  } +static int ubifs_format_version(void) +{ +	if (c->double_hash || c->encrypted) +		return 5; + +	/* Default */ +	return 4; +} +  /**   * write_super - write the super block.   */ @@ -2379,7 +2388,7 @@ static int write_super(void)  	sup.jhead_cnt     = cpu_to_le32(c->jhead_cnt);  	sup.fanout        = cpu_to_le32(c->fanout);  	sup.lsave_cnt     = cpu_to_le32(c->lsave_cnt); -	sup.fmt_version   = cpu_to_le32(UBIFS_FORMAT_VERSION); +	sup.fmt_version   = cpu_to_le32(ubifs_format_version());  	sup.default_compr = cpu_to_le16(c->default_compr);  	sup.rp_size       = cpu_to_le64(c->rp_size);  	sup.time_gran     = cpu_to_le32(DEFAULT_TIME_GRAN); @@ -2396,6 +2405,8 @@ static int write_super(void)  		sup.flags |= cpu_to_le32(UBIFS_FLG_SPACE_FIXUP);  	if (c->double_hash)  		sup.flags |= cpu_to_le32(UBIFS_FLG_DOUBLE_HASH); +	if (c->encrypted) +		sup.flags |= cpu_to_le32(UBIFS_FLG_ENCRYPTION);  	return write_node(&sup, UBIFS_SB_NODE_SZ, UBIFS_SB_LNUM);  } diff --git a/ubifs-utils/mkfs.ubifs/ubifs.h b/ubifs-utils/mkfs.ubifs/ubifs.h index 5a4af99..c26d094 100644 --- a/ubifs-utils/mkfs.ubifs/ubifs.h +++ b/ubifs-utils/mkfs.ubifs/ubifs.h @@ -410,6 +410,7 @@ struct ubifs_info  	int big_lpt;  	int space_fixup;  	int double_hash; +	int encrypted;  	long long lpt_sz;  	int ltab_lnum; | 
