Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Jul 2013 10:44:07 +0700 (NOVT)
From:      Eugene Grosbein <eugen@grosbein.net>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   misc/180916: [regression] jail startup is broken for 8.4 without INET6
Message-ID:  <201307290344.r6T3i7HO094680@gw.delikates-nk.ru>
Resent-Message-ID: <201307290420.r6T4K0CT068371@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         180916
>Category:       misc
>Synopsis:       [regression] jail startup is broken for 8.4 without INET6
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jul 29 04:20:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Eugene Grosbein
>Release:        FreeBSD 8.4-STABLE i386
>Organization:
RDTC JSC
>Environment:
System: FreeBSD gw.delikates-nk.ru 8.4-STABLE FreeBSD 8.4-STABLE #2 r253704: Sat Jul 27 23:15:32 NOVT 2013 root@gw.delikates-nk.ru:/usr/local/obj/usr/local/src/sys/GW i386

>Description:
	Upgrade from 8.3 to 8.4 breaks start of jails when kernel has not INET6 option.

>How-To-Repeat:
	Build 8.4 with custom kernel without INET6, create and configure a jail
	and run "service jail start", it fails to start it without descriptive message.
	The reason is that now it needs ip6.addr attribute missing for INET4-only kernels.
	This bug is fixed for 9-STABLE but not for 8.4

>Fix:

	The patch made by Chris Rees helps:
	http://lists.freebsd.org/pipermail/freebsd-jail/2012-November/001984.html

	I've adjusted it for stable/8:

--- etc/rc.d/jail.orig	2013-07-27 22:37:03.000000000 +0700
+++ etc/rc.d/jail	2013-07-29 10:32:33.000000000 +0700
@@ -654,7 +654,8 @@
 		done
 
 		eval ${_setfib} jail -n ${_jail} ${_flags} -i -c path=${_rootdir} host.hostname=${_hostname} \
-			ip4.addr=\"${_addrl}\" ip6.addr=\"${_addr6l}\" ${_parameters} command=${_exec_start} > ${_tmp_jail} 2>&1
+ 			${_addrl:+ip4.addr=\"${_addrl}\"} ${_addr6l:+ip6.addr=\"${_addr6l}\"} \
+ 			${_parameters} command=${_exec_start} > ${_tmp_jail} 2>&1 \
 
 		if [ "$?" -eq 0 ] ; then
 			_jail_id=$(head -1 ${_tmp_jail})


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307290344.r6T3i7HO094680>