summaryrefslogtreecommitdiff
path: root/debian/patches/gcc-default-format-security.diff
diff options
context:
space:
mode:
authordoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2012-11-17 22:56:23 +0000
committerdoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2012-11-17 22:56:23 +0000
commit9ce75680dbf209d1adcfbaceaa9080221aa84a62 (patch)
tree3ec4c701802d1254f7f0ed7f94ce74abc15cfc5b /debian/patches/gcc-default-format-security.diff
downloadgcc-48-9ce75680dbf209d1adcfbaceaa9080221aa84a62.tar.gz
- start 4.8
git-svn-id: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-4.8@6242 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
Diffstat (limited to 'debian/patches/gcc-default-format-security.diff')
-rw-r--r--debian/patches/gcc-default-format-security.diff54
1 files changed, 54 insertions, 0 deletions
diff --git a/debian/patches/gcc-default-format-security.diff b/debian/patches/gcc-default-format-security.diff
new file mode 100644
index 0000000..b12fa8d
--- /dev/null
+++ b/debian/patches/gcc-default-format-security.diff
@@ -0,0 +1,54 @@
+# DP: Turn on -Wformat -Wformat-security by default for C, C++, ObjC, ObjC++.
+
+---
+ gcc/c-common.c | 2 +-
+ gcc/c.opt | 2 +-
+ gcc/doc/invoke.texi | 8 ++++++++
+ 3 files changed, 10 insertions(+), 2 deletions(-)
+
+--- a/src/gcc/c-family/c-common.c
++++ b/src/gcc/c-family/c-common.c
+@@ -201,7 +201,7 @@
+ /* Warn about format/argument anomalies in calls to formatted I/O functions
+ (*printf, *scanf, strftime, strfmon, etc.). */
+
+-int warn_format;
++int warn_format = 1;
+
+ /* C/ObjC language option variables. */
+
+--- a/src/gcc/c-family/c.opt
++++ b/src/gcc/c-family/c.opt
+@@ -384,7 +384,7 @@
+ Warn about format strings that contain NUL bytes
+
+ Wformat-security
+-C ObjC C++ ObjC++ Var(warn_format_security) Warning
++C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning
+ Warn about possible security problems with format functions
+
+ Wformat-y2k
+--- a/src/gcc/doc/invoke.texi
++++ b/src/gcc/doc/invoke.texi
+@@ -3102,6 +3102,9 @@
+ @option{-Wformat-nonliteral}, @option{-Wformat-security}, and
+ @option{-Wformat=2} are available, but are not included in @option{-Wall}.
+
++NOTE: In Ubuntu 8.10 and later versions this option is enabled by default
++for C, C++, ObjC, ObjC++. To disable, use @option{-Wformat=0}.
++
+ @item -Wformat-y2k
+ @opindex Wformat-y2k
+ @opindex Wno-format-y2k
+@@ -3155,6 +3158,11 @@
+ in future warnings may be added to @option{-Wformat-security} that are not
+ included in @option{-Wformat-nonliteral}.)
+
++NOTE: In Ubuntu 8.10 and later versions this option is enabled by default
++for C, C++, ObjC, ObjC++. To disable, use @option{-Wno-format-security},
++or disable all format warnings with @option{-Wformat=0}. To make format
++security warnings fatal, specify @option{-Werror=format-security}.
++
+ @item -Wformat=2
+ @opindex Wformat=2
+ @opindex Wno-format=2