ports/162049: The Ports tree lacks a framework to restart services

Ed Schouten ed at 80386.nl
Thu Oct 27 08:00:18 UTC 2011


>Number:         162049
>Category:       ports
>Synopsis:       The Ports tree lacks a framework to restart services
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Oct 27 08:00:17 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Ed Schouten
>Release:        FreeBSD 9.0-RC1 amd64
>Organization:
The FreeBSD Project
>Environment:
System: FreeBSD palm.hoeg.nl 9.0-RC1 FreeBSD 9.0-RC1 #0 r+dfb7a87: Mon Oct 17 21:49:07 CEST 2011 ed at hertog.hoeg.nl:/usr/obj/export/pub/src/sys/HERTOG amd64
>Description:
Right now there are two problems with the FreeBSD Ports tree with
respect to the way it deals with services.

- If I upgrade Apache, MySQL or PostgreSQL, it does not restart the
  service, meaning it won't use the freshly installed daemon. This has
  potential security issues.

- If I upgrade Dovecot, it shuts it down during the upgrade, but won't
  restart it. This means that I have to watch portmaster to complete and
  must not forget to restart Dovecot afterwards.
>How-To-Repeat:
Run this command:

	portmaster dovecot

It will shut down Dovecot and will not restart it afterwards.
>Fix:
We know exactly which ports install rc scripts (USE_RC_SUBR). Why not
run `/usr/local/etc/rc.d/${FOO} status' and `/usr/local/etc/rc.d/${FOO}
stop' prior to installation. Based on the return value of the first, we
can run `/usr/local/etc/rc.d/${FOO} start' after installation.
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list