Deleted Added
full compact
key.c (60576) key.c (61203)
1/*
2 * Copyright (c) 2000 Markus Friedl. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 12 unchanged lines hidden (view full) ---

21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
1/*
2 * Copyright (c) 2000 Markus Friedl. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 12 unchanged lines hidden (view full) ---

21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 * $FreeBSD: head/crypto/openssh/key.c 60576 2000-05-15 05:24:25Z kris $
29 * $FreeBSD: head/crypto/openssh/key.c 61203 2000-06-03 07:31:44Z kris $
30 */
31/*
32 * read_bignum():
33 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
34 */
35
36#include "includes.h"
37#include "ssh.h"

--- 215 unchanged lines hidden (view full) ---

253 case KEY_DSA:
254 if (strncmp(cp, SSH_DSS " ", 7) != 0)
255 return 0;
256 cp += 7;
257 len = 2*strlen(cp);
258 blob = xmalloc(len);
259 n = uudecode(cp, blob, len);
260 if (n < 0) {
30 */
31/*
32 * read_bignum():
33 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
34 */
35
36#include "includes.h"
37#include "ssh.h"

--- 215 unchanged lines hidden (view full) ---

253 case KEY_DSA:
254 if (strncmp(cp, SSH_DSS " ", 7) != 0)
255 return 0;
256 cp += 7;
257 len = 2*strlen(cp);
258 blob = xmalloc(len);
259 n = uudecode(cp, blob, len);
260 if (n < 0) {
261 error("uudecode %s failed", cp);
261 error("key_read: uudecode %s failed", cp);
262 return 0;
263 }
264 k = dsa_key_from_blob(blob, n);
262 return 0;
263 }
264 k = dsa_key_from_blob(blob, n);
265 if (k == NULL)
266 return 0;
265 if (k == NULL) {
266 error("key_read: dsa_key_from_blob %s failed", cp);
267 return 0;
268 }
267 xfree(blob);
268 if (ret->dsa != NULL)
269 DSA_free(ret->dsa);
270 ret->dsa = k->dsa;
271 k->dsa = NULL;
272 key_free(k);
273 bits = BN_num_bits(ret->dsa->p);
269 xfree(blob);
270 if (ret->dsa != NULL)
271 DSA_free(ret->dsa);
272 ret->dsa = k->dsa;
273 k->dsa = NULL;
274 key_free(k);
275 bits = BN_num_bits(ret->dsa->p);
274 cp = strchr(cp, '=');
275 if (cp == NULL)
276 return 0;
277 *cpp = cp + 1;
276 /* advance cp: skip whitespace and data */
277 while (*cp == ' ' || *cp == '\t')
278 cp++;
279 while (*cp != '\0' && *cp != ' ' && *cp != '\t')
280 cp++;
281 *cpp = cp;
278 break;
279 default:
280 fatal("key_read: bad key type: %d", ret->type);
281 break;
282 }
283 return bits;
284}
285int

--- 43 unchanged lines hidden ---
282 break;
283 default:
284 fatal("key_read: bad key type: %d", ret->type);
285 break;
286 }
287 return bits;
288}
289int

--- 43 unchanged lines hidden ---