diff options
author | Darren Tucker <dtucker@zip.com.au> | 2009-06-21 18:12:20 +1000 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2009-06-21 18:12:20 +1000 |
commit | f7288d77e4e705cbbc12c2ad55ed50f9de9a87e2 (patch) | |
tree | 77f63923d1bc97e2aeda861699e1d2d00d645eda /monitor_wrap.c | |
parent | 51dbe503bf92ee38f003ffde4bb0a0d85c438ea7 (diff) |
- andreas@cvs.openbsd.org 2009/05/27 06:31:25
[canohost.h canohost.c]
Add clear_cached_addr(), needed for upcoming changes allowing the peer
address to change.
ok markus@
Diffstat (limited to 'monitor_wrap.c')
-rw-r--r-- | monitor_wrap.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/monitor_wrap.c b/monitor_wrap.c index db3251b93..d71d4a8c5 100644 --- a/monitor_wrap.c +++ b/monitor_wrap.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: monitor_wrap.c,v 1.65 2009/03/05 07:18:19 djm Exp $ */ | 1 | /* $OpenBSD: monitor_wrap.c,v 1.66 2009/05/25 06:48:01 andreas Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | 3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> |
4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> | 4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> |
@@ -80,11 +80,9 @@ | |||
80 | 80 | ||
81 | /* Imports */ | 81 | /* Imports */ |
82 | extern int compat20; | 82 | extern int compat20; |
83 | extern Newkeys *newkeys[]; | ||
84 | extern z_stream incoming_stream; | 83 | extern z_stream incoming_stream; |
85 | extern z_stream outgoing_stream; | 84 | extern z_stream outgoing_stream; |
86 | extern struct monitor *pmonitor; | 85 | extern struct monitor *pmonitor; |
87 | extern Buffer input, output; | ||
88 | extern Buffer loginmsg; | 86 | extern Buffer loginmsg; |
89 | extern ServerOptions options; | 87 | extern ServerOptions options; |
90 | 88 | ||
@@ -509,7 +507,7 @@ mm_newkeys_to_blob(int mode, u_char **blobp, u_int *lenp) | |||
509 | Enc *enc; | 507 | Enc *enc; |
510 | Mac *mac; | 508 | Mac *mac; |
511 | Comp *comp; | 509 | Comp *comp; |
512 | Newkeys *newkey = newkeys[mode]; | 510 | Newkeys *newkey = (Newkeys *)packet_get_newkeys(mode); |
513 | 511 | ||
514 | debug3("%s: converting %p", __func__, newkey); | 512 | debug3("%s: converting %p", __func__, newkey); |
515 | 513 | ||
@@ -571,7 +569,7 @@ mm_send_kex(Buffer *m, Kex *kex) | |||
571 | void | 569 | void |
572 | mm_send_keystate(struct monitor *monitor) | 570 | mm_send_keystate(struct monitor *monitor) |
573 | { | 571 | { |
574 | Buffer m; | 572 | Buffer m, *input, *output; |
575 | u_char *blob, *p; | 573 | u_char *blob, *p; |
576 | u_int bloblen, plen; | 574 | u_int bloblen, plen; |
577 | u_int32_t seqnr, packets; | 575 | u_int32_t seqnr, packets; |
@@ -609,7 +607,8 @@ mm_send_keystate(struct monitor *monitor) | |||
609 | } | 607 | } |
610 | 608 | ||
611 | debug3("%s: Sending new keys: %p %p", | 609 | debug3("%s: Sending new keys: %p %p", |
612 | __func__, newkeys[MODE_OUT], newkeys[MODE_IN]); | 610 | __func__, packet_get_newkeys(MODE_OUT), |
611 | packet_get_newkeys(MODE_IN)); | ||
613 | 612 | ||
614 | /* Keys from Kex */ | 613 | /* Keys from Kex */ |
615 | if (!mm_newkeys_to_blob(MODE_OUT, &blob, &bloblen)) | 614 | if (!mm_newkeys_to_blob(MODE_OUT, &blob, &bloblen)) |
@@ -656,8 +655,10 @@ mm_send_keystate(struct monitor *monitor) | |||
656 | buffer_put_string(&m, &incoming_stream, sizeof(incoming_stream)); | 655 | buffer_put_string(&m, &incoming_stream, sizeof(incoming_stream)); |
657 | 656 | ||
658 | /* Network I/O buffers */ | 657 | /* Network I/O buffers */ |
659 | buffer_put_string(&m, buffer_ptr(&input), buffer_len(&input)); | 658 | input = (Buffer *)packet_get_input(); |
660 | buffer_put_string(&m, buffer_ptr(&output), buffer_len(&output)); | 659 | output = (Buffer *)packet_get_output(); |
660 | buffer_put_string(&m, buffer_ptr(input), buffer_len(input)); | ||
661 | buffer_put_string(&m, buffer_ptr(output), buffer_len(output)); | ||
661 | 662 | ||
662 | mm_request_send(monitor->m_recvfd, MONITOR_REQ_KEYEXPORT, &m); | 663 | mm_request_send(monitor->m_recvfd, MONITOR_REQ_KEYEXPORT, &m); |
663 | debug3("%s: Finished sending state", __func__); | 664 | debug3("%s: Finished sending state", __func__); |