auth-skey.c (98684) | auth-skey.c (98941) |
---|---|
1/* 2 * Copyright (c) 2001 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. --- 9 unchanged lines hidden (view full) --- 18 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 19 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 20 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 22 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 */ 24#include "includes.h" 25RCSID("$OpenBSD: auth-skey.c,v 1.19 2002/06/19 00:27:55 deraadt Exp $"); | 1/* 2 * Copyright (c) 2001 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. --- 9 unchanged lines hidden (view full) --- 18 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 19 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 20 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 22 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 */ 24#include "includes.h" 25RCSID("$OpenBSD: auth-skey.c,v 1.19 2002/06/19 00:27:55 deraadt Exp $"); |
26RCSID("$FreeBSD: head/crypto/openssh/auth-skey.c 98684 2002-06-23 16:09:08Z des $"); | |
27 28#ifdef SKEY 29 | 26 27#ifdef SKEY 28 |
30#include <opie.h> | 29#include <skey.h> |
31 32#include "xmalloc.h" 33#include "auth.h" 34#include "monitor_wrap.h" 35 36static void * 37skey_init_ctx(Authctxt *authctxt) 38{ 39 return authctxt; 40} 41 42int 43skey_query(void *ctx, char **name, char **infotxt, 44 u_int* numprompts, char ***prompts, u_int **echo_on) 45{ 46 Authctxt *authctxt = ctx; 47 char challenge[1024], *p; 48 int len; | 30 31#include "xmalloc.h" 32#include "auth.h" 33#include "monitor_wrap.h" 34 35static void * 36skey_init_ctx(Authctxt *authctxt) 37{ 38 return authctxt; 39} 40 41int 42skey_query(void *ctx, char **name, char **infotxt, 43 u_int* numprompts, char ***prompts, u_int **echo_on) 44{ 45 Authctxt *authctxt = ctx; 46 char challenge[1024], *p; 47 int len; |
49 struct opie opie; | 48 struct skey skey; |
50 | 49 |
51 if (opie_haskey(authctxt->user) != 0) | 50 if (skeychallenge(&skey, authctxt->user, challenge) == -1) |
52 return -1; | 51 return -1; |
53 if (opiechallenge(&opie, authctxt->user, challenge) == -1) 54 return -1; | |
55 56 *name = xstrdup(""); 57 *infotxt = xstrdup(""); 58 *numprompts = 1; 59 *prompts = xmalloc(*numprompts * sizeof(char*)); 60 *echo_on = xmalloc(*numprompts * sizeof(u_int)); 61 (*echo_on)[0] = 0; 62 --- 8 unchanged lines hidden (view full) --- 71 72int 73skey_respond(void *ctx, u_int numresponses, char **responses) 74{ 75 Authctxt *authctxt = ctx; 76 77 if (authctxt->valid && 78 numresponses == 1 && | 52 53 *name = xstrdup(""); 54 *infotxt = xstrdup(""); 55 *numprompts = 1; 56 *prompts = xmalloc(*numprompts * sizeof(char*)); 57 *echo_on = xmalloc(*numprompts * sizeof(u_int)); 58 (*echo_on)[0] = 0; 59 --- 8 unchanged lines hidden (view full) --- 68 69int 70skey_respond(void *ctx, u_int numresponses, char **responses) 71{ 72 Authctxt *authctxt = ctx; 73 74 if (authctxt->valid && 75 numresponses == 1 && |
79 opie_haskey(authctxt->pw->pw_name) == 0 && 80 opie_passverify(authctxt->pw->pw_name, responses[0]) != -1) | 76 skey_haskey(authctxt->pw->pw_name) == 0 && 77 skey_passcheck(authctxt->pw->pw_name, responses[0]) != -1) |
81 return 0; 82 return -1; 83} 84 85static void 86skey_free_ctx(void *ctx) 87{ 88 /* we don't have a special context */ --- 18 unchanged lines hidden --- | 78 return 0; 79 return -1; 80} 81 82static void 83skey_free_ctx(void *ctx) 84{ 85 /* we don't have a special context */ --- 18 unchanged lines hidden --- |