summaryrefslogtreecommitdiff
path: root/ext4_utils/output_file.h
diff options
context:
space:
mode:
authorAnatol Pomazau <anatol@google.com>2012-01-11 15:12:27 -0800
committerAnatol Pomazau <anatol@google.com>2012-02-03 14:40:49 -0800
commit89ddaab97e9214cf331baffee2de4595ad14dc79 (patch)
tree08f4de0ccce24a3b3672db9ec3f60e461c52f74c /ext4_utils/output_file.h
parentae4f7dccadfafc36470a3e6f3084c6cf3cc63415 (diff)
downloadextras-89ddaab97e9214cf331baffee2de4595ad14dc79.tar.gz
Pass file descriptor instead of file name
Passing a file descriptor to make_ext4fs_internal() is more flexible. We can use tmpfile() to create a temporary file. tmpfile() is better than other solutions because it unlinks the file right after creating it, so closing fd effectively removes temp file. Thus we don't have to worry about large temp files accidently left on the filesystem in case of the program crash. Change-Id: I44146704572c314e1d6cfca7ce918efa7fb92a7a
Diffstat (limited to 'ext4_utils/output_file.h')
-rw-r--r--ext4_utils/output_file.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/ext4_utils/output_file.h b/ext4_utils/output_file.h
index b4487066..a578c80f 100644
--- a/ext4_utils/output_file.h
+++ b/ext4_utils/output_file.h
@@ -21,6 +21,8 @@ struct output_file;
struct output_file *open_output_file(const char *filename, int gz, int sparse,
int chunks, int crc, int wipe);
+struct output_file *open_output_fd(int fd, int gz, int sparse,
+ int chunks, int crc, int wipe);
void write_data_block(struct output_file *out, u64 off, u8 *data, int len);
void write_fill_block(struct output_file *out, u64 off, u32 fill_val, int len);
void write_data_file(struct output_file *out, u64 off, const char *file,