diff --git a/block-vvfat.c-fix-warnings-with-_FORTIFY_SOURCE.patch b/block-vvfat.c-fix-warnings-with-_FORTIFY_SOURCE.patch
new file mode 100644
index 0000000..d3cdf2e
--- /dev/null
+++ b/block-vvfat.c-fix-warnings-with-_FORTIFY_SOURCE.patch
@@ -0,0 +1,63 @@
+From e69a45b96be09d25429175fa8f0f85e3d7fab5a8 Mon Sep 17 00:00:00 2001
+Message-Id: <e69a45b96be09d25429175fa8f0f85e3d7fab5a8.1277191832.git.amit.shah@redhat.com>
+From: Kirill A. Shutemov <kirill@shutemov.name>
+Date: Wed, 20 Jan 2010 00:56:14 +0100
+Subject: [PATCH] block/vvfat.c: fix warnings with _FORTIFY_SOURCE
+
+CC    block/vvfat.o
+cc1: warnings being treated as errors
+block/vvfat.c: In function 'commit_one_file':
+block/vvfat.c:2259: error: ignoring return value of 'ftruncate', declared with attribute warn_unused_result
+make: *** [block/vvfat.o] Error 1
+  CC    block/vvfat.o
+In file included from /usr/include/stdio.h:912,
+                 from ./qemu-common.h:19,
+                 from block/vvfat.c:27:
+In function 'snprintf',
+    inlined from 'init_directories' at block/vvfat.c:871,
+    inlined from 'vvfat_open' at block/vvfat.c:1068:
+/usr/include/bits/stdio2.h:65: error: call to __builtin___snprintf_chk will always overflow destination buffer
+make: *** [block/vvfat.o] Error 1
+
+Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
+Signed-off-by: Juan Quintela <quintela@redhat.com>
+Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
+(cherry picked from commit 2dedf83ef0cc3463783d6b71bf1b25476f691f3a)
+
+This fixes Fedora bug 605202.
+
+Signed-off-by: Amit Shah <amit.shah@redhat.com>
+---
+ block/vvfat.c |    9 +++++++--
+ 1 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/block/vvfat.c b/block/vvfat.c
+index c1acb35..592d6e6 100644
+--- a/block/vvfat.c
++++ b/block/vvfat.c
+@@ -868,7 +868,8 @@ static int init_directories(BDRVVVFATState* s,
+     {
+ 	direntry_t* entry=array_get_next(&(s->directory));
+ 	entry->attributes=0x28; /* archive | volume label */
+-	snprintf((char*)entry->name,11,"QEMU VVFAT");
++	memcpy(entry->name,"QEMU VVF",8);
++	memcpy(entry->extension,"AT ",3);
+     }
+ 
+     /* Now build FAT, and write back information into directory */
+@@ -2256,7 +2257,11 @@ static int commit_one_file(BDRVVVFATState* s,
+ 	c = c1;
+     }
+ 
+-    ftruncate(fd, size);
++    if (ftruncate(fd, size)) {
++        perror("ftruncate()");
++        close(fd);
++        return -4;
++    }
+     close(fd);
+ 
+     return commit_mappings(s, first_cluster, dir_index);
+-- 
+1.7.0.1
+
diff --git a/qemu.spec b/qemu.spec
index e1fb131..88973a7 100644
--- a/qemu.spec
+++ b/qemu.spec
@@ -1,7 +1,7 @@
 Summary: QEMU is a FAST! processor emulator
 Name: qemu
 Version: 0.12.3
-Release: 6%{?dist}
+Release: 7%{?dist}
 # Epoch because we pushed a qemu-1.0 package
 Epoch: 2
 License: GPLv2+ and LGPLv2+ and BSD
@@ -89,7 +89,7 @@ Patch52: 0052-virtio-console-patches.patch
 Patch53: 0053-net-remove-NICInfo.bootable-field.patch
 Patch54: 0054-net-remove-broken-net_set_boot_mask-boot-device-vali.patch
 Patch55: 0055-boot-remove-unused-boot_devices_bitmap-variable.patch
-
+Patch56: block-vvfat.c-fix-warnings-with-_FORTIFY_SOURCE.patch
 
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildRequires: SDL-devel zlib-devel which texi2html gnutls-devel cyrus-sasl-devel
@@ -336,6 +336,7 @@ such as kvmtrace and kvm_stat.
 %patch53 -p1
 %patch54 -p1
 %patch55 -p1
+%patch56 -p1
 
 %build
 # By default we build everything, but allow x86 to build a minimal version
@@ -639,6 +640,9 @@ fi
 %{_mandir}/man1/qemu-img.1*
 
 %changelog
+* Tue Jun 22 2010 Amit Shah <amit.shah@redhat.com> - 2:0.12.3-7
+- Add vvfat hardening patch from upstream (#605202)
+
 * Fri Apr 23 2010 Justin M. Forbes <jforbes@redhat.com> - 2:0.12.3-6
 - Change requires to the noarch seabios-bin
 - Add ownership of docdir to qemu-common (#572110)