Remove tobin from master until finished
This commit is contained in:
parent
91c6b83c34
commit
42f2d4fcbc
20
src/main.rs
20
src/main.rs
|
@ -6,17 +6,12 @@ mod colormap;
|
||||||
|
|
||||||
mod tohex;
|
mod tohex;
|
||||||
use tohex::hexdump;
|
use tohex::hexdump;
|
||||||
mod tobin;
|
|
||||||
use tobin::bindump;
|
|
||||||
|
|
||||||
use clap::Parser;
|
use clap::Parser;
|
||||||
|
|
||||||
#[derive(Parser)]
|
#[derive(Parser)]
|
||||||
#[command(version, about = "A simple hexdump tool")]
|
#[command(version, about = "A simple hexdump tool")]
|
||||||
struct Arguments {
|
struct Arguments {
|
||||||
/// Revert a hexdump to binary
|
|
||||||
#[arg(short, long)]
|
|
||||||
revert: bool,
|
|
||||||
/// Stop after <len> octets
|
/// Stop after <len> octets
|
||||||
#[arg(short, long)]
|
#[arg(short, long)]
|
||||||
length: Option<usize>,
|
length: Option<usize>,
|
||||||
|
@ -35,15 +30,10 @@ fn main() {
|
||||||
Box::new(File::open(filename).expect("Could not open file."))
|
Box::new(File::open(filename).expect("Could not open file."))
|
||||||
};
|
};
|
||||||
|
|
||||||
if !args.revert {
|
let length = if args.length.is_some() {
|
||||||
let length = if args.length.is_some() {
|
args.length.unwrap()
|
||||||
args.length.unwrap()
|
|
||||||
} else {
|
|
||||||
MAX
|
|
||||||
};
|
|
||||||
hexdump(reader, length);
|
|
||||||
} else {
|
} else {
|
||||||
let writer: Box<dyn io::Write> = Box::new(io::stdout());
|
MAX
|
||||||
bindump(reader, writer);
|
};
|
||||||
}
|
hexdump(reader, length);
|
||||||
}
|
}
|
||||||
|
|
23
src/tobin.rs
23
src/tobin.rs
|
@ -1,23 +0,0 @@
|
||||||
use std::{io, str::Lines};
|
|
||||||
|
|
||||||
fn parse_lines(lines: Lines) {
|
|
||||||
for line in lines {
|
|
||||||
let address_delimeter = line.find(": ").unwrap();
|
|
||||||
let printable_delimeter = line.find(" ").unwrap();
|
|
||||||
|
|
||||||
let bytes = line.as_bytes();
|
|
||||||
let hexdata = &bytes[(address_delimeter+2)..printable_delimeter];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn bindump(mut reader: Box<dyn io::Read>, mut writer: Box<dyn io::Write>) {
|
|
||||||
let mut buffer = String::new();
|
|
||||||
match reader.read_to_string(&mut buffer) {
|
|
||||||
Ok(_) => {
|
|
||||||
parse_lines(buffer.lines());
|
|
||||||
}
|
|
||||||
Err(e) => {
|
|
||||||
eprintln!("revert: {}", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue