[canohost.c canohost.h session.c]
     move get_remote_name_or_ip() to canohost.[ch]; for portable.  ok markus@
This commit is contained in:
Ben Lindstrom 2001-04-05 23:32:17 +00:00
Родитель f327235f65
Коммит f15a386511
4 изменённых файлов: 24 добавлений и 17 удалений

Просмотреть файл

@ -23,6 +23,9 @@
- markus@cvs.openbsd.org 2001/04/05 15:45:43
[ssh.1]
ssh defaults to protocol v2; from quisar@quisar.ambre.net
- stevesk@cvs.openbsd.org 2001/04/05 15:48:18
[canohost.c canohost.h session.c]
move get_remote_name_or_ip() to canohost.[ch]; for portable. ok markus@
20010405
- OpenBSD CVS Sync
@ -4895,4 +4898,4 @@
- Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1
$Id: ChangeLog,v 1.1069 2001/04/05 23:29:59 mouring Exp $
$Id: ChangeLog,v 1.1070 2001/04/05 23:32:17 mouring Exp $

Просмотреть файл

@ -12,7 +12,7 @@
*/
#include "includes.h"
RCSID("$OpenBSD: canohost.c,v 1.23 2001/02/10 01:33:32 markus Exp $");
RCSID("$OpenBSD: canohost.c,v 1.24 2001/04/05 15:48:19 stevesk Exp $");
#include "packet.h"
#include "xmalloc.h"
@ -251,6 +251,17 @@ get_remote_ipaddr()
return canonical_host_ip;
}
const char *
get_remote_name_or_ip(u_int utmp_len, int reverse_mapping_check)
{
static const char *remote = "";
if (utmp_len > 0)
remote = get_canonical_hostname(reverse_mapping_check);
if (utmp_len == 0 || strlen(remote) > utmp_len)
remote = get_remote_ipaddr();
return remote;
}
/* Returns the local/remote port for the socket. */
int

Просмотреть файл

@ -1,4 +1,4 @@
/* $OpenBSD: canohost.h,v 1.4 2001/02/03 10:08:37 markus Exp $ */
/* $OpenBSD: canohost.h,v 1.5 2001/04/05 15:48:19 stevesk Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
@ -25,6 +25,8 @@ const char *get_canonical_hostname(int reverse_mapping_check);
*/
const char *get_remote_ipaddr(void);
const char *get_remote_name_or_ip(u_int utmp_len, int reverse_mapping_check);
/* Returns the ipaddr/port number of the peer of the socket. */
char * get_peer_ipaddr(int socket);
int get_peer_port(int sock);

Просмотреть файл

@ -33,7 +33,7 @@
*/
#include "includes.h"
RCSID("$OpenBSD: session.c,v 1.69 2001/03/25 13:16:11 stevesk Exp $");
RCSID("$OpenBSD: session.c,v 1.70 2001/04/05 15:48:18 stevesk Exp $");
#include "ssh.h"
#include "ssh1.h"
@ -677,17 +677,6 @@ do_exec_pty(Session *s, const char *command)
}
}
const char *
get_remote_name_or_ip(void)
{
static const char *remote = "";
if (utmp_len > 0)
remote = get_canonical_hostname(options.reverse_mapping_check);
if (utmp_len == 0 || strlen(remote) > utmp_len)
remote = get_remote_ipaddr();
return remote;
}
/* administrative, login(1)-like work */
void
do_login(Session *s, const char *command)
@ -726,7 +715,8 @@ do_login(Session *s, const char *command)
/* Record that there was a login on that tty from the remote host. */
record_login(pid, s->tty, pw->pw_name, pw->pw_uid,
get_remote_name_or_ip(), (struct sockaddr *)&from);
get_remote_name_or_ip(utmp_len, options.reverse_mapping_check),
(struct sockaddr *)&from);
#ifdef USE_PAM
/*
@ -1308,7 +1298,8 @@ do_child(Session *s, const char *command)
}
/* we have to stash the hostname before we close our socket. */
if (options.use_login)
hostname = get_remote_name_or_ip();
hostname = get_remote_name_or_ip(utmp_len,
options.reverse_mapping_check);
/*
* Close the connection descriptors; note that this is the child, and
* the server will still have the socket open, and it is important