Mercurial > dropbear
annotate cli-channel.c @ 1638:315fcba6960e
dropbearconvert: keyimport.c: fix BER encoding of secp521r1 keys (#69)
keysizes >= 128 octets will be encoded with a 3 byte header
which must be accounted by the optional-header
Reproduce:
master:~/build/dropbear$ ./dropbearkey -t ecdsa -s 521 -f K
Generating 521 bit ecdsa key, this may take a while...
master:~/build/dropbear$ ./dropbearconvert d o K L
Key is a ecdsa-sha2-nistp521 key
Wrote key to 'L'
master:~/build/dropbear$ openssl ec < L
read EC key
unable to load Key
139769806448384:error:0D07209B:asn1 encoding routines:ASN1_get_object:too long:crypto/asn1/asn1_lib.c:91:
author | Christian Hohnstädt <christian@hohnstaedt.de> |
---|---|
date | Wed, 20 Mar 2019 16:42:47 +0100 |
parents | 1c7bf9cec6c8 |
children |
rev | line source |
---|---|
107 | 1 /* |
2 * Dropbear SSH | |
3 * | |
4 * Copyright (c) 2002-2004 Matt Johnston | |
5 * All rights reserved. | |
6 * | |
7 * Permission is hereby granted, free of charge, to any person obtaining a copy | |
8 * of this software and associated documentation files (the "Software"), to deal | |
9 * in the Software without restriction, including without limitation the rights | |
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
11 * copies of the Software, and to permit persons to whom the Software is | |
12 * furnished to do so, subject to the following conditions: | |
13 * | |
14 * The above copyright notice and this permission notice shall be included in | |
15 * all copies or substantial portions of the Software. | |
16 * | |
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |
23 * SOFTWARE. */ | |
24 | |
25 #include "includes.h" | |
26 #include "channel.h" | |
27 #include "buffer.h" | |
28 #include "circbuffer.h" | |
29 #include "dbutil.h" | |
30 #include "session.h" | |
31 #include "ssh.h" | |
32 | |
33 /* We receive channel data - only used by the client chansession code*/ | |
34 void recv_msg_channel_extended_data() { | |
35 | |
36 struct Channel *channel; | |
37 unsigned int datatype; | |
38 | |
165
0cfba3034be5
Fixed DEBUG_TRACE macro so that we don't get semicolons left about the place
Matt Johnston <matt@ucc.asn.au>
parents:
107
diff
changeset
|
39 TRACE(("enter recv_msg_channel_extended_data")) |
107 | 40 |
179
161557a9dde8
* fix longstanding bug with connections being closed on failure to
Matt Johnston <matt@ucc.asn.au>
parents:
165
diff
changeset
|
41 channel = getchannel(); |
107 | 42 |
43 if (channel->type != &clichansess) { | |
165
0cfba3034be5
Fixed DEBUG_TRACE macro so that we don't get semicolons left about the place
Matt Johnston <matt@ucc.asn.au>
parents:
107
diff
changeset
|
44 TRACE(("leave recv_msg_channel_extended_data: chantype is wrong")) |
107 | 45 return; /* we just ignore it */ |
46 } | |
47 | |
48 datatype = buf_getint(ses.payload); | |
49 | |
50 if (datatype != SSH_EXTENDED_DATA_STDERR) { | |
51 TRACE(("leave recv_msg_channel_extended_data: wrong datatype: %d", | |
165
0cfba3034be5
Fixed DEBUG_TRACE macro so that we don't get semicolons left about the place
Matt Johnston <matt@ucc.asn.au>
parents:
107
diff
changeset
|
52 datatype)) |
107 | 53 return; |
54 } | |
55 | |
56 common_recv_msg_channel_data(channel, channel->errfd, channel->extrabuf); | |
57 | |
165
0cfba3034be5
Fixed DEBUG_TRACE macro so that we don't get semicolons left about the place
Matt Johnston <matt@ucc.asn.au>
parents:
107
diff
changeset
|
58 TRACE(("leave recv_msg_channel_extended_data")) |
107 | 59 } |