nasnmpd: Secure SNMP Application

This application demonstrates:
    - The SNMP API
    - Secure network communication channels using the Secure Agent

This example should work on all development boards.


The SNMP API is a UDP service that allows remote management stations
to monitor a unit remotely (via the internet).  FTP Server
have been included in this application, along with three UDP sockets, 
to allow TCP/IP parameters to change, which are reported in the SNMP
Internet MIB.  Note it is not necessary to use the servers to 
demonstrate SNMP.  However, if connections are not established, they 
will not show up in the SNMP routing, netToMedia, and TCP connection 
tables.  Also, the UDP service will send an SNMP trap in reply to any 
packet received on port 10001. The utility trap (located in the 
utility directory) has been included to help demonstrate the use of 
traps.  Set up an Ethernet Analyzer and observe the NET+ARM response 
to the incoming datagram, this is a trap packet.  This utility can be 
run on a windows machine that does not have an SNMP agent running.

To use trap, goto the utility directory and type:

    Trap <ip address>

   
Username/Passwords

FTP:  user/password and system/sysadm.
SNMP: private/private and public/public.  

One GNU make file is provided.  Build the target 'image' to
generate an image that can be debugged with gdb, and the file 
image.bin which can be written to flash if the bootloader is used.
Build the target 'rom.bin' to create the file rom.bin which 
can be written to ROM if the bootloader is not used.

The following files are provided in this template.

appconf.h         sets application configuration settings
makefile          Make file for the GNU toolset.
readme            this file
root.c            contains applicationStart() function
.\utility\trap.exe  UDP utility that triggers an SNMP trap.

In addition, the following files in the BSP directory are built
as part of this application.

reset.s         contains the reset code
appconf_api.c   contains code used to read settings in appconf.h


*************************************************
*                                               *
*   Usage of SNMP and IPSEC.                    *
*                                               *
*************************************************

Any aplication that uses an SNMP agent and IPSEC must: 
- Use the libtcpip.a library
- Use the libsnmp.a or the libsnmpv3.a library
- Define VPN_ENABLED in the application makefile.

Any aplication that uses an SNMP agent but no IPSEC must 
- Use the libtcpip_no_ipsec.a library
- Use the libsnmp_no_ipsec.a or the libsnmpv3_no_ipsec.a library
- Not define VPN_ENABLED in the application makefile.

Any mismatch between libraries with and without IPSEC and the the 
definition of VPN_ENABLED will cause memory corruptions.

By default all SNMP samples are built without IPSEC. Use the following command to build 
SNMP samples with IPSEC on a command line:	make USE_IPSEC=yes
