Skip to content

Commit fc7dc7f

Browse files
server name moved to config.toml
1 parent 77973c8 commit fc7dc7f

File tree

7 files changed

+18
-14
lines changed

7 files changed

+18
-14
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ port = 25565
8181
timeout = 10
8282

8383
[server.config]
84+
# Minecraft server name
85+
server_name = "mc-oauth-rs"
8486
# Protocol version (`0` for auto)
8587
protocol = 0
8688
# Minecraft version string

config.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ port = 25566
99
timeout = 20
1010

1111
[server.config]
12+
server_name = "mc-oauth-rs"
1213
protocol = 0
1314
version = "1.21"
1415
auth_url = "https://sessionserver.mojang.com/session/minecraft/hasJoined?username={{NAME}}&serverId={{HASH}}"

src/client_sessions.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use aes::Aes128;
22
use cfb8::Encryptor;
33
use uuid::Uuid;
44

5-
use crate::generators::keys::generate_verify_token;
5+
use crate::{config::get_config, generators::keys::generate_verify_token};
66

77
#[derive(Debug)]
88
pub enum NextStateEnum {
@@ -24,9 +24,11 @@ pub struct Session {
2424
}
2525

2626
impl Session {
27-
pub fn new() -> Self {
27+
pub async fn new() -> Self {
28+
let config = get_config().await;
29+
2830
Self {
29-
server_id: "mc-oauth-rs".to_string(),
31+
server_id: config.server.config.server_name.clone(),
3032
proto_ver: None,
3133
next_state: NextStateEnum::Unknown,
3234
nickname: None,

src/config/server_icon.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,5 @@ use tokio::fs;
33

44
pub async fn load(file_path: &str) -> anyhow::Result<String> {
55
let file_content = fs::read(file_path).await?;
6-
let encoded = base64_encode_bytes(&file_content);
7-
Ok(encoded)
6+
Ok(base64_encode_bytes(&file_content))
87
}

src/config/types.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ pub struct Server {
4848

4949
#[derive(Deserialize, Debug)]
5050
pub struct ServerConfig {
51+
/// Minecraft server name
52+
pub server_name: String,
53+
5154
/// Protocol version (`0` for auto)
5255
pub protocol: usize,
5356

src/handlers/client_handler.rs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ use crate::{
1818

1919
pub async fn handle(mut stream: TcpStream, keys: Arc<rsa::RsaPrivateKey>) -> Result<()> {
2020
let mut buffer = BytesMut::new();
21-
let session = &mut Session::new(); // Create session for current client
21+
let session = &mut Session::new().await; // Create session for current client
2222
let config = get_config().await;
2323

2424
loop {
@@ -111,13 +111,11 @@ pub async fn handle(mut stream: TcpStream, keys: Arc<rsa::RsaPrivateKey>) -> Res
111111
}
112112

113113
fn packet_available(buffer: &mut BytesMut) -> bool {
114-
if buffer.len() == 0 {
114+
if buffer.is_empty() {
115115
return false;
116116
}
117-
118117
// Read packet length
119-
match read_varint(buffer) {
120-
Ok(packet_len) => buffer.len() >= packet_len,
121-
Err(_) => false,
122-
}
118+
read_varint(buffer)
119+
.map(|x| buffer.len() >= x)
120+
.unwrap_or(false)
123121
}

src/packets/login_start.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ use uuid::Uuid;
33

44
use crate::byte_buf_utils::{read_utf8, try_get_uuid};
55

6-
#[allow(dead_code)]
76
pub struct LoginStartPacket {
87
pub name: String,
98
pub uuid: Option<Uuid>,
@@ -13,7 +12,7 @@ impl LoginStartPacket {
1312
pub fn parse(buff: &mut BytesMut) -> anyhow::Result<Self> {
1413
Ok(Self {
1514
name: read_utf8(buff)?,
16-
uuid: try_get_uuid(buff).ok()
15+
uuid: try_get_uuid(buff).ok(),
1716
})
1817
}
1918
}

0 commit comments

Comments
 (0)