History log of /openbsd/usr.bin/ssh/packet.h (Results 1 – 25 of 99)
Revision Date Author Comments
# 5411e769 15-Aug-2024 djm <djm@openbsd.org>

Convert RSA and ECDSA key to the libcrypto EVP_PKEY API. DSA remains
unconverted as it will be removed within six months.

Based on patches originally from Dmitry Belyavskiy, but significantly
rework

Convert RSA and ECDSA key to the libcrypto EVP_PKEY API. DSA remains
unconverted as it will be removed within six months.

Based on patches originally from Dmitry Belyavskiy, but significantly
reworked based on feedback from Bob Beck, Joel Sing and especially
Theo Buehler (apologies to anyone I've missed).

ok tb@

show more ...


# 5a862d4e 17-May-2024 jsg <jsg@openbsd.org>

remove prototypes with no matching function; ok djm@


# 71f11376 17-May-2024 djm <djm@openbsd.org>

Start the process of splitting sshd into separate binaries. This step
splits sshd into a listener and a session binary. More splits are
planned.

After this changes, the listener binary will validate

Start the process of splitting sshd into separate binaries. This step
splits sshd into a listener and a session binary. More splits are
planned.

After this changes, the listener binary will validate the configuration,
load the hostkeys, listen on port 22 and manage MaxStartups only. All
session handling will be performed by a new sshd-session binary that the
listener fork+execs.

This reduces the listener process to the minimum necessary and sets us
up for future work on the sshd-session binary.

feedback/ok markus@ deraadt@

NB. if you're updating via source, please restart sshd after installing,
otherwise you run the risk of locking yourself out.

show more ...


# 622b8b35 18-Dec-2023 djm <djm@openbsd.org>

implement "strict key exchange" in ssh and sshd

This adds a protocol extension to improve the integrity of the SSH
transport protocol, particular in and around the initial key exchange
(KEX) phase.

implement "strict key exchange" in ssh and sshd

This adds a protocol extension to improve the integrity of the SSH
transport protocol, particular in and around the initial key exchange
(KEX) phase.

Full details of the extension are in the PROTOCOL file.

with markus@

show more ...


# 1d1d6304 28-Aug-2023 djm <djm@openbsd.org>

Add keystroke timing obfuscation to the client.

This attempts to hide inter-keystroke timings by sending interactive
traffic at fixed intervals (default: every 20ms) when there is only a
small amoun

Add keystroke timing obfuscation to the client.

This attempts to hide inter-keystroke timings by sending interactive
traffic at fixed intervals (default: every 20ms) when there is only a
small amount of data being sent. It also sends fake "chaff" keystrokes
for a random interval after the last real keystroke. These are
controlled by a new ssh_config ObscureKeystrokeTiming keyword/

feedback/ok markus@

show more ...


# c3c0dfb3 22-Jan-2022 djm <djm@openbsd.org>

add a ssh_packet_process_read() function that reads from a fd
directly into the transport input buffer.

Use this in the client and server mainloops to avoid unnecessary
copying. It also lets us use

add a ssh_packet_process_read() function that reads from a fd
directly into the transport input buffer.

Use this in the client and server mainloops to avoid unnecessary
copying. It also lets us use a more greedy read size without penalty.

Yields a 2-3% performance gain on cipher-speed.sh (in a fairly
unscientific test tbf)

feedback dtucker@ ok markus@

show more ...


# 76eecf5e 16-Jul-2021 djm <djm@openbsd.org>

Explicitly check for and start time-based rekeying in the client
and server mainloops.

Previously the rekey timeout could expire but rekeying would not start
until a packet was sent or received. Thi

Explicitly check for and start time-based rekeying in the client
and server mainloops.

Previously the rekey timeout could expire but rekeying would not start
until a packet was sent or received. This could cause us to spin in
select() on the rekey timeout if the connection was quiet.

ok markus@

show more ...


# 6a67d380 06-Mar-2020 markus <markus@openbsd.org>

sshpkt_fatal() does not return; ok djm


# 1f96526f 06-Sep-2019 djm <djm@openbsd.org>

fixes for !WITH_OPENSSL compilation; ok dtucker@


# b115be19 21-Jan-2019 djm <djm@openbsd.org>

pass values used in KEX hash computation as sshbuf rather than
pointer+len

suggested by me; implemented by markus@ ok me


# f37f3ee2 21-Jan-2019 djm <djm@openbsd.org>

Make sshpkt_get_bignum2() allocate the bignum it is parsing rather
than make the caller do it. Saves a lot of boilerplate code.

from markus@ ok djm@


# ca2a3e00 19-Jan-2019 djm <djm@openbsd.org>

allow sshpkt_fatal() to take a varargs format; we'll use this to give
packet-related fatal error messages more context (esp. the remote endpoint)
ok markus@


# 8904d296 19-Jan-2019 djm <djm@openbsd.org>

begin landing remaining refactoring of packet parsing API, started
almost exactly six years ago.

This change stops including the old packet_* API by default and makes
each file that requires the old

begin landing remaining refactoring of packet parsing API, started
almost exactly six years ago.

This change stops including the old packet_* API by default and makes
each file that requires the old API include it explicitly. We will
commit file-by-file refactoring to remove the old API in consistent
steps.

with & ok markus@

show more ...


# 89e51244 09-Jul-2018 markus <markus@openbsd.org>

ttymodes: switch to sshbuf API; ok djm@


# e260cbad 06-Jul-2018 sf <sf@openbsd.org>

Remove unused ssh_packet_start_compression()

ok markus@


# 85740555 10-Dec-2017 dtucker <dtucker@openbsd.org>

Put remote client info back into the ClientAlive connection termination
message. Based in part on diff from lars.nooden at gmail, ok djm


# 4548edcd 25-Oct-2017 djm <djm@openbsd.org>

add sshd_config RDomain keyword to place sshd and the subsequent
user session (including the shell and any TCP/IP forwardings) into
the specified rdomain(4)

ok markus@


# 7b28dfb0 12-Sep-2017 djm <djm@openbsd.org>

refactor channels.c

Move static state to a "struct ssh_channels" that is allocated at
runtime and tracked as a member of struct ssh.

Explicitly pass "struct ssh" to all channels functions.

Replace

refactor channels.c

Move static state to a "struct ssh_channels" that is allocated at
runtime and tracked as a member of struct ssh.

Explicitly pass "struct ssh" to all channels functions.

Replace use of the legacy packet APIs in channels.c.

Rework sshd_config PermitOpen handling: previously the configuration
parser would call directly into the channels layer. After the refactor
this is not possible, as the channels structures are allocated at
connection time and aren't available when the configuration is parsed.
The server config parser now tracks PermitOpen itself and explicitly
configures the channels code later.

ok markus@

show more ...


# 22085753 31-May-2017 markus <markus@openbsd.org>

clear session keys from memory; ok djm@


# bd5af9a5 30-May-2017 markus <markus@openbsd.org>

sshd: pass struct ssh to auth functions; ok djm@


# d6d98383 03-May-2017 naddy <naddy@openbsd.org>

remove miscellaneous SSH1 leftovers; ok markus@


# b2a4bdcc 30-Apr-2017 djm <djm@openbsd.org>

remove SSHv1 support from packet and buffer APIs

ok markus@


# f1cc710a 30-Apr-2017 djm <djm@openbsd.org>

remove compat20/compat13/compat15 variables

ok markus@


# 06d32e90 03-Feb-2017 djm <djm@openbsd.org>

add ssh_packet_set_log_preamble() to allow inclusion of a preamble
string in disconnect messages; ok markus@


# 447aea76 03-Feb-2017 dtucker <dtucker@openbsd.org>

Make ssh_packet_set_rekey_limits take u32 for the number of seconds
until rekeying (negative values are rejected at config parse time).
This allows the removal of some casts and a signed vs unsigned

Make ssh_packet_set_rekey_limits take u32 for the number of seconds
until rekeying (negative values are rejected at config parse time).
This allows the removal of some casts and a signed vs unsigned
comparison warning.

rekey_time is cast to int64 for the comparison which is a no-op
on OpenBSD, but should also do the right thing in -portable on
anything still using 32bit time_t (until the system time actually
wraps, anyway).

some early guidance deraadt@, ok djm@

show more ...


1234