Only allow alphanumeric and dots for entrynames

This commit is contained in:
Albert S. 2020-09-26 18:55:47 +02:00
parent aaa6670eda
commit ac315529b3

View File

@ -324,7 +324,12 @@ fn main() -> Result<(), std::io::Error> {
let cmdargs: Vec<String> = argv.collect(); let cmdargs: Vec<String> = argv.collect();
let entryname = cmdargs.get(1); let entryname = cmdargs.get(1);
if entryname.is_some() { if entryname.is_some() {
match exec(&entryname.unwrap(), &cmdargs) { let entry = entryname.unwrap();
if !entry.chars().all(|c| c.is_alphanumeric() || c == '.') {
eprintln!("Entry names can only contain alphanumeric characters and dots");
std::process::exit(1);
}
match exec(entry, &cmdargs) {
Err(e) => { Err(e) => {
eprintln!("The following error ocurred:"); eprintln!("The following error ocurred:");
eprintln!("{}", e); eprintln!("{}", e);