1
Fork 0
mirror of https://github.com/redstrate/Kawari.git synced 2025-07-09 23:47:46 +00:00

Move scrambler module to packet

This is to make WebAssembly builds work again, because the world
module isn't compiled there.
This commit is contained in:
Joshua Goins 2025-07-04 12:22:49 -04:00
parent 7ccd132129
commit 7291863481
6 changed files with 15 additions and 13 deletions

View file

@ -6,10 +6,12 @@ use binrw::{BinRead, BinResult};
use crate::{ use crate::{
config::get_config, config::get_config,
packet::{PacketHeader, PacketSegment}, packet::{PacketHeader, PacketSegment},
world::{ScramblerKeys, scramble_packet},
}; };
use super::{IPC_HEADER_SIZE, PacketState, ReadWriteIpcSegment, SegmentData, oodle::OodleNetwork}; use super::{
IPC_HEADER_SIZE, PacketState, ReadWriteIpcSegment, ScramblerKeys, SegmentData,
oodle::OodleNetwork, scramble_packet,
};
#[binrw] #[binrw]
#[brw(repr = u8)] #[brw(repr = u8)]

View file

@ -21,3 +21,8 @@ pub mod oodle;
mod send_helpers; mod send_helpers;
#[cfg(not(target_family = "wasm"))] #[cfg(not(target_family = "wasm"))]
pub use send_helpers::{send_keep_alive, send_packet}; pub use send_helpers::{send_keep_alive, send_packet};
mod scrambler;
pub use scrambler::{
OBFUSCATION_ENABLED_MODE, ScramblerKeyGenerator, ScramblerKeys, scramble_packet,
};

View file

@ -3,11 +3,11 @@ use std::io::Cursor;
use binrw::BinWrite; use binrw::BinWrite;
use tokio::{io::AsyncWriteExt, net::TcpStream}; use tokio::{io::AsyncWriteExt, net::TcpStream};
use crate::{common::timestamp_msecs, world::ScramblerKeys}; use crate::common::timestamp_msecs;
use super::{ use super::{
CompressionType, ConnectionType, PacketHeader, PacketSegment, PacketState, ReadWriteIpcSegment, CompressionType, ConnectionType, PacketHeader, PacketSegment, PacketState, ReadWriteIpcSegment,
SegmentData, SegmentType, compression::compress, ScramblerKeys, SegmentData, SegmentType, compression::compress,
}; };
pub async fn send_packet<T: ReadWriteIpcSegment>( pub async fn send_packet<T: ReadWriteIpcSegment>(

View file

@ -28,14 +28,14 @@ use crate::{
}, },
opcodes::ServerZoneIpcType, opcodes::ServerZoneIpcType,
packet::{ packet::{
CompressionType, ConnectionType, PacketSegment, PacketState, SegmentData, SegmentType, CompressionType, ConnectionType, OBFUSCATION_ENABLED_MODE, PacketSegment, PacketState,
parse_packet, send_packet, ScramblerKeyGenerator, ScramblerKeys, SegmentData, SegmentType, parse_packet, send_packet,
}, },
}; };
use super::{ use super::{
Actor, CharacterData, EffectsBuilder, Event, LuaPlayer, OBFUSCATION_ENABLED_MODE, Actor, CharacterData, EffectsBuilder, Event, LuaPlayer, StatusEffects, ToServer, WorldDatabase,
ScramblerKeyGenerator, ScramblerKeys, StatusEffects, ToServer, WorldDatabase, Zone, Zone,
common::{ClientId, ServerHandle}, common::{ClientId, ServerHandle},
load_init_script, load_init_script,
lua::Task, lua::Task,

View file

@ -30,8 +30,3 @@ pub use custom_ipc_handler::handle_custom_ipc;
mod common; mod common;
pub use common::{ClientHandle, ClientId, FromServer, ServerHandle, ToServer}; pub use common::{ClientHandle, ClientId, FromServer, ServerHandle, ToServer};
mod scrambler;
pub use scrambler::{
OBFUSCATION_ENABLED_MODE, ScramblerKeyGenerator, ScramblerKeys, scramble_packet,
};