nahttp_pd: HTTP Server Sample Application using the AWS with Language Support

This sample application demonstrates:
    - The HTTP Server using the features of the Advanced Web Server 
        (AWS) interface with the Pbuilder tool.
    - The use of dictionaries to add support for other languages.    

The HTTP Server has four pages: an introduction page allowing the
operator to choose English, French, German, Spanish, Italian, or 
Japanese language support, a landing page alerting the operator
to the ensuing Username/Password requirement, a password-protected page
which has several components used to accept form data, and a Form
response page. To view the page with different language, 
browser must be set up to view the page with correct language encoding.
The HTTP Server files (in the ./pbuilder/html 
directory) contain the HTML source used as input to the PBuilder.exe 
tool, which converts these web pages into C files.  The C files are 
annotated and built to create the application.  The Web pages contain 
several Comment Tags described in the Rompager Web Application Toolkit.

On the password-protected page, password authentication can be either 
Basic or MD5 Digest Authentication.  The default Authentication mode 
is Basic, because the THIS_APPLICATION_USES_DIGEST_AUTHENTICATION  
compiler directive is prefixed with underscores.  When the underscores
are removed, Digest Authentication mode is enabled, however, Digest 
Authentication mode will not operate with a Netscape browser.

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 example.

appconf.h         sets application configuration settings
makefile          Make file for the GNU toolset.
readme            this file
root.c            Application starting point.  
security.c        Contains the Realmname, username, and password 
                  specific to this application.
                    
 The following files are generic stubs required by all applications that
use and include the AWS (rphttpd.a) library.  These files are located
in directory .\..\..\..\src\rphttpd\:

cgi.c               Contains the blank stubs for CGI functions.
file.c              Contains the blank stubs for File System functions.

The following files are input/outputs to/from the pbuilder tool,
and are contained in the pbuilder directory:

list.bat            File listing as parameter to pbuilder tool.
languagepage_v.c    Stub file with fleshed out bodies, initially 
                    generated by the PBUILDER Utility.  Naked stub 
                    originally located in the pbuilder\html directory.
pbsetup.txt         PBUILDER Utility options file (do not alter).
rppages.c           PBUILDER Utility output file containing all the
                    application web pages defined in list.bat.
rpusrdct.txt        PBUILDER Utility input file containing phrase
                    dictionary definitions.
rpusrdct.h          PBUILDER Utility output file containing phrase
                    dictionary prototypes.
rpusrdctEnglish.c   Source file containing phrase
                    dictionary data structures for English.
rpusrdctFrench.c    Source file containing phrase
                    dictionary data structures for French.
rpusrdctGerman.c    Source file containing phrase
                    dictionary data structures for German.
rpusrdctSpanish.c   Source file containing phrase
                    dictionary data structures for Spanish.
rpusrdctItalian.c   Source file containing phrase
                    dictionary data structures for Italian.
rpusrdctJapanese.c  Source file containing phrase
                    dictionary data structures for Japanese.

The following Web content files are contained in the pbuilder\html
directory:

logo.gif            GIF file for Digi International logo.
languagepage.c      Source file generated by PBUILDER Utility.
languagepage.htm    Initial (i.e., opening) web page.
netarm1.htm         Landing page with user/password warning.
netarm2.htm         Secure web page with form components.
netarm3.htm         Reply page from Form page.


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


The application build file links in the following libraries.

libbsp.a           	 contains the BSP code
libtcpip.a         	 contains the Net+Works TCP/IP stack
libtx.a            	 contains the ThreadX kernel
libfilesys.a       	 contains the file system libraries
libposix.a         	 contains the POSIX layer libraries
libflash.a         	 contains the Flash driver API library
libtelnsvr.a       	 contains the Telnet server library
libaddp.a		   	 contains the ADDP Library
libssh.a		   	 contains the SSH Library
librphttpd.a       	 contains the NET+Works AWS API library.
libmanapi.a        	 contains the NET+Works Management API library.
libpppintf.a		 contains the PPP Interface Library
libdnsclnt.a         contains the DNS Client library

The application uses the following files located in the
netos\src\linkerScripts directory.

bootldr.dat     bootloader configuration file used to generate the
                file image.bin.  It controls the information placed
                in the bootloader header of the image.

image.ldr       GNU linker script used to build an image that can
                be debugged and used with the bootloader.
                
customize.ldr   Customizable GNU linker script
