#include <cfg/os.h>
#include <string.h>
#include <io.h>
#include <fcntl.h>
#include <time.h>
#include <dev/board.h>
#include <dev/urom.h>
#include <dev/nplmmc.h>
#include <dev/sbimmc.h>
#include <fs/phatfs.h>
#include <sys/version.h>
#include <sys/thread.h>
#include <sys/timer.h>
#include <sys/heap.h>
#include <sys/confnet.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <net/route.h>
#include <pro/httpd.h>
#include <pro/dhcp.h>
#include <pro/ssi.h>
#include <pro/asp.h>
#include <pro/discover.h>
#include <sys/osdebug.h>
#include <net/netdebug.h>
Defines | |
#define | MY_MAC "\x00\x06\x98\x30\x00\x35" |
#define | MY_IPADDR "192.168.192.35" |
#define | MY_IPMASK "255.255.255.0" |
#define | MY_IPGATE "192.168.192.1" |
#define | USE_DHCP |
#define | USE_DISCOVERY |
#define | MY_FSDEV devUrom |
#define | HTTPD_SERVICE_STACK ((2048 * NUT_THREAD_STACK_MULT) + NUT_THREAD_STACK_ADD) |
Functions | |
int | ShowForm (FILE *stream, REQUEST *req) |
void | Service (void *arg) |
HTTP service thread. | |
int | main (void) |
Main application routine. |
#define MY_MAC "\x00\x06\x98\x30\x00\x35" |
Referenced by main().
#define MY_IPADDR "192.168.192.35" |
Referenced by main().
#define MY_IPMASK "255.255.255.0" |
Referenced by main().
#define MY_IPGATE "192.168.192.1" |
Referenced by main().
#define USE_DHCP |
#define USE_DISCOVERY |
#define MY_FSDEV devUrom |
Referenced by main().
#define HTTPD_SERVICE_STACK ((2048 * NUT_THREAD_STACK_MULT) + NUT_THREAD_STACK_ADD) |
Referenced by main().
References fflush(), fprintf(), fprintf_P, fputs_P, NutHttpGetParameterCount(), NutHttpGetParameterName(), NutHttpGetParameterValue(), NutHttpSendHeaderBottom(), NutHttpSendHeaderTop(), prog_char, PSTR, and _REQUEST::req_query.
Referenced by main().
Service | ( | void * | arg | ) |
HTTP service thread.
The endless loop in this thread waits for a client connect, processes the HTTP request and disconnects. Nut/Net doesn't support a server backlog. If one client has established a connection, further connect attempts will be rejected. Typically browsers open more than one connection in order to load images concurrently. So we run this routine by several threads.
References _fdopen(), fclose(), NutHeapAvailable, NutHttpProcessRequest(), NutSleep(), NutTcpAccept(), NutTcpCloseSocket(), NutTcpCreateSocket(), and printf.
Referenced by main().
int main | ( | void | ) |
Main application routine.
Nut/OS automatically calls this entry after initialization.
References _fileno(), _ioctl(), _O_BINARY, _O_RDWR, _open(), _CONFNET::cdn_ip_addr, _CONFNET::cdn_ip_mask, confnet, DEV_CONSOLE, DEV_CONSOLE_NAME, DEV_ETHER, DEV_ETHER_NAME, DISF_INITAL_ANN, freopen(), HTTPD_SERVICE_STACK, inet_addr(), inet_ntoa(), MY_FSDEV, MY_IPADDR, MY_IPGATE, MY_IPMASK, MY_MAC, NutDhcpIfConfig(), NutIpRouteAdd(), NutNetIfConfig(), NutNetLoadConfig(), NutRegisterAsp(), NutRegisterAspCallback(), NutRegisterAuth(), NutRegisterCgi(), NutRegisterCgiBinPath(), NutRegisterDevice(), NutRegisterDiscovery(), NutRegisterHttpRoot(), NutRegisterSsi(), NutSleep(), NutThreadCreate(), NutThreadSetPriority(), NutTraceHeap(), NutTraceOs(), NutTracePPP(), NutTraceTcp(), NutVersionString(), printf, puts, Service(), ShowForm(), stdout, and UART_SETSPEED.