• Stefy Lanza (nextime / spora )'s avatar
    Fix tunnel communication corruption and add --enc option to wsssht · fd4a3385
    Stefy Lanza (nextime / spora ) authored
    - Fixed critical data corruption in WebSocket tunnels between wsssht, wssshd, and wssshc
    - Root cause: Inconsistent encoding between components (wsssht used base64, wssshc used hex)
    - Solution: Implemented consistent hex encoding across all tunnel data transmission
    - Added encoding field to tunnel structures for proper encoding negotiation
    - Fixed handle_tunnel_data() to decode using correct encoding type instead of guessing
    
    - Added --enc option to wsssht for data encoding control
    - --enc hex: Hexadecimal encoding (default, backward compatible)
    - --enc base64: Base64 encoding for efficiency
    - --enc bin: Direct binary data transmission
    - Configuration file support with enc = hex option in wsssht.conf
    - Automatic encoding negotiation between wsssht and wssshc clients
    - wsssh and wsscp can pass --enc option to ProxyCommand for wsssht
    
    - Updated documentation and examples
    - Maintained backward compatibility
    fd4a3385
tunnel.c 77.3 KB