diff options
-rw-r--r-- | CREDITS | 4 | ||||
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | INSTALL | 8 | ||||
-rw-r--r-- | Makefile.in | 6 | ||||
-rw-r--r-- | acconfig.h | 1 | ||||
-rw-r--r-- | bsd-login.c | 4 | ||||
-rw-r--r-- | configure.in | 16 | ||||
-rw-r--r-- | defines.h | 13 | ||||
-rw-r--r-- | packet.c | 6 | ||||
-rw-r--r-- | scp.c | 6 | ||||
-rw-r--r-- | ssh-agent.c | 1 |
11 files changed, 60 insertions, 11 deletions
@@ -34,6 +34,7 @@ jonchen (email unknown) - the original author of PAM support of SSH | |||
34 | Juergen Keil <jk@tools.de> - scp bugfixing | 34 | Juergen Keil <jk@tools.de> - scp bugfixing |
35 | Kees Cook <cook@cpoint.net> - scp fixes | 35 | Kees Cook <cook@cpoint.net> - scp fixes |
36 | Kiyokazu SUTO <suto@ks-and-ks.ne.jp> - Bugfixes | 36 | Kiyokazu SUTO <suto@ks-and-ks.ne.jp> - Bugfixes |
37 | Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> - Bugfixes | ||
37 | Marc G. Fournier <marc.fournier@acadiau.ca> - Solaris patches | 38 | Marc G. Fournier <marc.fournier@acadiau.ca> - Solaris patches |
38 | Matt Richards <v2matt@btv.ibm.com> - AIX patches | 39 | Matt Richards <v2matt@btv.ibm.com> - AIX patches |
39 | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> - PAM environment patch | 40 | Nalin Dahyabhai <nalin.dahyabhai@pobox.com> - PAM environment patch |
@@ -41,7 +42,10 @@ Niels Kristian Bech Jensen <nkbj@image.dk> - Assorted patches | |||
41 | Peter Kocks <peter.kocks@baygate.com> - Makefile fixes | 42 | Peter Kocks <peter.kocks@baygate.com> - Makefile fixes |
42 | Phil Hands <phil@hands.com> - Debian scripts, assorted patches | 43 | Phil Hands <phil@hands.com> - Debian scripts, assorted patches |
43 | Phil Karn <karn@ka9q.ampr.org> - Autoconf fix | 44 | Phil Karn <karn@ka9q.ampr.org> - Autoconf fix |
45 | SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp> - Multiple bugfixes | ||
46 | Simon Wilkinson <sxw@dcs.ed.ac.uk> - PAM fixes | ||
44 | Thomas Neumann <tom@smart.ruhr.de> - Shadow passwords | 47 | Thomas Neumann <tom@smart.ruhr.de> - Shadow passwords |
48 | Tom Bertelson's <tbert@abac.com> - AIX auth fixes | ||
45 | Tor-Ake Fransson <torake@hotmail.com> - AIX support | 49 | Tor-Ake Fransson <torake@hotmail.com> - AIX support |
46 | Tudor Bosman <tudorb@jm.nu> - MD5 password support | 50 | Tudor Bosman <tudorb@jm.nu> - MD5 password support |
47 | 51 | ||
@@ -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 | ||
29 | 20000513 | 35 | 20000513 |
30 | - Fix for non-recognised DSA keys from Arkadiusz Miskiewicz | 36 | - Fix for non-recognised DSA keys from Arkadiusz Miskiewicz |
@@ -4,7 +4,7 @@ | |||
4 | You will need working installations of Zlib and OpenSSL. | 4 | You will need working installations of Zlib and OpenSSL. |
5 | 5 | ||
6 | Zlib: | 6 | Zlib: |
7 | http://www.cdrom.com/pub/infozip/zlib/ | 7 | http://www.freesoftware.com/pub/infozip/zlib/ |
8 | 8 | ||
9 | OpenSSL 0.9.5a or greater: | 9 | OpenSSL 0.9.5a or greater: |
10 | http://www.openssl.org/ | 10 | http://www.openssl.org/ |
@@ -90,7 +90,7 @@ need a working installation of GNOME, including the development | |||
90 | headers, for this to work. | 90 | headers, 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 |
93 | random numbers (the default is /dev/urandom). Unless you are absolutly | 93 | random numbers (the default is /dev/urandom). Unless you are absolutely |
94 | sure of what you are doing, it is best to leave this alone. | 94 | sure 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. | |||
152 | real (AF_INET) IPv4 addresses. Works around some quirks on Linux. | 152 | real (AF_INET) IPv4 addresses. Works around some quirks on Linux. |
153 | 153 | ||
154 | If you need to pass special options to the compiler or linker, you | 154 | If you need to pass special options to the compiler or linker, you |
155 | can specify these as enviornment variables before running ./configure. | 155 | can specify these as environment variables before running ./configure. |
156 | For example: | 156 | For example: |
157 | 157 | ||
158 | CFLAGS="-O -m486" LFLAGS="-s" LIBS="-lrubbish" LD="/usr/foo/ld" ./configure | 158 | CFLAGS="-O -m486" LFLAGS="-s" LIBS="-lrubbish" LD="/usr/foo/ld" ./configure |
@@ -186,5 +186,5 @@ for sshd, ssh and ssh-agent. | |||
186 | 186 | ||
187 | If you experience problems compiling, installing or running OpenSSH. | 187 | If you experience problems compiling, installing or running OpenSSH. |
188 | Please refer to the "reporting bugs" section of the webpage at | 188 | Please refer to the "reporting bugs" section of the webpage at |
189 | http://violet.ibs.com.au/openssh/ | 189 | http://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 | ||
92 | clean: | 92 | clean: |
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 | ||
96 | distclean: clean | 96 | distclean: clean |
97 | rm -f Makefile config.h core *~ | 97 | rm -f Makefile config.h config.status ssh_prng_cmds *~ |
98 | 98 | ||
99 | mrproper: distclean | 99 | mrproper: 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 | |||
135 | AC_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) | 135 | AC_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. |
138 | AC_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) | 138 | AC_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 | ||
140 | AC_CHECK_FUNC(login, | 140 | AC_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) |
382 | fi | 382 | fi |
383 | 383 | ||
384 | AC_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 | ]) | ||
394 | if test "x$ac_cv_have_ssize_t" = "xyes" ; then | ||
395 | AC_DEFINE(HAVE_SSIZE_T) | ||
396 | fi | ||
397 | |||
384 | 398 | ||
385 | AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_have_struct_sockaddr_storage, [ | 399 | AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_have_struct_sockaddr_storage, [ |
386 | AC_TRY_COMPILE( | 400 | AC_TRY_COMPILE( |
@@ -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 | ||
154 | typedef 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 */ |
@@ -17,7 +17,7 @@ | |||
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include "includes.h" | 19 | #include "includes.h" |
20 | RCSID("$Id: packet.c,v 1.22 2000/05/07 02:03:17 damien Exp $"); | 20 | RCSID("$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 | ||
@@ -45,7 +45,7 @@ | |||
45 | */ | 45 | */ |
46 | 46 | ||
47 | #include "includes.h" | 47 | #include "includes.h" |
48 | RCSID("$Id: scp.c,v 1.22 2000/05/07 02:03:17 damien Exp $"); | 48 | RCSID("$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 | ||
1014 | char * | 1014 | char * |
@@ -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) { |