From 420c689644a2a80ceba80f613dc4cc3f9c0d5665 Mon Sep 17 00:00:00 2001 From: Maple Date: Sat, 31 Jan 2026 20:41:37 +0100 Subject: [PATCH] fix signature --- prudpv0/src/crypto/friends_insecure.rs | 7 +++++-- prudpv0/src/server.rs | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/prudpv0/src/crypto/friends_insecure.rs b/prudpv0/src/crypto/friends_insecure.rs index d1575e8..9fbfe95 100644 --- a/prudpv0/src/crypto/friends_insecure.rs +++ b/prudpv0/src/crypto/friends_insecure.rs @@ -1,6 +1,7 @@ -use std::rc::Rc; +use std::{io::Write, rc::Rc}; use hmac::Mac; +use md5::{Digest, Md5}; use rc4::{KeyInit, Rc4, StreamCipher}; use rnex_core::prudp::{ encryption::{DEFAULT_KEY, EncryptionPair}, @@ -35,7 +36,9 @@ impl CryptoInstance for InsecureInstance { if data.len() == 0 { [0x78, 0x56, 0x34, 0x12] } else { - let mut hmac = ::new_from_slice(ACCESS_KEY.as_bytes()) + let mut hash = Md5::new(); + hash.write(ACCESS_KEY.as_bytes()).unwrap(); + let mut hmac = ::new_from_slice(&hash.finalize().as_slice()) .expect("unable to create hmac md5"); hmac.update(data); hmac.finalize().into_bytes()[0..4].try_into().unwrap() diff --git a/prudpv0/src/server.rs b/prudpv0/src/server.rs index 87e5fbd..3788478 100644 --- a/prudpv0/src/server.rs +++ b/prudpv0/src/server.rs @@ -109,7 +109,7 @@ impl Server { let mut inner = conn.inner.lock().await; let seq = inner.server_packet_counter; let packet = new_data_packet( - HAS_SIZE | NEED_ACK | RELIABLE, + NEED_ACK | RELIABLE, self.param.virtual_port, conn.addr.virtual_port, data, @@ -268,7 +268,7 @@ impl Server { }); let packet = new_connect_packet( - ACK | HAS_SIZE, + ACK, header.destination, header.source, self_signat,