summaryrefslogtreecommitdiff
path: root/methods/ftp.cc
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2014-02-10 21:52:38 +0100
committerDavid Kalnischkies <david@kalnischkies.de>2014-02-11 02:28:27 +0100
commit246bbb611d4cd5e2a13ecffb6cbe0e76390eae6f (patch)
treeb26d839bc4a41e98153706084ed41778a85026a4 /methods/ftp.cc
parente209542632e61b9bf07b809c333f1e4b9de7fde9 (diff)
use utimes instead of utimensat/futimens
cppcheck complains about the obsolete utime as it was removed in POSIX1.2008 and recommends usage of utimensat/futimens instead as those are in POSIX and so commit 9ce3cfc9 switched to them. It is just that they aren't as portable as the standard suggests: At least our kFreeBSD and Hurd ports stumble over it at runtime. So to make both, the ports and cppcheck happy, we use utimes instead. Closes: 738567
Diffstat (limited to 'methods/ftp.cc')
-rw-r--r--methods/ftp.cc18
1 files changed, 9 insertions, 9 deletions
diff --git a/methods/ftp.cc b/methods/ftp.cc
index 2d05364d5..70bf4f607 100644
--- a/methods/ftp.cc
+++ b/methods/ftp.cc
@@ -954,11 +954,11 @@ void FtpMethod::SigTerm(int)
_exit(100);
// Timestamp
- struct timespec times[2];
+ struct timeval times[2];
times[0].tv_sec = FailTime;
times[1].tv_sec = FailTime;
- times[0].tv_nsec = times[1].tv_nsec = 0;
- futimens(FailFd, times);
+ times[0].tv_usec = times[1].tv_usec = 0;
+ utimes(FailFile.c_str(), times);
close(FailFd);
@@ -1062,11 +1062,11 @@ bool FtpMethod::Fetch(FetchItem *Itm)
Fd.Close();
// Timestamp
- struct timespec times[2];
+ struct timeval times[2];
times[0].tv_sec = FailTime;
times[1].tv_sec = FailTime;
- times[0].tv_nsec = times[1].tv_nsec = 0;
- futimens(FailFd, times);
+ times[0].tv_usec = times[1].tv_usec = 0;
+ utimes(FailFile.c_str(), times);
// If the file is missing we hard fail and delete the destfile
// otherwise transient fail
@@ -1081,11 +1081,11 @@ bool FtpMethod::Fetch(FetchItem *Itm)
Res.Size = Fd.Size();
// Timestamp
- struct timespec times[2];
+ struct timeval times[2];
times[0].tv_sec = FailTime;
times[1].tv_sec = FailTime;
- times[0].tv_nsec = times[1].tv_nsec = 0;
- futimens(Fd.Fd(), times);
+ times[0].tv_usec = times[1].tv_usec = 0;
+ utimes(Fd.Name().c_str(), times);
FailFd = -1;
}