1use std::os::unix::prelude::OsStrExt;
2
3use syslib::*;
4
5fn main() {
6 let mut buffer = [0; 4096];
7 write(Fd::stdout, "File: ".as_bytes()).unwrap();
8 let path = read(Fd::stdin, &mut buffer).unwrap();
9 let path = std::path::Path::new(std::ffi::OsStr::from_bytes(path.strip_suffix(b"\n").unwrap()));
10 let fd = open(path, open::Flags::CREATE | open::Flags::WRITE_ONLY, mode!(rw_ ___ ___)).unwrap();
11 loop {
12 let data = read(Fd::stdin, &mut buffer).unwrap();
13 if data == b"\x1b\n" { break }
14 if write(&fd, data).unwrap() == 0 {
15 break
16 }
17 }
18}