goldsimon
79d9b36ece
Further update to ARP queueing: Changed pbuf_copy() implementation so that it can be reused (don't allocate the target pbuf inside pbuf_copy()).
2007-05-04 21:31:25 +00:00
goldsimon
be316e81a7
Introduced fast one-entry-cache to speed up ARP lookup when sending multiple packets to the same host.
2007-05-04 19:31:27 +00:00
goldsimon
e54f3fdaac
3rd fix for bug #11400 (arp-queuing): More pbufs than previously thought need to be copied (everything but PBUF_ROM!). Cleaned up pbuf.c: removed functions no needed any more (by etharp).
2007-04-11 18:50:45 +00:00
fbernon
5368a760cf
most of files: prefix all debug.h define with "LWIP_" to avoid any conflict with others environment defines (these were too "generic").
2007-03-30 08:47:04 +00:00
goldsimon
1f544e087b
Fix BUG#11400 - don't corrupt existing pbuf chain when enqueuing multiple pbufs to a pending ARP request
2007-03-04 12:12:42 +00:00
christiaans
d4b6471d39
Replaced tabs with space.
2006-11-17 10:51:13 +00:00
christiaans
b5f4672155
Partially accepted patch #5449 for ANSI C compatibility / build fixes. Fixed bug #17574 corrected UDP-Lite protocol identifier.
2006-10-11 12:04:04 +00:00
christiaans
7eddf93b36
Added missing snmp_delete_arpidx_tree() in find_entry where entry state was set to ETHARP_STATE_EMPTY.
2006-10-03 10:39:37 +00:00
christiaans
693316c83f
Corrected snmp_delete_arpidx_tree() to be called in the expired state, not only maxage.
2006-09-06 13:01:47 +00:00
christiaans
1485edf8e1
Added index tree node structs and functions, e.g. to be used for ARP table indexes.
2006-08-29 11:28:28 +00:00
christiaans
469012b544
Added etharp_find_addr(), finds eth/IP address pair by interface ptr and IP address.
2006-08-08 15:10:42 +00:00
curtmcd
0148128881
Fix gcc warning per discussion on lwip-users 2006.04.25: dereferencing
...
type-punned pointer will break strict-aliasing rules. Use memcpy
instead of structure copy; code is not in critical path.
2006-05-26 19:05:41 +00:00
christiaans
7446e31fce
Address copy loops optimized for speed.
2006-03-29 13:16:40 +00:00
christiaans
39f8538776
Fixed compilation warning on sizeof(), reported by Beach at 20060320.
2006-03-21 08:28:15 +00:00
christiaans
7571fe5d13
Fixed unused variable warning.
2005-12-15 08:27:30 +00:00
christiaans
e1b215aa73
Introduced cc.h formatters and removed SO_REUSE from transport layers.
2005-11-25 12:03:38 +00:00
likewise
8579e4144f
More robust DHCP ARP reply checking.
2005-01-24 23:02:29 +00:00
likewise
2a9ee35411
Removed assertion that always equaled true.
2004-12-27 14:50:03 +00:00
likewise
dfa96852f0
Disabled queueing more than 1 packet on a ARP entry, as I suspect this clashes with the TCP segment queueing.
2004-12-27 14:44:19 +00:00
likewise
928dd94ba6
etharp.c: Corrected DHCP_DOES_ARP_CHECK behaviour.
2004-11-30 17:22:18 +00:00
likewise
b429918b32
etharp.c: re-arranged code in find_entry(), supposedly making it more readable for all cases.
2004-11-29 11:01:20 +00:00
likewise
ed59dc1ada
Prevented a race condition between a new ARP request and the ARP timer.
...
Timeouts stay the same (halved the ARP timer, doubled the counts), but
ETHARP_MAX_PENDING should be at least 2 to prevent it from reaching 0 right away,
giving too little time for any ARP responses to be noted.
2004-11-28 18:00:20 +00:00
likewise
a5cd3fcafd
Added a missing "not" in the comment, the code was correct.
2004-11-25 14:04:45 +00:00
likewise
3488a5c3c4
2004-11-25 Leon Woestenberg <leon.woestenberg@gmx.net>
...
* etharp.c: ETHARP_CREATE is renamed to ETHARP_TRY_HARD.
Do not try hard to insert arbitrary packet's source address,
etharp_ip_input() now calls etharp_update() without ETHARP_TRY_HARD.
etharp_query() now always DOES call ETHARP_TRY_HARD so that users
querying an address will see it appear in the cache (DHCP could
suffer from this when a server invalidly gave an in-use address.)
2004-11-25 13:32:31 +00:00
christiaans
67dd939d83
Match update_arp_entry() to prototype.
2004-10-28 08:21:33 +00:00
softins
36df79b207
Make sure the first pbuf queued on an ARP entry is properly ref counted.
2004-08-20 09:17:52 +00:00
likewise
515fb5a3fd
First packet on queue generated assertion failure. Reported by David Haas on lwip-users on Friday 13th.
2004-08-17 08:39:43 +00:00
likewise
fb18e1f036
Removed obsolete debug define.
2004-07-22 21:56:31 +00:00
softins
5e24ae49a6
Removed spurious semicolon and added missing end-of-comment.
2004-07-21 08:36:15 +00:00
likewise
bf74ffe974
Outgoing packets caused ARP requests even when the destination IP was already cached.
...
Matched documentation.
2004-07-20 23:18:09 +00:00
likewise
2074861b57
Outgoing packets caused ARP requests even when the destination IP was already cached.
2004-07-20 23:07:54 +00:00
likewise
efe5ce5c78
Made loop counters unsigned where possible.
2004-07-04 23:40:44 +00:00
likewise
2d94bf4998
Bug fix: etharp_output() should not free pbufs.
...
Bug was introduced in 1.60 and reported by Tim Newsham on 30-Jun-2004 on lwip-users.
2004-06-30 18:41:39 +00:00
likewise
26819e6c39
Fixed documentation for internal function.
2004-05-13 00:28:38 +00:00
likewise
6587efb3e8
Fixed #if ETHARP_QUEUEING to #if ARP_QUEUEING.
2004-05-07 01:20:28 +00:00
likewise
8d2200f29b
Optimized search loop a bit. Conditional code for ETHARP_QUEUEING option.
2004-05-07 01:06:56 +00:00
likewise
5c7a70df28
Fixed wrong argument to find_entry() in etharp_query().
2004-05-06 02:55:53 +00:00
likewise
16a7a8258f
Fixed ETH_EMPTY into ETHARP_STABLE_EMPTY.
2004-05-06 02:54:06 +00:00
likewise
fb1f61b212
Do not empty entries unless allowed to in find_entry().
2004-05-06 02:51:15 +00:00
likewise
c3137df39c
More fixes.
2004-05-06 02:49:10 +00:00
likewise
2df9cd7262
Exported etharp_request().
2004-05-06 02:43:47 +00:00
likewise
a23f6afbee
Fixed typos.
2004-05-06 02:38:42 +00:00
likewise
e37f7fafc1
Optimized through re-use of common code. Results in 50 lines less and more modular code.
...
Work towards timed out and retries of ARP requests. Currently, one timed out ARP request.
2004-05-06 02:35:27 +00:00
likewise
7b803465ad
Simplified update_arp_entry().
2004-05-06 00:14:39 +00:00
likewise
273612b251
Prevent non-unicast addresses from polluting the ARP cache.
2004-05-05 23:47:33 +00:00
likewise
9dd10e46ab
Fix three bugs during tests.
2004-05-05 18:33:01 +00:00
likewise
29df95c514
As etharp already sends packets from the queue asynchronously, also make it send packet submitted through etharp_output().
...
etharp_output() now returns err_t.
etharp_query() now sends a packet directly if the IP address is stable.
2004-05-05 18:28:42 +00:00
likewise
015cb1a35d
etharp_*_input() return value (pbuf) removed; it has not been used since the packet queue
...
implementation. Packets are always sent to the network interface on behalf of ARP.
2004-05-05 15:59:12 +00:00
likewise
4eadc22a36
Some updates on "gratuitious ARP" from RFC3220. Cleanup of some code and comments.
2004-05-03 17:50:11 +00:00
likewise
94d3b04d68
Applied cleaner new patch for bug #8708 .
...
Implemented multiple packets on the outgoing queue in etharp.c.
Removed etharp.c specific queueing functions.
Fixed generic pbuf.c queueing functions.
2004-04-30 00:25:03 +00:00