[OE-core] [PATCH 1/1] tslib: Set open mode for ts_calibate.c

Xiaofeng Yan xiaofeng.yan at windriver.com
Thu Nov 17 11:10:26 UTC 2011


From: Xiaofeng Yan <xiaofeng.yan at windriver.com>

Get patch from: http://permalink.gmane.org/gmane.comp.lib.uclibc.buildroot/27614

There is a potentially "unsafe" use of open(). Ubuntu 8.10+, for instance,
by default enables the compiler flag -D_FORTIFY_SOURCE=2 \
which throws an error of ts_calibrate.c. To fix this, \
set a mode in the open() call, patch patched ts_calibrate.c \
to set 0644 (S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH) and it compiles fine

Signed-off-by: Xiaofeng Yan <xiaofeng.yan at windriver.com>
---
 .../tslib/set-open-mode-for-ts_calibrate_c.patch   |   30 ++++++++++++++++++++
 meta/recipes-graphics/tslib/tslib_1.0.bb           |    5 ++-
 2 files changed, 33 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/tslib/tslib/set-open-mode-for-ts_calibrate_c.patch

diff --git a/meta/recipes-graphics/tslib/tslib/set-open-mode-for-ts_calibrate_c.patch b/meta/recipes-graphics/tslib/tslib/set-open-mode-for-ts_calibrate_c.patch
new file mode 100644
index 0000000..738ef9a
--- /dev/null
+++ b/meta/recipes-graphics/tslib/tslib/set-open-mode-for-ts_calibrate_c.patch
@@ -0,0 +1,30 @@
+Get patch from: http://permalink.gmane.org/gmane.comp.lib.uclibc.buildroot/27614
+
+Upstream-Status: Inappropriate [configuration]
+
+diff --git a/tests/ts_calibrate.c b/tests/ts_calibrate.c
+index 004517b..c0a9771 100644
+--- a/tests/ts_calibrate.c
++++ b/tests/ts_calibrate.c
+@@ -21,6 +21,7 @@
+ #include <sys/ioctl.h>
+ #include <sys/mman.h>
+ #include <sys/time.h>
++#include <sys/stat.h>
+ #include <linux/kd.h>
+ #include <linux/vt.h>
+ #include <linux/fb.h>
+@@ -224,9 +225,11 @@ int main()
+		for (i = 0; i < 7; i++) printf("%d ", cal.a [i]);
+		printf("\n");
+		if ((calfile = getenv("TSLIB_CALIBFILE")) != NULL) {
+-			cal_fd = open (calfile, O_CREAT | O_RDWR);
++			cal_fd = open (calfile, O_CREAT | O_RDWR,
++			S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+		} else {
+-			cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR);
++			cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR,
++			S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+		}
+		sprintf (cal_buffer,"%d %d %d %d %d %d %d",
+			 cal.a[1], cal.a[2], cal.a[0],
diff --git a/meta/recipes-graphics/tslib/tslib_1.0.bb b/meta/recipes-graphics/tslib/tslib_1.0.bb
index dbabce0..f47116f 100644
--- a/meta/recipes-graphics/tslib/tslib_1.0.bb
+++ b/meta/recipes-graphics/tslib/tslib_1.0.bb
@@ -10,13 +10,14 @@ SECTION = "base"
 LICENSE = "LGPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=f30a9716ef3762e3467a2f62bf790f0a"
 
-PR = "r19"
+PR = "r20"
 
 SRC_URI = "http://download.berlios.de/tslib/tslib-${PV}.tar.bz2 \
            file://fix_version.patch \
            file://0001-Link-plugins-against-libts.patch \
            file://ts.conf \
-           file://tslib.sh"
+           file://tslib.sh \
+           file://set-open-mode-for-ts_calibrate_c.patch"
 
 SRC_URI[md5sum] = "92b2eb55b1e4ef7e2c0347069389390e"
 SRC_URI[sha256sum] = "9c40d914e4f6fe00bdd77137d671c7ce4f211686228f2eb8b2d3c2360bc249c8"
-- 
1.7.0.4





More information about the Openembedded-core mailing list