Commit 545bc8f6 authored by Sascha Hauer's avatar Sascha Hauer Committed by Richard Weinberger

ubifs: Pass ubifs_zbranch to try_read_node()

try_read_node() takes len, lnum and offs arguments which the caller all
extracts from the same struct ubifs_zbranch *. When adding authentication
support we would have to add a pointer to a hash to the arguments which
is also part of struct ubifs_zbranch. Pass the ubifs_zbranch * instead
so that we do not have to add another argument.
Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
parent c4de6d7e
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
#include "ubifs.h" #include "ubifs.h"
static int try_read_node(const struct ubifs_info *c, void *buf, int type, static int try_read_node(const struct ubifs_info *c, void *buf, int type,
int len, int lnum, int offs); struct ubifs_zbranch *zbr);
static int fallible_read_node(struct ubifs_info *c, const union ubifs_key *key, static int fallible_read_node(struct ubifs_info *c, const union ubifs_key *key,
struct ubifs_zbranch *zbr, void *node); struct ubifs_zbranch *zbr, void *node);
...@@ -433,9 +433,7 @@ static int tnc_read_hashed_node(struct ubifs_info *c, struct ubifs_zbranch *zbr, ...@@ -433,9 +433,7 @@ static int tnc_read_hashed_node(struct ubifs_info *c, struct ubifs_zbranch *zbr,
* @c: UBIFS file-system description object * @c: UBIFS file-system description object
* @buf: buffer to read to * @buf: buffer to read to
* @type: node type * @type: node type
* @len: node length (not aligned) * @zbr: the zbranch describing the node to read
* @lnum: LEB number of node to read
* @offs: offset of node to read
* *
* This function tries to read a node of known type and length, checks it and * This function tries to read a node of known type and length, checks it and
* stores it in @buf. This function returns %1 if a node is present and %0 if * stores it in @buf. This function returns %1 if a node is present and %0 if
...@@ -453,8 +451,11 @@ static int tnc_read_hashed_node(struct ubifs_info *c, struct ubifs_zbranch *zbr, ...@@ -453,8 +451,11 @@ static int tnc_read_hashed_node(struct ubifs_info *c, struct ubifs_zbranch *zbr,
* journal nodes may potentially be corrupted, so checking is required. * journal nodes may potentially be corrupted, so checking is required.
*/ */
static int try_read_node(const struct ubifs_info *c, void *buf, int type, static int try_read_node(const struct ubifs_info *c, void *buf, int type,
int len, int lnum, int offs) struct ubifs_zbranch *zbr)
{ {
int len = zbr->len;
int lnum = zbr->lnum;
int offs = zbr->offs;
int err, node_len; int err, node_len;
struct ubifs_ch *ch = buf; struct ubifs_ch *ch = buf;
uint32_t crc, node_crc; uint32_t crc, node_crc;
...@@ -507,8 +508,7 @@ static int fallible_read_node(struct ubifs_info *c, const union ubifs_key *key, ...@@ -507,8 +508,7 @@ static int fallible_read_node(struct ubifs_info *c, const union ubifs_key *key,
dbg_tnck(key, "LEB %d:%d, key ", zbr->lnum, zbr->offs); dbg_tnck(key, "LEB %d:%d, key ", zbr->lnum, zbr->offs);
ret = try_read_node(c, node, key_type(c, key), zbr->len, zbr->lnum, ret = try_read_node(c, node, key_type(c, key), zbr);
zbr->offs);
if (ret == 1) { if (ret == 1) {
union ubifs_key node_key; union ubifs_key node_key;
struct ubifs_dent_node *dent = node; struct ubifs_dent_node *dent = node;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment