зеркало из https://github.com/Azure/sonic-openssh.git
Merged latest OpenBSD changes:
nchan.ms -\ channels.[ch] - remove broken x11 fix and document istate/ostate ssh-agent.c - call setsid() regardless of argv[] ssh.c - save a few lines when disabling rhosts-{rsa-}auth
This commit is contained in:
Родитель
5ffa64478a
Коммит
1e4772c32c
|
@ -1,5 +1,12 @@
|
|||
19991030
|
||||
- Integrated debian package support from Dan Brosemer <odin@linuxfreak.com>
|
||||
- Merged latest updates for OpenBSD CVS:
|
||||
- channels.[ch] - remove broken x11 fix and document istate/ostate
|
||||
- ssh-agent.c - call setsid() regardless of argv[]
|
||||
- ssh.c - save a few lines when disabling rhosts-{rsa-}auth
|
||||
- Documentation cleanups
|
||||
- Renamed README -> README.Ylonen
|
||||
- Renamed README.openssh ->README
|
||||
|
||||
19991029
|
||||
- Renamed openssh* back to ssh* at request of Theo de Raadt
|
||||
|
|
5
README
5
README
|
@ -6,7 +6,8 @@ fixed, new features reintroduced and many other clean-ups.
|
|||
|
||||
This Linux port basically consists of a few fixes to deal with the way
|
||||
that OpenSSL is usually installed on Linux systems, a few replacements
|
||||
for OpenBSD library functions and the introduction of PAM support.
|
||||
for OpenBSD library functions and the introduction of PAM support. This
|
||||
version tracks changes made to the OpenBSD CVS version.
|
||||
|
||||
The PAM support is now more functional than the popular packages of
|
||||
commercial ssh-1.2.x. It checks "account" and "session" modules for
|
||||
|
@ -40,7 +41,7 @@ Nalin Dahyabhai <nalin.dahyabhai@pobox.com> - PAM environment patch
|
|||
Miscellania -
|
||||
|
||||
This version of SSH is based upon code retrieved from the OpenBSD CVS
|
||||
repository on 1999-10-29 patched by Damien Miller <djm@ibs.com.au>,
|
||||
repository on 1999-10-30 patched by Damien Miller <djm@ibs.com.au>,
|
||||
which in turn was based on the last free version of SSH released by
|
||||
Tatu Ylonen.
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@ arbitrary tcp/ip connections, and the authentication agent connection.
|
|||
*/
|
||||
|
||||
#include "includes.h"
|
||||
RCSID("$Id: channels.c,v 1.2 1999/10/28 05:23:30 damien Exp $");
|
||||
RCSID("$Id: channels.c,v 1.3 1999/10/30 01:39:56 damien Exp $");
|
||||
|
||||
#include "ssh.h"
|
||||
#include "packet.h"
|
||||
|
@ -155,7 +155,6 @@ int channel_allocate(int type, int sock, char *remote_name)
|
|||
chan_init_iostates(c);
|
||||
c->self = found;
|
||||
c->type = type;
|
||||
c->x11 = 0;
|
||||
c->sock = sock;
|
||||
c->remote_id = -1;
|
||||
c->remote_name = remote_name;
|
||||
|
@ -316,8 +315,6 @@ void channel_prepare_select(fd_set *readset, fd_set *writeset)
|
|||
|
||||
/* Start normal processing for the channel. */
|
||||
ch->type = SSH_CHANNEL_OPEN;
|
||||
/* Enable X11 Problem FIX */
|
||||
ch->x11 = 1;
|
||||
goto redo;
|
||||
|
||||
reject:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* RCSID("$Id: channels.h,v 1.1 1999/10/27 03:42:44 damien Exp $"); */
|
||||
/* RCSID("$Id: channels.h,v 1.2 1999/10/30 01:39:56 damien Exp $"); */
|
||||
|
||||
#ifndef CHANNELS_H
|
||||
#define CHANNELS_H
|
||||
|
@ -26,9 +26,8 @@ typedef struct Channel
|
|||
int self; /* my own channel identifier */
|
||||
int remote_id; /* channel identifier for remote peer */
|
||||
/* peer can be reached over encrypted connection, via packet-sent */
|
||||
int istate;
|
||||
int ostate;
|
||||
int x11;
|
||||
int istate; /* input from channel (state of receive half) */
|
||||
int ostate; /* output to channel (state of transmit half) */
|
||||
int sock; /* data socket, linked to this channel */
|
||||
Buffer input; /* data read from socket, to be sent over encrypted connection */
|
||||
Buffer output; /* data received over encrypted connection for send on socket */
|
||||
|
|
4
nchan.ms
4
nchan.ms
|
@ -50,9 +50,9 @@ Notes
|
|||
The input buffer is filled with data from the socket
|
||||
(the socket represents the local comsumer/producer of the
|
||||
forwarded channel).
|
||||
The data is then sent over the INPUT-end of the channel to the
|
||||
The data is then sent over the INPUT-end (transmit-end) of the channel to the
|
||||
remote peer.
|
||||
Data sent by the peer is received on the OUTPUT-end,
|
||||
Data sent by the peer is received on the OUTPUT-end (receive-end),
|
||||
saved in the output buffer and written to the socket.
|
||||
.PP
|
||||
If the local protocol instance has forwarded all data on the
|
||||
|
|
17
ssh-agent.c
17
ssh-agent.c
|
@ -1,4 +1,4 @@
|
|||
/* $OpenBSD: ssh-agent.c,v 1.15 1999/10/28 08:43:10 markus Exp $ */
|
||||
/* $OpenBSD: ssh-agent.c,v 1.16 1999/10/28 20:41:23 markus Exp $ */
|
||||
|
||||
/*
|
||||
|
||||
|
@ -15,9 +15,8 @@ The authentication agent program.
|
|||
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include "includes.h"
|
||||
RCSID("$OpenBSD: ssh-agent.c,v 1.15 1999/10/28 08:43:10 markus Exp $");
|
||||
RCSID("$OpenBSD: ssh-agent.c,v 1.16 1999/10/28 20:41:23 markus Exp $");
|
||||
|
||||
#include "ssh.h"
|
||||
#include "rsa.h"
|
||||
|
@ -656,11 +655,17 @@ main(int ac, char **av)
|
|||
close(1);
|
||||
close(2);
|
||||
|
||||
if (ac == 0 && setsid() == -1)
|
||||
cleanup_exit(1);
|
||||
if (setsid() == -1)
|
||||
{
|
||||
perror("setsid");
|
||||
cleanup_exit(1);
|
||||
}
|
||||
|
||||
if (atexit(cleanup_socket) < 0)
|
||||
cleanup_exit(1);
|
||||
{
|
||||
perror("atexit");
|
||||
cleanup_exit(1);
|
||||
}
|
||||
|
||||
new_socket(AUTH_SOCKET, sock);
|
||||
if (ac > 0)
|
||||
|
|
13
ssh.c
13
ssh.c
|
@ -18,7 +18,7 @@ Modified to work with SSL by Niels Provos <provos@citi.umich.edu> in Canada.
|
|||
*/
|
||||
|
||||
#include "includes.h"
|
||||
RCSID("$Id: ssh.c,v 1.3 1999/10/28 05:23:30 damien Exp $");
|
||||
RCSID("$Id: ssh.c,v 1.4 1999/10/30 01:39:56 damien Exp $");
|
||||
|
||||
#include "xmalloc.h"
|
||||
#include "ssh.h"
|
||||
|
@ -213,7 +213,6 @@ main(int ac, char **av)
|
|||
else
|
||||
cp = av0;
|
||||
if (strcmp(cp, "rsh") != 0 && strcmp(cp, "ssh") != 0 &&
|
||||
strcmp(cp, "openssh") != 0 && strcmp(cp, "openlogin") != 0 &&
|
||||
strcmp(cp, "rlogin") != 0 && strcmp(cp, "slogin") != 0)
|
||||
host = cp;
|
||||
|
||||
|
@ -500,7 +499,7 @@ main(int ac, char **av)
|
|||
}
|
||||
|
||||
/* Disable rhosts authentication if not running as root. */
|
||||
if (original_effective_uid != 0)
|
||||
if (original_effective_uid != 0 || !options.use_privileged_port)
|
||||
{
|
||||
options.rhosts_authentication = 0;
|
||||
options.rhosts_rsa_authentication = 0;
|
||||
|
@ -526,13 +525,7 @@ main(int ac, char **av)
|
|||
restore_uid();
|
||||
|
||||
/* Open a connection to the remote host. This needs root privileges if
|
||||
rhosts_{rsa_}authentication is true. */
|
||||
|
||||
if (!options.use_privileged_port)
|
||||
{
|
||||
options.rhosts_authentication = 0;
|
||||
options.rhosts_rsa_authentication = 0;
|
||||
}
|
||||
rhosts_{rsa_}authentication is enabled. */
|
||||
|
||||
ok = ssh_connect(host, &hostaddr, options.port, options.connection_attempts,
|
||||
!options.rhosts_authentication &&
|
||||
|
|
Загрузка…
Ссылка в новой задаче