[packages/hdf] - added format patch, but disable -Werror=format-security anyway because of hdfimport.c
qboosh
qboosh at pld-linux.org
Sat Mar 2 21:42:48 CET 2013
commit 07e7307a79f64dbb05d06263664dc2ca7796b7ab
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Mar 2 21:42:42 2013 +0100
- added format patch, but disable -Werror=format-security anyway because of hdfimport.c
hdf-format.patch | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
hdf.spec | 5 +++
2 files changed, 139 insertions(+)
---
diff --git a/hdf.spec b/hdf.spec
index 0c481bb..d8e35c9 100644
--- a/hdf.spec
+++ b/hdf.spec
@@ -17,6 +17,7 @@ Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.
Patch0: %{name}-shared.patch
Patch1: %{name}-morearchs.patch
Patch2: %{name}-link.patch
+Patch3: %{name}-format.patch
URL: http://hdf.ncsa.uiuc.edu/
BuildRequires: autoconf >= 2.50
BuildRequires: automake
@@ -32,6 +33,9 @@ BuildRequires: which
BuildRequires: zlib-devel >= 1.1.4
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# because of mfhdf/hdfimport/hdfimport.c false positives (const strings as format arguments)
+%define filterout_c -Werror=format-security
+
%description
HDF is a multi-object file format that facilitates the transfer of
various types of scientific data between machines and operating
@@ -100,6 +104,7 @@ Narzędzia do konwersji z i do formatu HDF.
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
# evil -R
sed -i '/^if HDF_BUILD_XDR/,/^endif/d;/^if HDF_BUILD_SHARED/,/^endif/d' config/commence.am
diff --git a/hdf-format.patch b/hdf-format.patch
new file mode 100644
index 0000000..9d37e63
--- /dev/null
+++ b/hdf-format.patch
@@ -0,0 +1,134 @@
+--- hdf-4.2.9/hdf/util/writehdf.c.orig 2013-02-08 05:44:54.000000000 +0100
++++ hdf-4.2.9/hdf/util/writehdf.c 2013-03-02 21:21:51.253874517 +0100
+@@ -75,15 +75,13 @@
+ /*Start HDF file*/
+ file_id = Hopen(HDFName, DFACC_CREATE, 0);
+ if(file_id == -1) {
+- printf("Unable to create HDF file");
+ status = HEvalue(1);
+- printf(HEstring(status));
++ printf("Unable to create HDF file: %s", HEstring(status));
+ exit(0);
+ }
+
+ if ((status = Vstart(file_id)) == -1) {
+- printf("Could not start VGroup interface\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not start VGroup interface\n%s", HEstring(HEvalue(1)));
+ exit(-1);
+ }
+
+@@ -98,8 +96,7 @@
+ if (gifHead.PackedField & 0x80) {
+ status = Vsetattr (vgroup_id, "Global Palette" , DFNT_UINT8, 3 * gifHead.TableSize , (VOIDP)gifHead.HDFPalette);
+ if (status) {
+- printf("Could not add global palette.\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not add global palette.\n%s", HEstring(HEvalue(1)));
+ }
+ }
+ for (i = 0 ; i < CommentCount ; i++) {
+@@ -143,15 +140,13 @@
+
+ /* GRSetCompress */
+ if ((status = GRsetcompress(ri_id, comp_type, &c_info)) == -1) {
+- printf("Error occured while setting compression\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Error occured while setting compression\n%s", HEstring(HEvalue(1)));
+ exit(-1);
+ }
+
+ /* Write the GR Image */
+ if ((status = GRwriteimage(ri_id, start, NULL, edges, (VOIDP)gifImageDesc.Image)) == -1) {
+- printf("Error occured while trying to write GR image\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Error occured while trying to write GR image\n%s", HEstring(HEvalue(1)));
+ exit(-1);
+ }
+
+@@ -159,8 +154,7 @@
+ pal_id = GRgetlutid (ri_id , 0);
+
+ if ((status = GRwritelut (pal_id , 3, DFNT_UINT8, interlace_mode, 256, (VOIDP)gifImageDesc.HDFPalette)) == -1) {
+- printf("Could not write palette\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not write palette\n%s", HEstring(HEvalue(1)));
+ exit(-1);
+ }
+
+@@ -168,8 +162,7 @@
+ gr_ref = GRidtoref(ri_id);
+
+ if ((status = GRendaccess(ri_id)) == -1) {
+- printf("Could not terminate GR access\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not terminate GR access\n%s", HEstring(HEvalue(1)));
+ exit(-1);
+ }
+
+@@ -177,8 +170,7 @@
+
+ /* Adding GR to vgroup */
+ if((status = Vaddtagref(vgroup_id,(int32)1965,gr_ref))==-1) {
+- printf("Could not add tag to Vgroup");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not add tag to Vgroup: %s", HEstring(HEvalue(1)));
+ }
+
+
+@@ -186,29 +178,25 @@
+
+ /* Terminate GR access */
+ if ((status = GRend (gr_id))==-1) {
+- printf("Could not end GR access\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not end GR access\n%s", HEstring(HEvalue(1)));
+ printf("Trying to continue (file may be corrupt)...\n");
+ }
+
+ /* Terminate access to the VGroup */
+ if ((status = Vdetach(vgroup_id))==-1) {
+- printf("Could not detach Vgroup\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not detach Vgroup\n%s", HEstring(HEvalue(1)));
+ printf("Trying to continure (file may be corrupt)...\n");
+ }
+
+ /* Terminate access to the V interface */
+ if ((status = Vend(file_id))==-1) {
+- printf("Could not end VGroup access\n");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not end VGroup access\n%s", HEstring(HEvalue(1)));
+ printf("Trying to continure (file may be corrupt)... \n");
+ }
+
+ /* Close the HDF file */
+ if ((status = Hclose (file_id))==-1) {
+- printf("Could not close HDF file. Fatal Error");
+- printf(HEstring(HEvalue(1)));
++ printf("Could not close HDF file. Fatal Error: %s", HEstring(HEvalue(1)));
+ return(-1);
+ }
+ return(0);
+--- hdf-4.2.9/hdf/util/hdf2gif.c.orig 2013-02-08 05:44:54.000000000 +0100
++++ hdf-4.2.9/hdf/util/hdf2gif.c 2013-03-02 21:23:06.247339787 +0100
+@@ -141,9 +141,8 @@
+ /*Start HDF file*/
+ file_id = Hopen(HDFName, DFACC_READ, 0);
+ if(file_id == -1) {
+- printf("Unable to open HDF file");
+ status = HEvalue(1);
+- printf(HEstring(status));
++ printf("Unable to open HDF file: %s", HEstring(status));
+ exit(0);
+ }
+
+@@ -162,7 +161,7 @@
+
+ if ((status = GRfileinfo(gr_id , &n_images , &n_fileattributes)) == -1) {
+ status = HEvalue(1);
+- printf(HEstring(status));
++ fputs(HEstring(status), stdout);
+ exit(0);
+ }
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/hdf.git/commitdiff/07e7307a79f64dbb05d06263664dc2ca7796b7ab
More information about the pld-cvs-commit
mailing list