[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#685354: unblock: sendfile/2.1b.20080616-5.1



Hi Adam,

On Mon, Aug 20, 2012 at 02:49:24PM +0100, Adam D. Barratt wrote:
> >>Am I reading the maintainer scripts correctly in that they modify
> >>(or at least attempt to modify) several files not shipped by the
> >>package, including /etc/services and /etc/csh.login, both of which
> >>are conffiles?
> 
> On 20.08.2012 14:02, Andreas Tille wrote:
> >I admit that I basically applied the patch in the bug report and
> >did not
> >thought about this issue specifically but my (re)reading exactly fits
> >yours.  I guess we agree that this is a policy violation (not only in
> >the package in question but also in previous versions).
> 
> Yep. :-(  At least for the /etc/services case, it looks like the
> desired change is already in the default file in squeeze, so the
> code could likely be removed with no ill effect.

The changes to these files in the postinst are no longer necessary and can be
removed, but this leaves another problem:

The version in squeeze added a line to /etc/profile (which is a policy
violation). The version currently in wheezy removes that line. If this last
part is removed from the postinst, the line remains in /etc/profile (where it
never should have been). Removing the line in the postinst of the package in
wheezy is a policy violation. Which is preferable:
- leaving the line in /etc/profile and having a package in wheezy that has no
  policy violations
- having a package in wheezy that violates policy, but that cleans up the
  changes caused by the policy violation in squeeze


Similar problems exist with /etc/services and /etc/csh.login, but only if
these files don't exist (if the packages that ship them aren't installed). If
those files exist, they will not be changed:
- /etc/services in squeeze contains the lines for the saft service, so no new
  line is added
- the postinst script in squeeze removes the line in /etc/csh.login from a
  previous version (but creates an empty file in the process if the file
  doesn't exist).

For those wondering: the lines in /etc/profile and /etc/csh.login are replaced
by files in /etc/profile.d (in wheezy) and /etc/csh/login.d (in squeeze).

Cheers,

Ivo


Reply to: