Add man pages for all librc functions.
This commit is contained in:
		| @@ -1,6 +1,10 @@ | |||||||
| DIR = /usr/share/man | DIR = /usr/share/man | ||||||
| MAN3 = einfo.3 | _MAN3_SH = ls -1 *.3 | ||||||
| MAN8 = start-stop-daemon.8 rc.8 rc-update.8 runscript.8  | _MAN3 != $(_MAN3_SH) | ||||||
|  | MAN3 = $(_MAN3)$(shell $(_MAN3_SH)) | ||||||
|  | _MAN8_SH = ls -1 *.8 | ||||||
|  | _MAN8 != $(_MAN8_SH) | ||||||
|  | MAN8 = $(_MAN8)$(shell $(_MAN8_SH)) | ||||||
|  |  | ||||||
| TOPDIR = .. | TOPDIR = .. | ||||||
| include $(TOPDIR)/default.mk | include $(TOPDIR)/default.mk | ||||||
|   | |||||||
							
								
								
									
										72
									
								
								man/rc_config.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								man/rc_config.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_CONFIG 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_config_list , rc_config_load , rc_config_value , rc_yesno | ||||||
|  | .Nd functions to query OpenRC service configurations | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h | ||||||
|  | .Ft "char **" Fn rc_config_list "const char *file" | ||||||
|  | .Ft "char **" Fn rc_config_load "const char *file" | ||||||
|  | .Ft "char *" Fn rc_config_value "const char *const *list" "const char *entry" | ||||||
|  | .Ft bool Fn rc_yesno "const char *value" | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | These functions provide an easy means of querying OpenRC configuration files. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_config_list | ||||||
|  | returns a list of non comment lines in | ||||||
|  | .Fa file . | ||||||
|  | .Fn rc_config_load | ||||||
|  | does the same, but attempts to parse the line as if it was | ||||||
|  | a shell assignment. | ||||||
|  | .Fn rc_config_value | ||||||
|  | returns the value of | ||||||
|  | .Fa entry | ||||||
|  | found in | ||||||
|  | .Fa list . | ||||||
|  | .Pp | ||||||
|  | Each list should be freed using | ||||||
|  | .Fn rc_strlist_free | ||||||
|  | when done. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_yesno | ||||||
|  | returns if | ||||||
|  | .Fa value | ||||||
|  | is true, yes, on or 1 regardless of case, otherwise false. | ||||||
|  | If | ||||||
|  | .Fa value | ||||||
|  | is also not false, no, off or 0 regardless of case then | ||||||
|  | .Va errno | ||||||
|  | is set to | ||||||
|  | .Va EINVAL . | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr rc_strlist_free 3 , | ||||||
|  | .Xr sh 1 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										114
									
								
								man/rc_deptree.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										114
									
								
								man/rc_deptree.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,114 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_DEPTREE 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_deptree_update , rc_deptree_update_needed , rc_deptree_load , | ||||||
