Commit Graph

35 Commits

Author SHA1 Message Date
Gregory Nutt
89c9aca89e All configurations that have both CONFIG_NSH_LIBRARY=y and CONFIG_NET=y must now also have CONFIG_NSH_NETINIT=y 2016-06-09 09:29:47 -06:00
Gregory Nutt
5c9e11f1b0 Refresh all configurations that have both CONFIG_NSH_LIBRARY and CONFIG_NET set in preparation for another change. 2016-06-09 09:25:20 -06:00
Gregory Nutt
c089a2f241 Rename CONFIG_ARCH_HAVE_OTHER_UART to CONFIG_OTHER_UART_SERIALDRIVER 2016-05-25 10:48:33 -06:00
Gregory Nutt
e2e6ce3f1b Rename CONFIG_ARCH_HAVE_SCIn to CONFIG_SCIn_SERIALDRIVER 2016-05-25 10:46:55 -06:00
Gregory Nutt
2a87741e72 Rename CONFIG_ARCH_HAVE_UARTn to CONFIG_UARTn_SERIALDRIVER 2016-05-25 10:45:01 -06:00
Gregory Nutt
249a2e48e5 Rename CONFIG_ARCH_HAVE_USARTn to CONFIG_USARTn_SERIALDRIVER 2016-05-25 10:39:23 -06:00
Steve
bd3ef36eda SUMMARY
-------
   This patch enhances networking support for the simulation under Linux.
   Includes updated support for Linux TUN/TAP, and the addition of support for
   Linux bridge devices.

CHANGES
-------
   o Check to see if the d_txavail callback is present before calling it in
     the arp send code.  This prevents a segfault when simulating the telnetd
     daemon with arp send enabled.

   o Adjust the simulation's netdriver_loop() so it will detect and respond to
     ARP requests.

   o Do not attempt to take the tap device's hardware address for use by the
     simulation.  That hardware address belongs to the host end of the link,
     not the simulation end.  Generate a randomized MAC address instead.

   o Do not assign an IP address to the interface on the host side of the TAP
     link.

   + Provide two modes: "host route" and "bridge".

   + In host route mode, maintain a host route that points any traffic for the
     simulation's IP address to the tap device.  In this mode, so long as the
     simulation's IP is a free address in the same subnet as the host, no
     additional configuration will be required to talk to it from the host.
     Note that address changes are handled automatically if they follow the
     rule of if-down/set-address/if-up, which everything seems to.

   + In bridge mode, add the tap device to the specified bridge instance.  See
     configs/sim/NETWORK-LINUX.txt for information and usage examples.  This
     enables much more flexible configurations (with fewer headaches), such as
     running multiple simulations on a single host, all of which can access
     the network the host is connected to.

   o Refresh configurations in configs/sim where CONFIG_NET=y.  They default
     to "host route" mode.

   o Add configs/sim/NETWORK-LINUX.txt

CAVEATS
-------
   - The MAC address generation code is extremely simplistic, and does not
     check for potential conflicts on the network.  Probably not an issue, but
     something to be aware of.

   - I was careful to leave it in a state where Cygwin/pcap should still work,
     but I don't have a Windows environment to test in.  This should be
     checked.

   - I don't know if this was ever intended to work with OS X.  I didn't even
     try to test it there.

NOTES
-----
   - Was able to get telnetd working and simulate nsh over telnet, but only so
     long as listen backlogs were disabled.

     There appears to be a bug in the backlog code where sockets are being
     returned in SYN_RCVD state instead of waiting until they're ESTABLISHED;
     if you perform an immediate send after accepting the connection, it will
     confuse the stack and the send will hang; additionally, the connection
     will never reach ESTABLISHED state.

     Can be worked around by adding a sleep(1) after the accept in telnetd.  I
     don't have the necessary knowledge of the IP stack to know what the
     correct fix is.
