serial-capture 0.1.0

Cross-platform USB virtual COM port capture (CH340, FT232, FT2232, PL2303, CDC-ACM)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use super::Decoder;
use crate::capture::Direction;

/// Prolific PL2303 family USB-serial bridges (PL2303HX/HXD/EA/RA/TA, PL2303GC).
///
/// Bulk IN and OUT carry raw serial bytes; configuration uses vendor control
/// transfers. No per-URB wrapper to strip.
pub struct Pl2303;

impl Decoder for Pl2303 {
    fn name(&self) -> &'static str {
        "pl2303"
    }

    fn decode(&mut self, _dir: Direction, payload: &[u8], out: &mut Vec<u8>) {
        out.extend_from_slice(payload);
    }
}