mirror of
git://anongit.mindrot.org/openssh.git
synced 2024-12-27 20:42:07 +00:00
- djm@cvs.openbsd.org 2007/05/17 20:48:13
[sshconnect2.c] fall back to gethostname() when the outgoing connection is not on a socket, such as is the case when ProxyCommand is used. Gives hostbased auth an opportunity to work; bz#616, report and feedback stuart AT kaloram.com; ok markus@
This commit is contained in:
parent
e9405983dc
commit
26c6662834
@ -22,6 +22,12 @@
|
||||
input/output buffers past the maximum supported by the buffer API and
|
||||
promptly fatal()
|
||||
based on patch from Thue Janus Kristensen; feedback & ok dtucker@
|
||||
- djm@cvs.openbsd.org 2007/05/17 20:48:13
|
||||
[sshconnect2.c]
|
||||
fall back to gethostname() when the outgoing connection is not
|
||||
on a socket, such as is the case when ProxyCommand is used.
|
||||
Gives hostbased auth an opportunity to work; bz#616, report
|
||||
and feedback stuart AT kaloram.com; ok markus@
|
||||
|
||||
20070509
|
||||
- (tim) [configure.ac] Bug #1287: Add missing test for ucred.h.
|
||||
@ -2922,4 +2928,4 @@
|
||||
OpenServer 6 and add osr5bigcrypt support so when someone migrates
|
||||
passwords between UnixWare and OpenServer they will still work. OK dtucker@
|
||||
|
||||
$Id: ChangeLog,v 1.4665 2007/05/20 05:09:04 dtucker Exp $
|
||||
$Id: ChangeLog,v 1.4666 2007/05/20 05:09:42 dtucker Exp $
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: sshconnect2.c,v 1.162 2006/08/30 00:06:51 dtucker Exp $ */
|
||||
/* $OpenBSD: sshconnect2.c,v 1.163 2007/05/17 20:48:13 djm Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2000 Markus Friedl. All rights reserved.
|
||||
*
|
||||
@ -1307,7 +1307,7 @@ userauth_hostbased(Authctxt *authctxt)
|
||||
Sensitive *sensitive = authctxt->sensitive;
|
||||
Buffer b;
|
||||
u_char *signature, *blob;
|
||||
char *chost, *pkalg, *p;
|
||||
char *chost, *pkalg, *p, myname[NI_MAXHOST];
|
||||
const char *service;
|
||||
u_int blen, slen;
|
||||
int ok, i, len, found = 0;
|
||||
@ -1331,7 +1331,16 @@ userauth_hostbased(Authctxt *authctxt)
|
||||
return 0;
|
||||
}
|
||||
/* figure out a name for the client host */
|
||||
p = get_local_name(packet_get_connection_in());
|
||||
p = NULL;
|
||||
if (packet_connection_is_on_socket())
|
||||
p = get_local_name(packet_get_connection_in());
|
||||
if (p == NULL) {
|
||||
if (gethostname(myname, sizeof(myname)) == -1) {
|
||||
verbose("userauth_hostbased: gethostname: %s",
|
||||
strerror(errno));
|
||||
} else
|
||||
p = xstrdup(myname);
|
||||
}
|
||||
if (p == NULL) {
|
||||
error("userauth_hostbased: cannot get local ipaddr/name");
|
||||
key_free(private);
|
||||
|
Loading…
Reference in New Issue
Block a user