============================== ``webserver`` Simple Webserver ============================== This is a port of uIP tiny webserver example application. Settings specific to this example include: - ``CONFIG_EXAMPLES_WEBSERVER_NOMAC`` (may be defined to use software assigned MAC) - ``CONFIG_EXAMPLES_WEBSERVER_IPADDR`` – Target IP address. - ``CONFIG_EXAMPLES_WEBSERVER_DRIPADDR`` – Default router IP address. - ``CONFIG_EXAMPLES_WEBSERVER_NETMASK`` – Network mask. - ``CONFIG_EXAMPLES_WEBSERVER_DHCPC`` – Select to get IP address via DHCP. If you use DHCPC, then some special configuration network options are required. These include: - ``CONFIG_NET=y`` – of course. - ``CONFIG_NET_UDP=y`` – UDP support is required for DHCP (as well as various other UDP-related configuration settings). - ``CONFIG_NET_BROADCAST=y`` – UDP broadcast support is needed. - ``CONFIG_NET_ETH_PKTSIZE=650`` or larger. Per RFC2131 (p. 9), the DHCP client must be prepared to receive DHCP messages of up to ``576`` bytes (excluding Ethernet, IP, or UDP headers and FCS). **Note** that the actual MTU setting will depend upon the specific link protocol. Here Ethernet is indicated. Other configuration items apply also to the selected ``webserver`` net utility. Additional relevant settings for the uIP ``webserver`` net utility are: - ``CONFIG_NETUTILS_HTTPDSTACKSIZE`` - ``CONFIG_NETUTILS_HTTPDFILESTATS`` - ``CONFIG_NETUTILS_HTTPDNETSTATS`` Applications using this example will need to enable the following ``netutils`` libraries in their ``defconfig`` file: :: CONFIG_NETUTILS_NETLIB=y CONFIG_NETUTILS_DHCPC=y CONFIG_NETDB_DNSCLIENT=y CONFIG_NETUTILS_WEBSERVER=y **Note**: This example does depend on the ``perl`` script at ``nuttx/tools/mkfsdata.pl``. You must have ``perl`` installed on your development system at ``/usr/bin/perl``.