Hello community,

here is the log from the commit of package dosfstools for openSUSE:Factory
checked in at Mon Mar 14 11:37:28 CET 2011.



--------
--- dosfstools/dosfstools.changes       2010-12-20 15:11:46.000000000 +0100
+++ /mounts/work_src_done/STABLE/dosfstools/dosfstools.changes  2011-03-09 
12:40:44.000000000 +0100
@@ -1,0 +2,5 @@
+Tue Mar  8 18:13:53 CET 2011 - pgaj...@suse.cz
+
+- fixed fsck.vfat crashing [bnc#677236]
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


New:
----
  dosfstools-filename-buffer-overflow.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dosfstools.spec ++++++
--- /var/tmp/diff_new_pack.3a9knQ/_old  2011-03-14 11:37:08.000000000 +0100
+++ /var/tmp/diff_new_pack.3a9knQ/_new  2011-03-14 11:37:08.000000000 +0100
@@ -1,5 +1,5 @@
 #
-# spec file for package dosfstools (Version 3.0.10)
+# spec file for package dosfstools
 #
 # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
@@ -25,12 +25,13 @@
 AutoReqProv:    on
 Summary:        Utilities for Making and Checking MS-DOS FAT File Systems on 
Linux
 Version:        3.0.10
-Release:        3
+Release:        14
 Url:            http://freshmeat.net/projects/dosfstools
 Source:         %{name}_%{version}.orig.tar.bz2
 Patch0:         %{name}-suse-dirs.patch
 Patch1:         %{name}-mdraid-partition.patch
 Patch2:         %{name}-label.patch
+Patch3:         %{name}-filename-buffer-overflow.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Supplements:    filesystem(vfat)
 
@@ -52,6 +53,7 @@
 %patch0 -p1
 %patch1
 %patch2 -p1
+%patch3 -p1
 
 %build
 make OPTFLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE $RPM_OPT_FLAGS"

++++++ dosfstools-filename-buffer-overflow.patch ++++++
Index: dosfstools-3.0.10/src/check.c
===================================================================
--- dosfstools-3.0.10.orig/src/check.c
+++ dosfstools-3.0.10/src/check.c
@@ -174,7 +174,10 @@ loff_t alloc_rootdir_entry(DOS_FS *fs, D
        offset = fs->root_start+next_free*sizeof(DIR_ENT);
        memset(de,0,sizeof(DIR_ENT));
        while (1) {
-           sprintf(de->name,pattern,curr_num);
+           char expanded[12];
+           sprintf(expanded, pattern, curr_num);
+           memcpy(de->name, expanded, 8);
+           memcpy(de->ext, expanded+8, 3);
            for (scan = 0; scan < fs->root_entries; scan++)
                if (scan != next_free &&
                    !strncmp(root[scan].name,de->name,MSDOS_NAME))

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to