|  | .Nm rc_deptree_depend , rc_deptree_depends , rc_deptree_order , | ||||||
|  | .Nm rc_deptree_free | ||||||
|  | .Nd RC dependency tree functions | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h  | ||||||
|  | .Ft bool Fn rc_deptree_update void | ||||||
|  | .Ft bool Fn rc_deptree_update_needed void | ||||||
|  | .Ft rc_depinfo_t Fn rc_deptree_load void | ||||||
|  | .Ft "char **" Fo rc_deptree_depend | ||||||
|  | .Fa "const rc_depinfo_t *deptree" | ||||||
|  | .Fa "const char *type" | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fc | ||||||
|  | .Ft bool Fo rc_deptree_depends | ||||||
|  | .Fa "const rc_depinfo_t *deptree" | ||||||
|  | .Fa "const char *const *types" | ||||||
|  | .Fa "const char *const *services" | ||||||
|  | .Fa "const char *runlevel" | ||||||
|  | .Fa "int options" | ||||||
|  | .Fc | ||||||
|  | .Ft "char **" Fo rc_deptree_order | ||||||
|  | .Fa "const rc_depinfo_t *deptree" | ||||||
|  | .Fa "const char *runlevel" | ||||||
|  | .Fa "int options" | ||||||
|  | .Fc | ||||||
|  | .Ft void Fn rc_deptree_free "rc_depinfo_t *deptree" | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | These functions provide a means of querying the dependencies of OpenRC | ||||||
|  | services. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_deptree_update | ||||||
|  | updates the service dependency tree, normally | ||||||
|  | .Pa /lib/rc/init.d/deptree . | ||||||
|  | .Fn rc_deptree_update_needed | ||||||
|  | checks to see if the dependency tree needs updated based on the mtime of it | ||||||
|  | compared to | ||||||
|  | .Pa /etc/init.d , | ||||||
|  | .Pa /etc/conf.d , | ||||||
|  | .Pa /usr/local/etc/init.d , | ||||||
|  | .Pa /usr/local/etc/conf.d , | ||||||
|  | .Pa /etc/rc.conf | ||||||
|  | and any files specified by a service. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_deptree_load | ||||||
|  | loads the deptree and returns a pointer to it which needs to be freed by | ||||||
|  | .Fn rc_deptree_free | ||||||
|  | when done. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_deptree_depend , | ||||||
|  | .Fn rc_deptree_depends  | ||||||
|  | and | ||||||
|  | .Fn rc_deptree_order | ||||||
|  | return a list of services from the | ||||||
|  | .Fa deptree | ||||||
|  | based on the | ||||||
|  | .Fa type | ||||||
|  | or | ||||||
|  | .Fa types | ||||||
|  | of dependency. | ||||||
|  | .Fa options | ||||||
|  | can be a bitmask of | ||||||
|  | .Va RC_DEP_TRACE | ||||||
|  | and | ||||||
|  | .Va RC_DEP_STRICT . | ||||||
|  | .Va RC_DEP_TRACE | ||||||
|  | follows each services dependencies right down to the first service needed and | ||||||
|  | .Va RC_DEP_STRICT | ||||||
|  | only lists services actually needed or in the | ||||||
|  | .Va runlevel . | ||||||
|  | .Sh IMPLEMENTATION NOTES | ||||||
|  | Each function that returns | ||||||
|  | .Fr "char **" | ||||||
|  | returns a malloced NULL terminated array of malloced NULL terminated strings, | ||||||
|  | all of which need to be freed using | ||||||
|  | .Fn rc_strlist_free | ||||||
|  | when done. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr malloc 3 , | ||||||
|  | .Xr free 3 , | ||||||
|  | .Xr rc_strlist_free 3 , | ||||||
|  | .Xr runscript 8 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										66
									
								
								man/rc_find_pids.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								man/rc_find_pids.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,66 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_FIND_PIDS 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_find_pids | ||||||
|  | .Nd finds the pids of processes that match the given criteria | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h | ||||||
|  | .Ft "pid_t *" Fo rc_find_pids | ||||||
|  | .Fa "const char *exec" | ||||||
|  | .Fa "const char *cmd" | ||||||
|  | .Fa "uid_t uid" | ||||||
|  | .Fa "pid_t pid" | ||||||
|  | .Fc | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | .Fn rc_find_pids | ||||||
|  | returns a NULL terminated list of pids for processes matching the given | ||||||
|  | criteria. If | ||||||
|  | .Fa pid | ||||||
|  | is given then only that pid is returned if it is running. Otherise we check | ||||||
|  | all instances of | ||||||
|  | .Fa exec | ||||||
|  | with a process name of | ||||||
|  | .Fa cmd | ||||||
|  | owned by | ||||||
|  | .Fa uid , | ||||||
|  | all of which are optional. | ||||||
|  | .Pp | ||||||
|  | The retuned list should be freed when done. | ||||||
|  | .Sh IMPLEMENTATION NOTES | ||||||
|  | On BSD systems we use | ||||||
|  | .Lb libkvm | ||||||
|  | and on Linux systems we use the | ||||||
|  | .Pa /proc | ||||||
|  | filesystem to find our processes. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr free 3 , | ||||||
|  | .Xr malloc 3 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										51
									
								
								man/rc_plugin_hook.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								man/rc_plugin_hook.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,51 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_PLUGIN_HOOK 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_plugin_hook | ||||||
|  | .Nd hooks plugins into OpenRC services | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h | ||||||
|  | .Ft int Fn rc_plugin_hook "rc_hook_t hook" "const char *name" | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | .Fn rc_plugin_hook | ||||||
|  | is called for each shareable object found in | ||||||
|  | .Pa /lib/rc/plugins . | ||||||
|  | .Fa hook | ||||||
|  | is set to the hook running, and | ||||||
|  | .Fa name | ||||||
|  | is set to the name of the runlevel or name of the service. | ||||||
|  | .Pp | ||||||
|  | Plugins can affect the parent environemnt by writing NULL separated strings to | ||||||
|  | .Va rc_environ_fd . | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr rc 8 , | ||||||
|  | .Xr runscript 8 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										67
									
								
								man/rc_runlevel.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								man/rc_runlevel.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_RUNLEVEL 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_runlevel_get , rc_runlevel_exists , rc_runlevel_list , rc_runlevel_set , | ||||||
