ksud: remove http serve mode

This commit is contained in:
weishu
2024-02-22 16:26:03 +08:00
parent 355b55a01d
commit 9c4d20c0f2
5 changed files with 1 additions and 598 deletions

View File

@@ -7,7 +7,7 @@ use android_logger::Config;
#[cfg(target_os = "android")]
use log::LevelFilter;
use crate::{apk_sign, debug, defs, event, module, server, utils};
use crate::{apk_sign, debug, defs, event, module, utils};
/// KernelSU userspace cli
#[derive(Parser, Debug)]
@@ -183,15 +183,6 @@ enum Module {
/// Shrink module image size
Shrink,
/// Serve module webroot
Serve {
/// module id
id: String,
/// port
#[arg(default_value = "8080")]
port: u16,
},
/// Link modules for manager
LinkManager {
/// module id
@@ -281,7 +272,6 @@ pub fn run() -> Result<()> {
Module::Disable { id } => module::disable_module(&id),
Module::List => module::list_modules(),
Module::Shrink => module::shrink_ksu_images(),
Module::Serve { id, port } => server::serve_module(&id, port),
Module::LinkManager { mid, pid, pkg } => {
module::link_module_for_manager(pid, &pkg, &mid)
}

View File

@@ -11,7 +11,6 @@ mod mount;
mod profile;
mod restorecon;
mod sepolicy;
mod server;
mod utils;
fn main() -> anyhow::Result<()> {

View File

@@ -1,33 +0,0 @@
use anyhow::Result;
use axum::Router;
use std::net::SocketAddr;
use std::path::Path;
use tower_http::services::ServeDir;
use crate::defs;
async fn serve(dir: impl AsRef<Path>, port: u16) {
let app = Router::new().nest_service("/", ServeDir::new(dir)).route(
"/stop",
axum::routing::get(|| async {
log::info!("stopping server");
std::process::exit(0);
}),
);
let addr = SocketAddr::from(([127, 0, 0, 1], port));
let listener = tokio::net::TcpListener::bind(addr).await.unwrap();
axum::serve(listener, app).await.unwrap();
}
pub fn serve_module(id: &str, port: u16) -> Result<()> {
let module_dir = std::path::PathBuf::from(defs::MODULE_DIR)
.join(id)
.join(defs::MODULE_WEB_DIR);
serve_dir(module_dir, port)
}
pub fn serve_dir(dir: impl AsRef<Path>, port: u16) -> Result<()> {
let rt = tokio::runtime::Runtime::new()?;
rt.block_on(serve(dir, port));
Ok(())
}