Move to the 2024 edition

This commit is contained in:
bjorn3
2025-04-13 16:49:42 +02:00
parent e3507e18bc
commit 6f2514ed95
14 changed files with 35 additions and 75 deletions
+1
View File
@@ -1,6 +1,7 @@
[package]
name = "userutils"
version = "0.1.0"
edition = "2024"
[[bin]]
name = "id"
-5
View File
@@ -1,10 +1,5 @@
#[macro_use]
extern crate clap;
extern crate event;
extern crate extra;
extern crate libredox;
extern crate orbclient;
extern crate redox_termios;
use std::io::{self, ErrorKind, Stderr};
use std::process::{Child, Command, Stdio};
-2
View File
@@ -1,7 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
use extra::option::OptionalExt;
-2
View File
@@ -1,7 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
use extra::option::OptionalExt;
use redox_users::{All, AllGroups, Config};
-2
View File
@@ -1,7 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
use std::process::exit;
-2
View File
@@ -1,7 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
use std::env::args;
use std::process::exit;
+18 -23
View File
@@ -1,10 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate liner;
extern crate termion;
extern crate redox_users;
extern crate userutils;
use std::fs::File;
use std::io::{self, Write};
@@ -47,8 +42,8 @@ pub fn main() {
).get_matches();
if let Ok(mut issue) = File::open(ISSUE_FILE) {
io::copy(&mut issue, &mut stdout).try(&mut stderr);
stdout.flush().try(&mut stderr);
io::copy(&mut issue, &mut stdout).r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
}
loop {
@@ -56,9 +51,9 @@ pub fn main() {
.read_line(
liner::Prompt::from("\x1B[1mredox login:\x1B[0m "),
None,
&mut liner::BasicCompleter::new(Vec::<String>::new())
&mut liner::BasicCompleter::new(Vec::<String>::new()),
)
.try(&mut stderr);
.r#try(&mut stderr);
if !user.is_empty() {
let stdin = io::stdin();
@@ -67,32 +62,32 @@ pub fn main() {
match sys_users.get_by_name(user) {
None => {
stdout.write(b"\nLogin incorrect\n").try(&mut stderr);
stdout.write(b"\n").try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write(b"\nLogin incorrect\n").r#try(&mut stderr);
stdout.write(b"\n").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
continue;
},
Some(user) => {
if user.is_passwd_blank() {
if let Ok(mut motd) = File::open(MOTD_FILE) {
io::copy(&mut motd, &mut stdout).try(&mut stderr);
stdout.flush().try(&mut stderr);
io::copy(&mut motd, &mut stdout).r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
}
spawn_shell(user).unwrap_or_exit(1);
break;
}
stdout.write_all(b"\x1B[1mpassword:\x1B[0m ").try(&mut stderr);
stdout.flush().try(&mut stderr);
if let Some(password) = stdin.read_passwd(&mut stdout).try(&mut stderr) {
stdout.write(b"\n").try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write_all(b"\x1B[1mpassword:\x1B[0m ") .r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if let Some(password) = stdin.read_passwd(&mut stdout).r#try(&mut stderr) {
stdout.write(b"\n").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if user.verify_passwd(&password) {
if let Ok(mut motd) = File::open(MOTD_FILE) {
io::copy(&mut motd, &mut stdout).try(&mut stderr);
stdout.flush().try(&mut stderr);
io::copy(&mut motd, &mut stdout).r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
}
spawn_shell(user).unwrap_or_exit(1);
@@ -102,8 +97,8 @@ pub fn main() {
}
}
} else {
stdout.write(b"\n").try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write(b"\n").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
}
}
}
+15 -18
View File
@@ -1,8 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate termion;
extern crate redox_users;
use std::io;
use std::io::Write;
@@ -73,8 +70,8 @@ fn main() {
user.unset_passwd();
} else if user.uid == uid || uid == 0 {
let msg = format!("changing password for '{}' \n", user.user);
stdout.write_all(&msg.as_bytes()).try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write_all(&msg.as_bytes()).r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
let mut verified = false;
if user.is_passwd_blank() {
@@ -82,12 +79,12 @@ fn main() {
} else if user.is_passwd_unset() && uid != 0 {
verified = false;
} else if user.uid == uid || uid != 0 {
stdout.write_all(b"current password: ").try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write_all(b"current password: ").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if let Some(password) = stdin.read_passwd(&mut stdout).try(&mut stderr) {
stdout.write(b"\n").try(&mut stderr);
stdout.flush().try(&mut stderr);
if let Some(password) = stdin.read_passwd(&mut stdout).r#try(&mut stderr) {
stdout.write(b"\n").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
verified = user.verify_passwd(&password)
}
@@ -96,16 +93,16 @@ fn main() {
}
if verified {
stdout.write_all(b"new password: ").try(&mut stderr);
stdout.flush().try(&mut stderr);
stdout.write_all(b"new password: ").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if let Some(new_password) = stdin.read_passwd(&mut stdout).try(&mut stderr) {
stdout.write(b"\nconfirm password: ").try(&mut stderr);
stdout.flush().try(&mut stderr);
if let Some(new_password) = stdin.read_passwd(&mut stdout).r#try(&mut stderr) {
stdout.write(b"\nconfirm password: ").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if let Some(confirm_password) = stdin.read_passwd(&mut stdout).try(&mut stderr) {
stdout.write(b"\n").try(&mut stderr);
stdout.flush().try(&mut stderr);
if let Some(confirm_password) = stdin.read_passwd(&mut stdout).r#try(&mut stderr) {
stdout.write(b"\n").r#try(&mut stderr);
stdout.flush().r#try(&mut stderr);
if new_password == confirm_password {
user.set_passwd(&new_password).unwrap_or_exit(1);
+1 -5
View File
@@ -1,9 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate termion;
extern crate redox_users;
extern crate userutils;
use std::io::{self, Write};
use std::process::exit;
@@ -67,7 +63,7 @@ pub fn main() {
stdout.flush().unwrap_or_exit(1);
// Read the password, reading an empty string if CTRL-d is specified
let password = stdin.read_passwd(&mut stdout).try(&mut stderr).unwrap_or(String::new());
let password = stdin.read_passwd(&mut stdout).r#try(&mut stderr).unwrap_or(String::new());
writeln!(stderr, "\n").unwrap_or_exit(1);
-4
View File
@@ -1,7 +1,3 @@
extern crate extra;
extern crate redox_users;
extern crate termion;
use std::env;
use std::io::{self, Write};
use std::os::unix::process::CommandExt;
-3
View File
@@ -1,8 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
extern crate userutils;
use std::process::exit;
-3
View File
@@ -1,8 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
extern crate userutils;
use std::fs::remove_dir;
use std::process::exit;
-3
View File
@@ -1,8 +1,5 @@
#[macro_use]
extern crate clap;
extern crate extra;
extern crate redox_users;
extern crate userutils;
use std::fs::{remove_dir, rename};
use std::process::exit;
-3
View File
@@ -16,9 +16,6 @@
//! - `sudo`: Enables users to execute a command as another user.
//! - `whoami`: Display effective user ID.
extern crate redox_users;
extern crate libredox;
use std::io::Result as IoResult;
use redox_users::{auth, All, AllGroups, Result, User, Error};