# Help Caveats

There are a few anomalies in the help files for Net-SNMP that deserve your attention.

## 1. Volunteers are welcomed

Please understand that this is a volunteer effort. Suggestions are welcomed. Offers to contribute are encouraged.

## 2. Documentation format is mostly fixed width

The documentation is set for fixed width text. Changing this would be time consuming and would have to be re-done for each release if the original man pages change. See the note on offers to contribute.

## 3. Conventions may be different from what you are used to

The Net-SNMP project is subject to conventions that may conflict with what you may have been comfortably using. If you are not aware of these conventions, there will be hours of entertainment in store for you. Please know that the Net-SNMP coders are sympathetic to different conventions, but as conventions go, these are not too distasteful.
CLI = MS-DOS command line interpreter. When you open a command prompt window, you are using the CLI.
SH = UNIX command shell. May be sh, bash, ksh, csh, all are variations on the UNIX command shell.

1. If you use .BAT files, follow the MS-DOS conventions.
2. If you use GNU shell, follow the UNIX conventions.
3. If you don't know what you are using, follow the MS-DOS conventions.

### 3.1 Environment variables

MS-DOS convention used in CLI as would be used in a batch file:

1. create : set MYVAR=myvalue
2. use : %MYVAR%
3. view : echo %MYVAR%
4. destroy : set MYVAR=
5. %MYVAR% and %MyVar% are the same
6. values with embedded spaces must be bracketed using double quotes.

UNIX convention used in SH as would be used in a shell script:

1. create : MYVAR=myvalue ; export MYVAR
2. use : $MYVAR
3. view : echo $MYVAR
4. destroy : unset MYVAR
5. $MYVAR and $MyVar are _not_ the same!
6. values with embedded spaces must be bracketed using double quotes.

### 3.2 Pathname specifiers

MS-DOS convention used in CLI as would be used in a batch file:

1. volume names (drive letters) [A-Z] followed by colon ":" are acceptable.
2. Directory segments are separated using the backslash "\"
3. UNC components of pathnames may work

UNIX convention used in SH as would be used in a shell script or in a configuration file:

1. volume names [A-Z] followed by colon ":" are acceptable.
2. Directory segments are separated using the slash "/"
3. UNC components of pathnames do _not_ work!

Note: All paths contained in configuration files must use forward slashes (Unix convention), NOT back slashes.

### 3.3 List delimiters

MS-DOS convention used in CLI as would be used in a batch file:

1. Elements are separated using the semi-colon ";".
2. The last element must not be empty [list does not end with ";"].

The UNIX convention is not listed, because the Net-SNMP project, when it is built on Windows platforms, honors the MS-DOS convention for lists.

## 4. Pathnames are different than they appear to be

The manual pages were written over a period of years and for systems that were primarily UNIX-based. The pathnames are not absolutely the same as what you see in the documentation.
You can pretty much see that many paths start with "/usr/local". For this platform, most of the time, you can substitute the instllation folder of Net-SNMP for "/usr/local". For example, c:\usr or c:\Program Files\Net-SNMP.

## 5. Configuration Files

All the configuration files follow the UNIX conventions for pathnames and the MS-DOS convention for list delimiters.