Expand description
Reader and Writer library for cpio archives
§Read
let mut file = File::open("archive.cpio").unwrap();
let mut archive = ArchiveReader::<NewcHeader>::from_reader_with_offset(&mut file, 0).unwrap();
// extract bytes from all in archive
for object in &archive.objects.inner {
let mut out = OpenOptions::new()
.write(true)
.create(true)
.open(object.header.as_header().name)
.unwrap();
archive.reader.extract_data(object, &mut out).unwrap();
}
§Write
let file = File::create("archive.cpio").unwrap();
let mut writer = ArchiveWriter::<NewcHeader>::new(Box::new(file));
// A
let a_data = "a\n".as_bytes();
let a_header = Header { name: "a".to_string(), ..Header::default()};
writer.push_file(Cursor::new(a_data), a_header).unwrap();
// write to archive
writer.write().unwrap();
Structs§
- Read cpio Archive and extract data
- Write cpio Archive and add data
- Common representation of cpio Header
- Improved cpio Header, also known as “SVR4” or “New ASCII”
- Object in cpio archive
- All objects in archive
- Legacy ASCII-based format
Enums§
- Errors generated from library
- Reader and Writer of data
Traits§
- Common information between types of cpio headers
- Extract data from cpio Archive
Read
+Seek
Write
+Seek