Skip to content

Commit

Permalink
Fix fuzzing
Browse files Browse the repository at this point in the history
  • Loading branch information
mxinden committed Sep 15, 2024
1 parent 8699209 commit 1b9259c
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
6 changes: 4 additions & 2 deletions fuzz/fuzz_targets/client_initial.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,13 @@ fuzz_target!(|data: &[u8]| {
let (aead, hp) = initial_aead_and_hp(d_cid, Role::Client);
let (_, pn) = remove_header_protection(&hp, header, payload);

let mut payload_enc = Encoder::with_capacity(MIN_INITIAL_PACKET_SIZE);
let mut write_buffer = Vec::with_capacity(MIN_INITIAL_PACKET_SIZE);
let mut payload_enc = Encoder::new_with_buffer(&mut write_buffer);
payload_enc.encode(data); // Add fuzzed data.

// Make a new header with a 1 byte packet number length.
let mut header_enc = Encoder::new();
let mut write_buffer = Vec::new();
let mut header_enc = Encoder::new_with_buffer(&mut write_buffer);
header_enc
.encode_byte(0xc0) // Initial with 1 byte packet number.
.encode_uint(4, Version::default().wire_version())
Expand Down
6 changes: 4 additions & 2 deletions fuzz/fuzz_targets/server_initial.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,13 @@ fuzz_target!(|data: &[u8]| {
let (aead, hp) = initial_aead_and_hp(d_cid, Role::Server);
let (_, pn) = remove_header_protection(&hp, header, payload);

let mut payload_enc = Encoder::with_capacity(MIN_INITIAL_PACKET_SIZE);
let mut write_buffer = Vec::with_capacity(MIN_INITIAL_PACKET_SIZE);
let mut payload_enc = Encoder::new_with_buffer(&mut write_buffer);
payload_enc.encode(data); // Add fuzzed data.

// Make a new header with a 1 byte packet number length.
let mut header_enc = Encoder::new();
let mut write_buffer = Vec::new();
let mut header_enc = Encoder::new_with_buffer(&mut write_buffer);
header_enc
.encode_byte(0xc0) // Initial with 1 byte packet number.
.encode_uint(4, Version::default().wire_version())
Expand Down
1 change: 1 addition & 0 deletions neqo-common/src/codec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@ pub struct Encoder<'a> {
}

impl<'a> Encoder<'a> {
// TODO: Idiomatic would be with_buffer?!
pub fn new_with_buffer(buf: &'a mut Vec<u8>) -> Self {
Self { buf }
}
Expand Down

0 comments on commit 1b9259c

Please sign in to comment.