Cellular Services Daemon (CSD)
==============================

NAME
	csd - Cellular services daemon

SYNOPSIS
	csd [-f|--fork] [-l|--log-level=LOG_LEVEL]
	    [-m|--lock-memory] [-r|--real-time=PRIORITY]
	    [-p|--plugin=PLUGIN[:ARGS]] [-P|--plugindir=DIR]
	    [-s|--session] [-S|--system] [-h|--help]

DESCRIPTION

	CSD is a framework for publishing cellular services over
	DBus. The design of the daemon aims at memory safety and small
	footprint, in order to provide robust and reliable services
	even in low-memory conditions.

	CSD provides a plugin API for developing cellular
	services. The development files can be found in the debian
	package csd-plugin-dev. See the documentation under:
	file:///usr/share/doc/csd-plugin-dev/html/index.html

	Every plugin implements at least one service and and every
	service will have a bus name of its own. All the services will
	be registered to the same bus, selected at daemon startup.
	Multiple instances of CSD may also be started as long as the
	provided services have unique names. Every plugin, however, is
	free to register additional services using the libdbus API.

	-f, --fork
		Fork the csd process. This creates a new child process
		and daemonizes it. Multiple fork options can be used
		to group plugins into separate processes. The first
		--fork option has to be specified before any --plugin
		options. Any other options specified before the first
		--fork will set the defaults for all child processes.
		Options specified after a --fork will only affect the
		child process. Example:

		csd -m -f -p plug1 -p plug2 -f -r1 -p plug3 -p plug4

		The above will enable memory locking for all csd
		processes. Plugins plug1 and plug2 will be run in
		one process and plugins plug3 and plug4 will be run
		in another. Plug3 and plug4 will run with realtime
		priority.

	-l, --log-level=PRIORITY
		Set logging level. Default level is 5 (LOG_NOTICE).
		CSD will log its messages to syslog.

	-m, --lock-memory
		Causes CSD to call mlockall(MCL_FUTURE). The memory
		pages of the affected process will be locked in system
		memory.

	-p, --plugin=PLUGIN[:ARGS]
		Load plugin libcsd-PLUGIN.so
		Plugin's configure() method will be called with ARGS.

	-P, --plugindir=DIR
		Look for plugins in directory DIR.

	-r, --real-time=PRIORITY
		Set SCHED_FIFO scheduling policy for the affected
		process. Scheduling priority is given as parameter.

	-s, --session
		Use DBus session bus.

	-S, --system
		Use DBus system bus. This is the default.

	-h, --help
		Print help message.

