Ticket #198 (closed enhancement: worksforme)

Opened 11 months ago

Last modified 11 months ago

defining rc_depend_strict per interface

Reported by: www.google.com/accounts/o8/id?id=aitoawkkopos3d_r_grz34ivdnfaygkyb4mrzsk Owned by: roy
Priority: major Milestone:
Component: rc Version: 0.4
Keywords: Cc:

Description

I've upgraded my DSL gateway to OpenRC 0.4.3. I noticed, that the start of services like named, sshd, etc. was delayed until the interface ppp0 was really up. An /etc/init.d/net.ppp0 resultet in a stop&start of very many services.

Of course I know, that I can rc_depend_strict to "NO" to resolve the issue.

Yet, I would like to suggest, that it is configurable, which interfaces are actually included and excluded if a service depends on net. It seems obvious to me, that probably nobody wants that ppp interfaces are included by default.

Change History

comment:1 Changed 11 months ago by roy.marples.name

Sounds to me that you don't want net.ppp0 to satisfy the net provision.
You can do this by adding this to /etc/conf.d/net

rc_net_lo_provide="!net"

comment:2 Changed 11 months ago by www.google.com/accounts/o8/id?id=aitoawkkopos3d_r_grz34ivdnfaygkyb4mrzsk

You meen rc_net_ppp0_provide="!net", right?

Why is the variable not called rc_provide_ppp0 ?
All other variables are called rc_need_* and rc_use_* etc. and rc_net_ppp0_provide doesn't seem to fit to the scheme.

Actually, it seems exactly like what I'm looking for.
It's not documented thou. You should put some infos about it net.example.

comment:3 Changed 11 months ago by www.google.com/accounts/o8/id?id=aitoawkkopos3d_r_grz34ivdnfaygkyb4mrzsk

Actually, also rc_provide_ppp0="!net" seems to work as well!

comment:4 Changed 11 months ago by roy.marples.name

  • Status changed from new to closed
  • Resolution set to worksforme

es, you're correct - it's rc_net_ppp0_provide="!net".

You can use rc_provide="!net" in /etc/conf.d/net.ppp0, as that is specific to net.ppp0
/etc/conf.d/net is not so we make special provision for it.


The exact rule is this - rc_$svcname_$provide, then rc_$provide.


This is documented in runscript(8) as it's for all init script, not just net scripts.


rc_provide_ppp0="!net" is a special exception for net.* scripts which existed before the generic approach as described above.

Note: See TracTickets for help on using tickets.