Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:makoenig:Factory
dmraid
project.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File project.diff of Package dmraid
--- dmraid.changes.orig +++ dmraid.changes @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Fri Nov 21 16:11:03 CST 2008 - cmeng@novell.com + +- fixed scandir() segment fault in libdmraid-event [bnc#443284] +- remove 'pushd libdmraid*' in dmraid.spec + +------------------------------------------------------------------- Mon Nov 10 12:44:08 CET 2008 - mkoenig@suse.de - adapt mkinitrd script to changed UUID prefix [bnc#441479] --- dmraid.spec.orig +++ dmraid.spec @@ -45,6 +45,7 @@ Patch10: dmraid-1.0.0.rc14-fixup_ Patch11: dmraid-1.0.0.rc15-scsi_serial_remove_ws.patch # libdmraid-events Patch50: libdmraid-events.dif +Patch51: libdmraid-events-scandir-segfault.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: %fillup_prereq @@ -113,9 +114,8 @@ Authors: %patch6 -p1 %patch10 -p1 %patch11 -p1 -pushd libdmraid* %patch50 -popd +%patch51 cp %{SOURCE3} . %build --- libdmraid-events-scandir-segfault.patch.orig +++ libdmraid-events-scandir-segfault.patch @@ -0,0 +1,32 @@ +Index: libdmraid-events/libdmraid-events.c +=================================================================== +--- libdmraid-events.orig/libdmraid-events.c ++++ libdmraid-events/libdmraid-events.c +@@ -145,7 +145,7 @@ static int _repopulate(const char* devic + char test_path[BUF_SIZE]; + FILE *fd; + DIR *dir; +- struct dirent **dir_ent; ++ struct dirent **dir_ent = 0; + + while(strcmp(curr->vol_name, device)) + curr=curr->next; +@@ -160,7 +160,7 @@ static int _repopulate(const char* devic + if(!inset) { + memcpy(curr->raid_mem[curr->num_sata_drives].dev_name, disk, strlen(disk)); + i = scandir(sys_path, &dir_ent, 0, alphasort); +- while(i--) { ++ while(i>0 && i--) { + if(dir_ent[i]->d_name[0] != '.') { + /* Append the "X:X:X:X" to sys_path */ + memset(sys_path+strlen(SYS_SCSI_PATH), 0, BUF_SIZE-strlen(SYS_SCSI_PATH)); +@@ -188,7 +188,8 @@ static int _repopulate(const char* devic + free(dir_ent[i]); + } + +- free(dir_ent); ++ if (dir_ent) free(dir_ent); ++ dir_ent = 0; + curr->num_sata_drives++; + ret++; + } --- libdmraid-events.dif.orig +++ libdmraid-events.dif @@ -1,5 +1,5 @@ ---- Makefile -+++ Makefile 2008/09/15 11:42:03 +--- libdmraid-events.orig/Makefile ++++ libdmraid-events/Makefile 2008/09/15 11:42:03 @@ -39,7 +39,7 @@
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor