Commit graph

32 commits

Author SHA1 Message Date
Roman Yeryomin
8b477d09d1 base-files: protect stop and reload actions with procd_lock
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: Andrejs Hanins <ahanins@gmail.com>
2018-01-02 07:52:57 +01:00
Roman Yeryomin
0b1fa809d0 base-files: rc.common: fix enable() return code and logic
In current state, if there is START but no STOP, enbale()
will return 1 (failure), which is wrong.
Moreover there is no need to check for START/STOP twice.
Instead, add err variable to save success state and
and return it's value.
Also eliminate the need to disable() by using 'ln -sf',
which will first delete the old symlink if one exists.

Changes from v1:
- fixed description

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-01-02 07:14:08 +01:00
Pierre Lebleu
832b6b8305 procd: service_data: Support data within the service itself
Use the same approach than the service_triggers for the service_data.

Signed-off-by: Pierre Lebleu <pme.lebleu@gmail.com>
2017-11-10 23:31:27 +01:00
Alexandru Ardelean
c7ee30d53a base-files: fix default procd reload
Bug introduced with 6713694.

I did not count on procd handling reload as mentioned
in this doc:
https://wiki.openwrt.org/inbox/procd-init-scripts

```
procd_set_param file /var/etc/your_service.conf # /etc/init.d/your_service reload will restart the daemon if these files have changed
procd_set_param netdev dev # likewise, except if dev's ifindex changes.
procd_set_param data name=value ... # likewise, except if this data changes.
```

The service would be restarted regardless of any of those params.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-20 20:43:45 +02:00
Alexandru Ardelean
6713694fe4 base-files: use restart if no reload hook for service
This was also working before, with a slightly
different semantic.

[ Original semantic ]
If no reload hooks was implemented, the default one would
kick in, it would return fail, and restart would happen.

This would happen also in the case where a reload hook
would be implemented, it would fail, and it would restart
the service.

[ New semantic ]
The default reload hook calls restart.
Services can implement their own reload.

If reload fails, then the '/etc/init.d/<service> reload'
would return a non-zero code, and the caller can choose
a way to handle this.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-04-12 09:54:21 +02:00
Pierre Lebleu
6bb11d52f3 procd: Allow initscripts to start one daemon instance at a time
Signed-off-by: Pierre Lebleu <pierre.lebleu@technicolor.com>
2016-10-18 08:53:38 +02:00
John Crispin
4cf7929869 base-files: add a init.d option that will start the syscall tracer
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45009
2015-03-26 10:58:17 +00:00
Felix Fietkau
d288a7903d rc.common: when reloading a service using procd, fall back to calling start instead of restart
This avoids unnecessary service restarts

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 41490
2014-07-03 06:21:49 +00:00
John Crispin
3a9bfa5938 base-files: add a post start hook to the procd init.d api
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 41344
2014-06-26 11:43:30 +00:00
John Crispin
44e2de03a4 base-files: calling stop_service before procd_kill.
Before this patch, doing `/e/c/network restart' will emit the folloing
error by `ubus network.wireless down "{}"' because netifd already quit
by that time.

	Command failed: not found

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

SVN-Revision: 40906
2014-06-02 12:42:44 +00:00
Felix Fietkau
c622a37101 base-files: remove duplicate stop_service() function.
It was introduced in commit 2f966e8, "base-files: add a post start hook
for procd managed services".

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

SVN-Revision: 40576
2014-04-27 18:48:57 +00:00
John Crispin
950428fb1b base-files: add a post start hook for procd managed services
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38024
2013-09-17 21:45:34 +00:00
John Crispin
8eb56a88a4 procd: add a small script that handles config reloads until configd is ready
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 37248
2013-07-11 17:00:54 +00:00
John Crispin
06ae364c3d base-files: run readlink on initscript name before opening services
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 37241
2013-07-11 17:00:21 +00:00
Felix Fietkau
bbc6694d98 base-files: add basic procd integration, let procd start (and restart) ubus instead of having an ubus init script
SVN-Revision: 34866
2012-12-22 18:56:09 +00:00
Jo-Philipp Wich
bfe966574f base-files: enable shell tracing in initscripts when INIT_TRACE is set
SVN-Revision: 32340
2012-06-13 17:10:41 +00:00
Felix Fietkau
6f46704743 base-files: split service related functions off to /lib/functions/service.sh
SVN-Revision: 31042
2012-03-20 14:29:50 +00:00
Nicolas Thill
d0659ce37e package/base-files: move service* functions from /etc/rc.common to /lib/functions.sh
SVN-Revision: 28864
2011-11-08 22:47:41 +00:00
Nicolas Thill
10a03275bf package/base-files: /etc/rc.common: add service wrapper around start-stop-daemon
SVN-Revision: 28834
2011-11-07 22:58:27 +00:00
Felix Fietkau
8ff7756e82 base-files: warn when calling /etc/init.d/<script> enable and neither START nor STOP is defined
SVN-Revision: 27797
2011-07-27 09:02:10 +00:00
Felix Fietkau
5a351509aa base-files: use shutdown instead of stop when the system goes down (patch by tripolar)
SVN-Revision: 24540
2010-12-13 08:01:21 +00:00
Nicolas Thill
b34bba25d2 base-files: fix shell syntax (prevent error messages when activating initscripts in IB)
SVN-Revision: 20571
2010-03-29 03:58:17 +00:00
Florian Fainelli
de3a491240 simplify action handling in rc.common (#5558)
SVN-Revision: 17012
2009-07-26 12:34:09 +00:00
Nicolas Thill
7218e6326f make links to statup scripts in /etc/rc.d relative
SVN-Revision: 12659
2008-09-23 12:35:34 +00:00
Felix Fietkau
e84e3a5b03 missing optional parameters for restart and boot functions
Add missing optional parameters in remaining rc functions.
It fixes my previous implementation of parametrized rc functions [8106],
ticket #3063, thanks argovela-at-yahoo-com for reporting.

Signed-off-by: Lubos Stanek (lubek) <lubek@lubek.name>

SVN-Revision: 10245
2008-01-25 10:59:40 +00:00
Felix Fietkau
6330c58b58 add patch from #2111
SVN-Revision: 8106
2007-07-22 16:55:31 +00:00
Mike Baker
5eb30e636d fix typo
SVN-Revision: 7170
2007-05-10 12:15:36 +00:00
Mike Baker
bef40307bb START/STOP values must be specified in the init script
SVN-Revision: 7164
2007-05-10 10:38:53 +00:00
Mike Baker
291420a8f3 add K* scripts to be run at shutdown
SVN-Revision: 7163
2007-05-10 10:07:38 +00:00
Felix Fietkau
4bef6e13c2 add a workaround for self-killing init scripts on restart (#1023)
SVN-Revision: 5876
2006-12-20 05:26:39 +00:00
Felix Fietkau
9a5798e5f5 add a check to see if an init script is enabled
SVN-Revision: 5727
2006-12-08 17:56:05 +00:00
Felix Fietkau
59a06c71cb rename default/ to files/
SVN-Revision: 5622
2006-11-22 23:30:57 +00:00
Renamed from package/base-files/default/etc/rc.common (Browse further)