This is the mail archive of the gas2@sourceware.cygnus.com mailing list for the gas2 project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
At 18:27 06.05.99 , Ian Lance Taylor wrote: > Date: Thu, 06 May 1999 13:44:47 +0200 > From: Franz Sirl <Franz.Sirl-kernel@lauterbach.com> > > >I just verified that strip out of gas-990418 looses original > ownership and > >permissions of a file. > >This is on glibc-2.1.1pre2, Linux-2.2.6 (PPC). > > > >Is this platform specific or does anybody else notice this? > > After a quick browse through the source I came up with the following > untested patch. Does it look right? > >It doesn't look right to me. > >We need to rename the file FROM to TO. In the normal case of strip, >FROM is a temporary file, and TO is the original file which we are >stripping. However, this function is also used in other cases. > >If TO does not exist, we should just use rename. This is not the >normal case of strip, but it happens in other cases. Your patch >breaks that. That seems to be only significant change in your patch. >Perhaps I am missing something. > >I think the only way to reliably preserve ownership is to avoid using >rename. Perhaps the code should be changed to call simple_copy when >the owner of the file differs from the effective uid. I think my patch produces the behavior that the comments are suggesting. The old code was bogus anyway, cause it tried to chmod/chown "to" after rename with values from a non-existing (exists != 0, this is really a bad-named variable, it's named the opposite of it's meaning) file. Franz.