- 2.1 Designing Your Application
- 2.2 The Smallest Web Server in the WWW
- 2.3 Web Server Architecture
- 2.3.1 Application Block
- 2.3.2 HTTP Block
- 2.3.3 HTTP Block Subcomponents
- 2.3.4 Zserver Block
- 2.4 Architecture of a Toy Application
- 2.5 A Simple but Realistic Application
- 2.6 Adding Access Controls
- 2.7 A Full-Featured Application
- 2.8 Living Without RabbitWeb and FAT
- 3.1 Data Structures for Zserver.lib
- 3.1.1 MIMETypeMap Structure
- 3.1.2 ServerSpec Structure
- 3.1.3 ServerAuth Structure
- 3.1.4 ServerPermissions Structure
- 3.1.5 RuleEntry Structure
- 3.1.6 ServerContext Structure
- 3.1.7 SSpecStat Structure
- 3.1.8 sspec_fatinfo Structure
- 3.1.9 FormVar Structure
- 3.1.10 SSpecFileHandle Structure
- 3.2 Constants Used in Zserver.lib
- 3.2.1 ServerSpec Type Field
- 3.2.2 ServerSpec Vartype Field
- 3.2.3 ServerPermissions Servermask Field
- 3.2.4 Configuration Macros
- 3.2.5 Macros for Control Data Initialization
- 3.3 File Compression Support
- 3.4 HTML Forms
- 3.5 API Functions
- 4.1 HTTP Server Data Structures
- 4.1.1 HttpState
- 4.2 Configuration Macros
- 4.2.1 Sending Customized HTTP Headers to the Client
- 4.2.2 Saving Custom Headers from the Client
- 4.3 Authentication Methods
- 4.4 Setting the Time Zone
- 4.5 Sample Programs
- 4.5.1 Serving Static Web Pages
- 4.5.2 Dynamic Web Pages Without HTML Forms
- 4.5.3 Web Pages With HTML Forms
- 4.5.4 HTML Forms Using Zserver.lib
- 4.6 HTTP File Upload
- 4.6.1 What is a CGI Function and Why is It Useful?
- 4.6.2 How Do I Use the New CGI Facility?
- 4.7 API Functions for HTTP Servers
- 5.1 Getting Started: A Simple Example
- 5.1.1 Dynamic C Application Code for Humidity Detector
- 5.1.2 HTML Pages for Humidity Detector
- 5.2 Dynamic C Language Enhancements for RabbitWeb
- 5.2.1 Registering Variables, Arrays and Structures
- 5.2.2 Web Guards
- 5.2.3 Security Features
- 5.2.4 Handling Variable Changes
- 5.3 ZHTML Scripting Language
- 5.3.1 SSI Tags, Statements and Variables
- 5.3.2 Flow Control
- 5.3.3 Selection Variables
- 5.3.4 Checkboxes and RadioButtons
- 5.3.5 Error Handling
- 5.3.6 Security: Permissions and Authentication
- 5.4 TCP to Serial Port Configuration Example
- 5.4.1 Dynamic C Application Code
- 5.4.2 HTML Page for TCP to Serial Port Example
- 5.5 RabbitWeb Reference
- 5.5.1 Language Enhancements Grammar
- 5.5.2 Configuration Macros
- 5.5.3 Compiler Directives
- 5.5.4 ZHTML Grammar
- 5.5.5 RabbitWeb Functions
- 6.1 Configuration Macros
- 6.2 API Functions
- ftp_client_setup
- ftp_client_tick
- ftp_client_filesize
- ftp_client_xfer
- ftp_data_handler
- ftp_last_code
- 6.3 Sample FTP Transfer
- 7.1 Configuration Macros
- 7.2 File Handlers
- 7.2.1 Replacing the Default Handlers
- 7.2.2 File Handlers Specification
- ftp_dflt_open
- ftp_dflt_getfilesize
- ftp_dflt_read
- ftp_dflt_write
- ftp_dflt_close
- ftp_dflt_list
- ftp_dflt_cd
- ftp_dflt_pwd
- ftp_dflt_mdtm
- ftp_dflt_delete
- 7.3 API Functions
- ftp_dflt_is_auth
- ftp_init
- ftp_load_filenames
- ftp_save_filenames
- ftp_set_anonymous
- ftp_shutdown
- ftp_tick
- 7.4 Sample FTP Server
- 7.5 Getting Through a Firewall
- 7.6 FTP Server Commands
- 7.7 Reply Codes to FTP Commands
- 8.1 BOOTP/DHCP
- 8.2 Data Structure for TFTP
- 8.3 API Functions
- tftp_init
- tftp_initx
- tftp_tick
- tftp_tickx
- tftp_exec
- 9.1 Sample Conversation
- 9.2 SMTP Authentication
- 9.3 Sample Sending of an E-mail
- 9.4 Configuration Macros
- 9.5 API Functions
- smtp_data_handler
- smtp_mailtick
- smtp_sendmail
- smtp_sendmailxmem
- smtp_setauth
- smtp_setserver
- smtp_setserver_ip
- smtp_status
- 10.1 Configuration
- 10.2 Steps to Receive E-mail.
- 10.3 Call-Back Function
- 10.3.1 Normal call-back
- 10.3.2 POP_PARSE_EXTRA call-back
- 10.4 API Functions
- pop3_init
- pop3_getmail
- pop3_tick
- 10.5 Sample Receiving of E-mail
- 10.5.1 Sample Conversation
- 11.1 SNMP Overview
- 11.1.1 Managed Objects
- 11.1.2 SNMP Agent
- 11.1.3 MIBs
- 11.1.4 SMI
- 11.2 Demo Program
- 11.2.1 Creating Managed Objects
- 11.2.2 Callback Functions
- 11.2.3 Creating Communities
- 11.2.4 Creating the MIB
- 11.2.5 Defining Managed Objects with SMI
- 11.2.6 Running the SNMP Agent
- 11.3 Configuration Macros
- 11.4 API Functions
- snmp_add
- snmp_add_community
- snmp_append_binary_oid
- snmp_append_binary_stem
- snmp_append_oid
- snmp_append_parse_oid
- snmp_append_parse_stem
- snmp_append_stem
- snmp_community_mask
- snmp_community_name
- snmp_copy_oid
- snmp_delete
- snmp_format_oid
- snmp_get
- snmp_get_indexed
- snmp_get_next
- snmp_init_parms
- snmp_last_index
- snmp_last_int
- snmp_last_len
- snmp_last_long
- snmp_last_maxlen
- snmp_last_mem
- snmp_last_objectID
- snmp_last_snmp_type
- snmp_last_type
- snmp_last_xmem
- snmp_monitor
- snmp_print_tree
- snmp_set_access
- snmp_set_callback
- snmp_set_community
- snmp_set_dflt_communities
- snmp_set_foct
- snmp_set_int
- snmp_set_long
- snmp_set_objectID
- snmp_set_oct
- snmp_set_oid
- snmp_set_parse_oid
- snmp_set_parse_stem
- snmp_set_stem
- snmp_set_str
- snmp_start
- snmp_stop
- snmp_time_since
- snmp_timeticks
- snmp_trap
- snmp_unmonitor
- snmp_up_oid
- snmp_up_stem
- snmp_used
- snmp_xadd
- 12.1 Telnet (Dynamic C 7.05 and Later)
- 12.1.1 Setup
- 12.1.2 API Functions (Dynamic C 7.05 and Later)
- vserial_close
- vserial_init
- vserial_keepalive
- vserial_listen
- vserial_open
- vserial_tick
- 12.2 Telnet (pre-Dynamic C 7.05)
- 12.2.1 Configuration Macros
- 12.2.2 API Functions
- telnet_init
- telnet_tick
- telnet_close
- 12.2.3 An Example Telnet Server
- 12.2.4 An Example Telnet Client
- 13.1 Zconsole Features
- 13.1.1 File System Requirement
- 13.1.2 TCP/IP and Zconsole
- 13.2 Login Name and Password
- 13.3 Zconsole Commands and Messages
- 13.3.1 Zconsole Command Data Structure
- 13.4 Zconsole Command Array
- 13.4.1 Zconsole Commands
- 13.4.2 Zconsole Error Messages
- 13.5 Zconsole I/O Interface
- 13.5.1 How to Include an I/O Method
- 13.5.2 Predefined I/O Methods
- 13.5.3 Multiple I/O Streams
- 13.6 Zconsole Execution
- 13.6.1 File System Initialization
- 13.6.2 Serial Buffers
- 13.6.3 Using TCP/IP
- 13.6.4 Required Zconsole Functions
- console_init
- console_tick
- 13.6.5 Useful Zconsole Function
- con_backup
- con_backup_bytes
- con_backup_reserve
- con_chk_timeout
- con_load_backup
- con_reset_io
- con_set_backup_lx
- con_set_files_lx
- con_set_user_idle
- con_set_timeout
- con_set_user_timeout
- console_disable
- console_enable
- 13.6.6 Zconsole Execution Choices
- 13.7 Backup System
- 13.7.1 Data Structure for Backup System
- 13.7.2 Array Definition for Backup System
- 13.8 Zconsole Macros
- 13.9 Sample Program