Markus Friedl
568a12a63e
defatal mac.[ch]
...
Conflicts:
ssh/packet.c
2012-01-17 14:42:52 +01:00
Damien Miller
ef0c2e123f
defatal cipher.[ch]
...
unbreak arcfour(128|256)
2012-01-17 14:37:27 +01:00
Markus Friedl
c037dfa962
deal with error-codes returned by dispatch function (fatal for now)
2012-01-17 14:37:27 +01:00
Markus Friedl
f63a37137d
de-fatal kex dh (test for de-fatal of packet.c)
2012-01-17 14:37:27 +01:00
Markus Friedl
52128ed203
packet.c: s/ret/r/g
2012-01-17 14:37:27 +01:00
Markus Friedl
43f038abce
ssh_packet_read_poll/seqnr now return an error and no longer use xmalloc
2012-01-17 14:37:27 +01:00
Markus Friedl
9e254e24c5
new sshpkt API: {get,put} wraps ssh_packet_{get,put}, adds {get_end,disconnect}
2012-01-17 14:37:27 +01:00
Markus Friedl
54c5205bc4
switch packet.c from buffer_* to sshbuf_* and call fatal on failure
...
this moves the call to fatal() to packet.c itself.
2012-01-17 14:37:27 +01:00
Markus Friedl
9662f3f978
replace Buffer with allocated 'struct sshbuf *' in session_state
2012-01-17 14:37:27 +01:00
Damien Miller
7861f112ba
disable SSHBUF_ABORT and fix compilation with it turned off
2012-01-17 14:37:27 +01:00
Damien Miller
44dce8d972
reinitialise compression buffers in postauth privsep child
...
the postauth privsep child never had its compression buffers initialised.
the old buffer code would would because they were (fortunately) bzeroed,
but the new code is more paranoid.
There is probably a more minimal way to do this that I'm missing :)
2012-01-17 14:37:26 +01:00
Markus Friedl
b720702ef3
unbreak ssh_add_hostkey(): sshkey_read() returns 0 on sucess
2012-01-17 14:37:26 +01:00
Markus Friedl
585db2baab
move kex-specific states to struct kex and release states in kex_free()
2012-01-17 14:37:26 +01:00
Markus Friedl
0e69e20693
dispatch_fn() now returns an error code (int) instead of void
2012-01-17 14:37:26 +01:00
Markus Friedl
4f48a68397
rename ssh_packet_get() to ssh_packet_next() and document resulting API
2012-01-17 14:37:26 +01:00
Markus Friedl
c905073179
ssh_api.c: offer hostkey algorithms depending on registered keys
...
For now, the 'serialized' proposal is de-serialized, modified, and
serialized again in order to change the hostkey algorithm.
2012-01-17 14:36:45 +01:00
Damien Miller
c79348e375
better parameter checking for RSA key generation
2012-01-17 14:32:49 +01:00
Damien Miller
c90c1905fd
fix conversion of key types to "plain" (non-cert) names
...
makes cert-* regress pass
2012-01-17 14:32:49 +01:00
Damien Miller
207b5422e6
fix ecdsa signatures from Markus
...
guess I somehow botched Markus' pull request :(
2012-01-17 14:32:49 +01:00
Markus Friedl
97a2b75862
dump packet content to stderr if ssh-proxy is started with -D
2012-01-17 14:32:49 +01:00
Markus Friedl
79762ba77d
fix reading/writing of pubic keys
...
pubkeys are stored base64 not base16 and
deal with spaces in pubkeys correctly.
2012-01-17 14:32:49 +01:00
Markus Friedl
e339f7589e
key_verify now returns 0 on success and < 0 on error
...
(used to return 1 on success 0 on failed signatures and -1
on error)
2012-01-17 14:32:49 +01:00
Damien Miller
ea5ceecdc2
first cut at merging disentangled buffer and library code. buffer_* continue
...
to exist as thin wrappers around sshbuf_*
doesn't yet pass regress (breakage in hostkey checking, probably related to
new sshkey_* return values)
2012-01-17 14:32:48 +01:00
Markus Friedl
7c423254e3
add ssh_free() to API and use it in the proxy
2012-01-17 14:32:48 +01:00
Markus Friedl
81e3938108
add a libevent based ssh proxy
...
example usage:
% test -f /tmp/hk2 || ssh-keygen -N '' -t ecdsa -f /tmp/hk2
% ssh-keyscan -t ecdsa 127.0.0.1 | sed 's/^[^ ]* //' > /tmp/hk.pub
% ./ssh-proxy/obj/ssh-proxy -f -S /tmp/hk2 -C /tmp/hk.pub -L 127.0.0.1:12345:127.0.0.1:22 -d
% ssh -o hostkeyalgorithms'='ecdsa-sha2-nistp256 -o hostkeyalias'='egal2 -v 127.0.0.1 -p 12345
2012-01-17 14:32:48 +01:00
Markus Friedl
c714b85e60
do not send service request/accept during rekeying
2012-01-17 14:32:48 +01:00
Markus Friedl
9f176fa427
don't forget to send the packet
2012-01-17 14:32:48 +01:00
Markus Friedl
e7792bcbe2
use ssh_packet_* in dispatch.c
2012-01-17 14:32:48 +01:00
Markus Friedl
36bd2a3bbd
remove the last argument from ssh_dispatch_run()
...
since it's always the same as the first...
2012-01-17 14:32:48 +01:00
Markus Friedl
e38108317d
generate the compat dispatch API only if requested
2012-01-17 14:32:48 +01:00
Markus Friedl
bb19f6ffb3
switch sshd-auth2 to ssh_packet_*
2012-01-17 14:32:48 +01:00
Markus Friedl
a9e3bee9b9
switch sshd-auth2 code from dispatch to ssh_dispatch
2012-01-17 14:32:48 +01:00
Markus Friedl
81b6a34857
the host key verification callbacks always get a 'struct ssh *'
...
so change the prototypes accordingly (from void *).
2012-01-17 14:32:48 +01:00
Markus Friedl
c8197a3b42
change all protocol handlers from 'void *' to 'struct ssh *'
2012-01-17 14:32:48 +01:00
Markus Friedl
b1920d0ebe
sshd: pass struct ssh instead of authctxt to authentication handlers
2012-01-17 14:32:48 +01:00
Markus Friedl
543ff8b66b
skip compat api for sshconnect2.c
2012-01-17 14:32:48 +01:00
Markus Friedl
746426cf6e
replace dispatch wrapper with #defines
2012-01-17 14:32:47 +01:00
Markus Friedl
93081a66ae
move statics from userauth_gssapi to Authctxt
2012-01-17 14:32:47 +01:00
Markus Friedl
3cb4b0e6de
userauth: add # of attempts to authctxt
2012-01-17 14:32:47 +01:00
Markus Friedl
6e946b8c40
client userauth: packet_ -> ssh_packet_ and dispatch_ -> ssh_dispatch_
...
remove globals: move hostname/address for hostkey verification to 'struct ssh'
2012-01-17 14:32:47 +01:00
Markus Friedl
b2a6a55106
sync to openssh cvs as of 2012/01/08
2012-01-17 14:32:47 +01:00
Markus Friedl
9ab2398fe8
remove unused packet_*() defines
2012-01-17 14:32:47 +01:00
Markus Friedl
205959230c
ssh_api.h: remove obsolete comment
2012-01-17 14:32:47 +01:00
Markus Friedl
1b2b926894
unifdef ETCDIR
2012-01-17 14:32:47 +01:00
Markus Friedl
3bbc21f3af
packet.c: s/ssh->state/state/
2012-01-17 14:32:47 +01:00
Markus Friedl
c44b8a2397
active_state declaration already in packet.h
2012-01-17 14:32:47 +01:00
Markus Friedl
6043e0c641
let packet_set_connection create the active_state, again
2012-01-17 14:32:47 +01:00
Markus Friedl
bb5f42a34e
replace most of opacket.c with #defines
2012-01-17 14:32:47 +01:00
Markus Friedl
fd206f1cc3
remove duplicates from session_state
2012-01-17 14:32:47 +01:00
Markus Friedl
6c9eb04eb4
enable warnings
2012-01-17 14:32:47 +01:00