aboutsummaryrefslogtreecommitdiff
path: root/squashfs-tools/pseudo.c
diff options
context:
space:
mode:
authorPhillip Lougher <phillip@squashfs.org.uk>2012-12-24 20:33:13 +0000
committerPhillip Lougher <phillip@squashfs.org.uk>2012-12-24 20:53:21 +0000
commita69a9f6d06ca66ff8dd424302fccca59e90d88a7 (patch)
tree417e125fdca0a760b74d1f81933b041bfe345f6e /squashfs-tools/pseudo.c
parent16ac41ff861f72d0857cc147e42120d799a009c8 (diff)
downloadsquashfs-tools-a69a9f6d06ca66ff8dd424302fccca59e90d88a7.tar.gz
pseudo: Move pseudo variable from mksquashfs.c to pseudo.c
Move and make pseudo variable mostly private to pseudo. This eliminates the need to pass it to and from read_pseudo_def() and read_pseudo_file(). It is now only needed for dir_scan2() and so add an accessor get_pseudo() for it in pseudo.c. Signed-off-by: Phillip Lougher <phillip@squashfs.org.uk>
Diffstat (limited to 'squashfs-tools/pseudo.c')
-rw-r--r--squashfs-tools/pseudo.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/squashfs-tools/pseudo.c b/squashfs-tools/pseudo.c
index b7a89b2..85c2cd4 100644
--- a/squashfs-tools/pseudo.c
+++ b/squashfs-tools/pseudo.c
@@ -42,6 +42,7 @@
#define MAX_LINE 16384
struct pseudo_dev **pseudo_file = NULL;
+struct pseudo *pseudo = NULL;
int pseudo_count = 0;
static void dump_pseudo(struct pseudo *pseudo, char *string)
@@ -328,7 +329,7 @@ struct pseudo_dev *get_pseudo_file(int pseudo_id)
}
-int read_pseudo_def(struct pseudo **pseudo, char *def)
+int read_pseudo_def(char *def)
{
int n, bytes;
unsigned int major = 0, minor = 0, mode;
@@ -489,7 +490,7 @@ int read_pseudo_def(struct pseudo **pseudo, char *def)
add_pseudo_file(dev);
}
- *pseudo = add_pseudo(*pseudo, dev, filename, filename);
+ pseudo = add_pseudo(pseudo, dev, filename, filename);
free(filename);
return TRUE;
@@ -501,7 +502,7 @@ error:
}
-int read_pseudo_file(struct pseudo **pseudo, char *filename)
+int read_pseudo_file(char *filename)
{
FILE *fd;
char *def, *err, *line = NULL;
@@ -595,7 +596,7 @@ int read_pseudo_file(struct pseudo **pseudo, char *filename)
if(*def == '#')
continue;
- res = read_pseudo_def(pseudo, def);
+ res = read_pseudo_def(def);
if(res == FALSE)
break;
}
@@ -609,3 +610,9 @@ failed:
free(line);
return FALSE;
}
+
+
+struct pseudo *get_pseudo()
+{
+ return pseudo;
+}