|  | .Nm rc_runlevel_starting , rc_runlevel_stopping | ||||||
|  | .Nd RC runlevel functions | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h  | ||||||
|  | .Ft "char *" Fn rc_runlevel_get void | ||||||
|  | .Ft bool Fn rc_runlevel_exists | ||||||
|  | .Ft "char **" Fn rc_runlevel_list void | ||||||
|  | .Ft bool Fn rc_runlevel_set "const char *runlevel" | ||||||
|  | .Ft bool Fn rc_runlevel_starting void | ||||||
|  | .Ft bool Fn rc_runlevel_stopping void | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | These functions provide a means of querying OpenRC to find out which runlevel | ||||||
|  | we are in and what services are in which runlevel. | ||||||
|  | .Sh IMPLEMENTATION NOTES | ||||||
|  | Each function that returns | ||||||
|  | .Fr "char *" | ||||||
|  | returns a malloced NULL terminated string that should be freed when done. | ||||||
|  | .Pp | ||||||
|  | Each function that returns | ||||||
|  | .Fr "char **" | ||||||
|  | returns a malloced NULL terminated array of malloced NULL terminated strings, | ||||||
|  | all of which need to be freed using | ||||||
|  | .Fn rc_strlist_free | ||||||
|  | when done. | ||||||
|  | .Sh FILES | ||||||
|  | .Pa /etc/init.d/functions.sh | ||||||
|  | is provided by OpenRC, which allows shell scripts to use the above functions. | ||||||
|  | For historical reasons our verbose functions are prefixed with v instead of | ||||||
|  | suffixed. So einfov becomes veinfo, einfovn becomes veinfon. | ||||||
|  | Rinse and repeat for the other verbose functions. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr malloc 3 , | ||||||
|  | .Xr free 3 | ||||||
|  | .Xr rc_strlist_free 3 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										244
									
								
								man/rc_service.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										244
									
								
								man/rc_service.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,244 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_SERVICE 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_service_add , rc_service_delete , rc_service_daemon_set , | ||||||
