- (bal) Use chown() if fchown() does not exist in ftp-server.c patch by

Tim Rice <tim@multitalents.net>
This commit is contained in:
Ben Lindstrom 2001-02-13 02:40:56 +00:00
parent 6c92dab9a1
commit 34bb0c7431
3 changed files with 10 additions and 4 deletions

View File

@ -3,6 +3,8 @@
- (bal) Cleaned out bsd-snprintf.c. VARARGS have been banished and - (bal) Cleaned out bsd-snprintf.c. VARARGS have been banished and
I did a base KNF over the whe whole file to make it more acceptable. I did a base KNF over the whe whole file to make it more acceptable.
(backed out of original patch and removed it from ChangeLog) (backed out of original patch and removed it from ChangeLog)
- (bal) Use chown() if fchown() does not exist in ftp-server.c patch by
Tim Rice <tim@multitalents.net>
20010212 20010212
- (djm) Update Redhat specfile to allow --define "skip_x11_askpass 1", - (djm) Update Redhat specfile to allow --define "skip_x11_askpass 1",
@ -3910,4 +3912,4 @@
- Wrote replacements for strlcpy and mkdtemp - Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1 - Released 1.0pre1
$Id: ChangeLog,v 1.752 2001/02/13 02:18:50 mouring Exp $ $Id: ChangeLog,v 1.753 2001/02/13 02:40:56 mouring Exp $

View File

@ -1,4 +1,4 @@
# $Id: configure.in,v 1.236 2001/02/13 01:11:17 djm Exp $ # $Id: configure.in,v 1.237 2001/02/13 02:40:56 mouring Exp $
AC_INIT(ssh.c) AC_INIT(ssh.c)
@ -325,10 +325,10 @@ AC_CHECK_FUNC(utimes,
) )
# Checks for header files. # Checks for header files.
AC_CHECK_HEADERS(bstring.h endian.h floatingpoint.h getopt.h lastlog.h limits.h login.h login_cap.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h regex.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/queue.h sys/select.h sys/stat.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h sys/un.h stddef.h time.h ttyent.h usersec.h util.h utime.h utmp.h utmpx.h vis.h) AC_CHECK_HEADERS(bstring.h endian.h floatingpoint.h getopt.h lastlog.h limits.h login.h login_cap.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h regex.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/queue.h sys/select.h sys/stat.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h sys/un.h stdarg.h stddef.h time.h ttyent.h usersec.h util.h utime.h utmp.h utmpx.h vis.h)
dnl Checks for library functions. dnl Checks for library functions.
AC_CHECK_FUNCS(arc4random atexit b64_ntop bcopy bindresvport_sa clock fchmod freeaddrinfo futimes gai_strerror getcwd getaddrinfo getgrouplist getnameinfo getrlimit getrusage getttyent inet_aton inet_ntoa innetgr login_getcapbool md5_crypt memmove mkdtemp on_exit openpty realpath rresvport_af setdtablesize setenv seteuid setlogin setproctitle setreuid setrlimit setsid sigaction sigvec snprintf strerror strlcat strlcpy strmode strsep strtok_r sysconf tcgetpgrp utimes vsnprintf vhangup vis waitpid _getpty __b64_ntop) AC_CHECK_FUNCS(arc4random atexit b64_ntop bcopy bindresvport_sa clock fchown fchmod freeaddrinfo futimes gai_strerror getcwd getaddrinfo getgrouplist getnameinfo getrlimit getrusage getttyent inet_aton inet_ntoa innetgr login_getcapbool md5_crypt memmove mkdtemp on_exit openpty realpath rresvport_af setdtablesize setenv seteuid setlogin setproctitle setreuid setrlimit setsid sigaction sigvec snprintf strerror strlcat strlcpy strmode strsep strtok_r sysconf tcgetpgrp utimes vsnprintf vhangup vis waitpid _getpty __b64_ntop)
dnl Checks for time functions dnl Checks for time functions
AC_CHECK_FUNCS(gettimeofday time) AC_CHECK_FUNCS(gettimeofday time)
dnl Checks for libutil functions dnl Checks for libutil functions

View File

@ -609,7 +609,11 @@ process_fsetstat(void)
status = errno_to_portable(errno); status = errno_to_portable(errno);
} }
if (a->flags & SSH2_FILEXFER_ATTR_UIDGID) { if (a->flags & SSH2_FILEXFER_ATTR_UIDGID) {
#ifdef HAVE_FCHOWN
ret = fchown(fd, a->uid, a->gid); ret = fchown(fd, a->uid, a->gid);
#else
ret = chown(name, a->uid, a->gid);
#endif
if (ret == -1) if (ret == -1)
status = errno_to_portable(errno); status = errno_to_portable(errno);
} }