aboutsummaryrefslogtreecommitdiff
path: root/CODING
blob: 634b6e56da70bc71089c0ce269feaae6d597376d (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
The following guidelines are intended to aid programmers in creating
code that is consistent with the existing core plugins.

The primary goals of these standards are internal consistency, and
readability in a wide range of environments.

1. C Language Programming

All code should comply with the requirements of the Free Software
Foundation Coding standards (which are currently available at
http://www.gnu.org/prep/standards_toc.html). We also follow most of
the FSF guidelines. Developers may suggest deviations from the FSF
style recommendations, which will be considered by open discussion on
the nagiosplug-devel mailing list. Any such deviations will apply to
the entire code base to ensure consistency.

Currently, the exceptions to FSF recommendations are roughly equivalent
to GNU indent with invoked as 'indent -ts 2 -br'. Specifically, the
exceptions are as follows:

a) leading white space for a statement should be formatted as tabs,
with one tab for each code indentation level.

b) in statement continuation lines, format whitespace up to the column
starting the statement as tabs, format the rest as spaces (this
results in code that is legible regardless of tab-width setting).

c) with the exception of the above, tabs should generally be avoided

d) when tab width is 2 spaces, line-length should not exceed 80
characters

e) The opening brace of an if or while block is on the same line as
the end of the conditional expression (the '-br' option).

2. Perl Language Programming

<To Be Written>