summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CREDITS4
-rw-r--r--ChangeLog6
-rw-r--r--INSTALL8
-rw-r--r--Makefile.in6
-rw-r--r--acconfig.h1
-rw-r--r--bsd-login.c4
-rw-r--r--configure.in16
-rw-r--r--defines.h13
-rw-r--r--packet.c6
-rw-r--r--scp.c6
-rw-r--r--ssh-agent.c1
11 files changed, 60 insertions, 11 deletions
diff --git a/CREDITS b/CREDITS
index b8f231c62..7ca3f788d 100644
--- a/CREDITS
+++ b/CREDITS
@@ -34,6 +34,7 @@ jonchen (email unknown) - the original author of PAM support of SSH
34Juergen Keil <jk@tools.de> - scp bugfixing 34Juergen Keil <jk@tools.de> - scp bugfixing
35Kees Cook <cook@cpoint.net> - scp fixes 35Kees Cook <cook@cpoint.net> - scp fixes
36Kiyokazu SUTO <suto@ks-and-ks.ne.jp> - Bugfixes 36Kiyokazu SUTO <suto@ks-and-ks.ne.jp> - Bugfixes
37Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> - Bugfixes
37Marc G. Fournier <marc.fournier@acadiau.ca> - Solaris patches 38Marc G. Fournier <marc.fournier@acadiau.ca> - Solaris patches
38Matt Richards <v2matt@btv.ibm.com> - AIX patches 39Matt Richards <v2matt@btv.ibm.com> - AIX patches
39Nalin Dahyabhai <nalin.dahyabhai@pobox.com> - PAM environment patch 40Nalin Dahyabhai <nalin.dahyabhai@pobox.com> - PAM environment patch
@@ -41,7 +42,10 @@ Niels Kristian Bech Jensen <nkbj@image.dk> - Assorted patches
41Peter Kocks <peter.kocks@baygate.com> - Makefile fixes 42Peter Kocks <peter.kocks@baygate.com> - Makefile fixes
42Phil Hands <phil@hands.com> - Debian scripts, assorted patches 43Phil Hands <phil@hands.com> - Debian scripts, assorted patches
43Phil Karn <karn@ka9q.ampr.org> - Autoconf fix 44Phil Karn <karn@ka9q.ampr.org> - Autoconf fix
45SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp> - Multiple bugfixes
46Simon Wilkinson <sxw@dcs.ed.ac.uk> - PAM fixes
44Thomas Neumann <tom@smart.ruhr.de> - Shadow passwords 47Thomas Neumann <tom@smart.ruhr.de> - Shadow passwords
48Tom Bertelson's <tbert@abac.com> - AIX auth fixes
45Tor-Ake Fransson <torake@hotmail.com> - AIX support 49Tor-Ake Fransson <torake@hotmail.com> - AIX support
46Tudor Bosman <tudorb@jm.nu> - MD5 password support 50Tudor Bosman <tudorb@jm.nu> - MD5 password support
47 51
diff --git a/ChangeLog b/ChangeLog
index e14392af2..8cefa0fd6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -25,6 +25,12 @@
25 enable nonblocking IO for sshd w/ proto 1, too; split out common code 25 enable nonblocking IO for sshd w/ proto 1, too; split out common code
26 [aux.c] 26 [aux.c]
27 missing include 27 missing include
28 - Several patches from SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
29 - INSTALL typo and URL fix
30 - Makefile fix
31 - Solaris fixes
32 - Checking for ssize_t and memmove. Based on patch from SAKAI Kiyotaka
33 <ksakai@kso.netwk.ntt-at.co.jp>
28 34
2920000513 3520000513
30 - Fix for non-recognised DSA keys from Arkadiusz Miskiewicz 36 - Fix for non-recognised DSA keys from Arkadiusz Miskiewicz
diff --git a/INSTALL b/INSTALL
index bf7bc1386..dc8cee036 100644
--- a/INSTALL
+++ b/INSTALL
@@ -4,7 +4,7 @@
4You will need working installations of Zlib and OpenSSL. 4You will need working installations of Zlib and OpenSSL.
5 5
6Zlib: 6Zlib:
7http://www.cdrom.com/pub/infozip/zlib/ 7http://www.freesoftware.com/pub/infozip/zlib/
8 8
9OpenSSL 0.9.5a or greater: 9OpenSSL 0.9.5a or greater:
10http://www.openssl.org/ 10http://www.openssl.org/
@@ -90,7 +90,7 @@ need a working installation of GNOME, including the development
90headers, for this to work. 90headers, for this to work.
91 91
92--with-random=/some/file allows you to specify an alternate source of 92--with-random=/some/file allows you to specify an alternate source of
93random numbers (the default is /dev/urandom). Unless you are absolutly 93random numbers (the default is /dev/urandom). Unless you are absolutely
94sure of what you are doing, it is best to leave this alone. 94sure of what you are doing, it is best to leave this alone.
95 95
96--with-egd-pool=/some/file allows you to enable Entropy Gathering 96--with-egd-pool=/some/file allows you to enable Entropy Gathering
@@ -152,7 +152,7 @@ are installed.
152real (AF_INET) IPv4 addresses. Works around some quirks on Linux. 152real (AF_INET) IPv4 addresses. Works around some quirks on Linux.
153 153
154If you need to pass special options to the compiler or linker, you 154If you need to pass special options to the compiler or linker, you
155can specify these as enviornment variables before running ./configure. 155can specify these as environment variables before running ./configure.
156For example: 156For example:
157 157
158CFLAGS="-O -m486" LFLAGS="-s" LIBS="-lrubbish" LD="/usr/foo/ld" ./configure 158CFLAGS="-O -m486" LFLAGS="-s" LIBS="-lrubbish" LD="/usr/foo/ld" ./configure
@@ -186,5 +186,5 @@ for sshd, ssh and ssh-agent.
186 186
187If you experience problems compiling, installing or running OpenSSH. 187If you experience problems compiling, installing or running OpenSSH.
188Please refer to the "reporting bugs" section of the webpage at 188Please refer to the "reporting bugs" section of the webpage at
189http://violet.ibs.com.au/openssh/ 189http://www.openssh.com/
190 190
diff --git a/Makefile.in b/Makefile.in
index 3aeced934..0dc71c6cd 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -90,11 +90,11 @@ $(MANPAGES) $(CONFIGFILES)::
90 $(FIXPATHSCMD) $(srcdir)/$@ 90 $(FIXPATHSCMD) $(srcdir)/$@
91 91
92clean: 92clean:
93 rm -f *.o *.a $(TARGETS) config.status config.cache config.log 93 rm -f *.o *.a $(TARGETS) config.cache config.log
94 rm -f *.out ssh_prng_cmds core 94 rm -f *.out core
95 95
96distclean: clean 96distclean: clean
97 rm -f Makefile config.h core *~ 97 rm -f Makefile config.h config.status ssh_prng_cmds *~
98 98
99mrproper: distclean 99mrproper: distclean
100 100
diff --git a/acconfig.h b/acconfig.h
index 4f5f48f3c..9a2c1af5d 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -117,6 +117,7 @@
117#undef HAVE_UINTXX_T 117#undef HAVE_UINTXX_T
118#undef HAVE_SOCKLEN_T 118#undef HAVE_SOCKLEN_T
119#undef HAVE_SIZE_T 119#undef HAVE_SIZE_T
120#undef HAVE_SSIZE_T
120#undef HAVE_STRUCT_SOCKADDR_STORAGE 121#undef HAVE_STRUCT_SOCKADDR_STORAGE
121#undef HAVE_STRUCT_ADDRINFO 122#undef HAVE_STRUCT_ADDRINFO
122#undef HAVE_STRUCT_IN6_ADDR 123#undef HAVE_STRUCT_IN6_ADDR
diff --git a/bsd-login.c b/bsd-login.c
index 910f9ff9f..6a80928e0 100644
--- a/bsd-login.c
+++ b/bsd-login.c
@@ -73,6 +73,7 @@ struct utmp * utp;
73 int t = 0; 73 int t = 0;
74 struct utmp * u; 74 struct utmp * u;
75 75
76#ifdef HAVE_TYPE_IN_UTMP
76 setutent(); 77 setutent();
77 78
78 while((u = getutent()) != NULL) { 79 while((u = getutent()) != NULL) {
@@ -91,6 +92,7 @@ struct utmp * utp;
91 } 92 }
92 93
93 endutent(); 94 endutent();
95#endif
94 return(-1); 96 return(-1);
95} 97}
96 98
@@ -128,6 +130,7 @@ login(utp)
128 /* If no tty was found... */ 130 /* If no tty was found... */
129 if (tty == -1) { 131 if (tty == -1) {
130 /* ... append it to utmp on login */ 132 /* ... append it to utmp on login */
133#ifdef HAVE_TYPE_IN_UTMP
131 if (utp->ut_type == USER_PROCESS) { 134 if (utp->ut_type == USER_PROCESS) {
132 if ((fd = open(_PATH_UTMP, O_WRONLY|O_APPEND, 0)) >= 0) { 135 if ((fd = open(_PATH_UTMP, O_WRONLY|O_APPEND, 0)) >= 0) {
133 (void)write(fd, utp, sizeof(struct utmp)); 136 (void)write(fd, utp, sizeof(struct utmp));
@@ -138,6 +141,7 @@ login(utp)
138 /* Between login and logout */ 141 /* Between login and logout */
139 log("No tty slot found at logout"); 142 log("No tty slot found at logout");
140 } 143 }
144#endif
141 } else { 145 } else {
142 /* Otherwise, tty was found - update at its location */ 146 /* Otherwise, tty was found - update at its location */
143#if defined(HAVE_HOST_IN_UTMP) 147#if defined(HAVE_HOST_IN_UTMP)
diff --git a/configure.in b/configure.in
index 62456acef..548d2727d 100644
--- a/configure.in
+++ b/configure.in
@@ -135,7 +135,7 @@ fi
135AC_CHECK_HEADERS(bstring.h endian.h lastlog.h login.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/select.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h stddef.h util.h utmp.h utmpx.h) 135AC_CHECK_HEADERS(bstring.h endian.h lastlog.h login.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/select.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h stddef.h util.h utmp.h utmpx.h)
136 136
137# Checks for library functions. 137# Checks for library functions.
138AC_CHECK_FUNCS(arc4random b64_ntop bindresvport_af clock freeaddrinfo gai_strerror getaddrinfo getnameinfo getrusage innetgr md5_crypt mkdtemp openpty rresvport_af setenv seteuid setlogin setproctitle setreuid snprintf strlcat strlcpy updwtmpx vsnprintf vhangup _getpty __b64_ntop) 138AC_CHECK_FUNCS(arc4random b64_ntop bcopy bindresvport_af clock freeaddrinfo gai_strerror getaddrinfo getnameinfo getrusage innetgr md5_crypt memmove mkdtemp openpty rresvport_af setenv seteuid setlogin setproctitle setreuid snprintf strlcat strlcpy updwtmpx vsnprintf vhangup _getpty __b64_ntop)
139 139
140AC_CHECK_FUNC(login, 140AC_CHECK_FUNC(login,
141 [AC_DEFINE(HAVE_LOGIN)], 141 [AC_DEFINE(HAVE_LOGIN)],
@@ -381,6 +381,20 @@ if test "x$ac_cv_have_size_t" = "xyes" ; then
381 AC_DEFINE(HAVE_SIZE_T) 381 AC_DEFINE(HAVE_SIZE_T)
382fi 382fi
383 383
384AC_CACHE_CHECK([for ssize_t], ac_cv_have_ssize_t, [
385 AC_TRY_COMPILE(
386 [
387#include <sys/types.h>
388 ],
389 [ ssize_t foo; foo = 1235; ],
390 [ ac_cv_have_ssize_t="yes" ],
391 [ ac_cv_have_ssize_t="no" ]
392 )
393])
394if test "x$ac_cv_have_ssize_t" = "xyes" ; then
395 AC_DEFINE(HAVE_SSIZE_T)
396fi
397
384 398
385AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_have_struct_sockaddr_storage, [ 399AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_have_struct_sockaddr_storage, [
386 AC_TRY_COMPILE( 400 AC_TRY_COMPILE(
diff --git a/defines.h b/defines.h
index 9490e77e7..5eddf2e10 100644
--- a/defines.h
+++ b/defines.h
@@ -150,6 +150,11 @@ typedef unsigned int size_t;
150# define HAVE_SIZE_T 150# define HAVE_SIZE_T
151#endif /* HAVE_SIZE_T */ 151#endif /* HAVE_SIZE_T */
152 152
153#ifndef HAVE_SSIZE_T
154typedef int ssize_t;
155# define HAVE_SSIZE_T
156#endif /* HAVE_SSIZE_T */
157
153#if !defined(HAVE_SS_FAMILY_IN_SS) && defined(HAVE___SS_FAMILY_IN_SS) 158#if !defined(HAVE_SS_FAMILY_IN_SS) && defined(HAVE___SS_FAMILY_IN_SS)
154# define ss_family __ss_family 159# define ss_family __ss_family
155#endif /* !defined(HAVE_SS_FAMILY_IN_SS) && defined(HAVE_SA_FAMILY_IN_SS) */ 160#endif /* !defined(HAVE_SS_FAMILY_IN_SS) && defined(HAVE_SA_FAMILY_IN_SS) */
@@ -216,6 +221,10 @@ typedef unsigned int size_t;
216# define _PATH_DEVNULL "/dev/null" 221# define _PATH_DEVNULL "/dev/null"
217#endif 222#endif
218 223
224#ifndef MAIL_DIRECTORY
225# define MAIL_DIRECTORY "/var/spool/mail"
226#endif
227
219#ifndef MAILDIR 228#ifndef MAILDIR
220# define MAILDIR MAIL_DIRECTORY 229# define MAILDIR MAIL_DIRECTORY
221#endif 230#endif
@@ -280,4 +289,8 @@ typedef unsigned int size_t;
280# undef HAVE_GETADDRINFO 289# undef HAVE_GETADDRINFO
281#endif /* defined(BROKEN_GETADDRINFO) && defined(HAVE_GETADDRINFO) */ 290#endif /* defined(BROKEN_GETADDRINFO) && defined(HAVE_GETADDRINFO) */
282 291
292#if !defined(HAVE_MEMMOVE) && defined(HAVE_BCOPY)
293# define memmove(s1, s2, n) bcopy((s2), (s1), (n))
294#endif /* !defined(HAVE_MEMMOVE) && defined(HAVE_BCOPY) */
295
283#endif /* _DEFINES_H */ 296#endif /* _DEFINES_H */
diff --git a/packet.c b/packet.c
index dfe21fa1c..fd7a32259 100644
--- a/packet.c
+++ b/packet.c
@@ -17,7 +17,7 @@
17 */ 17 */
18 18
19#include "includes.h" 19#include "includes.h"
20RCSID("$Id: packet.c,v 1.22 2000/05/07 02:03:17 damien Exp $"); 20RCSID("$Id: packet.c,v 1.23 2000/05/17 12:53:35 damien Exp $");
21 21
22#include "xmalloc.h" 22#include "xmalloc.h"
23#include "buffer.h" 23#include "buffer.h"
@@ -1237,10 +1237,12 @@ packet_set_interactive(int interactive, int keepalives)
1237 * Set IP options for an interactive connection. Use 1237 * Set IP options for an interactive connection. Use
1238 * IPTOS_LOWDELAY and TCP_NODELAY. 1238 * IPTOS_LOWDELAY and TCP_NODELAY.
1239 */ 1239 */
1240#ifdef IP_TOS
1240 int lowdelay = IPTOS_LOWDELAY; 1241 int lowdelay = IPTOS_LOWDELAY;
1241 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS, (void *) &lowdelay, 1242 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS, (void *) &lowdelay,
1242 sizeof(lowdelay)) < 0) 1243 sizeof(lowdelay)) < 0)
1243 error("setsockopt IPTOS_LOWDELAY: %.100s", strerror(errno)); 1244 error("setsockopt IPTOS_LOWDELAY: %.100s", strerror(errno));
1245#endif
1244 if (setsockopt(connection_in, IPPROTO_TCP, TCP_NODELAY, (void *) &on, 1246 if (setsockopt(connection_in, IPPROTO_TCP, TCP_NODELAY, (void *) &on,
1245 sizeof(on)) < 0) 1247 sizeof(on)) < 0)
1246 error("setsockopt TCP_NODELAY: %.100s", strerror(errno)); 1248 error("setsockopt TCP_NODELAY: %.100s", strerror(errno));
@@ -1249,10 +1251,12 @@ packet_set_interactive(int interactive, int keepalives)
1249 * Set IP options for a non-interactive connection. Use 1251 * Set IP options for a non-interactive connection. Use
1250 * IPTOS_THROUGHPUT. 1252 * IPTOS_THROUGHPUT.
1251 */ 1253 */
1254#ifdef IP_TOS
1252 int throughput = IPTOS_THROUGHPUT; 1255 int throughput = IPTOS_THROUGHPUT;
1253 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS, (void *) &throughput, 1256 if (setsockopt(connection_in, IPPROTO_IP, IP_TOS, (void *) &throughput,
1254 sizeof(throughput)) < 0) 1257 sizeof(throughput)) < 0)
1255 error("setsockopt IPTOS_THROUGHPUT: %.100s", strerror(errno)); 1258 error("setsockopt IPTOS_THROUGHPUT: %.100s", strerror(errno));
1259#endif
1256 } 1260 }
1257} 1261}
1258 1262
diff --git a/scp.c b/scp.c
index 2831f9b99..19f0fd944 100644
--- a/scp.c
+++ b/scp.c
@@ -45,7 +45,7 @@
45 */ 45 */
46 46
47#include "includes.h" 47#include "includes.h"
48RCSID("$Id: scp.c,v 1.22 2000/05/07 02:03:17 damien Exp $"); 48RCSID("$Id: scp.c,v 1.23 2000/05/17 12:53:35 damien Exp $");
49 49
50#include "ssh.h" 50#include "ssh.h"
51#include "xmalloc.h" 51#include "xmalloc.h"
@@ -1008,7 +1008,7 @@ run_err(const char *fmt,...)
1008 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1008 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
1009 * SUCH DAMAGE. 1009 * SUCH DAMAGE.
1010 * 1010 *
1011 * $Id: scp.c,v 1.22 2000/05/07 02:03:17 damien Exp $ 1011 * $Id: scp.c,v 1.23 2000/05/17 12:53:35 damien Exp $
1012 */ 1012 */
1013 1013
1014char * 1014char *
@@ -1235,7 +1235,9 @@ progressmeter(int flag)
1235 struct sigaction sa; 1235 struct sigaction sa;
1236 sa.sa_handler = updateprogressmeter; 1236 sa.sa_handler = updateprogressmeter;
1237 sigemptyset(&sa.sa_mask); 1237 sigemptyset(&sa.sa_mask);
1238#ifdef SA_RESTART
1238 sa.sa_flags = SA_RESTART; 1239 sa.sa_flags = SA_RESTART;
1240#endif
1239 sigaction(SIGALRM, &sa, NULL); 1241 sigaction(SIGALRM, &sa, NULL);
1240 alarmtimer(1); 1242 alarmtimer(1);
1241 } else if (flag == 1) { 1243 } else if (flag == 1) {
diff --git a/ssh-agent.c b/ssh-agent.c
index 30d99b955..7bfa29042 100644
--- a/ssh-agent.c
+++ b/ssh-agent.c
@@ -507,6 +507,7 @@ main(int ac, char **av)
507 struct sockaddr_un sunaddr; 507 struct sockaddr_un sunaddr;
508 pid_t pid; 508 pid_t pid;
509 char *shell, *format, *pidstr, pidstrbuf[1 + 3 * sizeof pid]; 509 char *shell, *format, *pidstr, pidstrbuf[1 + 3 * sizeof pid];
510 extern int optind;
510 511
511 /* check if RSA support exists */ 512 /* check if RSA support exists */
512 if (rsa_alive() == 0) { 513 if (rsa_alive() == 0) {