Bug 790686

Summary: dhcp should be using portreserve
Product: Red Hat Enterprise Linux 6 Reporter: Karel Srot <ksrot>
Component: dhcpAssignee: Jiri Popelka <jpopelka>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team>
Severity: medium Docs Contact:
Priority: high    
Version: 6.2CC: ljozsa, mganisin, ovasik
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: dhcp-4.1.1-29.P1.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-06-20 08:43:54 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 103401    

Description Karel Srot 2012-02-15 03:03:25 EST
To avoid port conflicts with services such as CUPS or IMAP 
dhcp
should be using portreserve for reserving respective ports
within range 600 - 1023. According to /etc/services dhcp
might be using port withing this range.


Typical changes required:

Given a SysV service package that uses a particular port, (say, krb5_prop/tcp -
754):

1) Create a file named after the service, for example 'krb5_prop', which
contains:

krb5_prop/tcp

2) In the spec, install this file in /etc/portreserve, i.e.,
/etc/portreserve/krb5_prop

3) In the spec, add 'Requires: portreserve' to the package that provides the
server.

4) In the init script, in the start() stanza, add:

    [ -x /sbin/portrelease ] && /sbin/portrelease krb5_prop &>/dev/null || :

before starting the daemon.


Some background can be found in bug 103401.
Comment 5 Ladislav Jozsa 2012-04-13 09:18:30 EDT
Verified on RHEL6.3-20120411.1_nfs-Server, dhcp-4.1.1-30.P1.el6.x86_64.

# cat /etc/portreserve/dhcpd 
dhcp-failover
dhcp-failover2

contents of relevant part of /etc/init.d/dhcp:

start() {
    [ `id -u` -eq 0 ] || return 4
    [ -x $exec ] || return 5
    [ -f $config ] || return 6

    rh_status_q && return 0

    echo -n $"Starting $prog: "

    # tell portreserve to release the port
    [ -x /sbin/portrelease ] && /sbin/portrelease dhcpd &>/dev/null || :

    daemon --pidfile=$pidfile $exec -user $user -group $group $DHCPDARGS 2>/dev/null
Comment 7 errata-xmlrpc 2012-06-20 08:43:54 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2012-0793.html