freebsd-nq/contrib/bsnmp
Enji Cooper 0ba351ef58 Refactor transport sources a bit to facilitate changes coming down pipeline
Add recv callback to transport layer to better facilitate code reuse and
readability and for symmetry with send callback. Move recv_dgram and
recv_stream to udp_recv and lsock_recv, respectively, and make the
beforementioned functions recv callbacks for the udp and lsock transports,
respectively.

Consolidate the check_priv* functions in their relevant trans*.c source to
limit scope/use.

Note: this code is roughly based content from the submitter, although this
was modified to be more of a direct move from snmpd/main.c to the trans_*.c
sources, and to reduce unnecessary static function declarations.

MFC after:	2 weeks
Submitted by:	Thor Steingrimsson <thor.steingrimsson@isilon.com>
Sponsored by:	Dell EMC Isilon
2016-12-26 10:17:22 +00:00
..
gensnmpdef
gensnmptree Simplify always evaluated branch (e != NULL) 2016-04-22 05:24:15 +00:00
lib Be more strict about IpAddress type in snmp_value_parse(..) 2016-12-24 11:41:16 +00:00
snmp_mibII Return ret in op_ifentry(..) to mute a -Wunused-but-set-variable warning 2016-04-22 07:51:38 +00:00
snmp_ntp
snmp_target style(9): delete stray trailing whitespace after break statement 2016-12-24 11:49:25 +00:00
snmp_usm Use sizeof(..)s for the destination buffers instead of hardcoded values corresponding 2016-05-15 00:13:36 +00:00
snmp_vacm Clean some 'svn:executable' properties in the tree. 2013-01-26 22:08:21 +00:00
snmpd Refactor transport sources a bit to facilitate changes coming down pipeline 2016-12-26 10:17:22 +00:00
FREEBSD-upgrade
FREEBSD-Xlist
NEWS
oid-list Register OID for HAST module. 2013-05-08 20:04:32 +00:00
README
TODO
VERSION

Fri Dec  5 15:01:16 CET 2003

This is a mini-SNMP daemon. The basic daemon implements the system group
and a number of private extensions to manage the UDP transport mapping,
communities, trap destinations and loadable modules. In this form it can
be used to provide remote access to arbitrary data that can be described in
the form as required by the SMI. The daemon speaks both SNMPv1 and SNMPv2c.

One basic loadable module is provided together with the daemon:

- snmp_mibII provides the information groups for ip, tcp, and udp.

Installation
------------

As usual by doing:

	configure [--with-libbegemot[=path]]
	make
	make install

This does not install a configuration file. The standard location for the
configuration is /etc/snmpd.config, but can be overwritten on the command
line. An example configuration file is provided. Use --with-libbegemot
to use libbegemot instead of libisc.

Running
-------

	snmpd [-m name[=value]] [-p pid-file] [-c config-file] [-d] [-l prefix]
	      [-D debug-flags] [-I path]

	-m	defines a configuration macro. If no value is given it
		is set to the empty string.

	-p	specify the file where to store the PID. Default is
		/var/run/{prefix}.pid.

	-c	specify the configuration file. Default is /etc/{prefix}.config.

	-d	don't go into daemon mode.

	-l	specify the prefix. This is used for the default config and
		pid file names and for the syslog. Default is "snmpd".

	-D	specify debug flags:

		d	dump all PDUs.

		e	debug event library.

	-I	specify the include path for system configuration files.
		Default is /etc:/usr/etc:/usr/local/etc.

The directory snmpd contains a snmpd.sh script, which can be copied to
/usr/local/etc/rc.d to automatically start and stop the daemon. snmpd.config
is an example config script.

Bug reports:
-----------

Please report bugs to harti@freebsd.org.

Happy hacking,
harti