Gregory Nutt
99ef7c6669
IP forwarding: A few fixes from early testing; In TUN driver, do all polling on worker thread. Otherwise, the stack gets very deep.
2017-07-07 17:33:44 -06:00
Gregory Nutt
b29c99fa6f
Move TUN ioctl commnd to include/nuttx/net/ioctl.h so that it will always be unique. It a error in netdev_register: it was not handling device names properly when TUN is the only network device.
2017-07-07 13:03:04 -06:00
Gregory Nutt
b4a0ac53a8
Networking: Improve naming and simplify some logic of previous commit.
2017-07-07 06:51:52 -06:00
Gregory Nutt
70c6b52132
ICMPv6: Fix an address size calculation that was bungled in a recent commit.
2017-07-06 19:37:01 -06:00
Gregory Nutt
d280f8854e
include/nuttx/net and net/: Move private prototype of netdev_foreach() from the public include/nuttx/net/net.h to the private net/netdev/ndetdev.h header file where it belongs.
2017-07-01 08:39:39 -06:00
Gregory Nutt
cfea8adacb
L should be capitalized in 6LoWPAN
2017-06-18 16:00:08 -06:00
Sebastien Lorquet
c9dc1d928d
network IOCTL commands: The only place in net/netdev/netdev_ioctl.c where the interface state should change is for SIOCSIFFLAGS. the other ones .. SIOCSIFADDR, SIOSLIFADDR, SIODIFADDR .. should not change the link state.
2017-05-19 10:04:57 -06:00
Gregory Nutt
0de294a586
Fix lots of occurrences of 'the the', 'the there', 'the these', 'the then', 'the they.
2017-05-11 13:35:56 -06:00
Anthony Merlino
dd40014279
wireless/ieee802154: Removes radio IOCTL. Starts bringing radio and MAC closer with well-defined interface.
2017-05-05 11:15:38 -04:00
Gregory Nutt
969c1ab614
6loWPAN: Replace some Rime address naming with more consistent short/exended address terminology
2017-05-04 08:20:59 -06:00
Gregory Nutt
6a45afdd75
Merge remote-tracking branch 'origin/master' into ieee802154
2017-05-04 07:11:19 -06:00
Simon Piriou
6680eb0e0c
netdev: fix compilation errors
2017-04-28 19:39:14 +02:00
Gregory Nutt
381842be5c
Merge remote-tracking branch 'origin/master' into photon
2017-04-26 12:33:09 -06:00
Gregory Nutt
9182fb95d5
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-26 12:31:47 -06:00
Gregory Nutt
1cdc90914e
network IOCTLs: Correct a compilation error when wireless IOCTLs are enabled.
2017-04-26 12:31:13 -06:00
Gregory Nutt
1c97025484
netdev_register: If there is only one ieee80211 and both CONFIG_ETHERNET and CONFIG_DRIVERS_IEEE8011, then use the wlan0 naming, not the eth0 naming.
2017-04-25 15:51:30 -06:00
Gregory Nutt
0ea071f7eb
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-22 11:58:07 -06:00
Gregory Nutt
7da031aea1
6loWPAN: Add IEEE802.15.4 Rime address to union of link layer addresses in the network driver.
2017-04-22 11:52:45 -06:00
Gregory Nutt
79256573e1
net: network drver now retains Ethernet MAC address in a union so that other link layer addresses may be used in a MULTILINK environment.
2017-04-22 11:10:30 -06:00
Gregory Nutt
1ba7aa9935
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-21 18:49:38 -06:00
Gregory Nutt
0184bf6787
Correct type in a cast
2017-04-21 18:42:13 -06:00
Gregory Nutt
e66caaf960
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-21 18:40:47 -06:00
Gregory Nutt
d884958a2e
Back out most of ebf05cb9f5
2017-04-21 18:37:07 -06:00
Gregory Nutt
7c6f2c3c9a
Back out most of ebf05cb9f5
2017-04-21 18:31:05 -06:00
Gregory Nutt
309f0abc14
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-21 16:34:10 -06:00
Gregory Nutt
d5207efb5a
Be consistent... Use Name: consistent in function headers vs Function:
2017-04-21 16:33:14 -06:00
Gregory Nutt
5d68eb6059
6loWPAN: Remove the PAN ID from the 6loWPAN data structure. This is owned by the radio driver. Rather, use an IOCTL to obtain the PAN ID from the downstream radio driver.
2017-04-21 16:23:40 -06:00
Gregory Nutt
be415489f2
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-21 14:18:41 -06:00
Gregory Nutt
2c4800f511
Remove the 6loWPAN PANID IOCTLs they are redundant.
2017-04-21 14:17:46 -06:00
Gregory Nutt
9ff5e83ea7
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-19 18:07:33 -06:00
Gregory Nutt
9281cd558e
6loWPAN: Add an IOCTL to set the IEEE802.15.4 PAN ID
2017-04-19 18:06:43 -06:00
Gregory Nutt
4729e3c7a3
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-15 10:31:19 -06:00
Gregory Nutt
ebf05cb9f5
network IOCTL: Clean up some naming and spacing.
2017-04-15 10:29:37 -06:00
Gregory Nutt
54939d4616
network IOCTLs: Some corrections and updates to a previous commit
2017-04-15 10:23:29 -06:00
Gregory Nutt
85d97a4d74
Merge remote-tracking branch 'origin/master' into ieee802154
2017-04-15 09:34:03 -06:00
Gregory Nutt
78bc1aa6bc
Argument of network device IOCTL should be unsigned long, just as will all other IOCTL methods.
2017-04-15 09:33:27 -06:00
Gregory Nutt
2576f2b2b1
net/: Add IOCTL support for forwarding IEEE802.15.4 MAC and PHY IOCTLs.
2017-04-15 09:11:52 -06:00
Gregory Nutt
eee89102d8
networking: IPv4 change of last PR should also be applied to corresponding IPv6 logic.
2017-04-15 06:00:42 -06:00
ahb
6d18300f98
not a clean fix, but at least makes DHCP working with CONFIG_NETDEV_MULTINIC
2017-04-15 11:13:24 +02:00
Gregory Nutt
ad9321b7b7
Trivial changes from review of last PR
2017-04-13 06:16:03 -06:00
Thomas Keh
7e293b28ee
TUN driver: Implement TAP (OSI layer 2) mode.
...
Enable by setting the IFF_TAP flag instead of the IFF_TUN flag in ifr_flags.
2017-04-13 13:07:03 +02:00
Mark Schulte
35ca733108
pthread.h: Fix rwlock initializer
2017-04-08 12:34:08 -06:00
Gregory Nutt
27c65c3f22
6loWPAN: Add network IOCTL support to set the node address
2017-04-06 15:58:00 -06:00
Gregory Nutt
1a12682f23
6loWPAN: Fix some MTU-related craziness.
2017-03-30 17:18:18 -06:00
Gregory Nutt
5fb222180c
6loWPAN: IEEE802.15.4 MAC driver will need a special form of the network device structure to manage fragmentation of the large packet into frames.
2017-03-29 10:17:34 -06:00
Gregory Nutt
64933246c3
6loWPAN: Tie 6loWPAN send into common socket send logic.
2017-03-28 14:08:54 -06:00
Gregory Nutt
d9e32ee337
6loWPAN: More configurtion settings.
2017-03-28 11:16:28 -06:00
Gregory Nutt
aad82bcd9f
Cosmetic change
2017-03-13 18:01:21 -06:00
Gregory Nutt
888cff30dc
Fix some errors in the previous commit
2017-03-13 10:14:38 -06:00
Gregory Nutt
b808084e57
Move wireless IOCTLs from include/nuttx/net/ioctl to include/nuttx/wireless/wireless.h. Add some linux compatible structures to use with the IOCTL commands.
2017-03-13 09:51:31 -06:00
Gregory Nutt
430b52c977
Networking: Add registration support for integrated ieee80211 wireless drivers. Rename CONFIG_IEEE802154 to CONFIG_WIRELESS_IEEE8021514 following the convention of including the location of the configuration variable as a part of its name.
2017-03-12 12:50:41 -06:00
Gregory Nutt
7467329a98
Eliminate CONFIG_NO_NOINTS. Lots of files changed -> lots of testing needed.
2016-12-03 16:28:19 -06:00
Gregory Nutt
88a03ae3ec
Break out internal interface psock_ioctl()
2016-07-06 07:30:09 -06:00
Gregory Nutt
2a751068e6
Without lowsyslog() *llerr() is not useful. Eliminate and replace with *err().
2016-06-20 12:44:38 -06:00
Gregory Nutt
43eb04bb8f
Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info().
2016-06-20 11:59:15 -06:00
Gregory Nutt
f4fcdcdb4d
net/: Change some *err() message to *info() messages if what was a *dbg() message does not indicate and error condition.
2016-06-11 17:37:21 -06:00
Gregory Nutt
e99301d7c2
Rename *lldbg to *llerr
2016-06-11 14:55:27 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Gregory Nutt
fdddebbffd
net/: Finish IEEE802154->6LOWPAN renaming; remove PF_IEEE804154; Move 6LoWPAN menu to inside Internet Protocol Menu
2016-02-27 07:26:20 -06:00
Gregory Nutt
309beae2cd
Move drivers/ieee802154 to drivers/wireless/ieee802154; rename include/nuttx/net ieee802154 to 6lowpan.h
2016-02-26 15:03:16 -06:00
Gregory Nutt
2f28ca86c2
Clean up some naming; rename net/ieee802154 to net/6lowpan
2016-02-26 10:08:36 -06:00
Gregory Nutt
2c95fef501
Remove some empty code section comments
2016-02-26 07:35:55 -06:00
Gregory Nutt
8db55f6493
Back out most of previous commit
2016-02-26 06:45:37 -06:00
Gregory Nutt
0b441ff1f4
net/: Add basic IEEE 802.15-4 socket support
2016-02-25 14:01:22 -06:00
Gregory Nutt
e4e6181098
net/: IEEE 802.15-4 basic build build structure.
2016-02-25 10:43:51 -06:00
Gregory Nutt
bcbd8ee964
Networking: Cosmetic change
2016-02-24 19:02:51 -06:00
Gregory Nutt
68ee9bcaed
Refresh modules + plus minor clean-up from previous commits
2016-02-08 15:13:14 -06:00
Gregory Nutt
0af9a197ac
ARP: Add IOCTL commands to manage the ARP table
2016-02-08 11:17:22 -06:00
Gregory Nutt
eb8668b0f7
net/: Add procfs support for network device status
2015-11-27 16:39:14 -06:00
Gregory Nutt
6209c51206
net/: More clean-up of spacing/alignment issues
2015-10-08 15:10:04 -06:00
SaeHie Park
a268e0aeb9
Fix a typo from an earlier commit
2015-08-26 18:12:58 -06:00
Saehie ParK
e6dbd3d903
Networking: Fix network device name assignment logic for the case of the local loopback device. There is only one local loopback network device and it is unnumbered
2015-08-25 20:03:25 -06:00
Gregory Nutt
933d74e5c1
Networking: With these changes, I can ping the local loopback device from the simulator
2015-08-24 13:49:12 -06:00
Gregory Nutt
e21501c699
Merge remote-tracking branch 'origin/master' into localhost
2015-08-24 08:29:36 -06:00
Gregory Nutt
569ff602ea
Networking: Remove bogus references to PPP as a link layer protocol
2015-08-24 08:29:07 -06:00
Gregory Nutt
ea2fafb024
Add definitions to support a local loopback link layer
2015-08-24 08:25:08 -06:00
Gregory Nutt
fca919f3d2
Networking: Fix some compilation issues noted with network is build with CONFIG_BUILD_KERNEL
2015-07-05 11:18:56 -06:00
Gregory Nutt
342f5fe33d
Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation
2015-06-28 08:08:57 -06:00
Gregory Nutt
b493dde4cf
TCP networking: In the TCP connection operation, it was trying to setup the network monitor BEFORE the socket was successfully connected. This, of course, has ALWAYS failed because the socket is not yet connected and the TCP state is not yet correct for a connected socket. However, because of other changes net_startmonitor(0 no returns a failure condition that causes worse problems when trying to connect. The fix is to move the logic that starts the network monitor to AFTER the socket has been successfully connected.
2015-05-31 11:35:28 -06:00
Gregory Nutt
33085cb309
Networking: The network device list was protected by a re-entrant semaphore. With the recent change to support network device callback, the network stack needs to access the network device list too. Some drivers, however, run the network stack from the interrupt level -- this is bad but a fact in the current state. Of course,those drivers are unable to take the semaphore and will assert.
...
The solution here is to eliminate the device devices semaphore altogether. This eliminates netdev_semtake() and netdev_semgive() and replaces them with net_lock() and net_unlock() which have larger scope as needed for this purpose.
2015-05-31 08:34:03 -06:00
Gregory Nutt
6687e156e6
Revamp last change. IFF_UP only required when allocating callback, not freeing.
2015-05-30 21:13:58 -06:00
Gregory Nutt
28b46c7bfa
To be valid, a network device must not only exist, but be in the UP state
2015-05-30 12:54:18 -06:00
Gregory Nutt
04a661a97c
TCP networking: Add support for network driver events
2015-05-30 09:12:27 -06:00
Gregory Nutt
ab50e9d04d
Networking: Get rid of g_ipv4_allzeroaddr and g_ipv4_alloneaddr. It is more efficient and more intuitive to use INADDR_ANY and INADDR_BROADCAST
2015-05-29 15:16:11 -06:00
Gregory Nutt
fa8b7c19b7
Forgot to add a file in the last commit
2015-05-29 11:03:02 -06:00
Gregory Nutt
f10fdf7ad4
Networking: Add a test to see a device pointer is still valid
2015-05-29 11:01:03 -06:00
Gregory Nutt
e81f279315
Networking: Modify event list handling: Now there are two event lists each device structure: (1) One is for ARP and ICMP data related evetns, the other is for device related events. Callback allocation/free routines no accept a device paramter as well as a list: If the device paramter is added, then the callback goes into both the connection-related liast AND the device event list. Thus each socket type can received both custom data-related events as well as common device related events.
2015-05-28 12:01:38 -06:00
Gregory Nutt
390eeaae69
Add function headers to netdev.h header file
2015-05-27 14:34:15 -06:00
Gregory Nutt
b94321cfb4
Extend device specific callbacks to ICMPv6 and ARP. Fix some IPv6 compilation errors that have crept in
2015-05-27 11:39:44 -06:00
Gregory Nutt
8ecb84ed89
Improve icmp handling if MULTINIC enabled. From Max Neklyudov
2015-05-27 09:26:00 -06:00
Gregory Nutt
8cb4e78a1a
Complete implementation of the IPv6 routing logic. From Max Neklyudov.
2015-05-13 07:22:02 -06:00
Gregory Nutt
21d6e41032
Add TUN device. From Max Neklyudov
2015-03-11 06:52:56 -06:00
Gregory Nutt
5c13722416
Networking: Improve the network device registration logic. When multiple link types are used, modify how each interface number is assigned to the device name by incrementing the device number individually for each interface link type. From Max Neklyudov.
2015-02-27 08:23:14 -06:00
Gregory Nutt
19f3d46eb0
Fix a list handling error in netdev_unregister(). From Max Neklyudov
2015-02-27 08:01:31 -06:00
Gregory Nutt
b756df982d
net/: Lots of build problems introduced into multiple NIC support. Many places where conditional logic based on CONFIG_NETDEV_MULTINIC is confused with CONFIG_NET_MULTILINK. Lots of code changed with IPv6 that was never compiled with MULTINIC enabled. Still some problem with parameter passing.
2015-02-09 18:15:34 -06:00
Gregory Nutt
1928feafca
Networking: Fix some errors that crept in with IPv6
2015-02-06 13:34:19 -06:00
Gregory Nutt
9791e829f5
ICMPv6: This completes coding of the ICMPv6 auto-configuration feature. It is not yet functional
2015-02-03 15:40:56 -06:00
Gregory Nutt
0e23712db4
Add an ioctal() that can be used to perform ICMPv6 auto-configuration
2015-02-03 08:54:42 -06:00
Gregory Nutt
55d94b6748
Unix domain: With these changes I can build a system with no link layer enabled, only Unix domain sockets
2015-01-27 15:26:03 -06:00
Gregory Nutt
c250c97186
Unix domain: More fixed to build without Ethernet or Slip
2015-01-27 14:26:10 -06:00
Gregory Nutt
5d31687e75
Correct name of fields in struct sockaddr_in6: sin6_port and sin6_family, not sin_port and sin_family
2015-01-20 18:14:09 -06:00
Gregory Nutt
aec4528882
Cosmetic standardization of some naming in comments
2015-01-19 16:02:56 -06:00
Gregory Nutt
59c0757183
Fix a few more dangling IPv6 issues found by code inspection
2015-01-18 10:33:27 -06:00
Gregory Nutt
eb3c6e8390
Networking: Some fixes for compilation when both IPv4 and IPv6 are enabled
2015-01-18 09:23:22 -06:00
Gregory Nutt
2663538b0a
Networking: Replace all references to the macros net_ipaddr_copy, net_ipaddr_hdrcopy, net_ipaddr_cmp, net_ipaddr_hdrcmp, and net_ipaddr_maskcmp with the appropriate IPv4 or IPv6 version of the macro (such as net_ipv4addr_copy). The goal is to support both IPv4 and IPv6 simultaneously. This requires that the macros be distinct and not conditionally defined to one on or the other.
2015-01-16 13:01:08 -06:00
Gregory Nutt
5e938941a6
Networking: Replace all references to net_ipaddr_t with either in_addr_t on net_ipv6addr_t. The goal is to support both IPv4 and IPv6 simultaneously. This requires that the two types be distinct and not conditionally typedef'ed to net_ipaddr_t.
2015-01-16 12:30:18 -06:00
Gregory Nutt
bee89be4f4
Networking: Drivers can have both IPv4 and IPv6 addesses, but a socket can only only one or the other; The socket connnection structures need to include a union of IPv4 and IPv6 addresses for the local address binding and for the remote address connections
2015-01-16 10:01:54 -06:00
Gregory Nutt
fe8b3c5220
Networking: More detangling of IPv6 logic. Next steps will be more invasive and will get moved to a branch
2015-01-16 08:51:18 -06:00
Gregory Nutt
60e50ff3b5
Networking: More IPv6 detanglement
2015-01-15 13:08:28 -06:00
Gregory Nutt
7d68c22d7f
Networking: Add support for IPv6 ioctls
2015-01-14 13:03:12 -06:00
Gregory Nutt
6a3a2f466c
Update comments and README
2014-11-24 07:25:40 -06:00
Gregory Nutt
aa9700c1ab
Update comments and read me
2014-11-23 12:52:18 -06:00
Gregory Nutt
b36dbe1d89
Add logic to netdev_findbyaddr() to return the correct network device for the case where a broadcast address is used. This change caused trivial ripples through other files because additional parameters are required for netdev_findbyaddr() when CONFIG_NET_MULTINIC
2014-11-23 11:00:22 -06:00
Gregory Nutt
fbd82712da
Add a comment
2014-11-22 09:08:31 -06:00
Gregory Nutt
80fc094734
Make tcp_listener static scope; it is not used outside of tcp_conn.c
2014-11-22 07:14:17 -06:00
Gregory Nutt
735aa4289a
Network: Add logic to get a default network device (for the case where are multiple devices). For INADDR_ANY
2014-11-21 14:14:39 -06:00
Gregory Nutt
8b2b7afdae
Update TODO; Cosmetic changes to comments
2014-11-17 15:34:50 -06:00
Gregory Nutt
57bcb28991
changes for clean build with Ethernet+SLIP
2014-11-16 11:27:53 -06:00
Gregory Nutt
38754a3466
Completes basic changes to support per-device/per-link TCP receive window size
2014-11-16 11:15:21 -06:00
Gregory Nutt
2340d46d20
Rename NET_LL_MTU to NET_DEV_MTU; rename d_llmtu to d_mtu
2014-11-16 10:42:19 -06:00
Gregory Nutt
859748a94e
Completes conversion of CONFIG_NET_BUFIZE to CONFIG_NET_ETH/SLIP_MTU
2014-11-16 09:22:38 -06:00
Gregory Nutt
ca7486d7f3
Add link MTU size to network device structure.
2014-11-16 08:49:14 -06:00
Gregory Nutt
daa94934eb
Network: netdev_register() must assign the device name appropriately according to the link layer type
2014-11-15 14:21:11 -06:00
Gregory Nutt
ebb6fd1e9c
Resove merge conflicts
2014-11-15 10:04:33 -06:00
Gregory Nutt
2b758537ea
Network: Misc fixes for clean complete with both Ethernet and SLIP enabled
2014-11-15 08:55:50 -06:00
Gregory Nutt
388ef8db1a
Netwoek: Ada a parameter to netdev_register() to indicate the link protocol supported by the driver. Use this value to replace some logic commited yesterday
2014-11-15 08:22:51 -06:00
Gregory Nutt
057af36c1d
More of the PHY event notification logic change: Fix some compile errors when full feature is enabled; Add some missing ioctol logic
2014-08-16 15:04:09 -06:00
Gregory Nutt
eb5e2e4b20
Finishes the ioctl definition to subscribe to PHY events. Revamp network ioctl signature to support arguments other than struct mii_ioctl_data.
2014-08-16 14:08:04 -06:00
Gregory Nutt
79e098b20e
Clean missing function headers
2014-08-16 10:24:06 -06:00
Gregory Nutt
811668cf15
NET: Move most of the contents of include/nuttx/net/igmp.h moved to net/igmp/igmp.h
2014-07-05 15:15:40 -06:00
Gregory Nutt
60246e613b
NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed.
2014-07-04 19:13:08 -06:00
Gregory Nutt
0bb153b8cb
Remove all inclusion of uip.h
2014-07-04 16:58:22 -06:00
Gregory Nutt
a6b39d1879
NET: in-progress change... don't use
2014-07-04 16:38:51 -06:00
Gregory Nutt
9f5418e5d3
NET: More renaming
2014-07-03 17:53:16 -06:00
Gregory Nutt
c362f21815
NET: Rename uip_ipaddr* to net_ipaddr*
2014-06-29 13:11:08 -06:00
Gregory Nutt
899dc193ca
NET: Renaming of IP address types
2014-06-29 12:22:50 -06:00
Gregory Nutt
76fa58ee00
Move all socket-related files from net/ to net/socket. Move net/net.h to net/socket/socket.h
2014-06-28 17:25:18 -06:00
Gregory Nutt
64c8dba8c4
NET: Create net/sockets directory and hook into the build/configuration system
2014-06-28 16:41:55 -06:00
Gregory Nutt
fce2a79abd
Rename uip_driver_s net_driver_s
2014-06-27 16:48:12 -06:00
Gregory Nutt
d8e18e7f96
Move NETDEV config from net/Kconfig to net/netdev/Kconfig
2014-06-27 10:02:14 -06:00
Gregory Nutt
238d9d9694
Fix conflict in ChangeLog
2014-06-27 10:00:28 -06:00
Gregory Nutt
953764181e
NET: Move net/netdev*.c to net/netdev/netdev*.c
2014-06-27 09:56:45 -06:00