/**
  * read_znode - read an indexing node from flash and fill znode.
  * @c: UBIFS file-system description object
- * @lnum: LEB of the indexing node to read
- * @offs: node offset
- * @len: node length
+ * @zzbr: the zbranch describing the node to read
  * @znode: znode to read to
  *
  * This function reads an indexing node from the flash media and fills znode
  * is wrong with it, this function prints complaint messages and returns
  * %-EINVAL.
  */
-static int read_znode(struct ubifs_info *c, int lnum, int offs, int len,
+static int read_znode(struct ubifs_info *c, struct ubifs_zbranch *zzbr,
                      struct ubifs_znode *znode)
 {
+       int lnum = zzbr->lnum;
+       int offs = zzbr->offs;
+       int len = zzbr->len;
        int i, err, type, cmp;
        struct ubifs_idx_node *idx;
 
        if (!znode)
                return ERR_PTR(-ENOMEM);
 
-       err = read_znode(c, zbr->lnum, zbr->offs, zbr->len, znode);
+       err = read_znode(c, zbr, znode);
        if (err)
                goto out;