2016-05-20 17:36:14 -06:00
Gregory Nutt
3228d32938 Correct permmisions on executable scripts 2016-04-10 09:11:59 -06:00
Gregory Nutt
7337e748de Merge in configs/ submodule 2016-04-10 07:57:59 -06:00
Gregory Nutt
ad61b7ab3e Remove all references to CONFIG_SYSTEM_SDCARD 2016-03-30 17:53:19 -06:00
Gregory Nutt
e5b0c0e502 Remove most unused references to CONFIG_NET_MULTICAST. Rename other uses of CONFIG_NET_MULTICAST to avoid naming comflicts. 2016-03-20 13:15:58 -06:00
Gregory Nutt
12c14ee718 Rename CONFIG_WIRELESS to CONFIG_DRIVERS_WIRELESS 2016-02-26 16:45:29 -06:00
Gregory Nutt
656e730f8f apps/system/ramtron has been removed. 2016-01-27 10:39:30 -06:00
Gregory Nutt
9535c909d3 Rename CONFIG_SYSTEM_INIFILE to CONFIG_FSUTILS_INIFILE 2016-01-20 17:11:48 -06:00
Gregory Nutt
9e548d34c3 mkdeps.sh and mkdeps.bat have been deleted. All configurations must now use the compiler mkeps prograqm 2016-01-09 16:06:15 -06:00
Gregory Nutt
b90f5ba7f4 Remove CONFIG_DISCRETE_IO from all defconfig files 2015-12-15 08:41:10 -06:00
Gregory Nutt
54ea059beb Add new boardctl() command to set OS symbol table 2015-12-13 08:13:15 -06:00
Gregory Nutt
1216398f62 sam: Refresh all configurations: Enable PROCFS and NSH_ARCHINIT in all NSH configurations 2015-11-29 13:52:50 -06:00
Gregory Nutt
651bd9e8ad Rename CONFIG_LOOP to CONFIG_DEV_LOOP 2015-11-25 17:11:27 -06:00
Paul A. Patience
55d8aee826 Simplify configs/ Makefiles by combining common longic into a new board.mk Makefile fragment. For Paul A. Patience" 2015-09-04 16:42:34 -06:00
Paul A. Patience
81268bb75c Add -Wundef warning flag 2015-09-01 13:19:57 -04:00
Gregory Nutt
f7ba1b1eeb Remove all references to the dedunct CONFIG_SYSTEM_SYSINFO configuration from all defconfig files 2015-07-04 15:19:11 -06:00
Gregory Nutt
d1ab9c2e0a Remove the configs/ directory 2015-06-29 13:12:29 -06:00
Gregory Nutt
add36cc3de Add an option to disable support for long long formats in lib_vsprintf. From Alan Carvalho de Assis 2015-05-30 10:00:54 -06:00
Gregory Nutt
fce87336a4 Add an option to disable support for long long formats in lib_vsprintf. From Alan Carvalho de Assis 2015-05-30 10:00:54 -06:00
Gregory Nutt
962cec440d Refresh some configurations 2015-02-01 12:15:46 -06:00
Gregory Nutt
58c05f365e Refresh some configurations 2015-02-01 12:15:46 -06:00
Gregory Nutt
00a561126d Unix domain: Add options to build in stream or datagram support separately 2015-01-31 07:58:51 -06:00
Gregory Nutt
0fc8d2fcc5 Unix domain: Add options to build in stream or datagram support separately 2015-01-31 07:58:51 -06:00
Gregory Nutt
94d18aedf4 apps/ustream and udgram: Change default FIFO path to /dev/fifo 2015-01-30 09:07:22 -06:00
Gregory Nutt
a5b6ddbc64 apps/ustream and udgram: Change default FIFO path to /dev/fifo 2015-01-30 09:07:22 -06:00
Gregory Nutt
d0e00041e6 Unix domain socket support is no longer EXPERIMENTAL 2015-01-28 13:22:53 -06:00
Gregory Nutt
508f8aefa6 Unix domain socket support is no longer EXPERIMENTAL 2015-01-28 13:22:53 -06:00
Gregory Nutt
3bc8bf4a38 sim/ustream: Add a configuration for testing Unix domain sockets with the simulator 2015-01-28 09:09:27 -06:00
Gregory Nutt
b4a67285f1 sim/ustream: Add a configuration for testing Unix domain sockets with the simulator 2015-01-28 09:09:27 -06:00