[curl] eliminate unnecessary inotify events on upload via file protocol (#844385)
Kamil Dudka
kdudka at fedoraproject.org
Wed Aug 1 07:52:36 UTC 2012
commit 4e2353e082ef129887d9b2b40cda4019a61e1396
Author: Kamil Dudka <kdudka at redhat.com>
Date: Wed Aug 1 09:47:27 2012 +0200
eliminate unnecessary inotify events on upload via file protocol (#844385)
0001-curl-7.27.0-1f8518c5.patch | 34 ++++++++++++++++++++++++++++++++++
curl.spec | 8 +++++++-
2 files changed, 41 insertions(+), 1 deletions(-)
---
diff --git a/0001-curl-7.27.0-1f8518c5.patch b/0001-curl-7.27.0-1f8518c5.patch
new file mode 100644
index 0000000..02e2e6e
--- /dev/null
+++ b/0001-curl-7.27.0-1f8518c5.patch
@@ -0,0 +1,34 @@
+From e693b8e6591366ef2c077ba90fe0315a8a0b00c5 Mon Sep 17 00:00:00 2001
+From: Kamil Dudka <kdudka at redhat.com>
+Date: Mon, 30 Jul 2012 14:20:07 +0200
+Subject: [PATCH] file: use fdopen() for uploaded files if available
+
+It eliminates noisy events when using inotify and fixes a TOCTOU issue.
+
+Bug: https://bugzilla.redhat.com/844385
+
+[upstream commit 1f8518c5d9aaa369dae85620973f9b5c1add3277]
+---
+ lib/file.c | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/lib/file.c b/lib/file.c
+index 4447c73..1025022 100644
+--- a/lib/file.c
++++ b/lib/file.c
+@@ -351,8 +351,12 @@ static CURLcode file_upload(struct connectdata *conn)
+ failf(data, "Can't open %s for writing", file->path);
+ return CURLE_WRITE_ERROR;
+ }
++#ifdef HAVE_FDOPEN
++ fp = fdopen(fd, "wb");
++#else
+ close(fd);
+ fp = fopen(file->path, "wb");
++#endif
+ }
+
+ if(!fp) {
+--
+1.7.1
+
diff --git a/curl.spec b/curl.spec
index 93b923c..beee07c 100644
--- a/curl.spec
+++ b/curl.spec
@@ -1,13 +1,16 @@
Summary: A utility for getting files from remote servers (FTP, HTTP, and others)
Name: curl
Version: 7.27.0
-Release: 1%{?dist}
+Release: 2%{?dist}
License: MIT
Group: Applications/Internet
Source: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma
Source2: curlbuild.h
Source3: hide_selinux.c
+# eliminate unnecessary inotify events on upload via file protocol (#844385)
+Patch1: 0001-curl-7.27.0-1f8518c5.patch
+
# patch making libcurl multilib ready
Patch101: 0101-curl-7.27.0-multilib.patch
@@ -230,6 +233,9 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/aclocal/libcurl.m4
%changelog
+* Wed Aug 01 2012 Kamil Dudka <kdudka at redhat.com> 7.27.0-2
+- eliminate unnecessary inotify events on upload via file protocol (#844385)
+
* Sat Jul 28 2012 Kamil Dudka <kdudka at redhat.com> 7.27.0-1
- new upstream release
More information about the scm-commits
mailing list