- djm@cvs.openbsd.org 2006/04/20 09:27:09

[auth.h clientloop.c dispatch.c dispatch.h kex.h]
     replace the last non-sig_atomic_t flag used in a signal handler with a
     sig_atomic_t, unfortunately with some knock-on effects in other (non-
     signal) contexts in which it is used; ok markus@
This commit is contained in:
Damien Miller 2006-04-23 12:08:37 +10:00
parent 58629fad82
commit 97c91f688f
6 changed files with 16 additions and 11 deletions

View File

@ -47,6 +47,11 @@
that sftp and sftp-server (which use the Buffer functions in bufaux.c that sftp and sftp-server (which use the Buffer functions in bufaux.c
but not the bignum ones) no longer need to be linked with libcrypto. but not the bignum ones) no longer need to be linked with libcrypto.
ok markus@ ok markus@
- djm@cvs.openbsd.org 2006/04/20 09:27:09
[auth.h clientloop.c dispatch.c dispatch.h kex.h]
replace the last non-sig_atomic_t flag used in a signal handler with a
sig_atomic_t, unfortunately with some knock-on effects in other (non-
signal) contexts in which it is used; ok markus@
20060421 20060421
- (djm) [Makefile.in configure.ac session.c sshpty.c] - (djm) [Makefile.in configure.ac session.c sshpty.c]
@ -4558,4 +4563,4 @@
- (djm) Trim deprecated options from INSTALL. Mention UsePAM - (djm) Trim deprecated options from INSTALL. Mention UsePAM
- (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu
$Id: ChangeLog,v 1.4311 2006/04/23 02:08:19 djm Exp $ $Id: ChangeLog,v 1.4312 2006/04/23 02:08:37 djm Exp $

4
auth.h
View File

@ -1,4 +1,4 @@
/* $OpenBSD: auth.h,v 1.52 2006/03/25 22:22:42 djm Exp $ */ /* $OpenBSD: auth.h,v 1.53 2006/04/20 09:27:09 djm Exp $ */
/* /*
* Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2000 Markus Friedl. All rights reserved.
@ -48,7 +48,7 @@ typedef struct Authmethod Authmethod;
typedef struct KbdintDevice KbdintDevice; typedef struct KbdintDevice KbdintDevice;
struct Authctxt { struct Authctxt {
int success; sig_atomic_t success;
int postponed; /* authentication needs another step */ int postponed; /* authentication needs another step */
int valid; /* user exists and is allowed to login */ int valid; /* user exists and is allowed to login */
int attempt; int attempt;

View File

@ -1,4 +1,4 @@
/* $OpenBSD: clientloop.c,v 1.161 2006/03/25 18:30:55 deraadt Exp $ */ /* $OpenBSD: clientloop.c,v 1.162 2006/04/20 09:27:09 djm Exp $ */
/* /*
* Author: Tatu Ylonen <ylo@cs.hut.fi> * Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@ -131,7 +131,7 @@ static volatile sig_atomic_t received_signal = 0;
static int in_non_blocking_mode = 0; static int in_non_blocking_mode = 0;
/* Common data for the client loop code. */ /* Common data for the client loop code. */
static int quit_pending; /* Set to non-zero to quit the client loop. */ static volatile sig_atomic_t quit_pending; /* Set non-zero to quit the loop. */
static int escape_char; /* Escape character. */ static int escape_char; /* Escape character. */
static int escape_pending; /* Last character was the escape character */ static int escape_pending; /* Last character was the escape character */
static int last_was_cr; /* Last character was a newline. */ static int last_was_cr; /* Last character was a newline. */

View File

@ -1,4 +1,4 @@
/* $OpenBSD: dispatch.c,v 1.18 2006/03/25 13:17:01 djm Exp $ */ /* $OpenBSD: dispatch.c,v 1.19 2006/04/20 09:27:09 djm Exp $ */
/* /*
* Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2000 Markus Friedl. All rights reserved.
* *
@ -76,7 +76,7 @@ dispatch_set(int type, dispatch_fn *fn)
dispatch[type] = fn; dispatch[type] = fn;
} }
void void
dispatch_run(int mode, int *done, void *ctxt) dispatch_run(int mode, volatile sig_atomic_t *done, void *ctxt)
{ {
for (;;) { for (;;) {
int type; int type;

View File

@ -1,4 +1,4 @@
/* $OpenBSD: dispatch.h,v 1.10 2006/03/25 22:22:43 djm Exp $ */ /* $OpenBSD: dispatch.h,v 1.11 2006/04/20 09:27:09 djm Exp $ */
/* /*
* Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2000 Markus Friedl. All rights reserved.
@ -33,6 +33,6 @@ typedef void dispatch_fn(int, u_int32_t, void *);
void dispatch_init(dispatch_fn *); void dispatch_init(dispatch_fn *);
void dispatch_set(int, dispatch_fn *); void dispatch_set(int, dispatch_fn *);
void dispatch_range(u_int, u_int, dispatch_fn *); void dispatch_range(u_int, u_int, dispatch_fn *);
void dispatch_run(int, int *, void *); void dispatch_run(int, volatile sig_atomic_t *, void *);
void dispatch_protocol_error(int, u_int32_t, void *); void dispatch_protocol_error(int, u_int32_t, void *);
void dispatch_protocol_ignore(int, u_int32_t, void *); void dispatch_protocol_ignore(int, u_int32_t, void *);

4
kex.h
View File

@ -1,4 +1,4 @@
/* $OpenBSD: kex.h,v 1.41 2006/03/25 22:22:43 djm Exp $ */ /* $OpenBSD: kex.h,v 1.42 2006/04/20 09:27:09 djm Exp $ */
/* /*
* Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved.
@ -114,7 +114,7 @@ struct Kex {
int kex_type; int kex_type;
Buffer my; Buffer my;
Buffer peer; Buffer peer;
int done; sig_atomic_t done;
int flags; int flags;
const EVP_MD *evp_md; const EVP_MD *evp_md;
char *client_version_string; char *client_version_string;