//! Fuzz target for WebSocket frame parsing. //! //! Tests that the WebSocket frame parser handles malformed input gracefully //! without panicking or memory safety issues. #![no_main] use libfuzzer_sys::fuzz_target; fuzz_target!(|data: &[u8]| { // Test WebSocket frame parsing with arbitrary bytes // This covers the upgrade handshake and frame parsing logic // Simulate a WebSocket upgrade request with fuzzed headers let _ = std::str::from_utf8(data); // Test SHA-1 computation (used in WebSocket accept key) use sha1::Digest; let mut sha1 = sha1::Sha1::new(); sha1.update(data); let _ = sha1.finalize(); // Test base64 encoding (used in WebSocket accept key) use base64::Engine; let _ = base64::engine::general_purpose::STANDARD.encode(data); });