Hello community, here is the log from the commit of package libvorbis for openSUSE:Factory checked in at 2011-11-28 12:54:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libvorbis (Old) and /work/SRC/openSUSE:Factory/.libvorbis.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvorbis", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/libvorbis/libvorbis.changes 2011-11-23 19:36:22.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.libvorbis.new/libvorbis.changes 2011-11-28 12:54:30.000000000 +0100 @@ -1,0 +2,8 @@ +Fri Nov 25 21:08:52 UTC 2011 - [email protected] + +- open files with O_CLOEXEC, in order to avoid fd leaks + when calling applications fork() ..execve()... + This patch does not cover the executable tools since + it is not critical for them. + +------------------------------------------------------------------- New: ---- vorbis-ocloexec.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libvorbis.spec ++++++ --- /var/tmp/diff_new_pack.0TrVDq/_old 2011-11-28 12:54:32.000000000 +0100 +++ /var/tmp/diff_new_pack.0TrVDq/_new 2011-11-28 12:54:32.000000000 +0100 @@ -39,6 +39,7 @@ # PATCH-FIX-UPSTREAM libvorbis-pkgconfig.patch https://trac.xiph.org/ticket/1759 [email protected] -- Use Requires/Libs.private to avoid overlinking Patch10: libvorbis-pkgconfig.patch Patch11: vorbis-fix-linking.patch +Patch12: vorbis-ocloexec.patch BuildRequires: libogg-devel BuildRequires: fdupes libtool pkgconfig BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -141,6 +142,7 @@ %patch1 fi %patch11 +%patch12 %build autoreconf -fiv ++++++ vorbis-ocloexec.patch ++++++ --- lib/analysis.c.orig +++ lib/analysis.c @@ -73,7 +73,7 @@ void _analysis_output_always(char *base, char buffer[80]; sprintf(buffer,"%s_%d.m",base,i); - of=fopen(buffer,"w"); + of=fopen(buffer,"we"); if(!of)perror("failed to open data dump file"); --- lib/floor1.c.orig +++ lib/floor1.c @@ -899,7 +899,7 @@ int floor1_encode(oggpack_buffer *opb,vo char buffer[80]; sprintf(buffer,"line_%dx%ld_class%d.vqd", vb->pcmend/2,posts-2,class); - of=fopen(buffer,"a"); + of=fopen(buffer,"ae"); fprintf(of,"%d\n",cval); fclose(of); } @@ -923,7 +923,7 @@ int floor1_encode(oggpack_buffer *opb,vo char buffer[80]; sprintf(buffer,"line_%dx%ld_%dsub%d.vqd", vb->pcmend/2,posts-2,class,bookas[k]); - of=fopen(buffer,"a"); + of=fopen(buffer,"ae"); fprintf(of,"%d\n",out[j+k]); fclose(of); } --- lib/psytune.c.orig +++ lib/psytune.c @@ -202,7 +202,7 @@ void analysis(char *base,int i,float *v, FILE *of; char buffer[80]; sprintf(buffer,"%s_%d.m",base,i); - of=fopen(buffer,"w"); + of=fopen(buffer,"we"); for(j=0;j<n;j++){ if(dB && v[j]==0) --- lib/res0.c.orig +++ lib/res0.c @@ -93,7 +93,7 @@ void res0_free_look(vorbis_look_residue /* long and short into the same bucket by current convention */ sprintf(buffer,"res_sub%d_part%d_pass%d.vqd",look->submap,j,k); - of=fopen(buffer,"a"); + of=fopen(buffer,"ae"); for(l=0;l<statebook->entries;l++) fprintf(of,"%d:%ld\n",l,look->training_data[k][j][l]); @@ -462,7 +462,7 @@ static long **_01class(vorbis_block *vb, for(i=0;i<ch;i++){ sprintf(buffer,"resaux_%d.vqd",look->train_seq); - of=fopen(buffer,"a"); + of=fopen(buffer,"ae"); for(j=0;j<partvals;j++) fprintf(of,"%ld, ",partword[i][j]); fprintf(of,"\n"); @@ -521,7 +521,7 @@ static long **_2class(vorbis_block *vb,v #ifdef TRAIN_RESAUX sprintf(buffer,"resaux_%d.vqd",look->train_seq); - of=fopen(buffer,"a"); + of=fopen(buffer,"ae"); for(i=0;i<partvals;i++) fprintf(of,"%ld, ",partword[0][i]); fprintf(of,"\n"); --- lib/vorbisfile.c.orig +++ lib/vorbisfile.c @@ -1010,7 +1010,7 @@ int ov_open(FILE *f,OggVorbis_File *vf,c int ov_fopen(const char *path,OggVorbis_File *vf){ int ret; - FILE *f = fopen(path,"rb"); + FILE *f = fopen(path,"rbe"); if(!f) return -1; ret = ov_open(f,vf,NULL,0); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
