Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 218700 - circular dependency: openvpn and bridging
Summary: circular dependency: openvpn and bridging
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-21 08:20 UTC by Christoph Brill (egore) (RESIGNED)
Modified: 2010-07-04 13:00 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christoph Brill (egore) (RESIGNED) 2008-04-21 08:20:44 UTC
I'm running a gentoo server that is hosting openvpn for me. I recently upgraded it to openvpn-2.1_rc7-r1 and openrc-0.2.2. I'm using a bridged network which means net.eth1 and openvpn are bridged to net.br0. But this now causes a circular dependecy when starting openvpn, since openvpn has listed "net" in it's dependencies, which is provided by net.br0, which needs openvpn, ... you get the point.

Here's my /etc/conf.d/net
modules=( "iproute2" )
tuntap_tap0="tap"
config_eth1=( "null" )
bridge_br0=( "eth1 tap0" )
config_br0=( "192.168.123.123/24" )
routes_br0=( "default via 192.168.123.1" )
brctl_br0=( "stp on" )
depend_br0() {
        need net.eth1 openvpn
}

Changing:

depend() {
        need localmount net

to:

it to openvpn-2.1_rc7-r1 and openrc-0.2.2. I'm using a bridged network which means net.eth1 and openvpn are bridged to net.br0. But this now causes a circular dependecy when starting openvpn, since openvpn has listed "net" in it's dependencies, which is provided by net.br0, which needs openvpn, ... you get the point.

Here's my /etc/conf.d/net
modules=( "iproute2" )
tuntap_tap0="tap"
config_eth1=( "null" )
bridge_br0=( "eth1 tap0" )
config_br0=( "192.168.123.123/24" )
routes_br0=( "default via 192.168.123.1" )
brctl_br0=( "stp on" )
depend_br0() {
        need net.eth1 openvpn
}

Changing:

depend() {
        need localmount

works around that problem. This should be fine for all openvpn-server that have such configuration but breaks for openvpn clients.

I'm not sure if this should be assigned to openrc (to fix the circular dependency in the service dependecy calculation) or to openvpn (to work around that issue).



Reproducible: Always
Comment 1 Alon Bar-Lev (RETIRED) gentoo-dev 2008-04-21 16:16:48 UTC
I think you can use /etc/rc.conf to modify service dependency. Look for "SERVICE CONFIGURATION VARIABLES"
Comment 2 Christoph Brill (egore) (RESIGNED) 2010-07-04 13:00:43 UTC
Alon's idea was correct