|  | .Nm rc_service_description , rc_service_exists , rc_service_in_runlevel , | ||||||
|  | .Nm rc_service_mark , rc_service_extra_commands , rc_service_plugable , | ||||||
|  | .Nm rc_service_resolve , rc_service_schedule_start , rc_services_scheduled_by , | ||||||
|  | .Nm rc_service_schedule_clear , rc_service_state , | ||||||
|  | .Nm rc_service_start , rc_service_stop , | ||||||
|  | .Nm rc_service_started_daemon , rc_service_value_get , rc_service_value_set , | ||||||
|  | .Nm rc_services_in_runlevel , rc_services_in_state , rc_services_scheduled , | ||||||
|  | .Nm rc_service_daemons_crashed | ||||||
|  | .Nd functions to start, stop and query OpenRC services | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h  | ||||||
|  | .Ft bool Fn rc_service_add "const char *runlevel" "const char *service" | ||||||
|  | .Ft bool Fn rc_service_delete "const char *runlevel" "const char *service" | ||||||
|  | .Ft bool Fo rc_service_daemon_set | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fa "const char *exec" | ||||||
|  | .Fa "const char *name" | ||||||
|  | .Fa "const char *pidfile" | ||||||
|  | .Fa "bool started" | ||||||
|  | .Fc | ||||||
|  | .Ft "char *" Fo rc_service_description | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fa "const char *option" | ||||||
|  | .Fc | ||||||
|  | .Ft bool Fn rc_service_exists "const char *service" | ||||||
|  | .Ft bool Fn rc_service_in_runlevel "const char *service" "const char *runlevel" | ||||||
|  | .Ft bool Fn rc_service_mark "const char *service" "rc_service_state_t state" | ||||||
|  | .Ft "char **" Fn rc_service_extra_commands "const char *service" | ||||||
|  | .Ft bool Fn rc_service_plugable "const char *service" | ||||||
|  | .Ft "char *" rc_service_resolve "const char *service" | ||||||
|  | .Ft bool Fo rc_service_schedule_start | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fa "const char *service_to_start" | ||||||
|  | .Fc | ||||||
|  | .Ft "char **" Fn rc_services_scheduled_by "const char *service" | ||||||
|  | .Ft bool Fn rc_service_schedule_clear "const char *service" | ||||||
|  | .Ft rc_service_state_t Fn rc_service_state "const char *service" | ||||||
|  | .Ft pid_t Fn rc_service_start "const char *service" | ||||||
|  | .Ft pid_t Fn rc_service_stop "const char *service" | ||||||
|  | .Ft bool Fo rc_service_started_daemon | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fa "const char *exec" | ||||||
|  | .Fa "int indx" | ||||||
|  | .Fc | ||||||
|  | .Ft "char *" Fn rc_service_value_get "const char *service" "const char *option" | ||||||
|  | .Ft bool Fo rc_service_value_set | ||||||
|  | .Fa "const char *service" | ||||||
|  | .Fa "const char *option" | ||||||
|  | .Fa "const char *value" | ||||||
|  | .Fc | ||||||
|  | .Ft "char **" Fn rc_services_in_runlevel "const char *runlevel" | ||||||
|  | .Ft "char **" Fn rc_services_in_state "rc_service_state_t state" | ||||||
|  | .Ft "char **" Fn rc_services_scheduled "const char *service" | ||||||
|  | .Ft bool Fn rc_service_daemons_crashed "const char *service" | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | These functions provide a means of querying OpenRC services to find out the | ||||||
|  | state of each one, to start and stop it, and any other functions related | ||||||
|  | to it. | ||||||
|  | .Pp | ||||||
|  | Most functions should be self descriptive as to what they do and what they | ||||||
|  | return based on names and arguments. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_add | ||||||
|  | adds the | ||||||
|  | .Fa service | ||||||
|  | to the | ||||||
|  | .Fa runlevel . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_delete | ||||||
|  | deletes the | ||||||
|  | .Fa service | ||||||
|  | from the | ||||||
|  | .Fa runlevel . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_daemon_set | ||||||
|  | saves the arguments in the | ||||||
|  | .Fa service | ||||||
|  | state data so that | ||||||
|  | .Fn rc_service_daemons_crashed | ||||||
|  | can check to see if they are still running or not. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_description | ||||||
|  | returns the | ||||||
|  | .Va description | ||||||
|  | variable of the | ||||||
|  | .Fa service . | ||||||
|  | If | ||||||
|  | .Fa option | ||||||
|  | is not null then we return the | ||||||
|  | .Fa description_$option | ||||||
|  | variable instead. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_exists | ||||||
|  | returns true if the | ||||||
|  | .Fa service | ||||||
|  | exists, otherwise false. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_in_runlevel | ||||||
|  | returns true if the | ||||||
|  | .Fa service | ||||||
|  | is in the | ||||||
|  | .Fa runlevel , | ||||||
|  | otherwise false. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_mark | ||||||
|  | puts the | ||||||
|  | .Fa service | ||||||
|  | into the given | ||||||
|  | .Fa state . | ||||||
|  | If the state is RC_SERVICE_STOPPED then all data associated with the | ||||||
|  | .Fa service | ||||||
|  | is lost. | ||||||
|  | .Fn rc_service_extra_commands | ||||||
|  | returns a list of extra commands the | ||||||
|  | .Fa service | ||||||
|  | supports beyond the default ones. See | ||||||
|  | .Nm runscript | ||||||
|  | for default commands. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_plugable | ||||||
|  | returns true if the service is allowed to be plugged by | ||||||
|  | .Pa rc.conf . | ||||||
|  | Default is true. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_resolve | ||||||
|  | resolves | ||||||
|  | .Fa service | ||||||
|  | to the full path of service that was started, or would be started. | ||||||
|  | .Pp | ||||||
|  | When | ||||||
|  | .Fa service | ||||||
|  | starts, it starts | ||||||
|  | .Fa service_to_start | ||||||
|  | afterswards as directed by | ||||||
|  | .Fn rc_service_schedule_start . | ||||||
|  | .Fn rc_services_scheduled | ||||||
|  | returns a list of services that will be started when | ||||||
|  | .Fa service | ||||||
|  | starts. | ||||||
|  | .Fn rc_service_schedule_clear | ||||||
|  | clears these scheduled services for | ||||||
|  | .Fa service . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_state returns the state of | ||||||
|  | .Fa service . | ||||||
|  | The return value is a bitmask, where more than one state can apply. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_start | ||||||
|  | starts | ||||||
|  | .Fa service , | ||||||
|  | returning the pid of new process. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_stop | ||||||
|  | stops | ||||||
|  | .Fa service , | ||||||
|  | returning the pid of new process. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_service_started_daemon | ||||||
|  | checks to see if | ||||||
|  | .Fa service | ||||||
|  | started | ||||||
|  | .Fa exec | ||||||
|  | using | ||||||
|  | .Nm start-stop-daemon . | ||||||
|  | If | ||||||
|  | .Fa indx | ||||||
|  | is greater than zero, then it must also be the nth daemon started by | ||||||
|  | .Fa service . | ||||||
|  | .Fn rc_service_value_set | ||||||
|  | saves the | ||||||
|  | .Fa value | ||||||
|  | under the name | ||||||
|  | .Fa option . | ||||||
|  | .Fn rc_service_value_get | ||||||
|  | returns the value of the saved | ||||||
|  | .Fa option . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_services_in_runlevel | ||||||
|  | returns a list of services in | ||||||
|  | .Fa runlevel . | ||||||
|  | If | ||||||
|  | .Fa runlevel | ||||||
|  | is not specified, then it returns a list of all available services. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_services_in_state | ||||||
|  | returns a list of all the services in | ||||||
|  | .Fa state . | ||||||
|  | .Sh IMPLEMENTATION NOTES | ||||||
|  | Each function that returns | ||||||
|  | .Fr "char *" | ||||||
|  | returns a malloced NULL terminated string that should be freed when done. | ||||||
|  | .Pp | ||||||
|  | Each function that returns | ||||||
|  | .Fr "char **" | ||||||
|  | returns a malloced NULL terminated array of malloced NULL terminated strings, | ||||||
|  | all of which need to be freed using | ||||||
|  | .Fn rc_strlist_free | ||||||
|  | when done. | ||||||
|  | .Pp | ||||||
|  | When a function fails it should either return false or NULL and set | ||||||
|  | .Va errno | ||||||
|  | unless specified otherwise as above. | ||||||
|  | .Sh FILES | ||||||
|  | .Pa /lib/rc/init.d | ||||||
|  | normally holds the volatile state data for services on a RAM backed disk. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr errno 3 , | ||||||
|  | .Xr malloc 3 , | ||||||
|  | .Xr free 3 | ||||||
|  | .Xr rc_strlist_free 3 , | ||||||
|  | .Xr start-stop-daemon 8 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										45
									
								
								man/rc_strcatpaths.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								man/rc_strcatpaths.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,45 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_STRCATPATHS 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_strcatpaths | ||||||
