| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
algorithm of kex->hostkey_alg is incorrect when the key type isn't
capable of making those signatures. ok markus@
|
|
|
|
|
| |
check that the negotiated algorithm matches the type in the
signature (only matters for RSA SHA1/SHA2 sigs). ok markus@
|
|
|
|
| |
which uses CLOCK_MONOTONIC and works over clock steps. "I like" markus@
|
|
|
|
|
|
|
|
|
|
|
| |
At the client, the device may be obtained from a new %T expansion
for LocalCommand.
At the server, the allocated devices will be listed in a
SSH_TUNNEL variable exposed to the environment of any user sessions
started after the tunnel forwarding was established.
ok markus
|
|
|
|
| |
refactor; spotted by millert@ "makes sense" deraadt@
|
|
|
|
|
|
|
|
|
|
|
| |
Previously we tracked the remote channel IDs in an int, but this is
strictly incorrect: the wire protocol uses uint32 and there is nothing
in-principle stopping a SSH implementation from sending, say, 0xffff0000.
In practice everyone numbers their channels sequentially, so this has
never been a problem.
ok markus@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
| |
to come...); ok markus@
|
|
|
|
|
| |
level. Prevents it from appearing during ssh -J and equivalent ProxyCommand
configs. bz#1906, bz#2744, feedback&ok markus@
|
|
|
|
|
|
|
|
|
| |
client_simple_escape_filter() -> process_escapes() -> fork() and the pledge for
this path lacks the proc promise and therefore aborts the process.
The solution is to just add proc the promise to this specific pledge.
Reported by Gregoire Jadi gjadi ! omecha.info
Insight with tb@, OK jca@
|
|
|
|
|
|
| |
are handled safely, and there also is no need for preallocation dances.
Future changes in this area will be less error prone.
Review and one bug found by markus
|
| |
|
| |
|
| |
|
|
|
|
| |
ok markus@
|
| |
|
|
|
|
| |
ok markus@
|
|
|
|
| |
ok markus@
|
|
|
|
|
|
|
| |
any RSA keytype. Previously, ssh could ignore RSA keys when any of the
ssh-rsa-sha2-* methods was enabled in HostkeyAlgorithms nit ssh-rsa
(SHA1 signatures) was not. bz#2650 reported by Luis Ressel;
ok dtucker@
|
|
|
|
| |
bz#2672, from Brad Marshall via Colin Watson and Ubuntu's bugtracker.
|
|
|
|
|
|
|
|
|
| |
- mux client speaks the ssh-packet protocol directly over unix-domain socket.
- mux server acts as a proxy, translates channel IDs and relays to the server.
- no filedescriptor passing necessary.
- combined with unix-domain forwarding it's even possible to run mux client
and server on different machines.
feedback & ok djm@
|
|
|
|
| |
ok deraadt natano
|
|
|
|
|
| |
rather than pulling <sys/param.h> and unknown namespace pollution.
ok djm markus dtucker
|
|
|
|
| |
ok dtucker@
|
|
|
|
|
|
|
| |
when Control* keywords were set in ssh_config. This patch also fixes
similar problems with scp and sftp.
ok deraadt, looks good to millert
|
|
|
|
|
|
|
|
|
|
|
| |
This makes automatic rekeying internal to the packet code (previously
the server and client loops needed to assist). In doing to it makes
application of rekey limits more accurate by accounting for packets
about to be sent as well as packets queued during rekeying events
themselves.
Based on a patch from dtucker@ which was in turn based on a patch
Aleksander Adamowski in bz#2521; ok markus@
|
|
|
|
|
| |
message when DISPLAY is not set. This could also result in a crash
on systems with a printf that doesn't handle NULL. OK djm@
|
| |
|
|
|
|
|
|
|
| |
returning from client_loop() for consistency with
buffer_free()/sshbuf_free().
ok dtucker@ deraadt@ djm@
|
| |
|
|
|
|
|
| |
forwarding when the X server disables the SECURITY extension;
Reported by Thomas Hoger; ok deraadt@
|
|
|
|
|
|
| |
problem found by halex@
ok halex@
|
|
|
|
|
|
|
|
|
| |
- mux client: which is used when ControlMaster is in use.
will end with "stdio proc tty" (proc is to permit sending SIGWINCH to mux master on window resize)
- client loop: several levels of pledging depending of your used options
ok deraadt@
|
|
|
|
| |
ok djm@
|
|
|
|
|
| |
PubkeyAcceptedKeyTypes to the client side, so it still can be
tested or turned back on; feedback and ok djm@
|
|
|
|
| |
ForwardX11Timeout expires; reported by Jann Horn
|
|
|
|
|
|
|
|
|
|
| |
we only ever use it for strlen(pattern).
Prompted by hanno AT hboeck.de pointing an out-of-bound read
error caused by an incorrect pattern length found using AFL
and his own tools.
ok markus@
|
| |
|
|
|
|
| |
confirmation question; reported by Herb Goldman
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I accidentally changed the format of the hostkeys@openssh.com messages
last week without changing the extension name, and this has been causing
connection failures for people who are running -current. First reported
by sthen@
s/hostkeys@openssh.com/hostkeys-00@openssh.com/
Change the name of the proof message too, and reorder it a little.
Also, UpdateHostKeys=ask is incompatible with ControlPersist (no TTY
available to read the response) so disable UpdateHostKeys if it is in
ask mode and ControlPersist is active (and document this)
|
|
|
|
|
|
|
|
|
|
| |
The client will not ask the server to prove ownership of the private
halves of any hitherto-unseen hostkeys it offers to the client.
Allow UpdateHostKeys option to take an 'ask' argument to let the
user manually review keys offered.
ok markus@
|
|
|
|
|
|
| |
Deal with IP addresses (i.e. CheckHostIP)
Don't clobber known_hosts when nothing changed
ok markus@ as part of larger commit
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a hostkeys@openssh.com protocol extension (global request) for
a server to inform a client of all its available host key after
authentication has completed. The client may record the keys in
known_hosts, allowing it to upgrade to better host key algorithms
and a server to gracefully rotate its keys.
The client side of this is controlled by a UpdateHostkeys config
option (default on).
ok markus@
|
|
|
|
| |
ok djm markus
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
a) switch packet.c to buffer api and isolate per-connection info into struct ssh
b) (de)serialization of the state is moved from monitor to packet.c
c) the old packet.c API is implemented in opacket.[ch]
d) compress.c/h is removed and integrated into packet.c
with and ok djm@
|
|
|
|
| |
ok markus@
|
|
|
|
|
|
|
|
| |
may be forwarded to a local Unix domain socket and vice versa or
both ends may be a Unix domain socket. This is a reimplementation
of the streamlocal patches by William Ahern from:
http://www.25thandclement.com/~william/projects/streamlocal.html
OK djm@ markus@
|
|
|
|
| |
with gerhard@, ok djm@
|