#![no_std] #![no_main] use lancer_user::net; use lancer_user::syscall; #[unsafe(no_mangle)] pub extern "C" fn lancer_main() -> ! { let (rx, _tx) = match net::init() { Some(pair) => pair, None => { lancer_user::show!(net, error, "netsock init failed"); syscall::exit(); } }; let mut args_buf = [0u8; 256]; let args_len = net::recv_args(&rx, &mut args_buf); let args = &args_buf[..args_len]; let space_pos = (0..args.len()).find(|&i| args[i] == b' '); let payload = match space_pos { Some(pos) => &args[pos + 1..], None => &[], }; if !payload.is_empty() { lancer_user::io::write_bytes(payload); } lancer_user::io::write_bytes(b"\n"); syscall::exit() }