aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
...
* Handle env channel requestsDirkjan Ochtman2026-01-241-4/+42
|
* Improved logging for unhandled casesDirkjan Ochtman2026-01-241-3/+18
|
* Send response for channel requestsDirkjan Ochtman2026-01-241-5/+49
|
* Make returning a packet optionalDirkjan Ochtman2026-01-242-9/+12
|
* Parse channel request messagesDirkjan Ochtman2026-01-241-0/+283
|
* Loop on receiving channel messagesDirkjan Ochtman2026-01-241-25/+28
|
* Handle channel open messagesDirkjan Ochtman2026-01-242-20/+141
|
* Start tracking channel stateDirkjan Ochtman2026-01-242-6/+61
|
* Parse ChannelOpen messagesDirkjan Ochtman2026-01-242-1/+96
|
* Add message types for connection serviceDavid Venhoek2026-01-241-0/+42
|
* Handle user auth requestsDirkjan Ochtman2026-01-242-5/+61
|
* Parse UserAuthRequest messagesDirkjan Ochtman2026-01-233-3/+151
|
* Add message types for ssh-userauth serviceDavid Venhoek2026-01-231-0/+12
|
* Check for user auth service request messageDirkjan Ochtman2026-01-232-9/+103
|
* Decode ServiceRequest messagesDirkjan Ochtman2026-01-232-1/+48
|
* Implement Debug for IncomingPacketDirkjan Ochtman2026-01-231-5/+20
|
* Parse message type in packet decodingDavid Venhoek2026-01-233-20/+20
| | | | | | This makes the packet type available on all messages, simplifying error handling downstream as it no longer needs to deal with the anomalous case of a completely empty packet.
* Add sequence number field to packetDavid Venhoek2026-01-231-4/+13
| | | | | | This does not yet implement proper handling of sequence numbers. That is a fairly significant refactor which should be done as part of the patches for the encryption/decryption channels.
* Revert "Inline WriteState::handle_packet()"bjorn32026-01-201-2/+12
| | | | | | | It caused poll_write_to to never be called for the unencrypted phase, causing a hang. This reverts commit fc68e05743e83f643659bef10e8bfeb23d9deac1.
* Use tracing spanDirkjan Ochtman2026-01-201-10/+11
|
* Encode outgoing identification in WriteState bufferDirkjan Ochtman2026-01-202-7/+10
|
* Move new key packet exchange into update_keys()Dirkjan Ochtman2026-01-201-21/+10
|
* Avoid unwrapping for sending ignore packetDirkjan Ochtman2026-01-201-2/+6
|
* Upgrade fatal logging to errorDirkjan Ochtman2026-01-201-8/+8
|
* Clarify structure in Connection::run()Dirkjan Ochtman2026-01-201-0/+6
|
* Make ConnectionContext long-livedDirkjan Ochtman2026-01-202-43/+32
|
* Store signature directlyDirkjan Ochtman2026-01-201-6/+4
|
* Log warning on failure to decode packetsDirkjan Ochtman2026-01-201-3/+10
|
* Extract key update into a methodDirkjan Ochtman2026-01-201-6/+14
|
* Inline WriteState::handle_packet()Dirkjan Ochtman2026-01-201-12/+2
|
* Implement conversion of MessageType into u8.David Venhoek2026-01-201-13/+19
|
* Implement encode/decode for boolean.David Venhoek2026-01-201-0/+15
|
* Ensure packet size is at least 16bjorn32026-01-201-1/+2
| | | | This is a requirement of the SSH spec.
* Rename OutgoingPacket to EncodedPacketbjorn32026-01-201-5/+7
| | | | | | This frees up the OutgoingPacket name for a struct or enum representing the contents of a packet to send without all the structure wrapping the payload of a packet.
* Rename Packet to IncomingPacketbjorn32026-01-202-11/+13
| | | | | The Packet type is only used for incoming packets, never for outgoing packets.
* Ensure packets are a multiple of the cipher block sizebjorn32026-01-201-5/+10
|
* Implement support for encryptionbjorn32026-01-203-64/+183
|
* Get rid of the separate PacketBuilderbjorn32026-01-203-63/+30
|
* Tweak styleDirkjan Ochtman2026-01-191-12/+8
|
* Use higher-level abstractions for VersionExchange readingDirkjan Ochtman2026-01-192-26/+26
|
* Rename decrypting_key to decryptionDirkjan Ochtman2026-01-191-5/+5
|
* Use full keys type during decryptionDirkjan Ochtman2026-01-191-13/+10
|
* Clarify documentation for ReadState fieldsDirkjan Ochtman2026-01-191-9/+11
|
* Replace Packet::decode with ReadState::decode_packetbjorn32026-01-191-48/+30
| | | | | This handles accessing the internal decrypted buffer that the user doesn't otherwise have access to.
* Handle NEW_KEYS and set encryption key for ReadStatebjorn32026-01-193-9/+64
|
* Implement support for decryption in ReadStatebjorn32026-01-193-40/+200
|
* Move packet parsing out of ReadState::packetbjorn32026-01-192-72/+32
| | | | | | | | | Outside of a couple very narrow cases like the initial packet and (when strict key exchange is used) the rest of the key exchange, there is never a single fixed packet type which can be received at any given point in time. As such immediately parsing the packet to a fixed type in ReadState::packet doesn't help much, while it does complicate the code a bit.
* Introduce Completion enumbjorn32026-01-192-11/+16
|
* Fix validation of the identification stringbjorn32026-01-191-1/+3
| | | | | The max size of the identification string is 255 including CRLF, not 256 excluding CRLF.
* Truncate buffer when reading from streamDirkjan Ochtman2026-01-172-10/+10
|