summaryrefslogtreecommitdiffstats
path: root/web/input/doc/faq/reuse.md
blob: 6c8e7b0b603deaa382be50a7908b58a300163d4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
title: Code reuse
parent: FAQ
---

# Can I use Nagios Plugins in my project?

Firstly, there is a distinction between a Nagios plugin and plugins from the
Nagios Plugins project.

Although Nagios (the system) is licensed under the GPL, plugins are executed
in their own environment, so they [do not fall][aggregation] under the "viral"
aspect of the GPL.  Therefore, any plugin written for use by Nagios can be
under any license the copyright holder selects.

However, the plugins contained within the Nagios Plugins project are
distributed under the [GPL][gpl].  If you distribute an application that
includes the Nagios Plugins (modified or not), you are required to distribute
a copy of the source code for the plugins under the terms of the GPL,
regardless of the licensing for the rest of the application.

If you write a plugin which is a derivative work from code of the Nagios
Plugins project, then your plugin must also be licensed under the GPL,
although you own the copyright for your modified portions.

*Derivative work* usually includes:

* modified versions of the plugins
* other software that contains code (modified or not) copied from the plugins
* other software that `#include`s header files from the plugins
* other software that has linked against library files from the plugins

and does not usually include:

* other software that parses the output of a plugin run from the command line,
  exit status, etc.
* software that provides a "wrapper" for command line execution of the plugin
* software that uses status codes and other values which are in the header
  files, but also described in the documentation (though not including or
  linking to the source)

[aggregation]: http://www.gnu.org/licenses/gpl-faq.html#MereAggregation "GPL FAQ: Mere Aggregation"
[gpl]: http://www.gnu.org/licenses/gpl.html "GPLv3"

<!--% # vim:set filetype=markdown textwidth=78 joinspaces: # %-->