|  | .Nd concatenates each elements, seperating each with / as necessary | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h | ||||||
|  | .Ft "char *" Fn rc_strcatpaths "const char *path" ... | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | .Fn rc_strcatpaths concatenates each | ||||||
|  | .Fa path , | ||||||
|  | seperating each with / as necessary and returns a malloced pointer | ||||||
|  | to the result. This should be freed when done. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr free 3 , | ||||||
|  | .Xr malloc 3 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
							
								
								
									
										104
									
								
								man/rc_strlist.3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								man/rc_strlist.3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,104 @@ | |||||||
|  | .\" Copyright 2007 Roy Marples | ||||||
|  | .\" All rights reserved | ||||||
|  | .\" | ||||||
|  | .\" Redistribution and use in source and binary forms, with or without | ||||||
|  | .\" modification, are permitted provided that the following conditions | ||||||
|  | .\" are met: | ||||||
|  | .\" 1. Redistributions of source code must retain the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer. | ||||||
|  | .\" 2. Redistributions in binary form must reproduce the above copyright | ||||||
|  | .\"    notice, this list of conditions and the following disclaimer in the | ||||||
|  | .\"    documentation and/or other materials provided with the distribution. | ||||||
|  | .\" | ||||||
|  | .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||||
|  | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||||
|  | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||||
|  | .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||||
|  | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||||
|  | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||
|  | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||
|  | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||||
|  | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||
|  | .\" SUCH DAMAGE. | ||||||
|  | .\" | ||||||
|  | .Dd Dec 24, 2007 | ||||||
|  | .Dt RC_STRLIST 3 SMM | ||||||
|  | .Os OpenRC | ||||||
|  | .Sh NAME | ||||||
|  | .Nm rc_strlist_add , rc_strlist_addu , rc_strlist_addsort , | ||||||
|  | .Nm rc_strlist_addsortc , rc_strlist_addsortu , rc_strlist_delete , | ||||||
|  | .Nm rc_strlist_join , rc_strlist_reverse , rc_strlist_free | ||||||
|  | .Nd RC string list functions | ||||||
|  | .Sh LIBRARY | ||||||
|  | Run Command library (librc, -lrc) | ||||||
|  | .Sh SYNOPSIS | ||||||
|  | .In rc.h | ||||||
|  | .Ft "char *" Fn rc_strlist_add "char ***list" "const char *item" | ||||||
|  | .Ft "char *" Fn rc_strlist_addu "char ***list" "const char *item" | ||||||
|  | .Ft "char *" Fn rc_strlist_addsort "char ***list" "const char *item" | ||||||
|  | .Ft "char *" Fn rc_strlist_addsortc "char ***list" "const char *item" | ||||||
|  | .Ft "char *" Fn rc_strlist_addsortu "char ***list" "const char *item" | ||||||
|  | .Ft bool Fn rc_strlist_delete "char ***list" "const char *item" | ||||||
|  | .Ft "char *" Fn rc_strlist_join "char ***list1" "const char **list2" | ||||||
|  | .Ft void Fn rc_strlist_reverse "char **list" | ||||||
|  | .Ft void Fn rc_strlist_free "char **list" | ||||||
|  | .Sh DESCRIPTION | ||||||
|  | These functions provide an easy means of manipulating string lists without | ||||||
|  | the need for custom structures or non standard macros. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_strlist_add | ||||||
|  | adds a malloced copy of | ||||||
|  | .Fa item | ||||||
|  | to | ||||||
|  | .Fa list , | ||||||
|  | realloced to accomodate the new item. It returns a pointer to the new item on | ||||||
|  | success, or NULL on failure and sets | ||||||
|  | .Va errno | ||||||
|  | accordingly. | ||||||
|  | .Fn rc_strlist_addu | ||||||
|  | and | ||||||
|  | .Fn rc_strlist_addsortu | ||||||
|  | only work if | ||||||
|  | .Fa list | ||||||
|  | does not already contain | ||||||
|  | .Fa item . | ||||||
|  | .Fn rc_strlist_addsort | ||||||
|  | adds the item to the list in a lexically sorted position, using | ||||||
|  | .Nm strcoll , | ||||||
|  | whereas | ||||||
|  | .Fn rc_strlist_addsortc | ||||||
|  | uses | ||||||
|  | .Nm strcmp . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_strlist_delete | ||||||
|  | removes and frees | ||||||
|  | .Fa item | ||||||
|  | from | ||||||
|  | .Fa list , | ||||||
|  | retuning true on success, otherwise false. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_strlist_join | ||||||
|  | appends | ||||||
|  | .Fa list2 | ||||||
|  | to the end of | ||||||
|  | .Fa list1 | ||||||
|  | and returns a pointer to the last item on the new list. | ||||||
|  | .Pp | ||||||
|  | .Fn rc_strlist_reverse | ||||||
|  | reverses the items on | ||||||
|  | .Fa list . | ||||||
|  | .Pp | ||||||
|  | .Fn rc_strlist_free | ||||||
|  | frees each item on | ||||||
|  | .Fa list | ||||||
|  | and the | ||||||
|  | .Fa list | ||||||
|  | itself. | ||||||
|  | .Sh SEE ALSO | ||||||
|  | .Xr malloc 3 , | ||||||
|  | .Xr free 3 , | ||||||
|  | .Xr strcmp 3 , | ||||||
|  | .Xr strcoll 3 | ||||||
|  | .Sh AUTHORS | ||||||
|  | .An "Roy Marples" Aq roy@marples.name | ||||||
| @@ -367,6 +367,7 @@ show() { | |||||||
| .Xr rc 8 , | .Xr rc 8 , | ||||||
| .Xr rc-status 8 , | .Xr rc-status 8 , | ||||||
| .Xr rc-update 8 , | .Xr rc-update 8 , | ||||||
|  | .Xr rc_plugin_hook 3 , | ||||||
| .Xr sh 1p , | .Xr sh 1p , | ||||||
| .Xr start-stop-daemon 8 , | .Xr start-stop-daemon 8 , | ||||||
| .Xr uname 1 | .Xr uname 1 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user