christiaans
e1b215aa73
Introduced cc.h formatters and removed SO_REUSE from transport layers.
2005-11-25 12:03:38 +00:00
christiaans
7599985a0a
Some build fixes for OpenBSD.
2005-10-10 07:27:31 +00:00
likewise
e11d57c883
Fixes bug #13807 : slipif_input() garbles large (i.e. multiple pbufs) inbound datagrams.
2005-07-17 15:13:34 +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
62a37a4876
Updates the FILES contents to better reflect the current state.
2004-11-29 09:39:51 +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
jani
6b0852a21f
reduce msleep interval from 250 to 1 ms in ppp
2004-11-09 13:03:32 +00:00
christiaans
67dd939d83
Match update_arp_entry() to prototype.
2004-10-28 08:21:33 +00:00
likewise
99e3fe9ae1
17th October 2004 Leon Woestenberg <leon.woestenberg@gmx.net>
...
ethernetif.c: Fix lwip/stats.h support, reported by Andrew McGeachie.
2004-10-17 18:13:18 +00:00
kieranm
1e1f5d5462
Kieran Mansley - kjm25@cam.ac.uk - 20th September 2004
...
* Change the return type of ethernetif_init from void to err_t to avoid confusing porters.
2004-09-20 17:00:31 +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
4d30218eb2
Updated low_level_output() to match prototype for netif->linkoutput
...
and changed low_level_input() similarly for consistency.
2004-07-21 09:31:03 +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
45e36d9f56
Dependencies on C library memset() etc., so include <string.h>.
2004-07-05 00:00:21 +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
e4295396ac
Re-instantiated the pack directives. Nested structs do break individual field natural alignment on arm-gcc.
2004-05-06 03:27:13 +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
79110ba469
Removed all structure packing directives. Protocol header fields are naturally aligned by design.
...
(Earlier, the 14-byte ethernet header screwed this up, this had already been fixed by adding two pad bytes.)
Assumption is that compilers do not align with larger-than-sizeof(type) boundaries.
Pre-tag PRE_PACK_REMOVE. Post-tag POST_TAG_REMOVE.
2004-05-05 19:16:51 +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
b217b020a5
Changed PAD_ETH_SIZE into ETH_PAD_SIZE for consistency with de-facto lwIP naming convention.
2004-05-05 15:09:13 +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
likewise
8603e19516
Removed ETHARP_ALWAYS_INSERT.
2004-04-28 23:20:18 +00:00
likewise
2db9551750
Patch of bug #8708 applied which should fix header alignment issues on 32-bit processors.
...
While this patch might need further clean-up, it is applied to make sure this gets attention.
2004-04-28 00:26:35 +00:00
likewise
110e5af36c
Two trivial typo fixes.
2004-04-23 15:24:36 +00:00
jani
7d4aef9576
spelling fix from Tony Mountfield
2004-04-22 09:50:22 +00:00
jani
811b360df7
more uptodate eth driver skeleton from Tony Mountfield
2004-04-22 09:47:47 +00:00
likewise
2e2dada561
etharp_query(): Fixed the case where the packet that initiates the ARP request is not queued, and gets lost.
...
etharp_query(): Fixed the case where the packets destination address is already known.
As a result, we now always queue the packet and perform an ARP request, unless the entry is stable and no packet is submitted for transmission.
2004-04-14 19:12:10 +00:00
likewise
10d42c6fa3
Replaced ip_addr_isbroadcast() macro by function.
...
Overrides patch #2679 , as this must be solved inside ip_addr_isbroadcast(), inspired by BSD.
2004-03-11 21:20:10 +00:00
jani
30e5dfddb9
fix inet_ntoa prototype to be standard, and fix ppp code that used the non-standard version
2004-03-10 13:23:04 +00:00
kieranm
70cd10beae
23/02/2003 - Kieran Mansley - kieranm@gtemail.net
...
* Applied patch #2679
* Sets netif->flags at line 202 to NETIF_FLAG_POINTTOPOINT
2004-02-23 10:15:06 +00:00
likewise
e1c4bfad05
Merged from DEVEL, except for the API change in etharp.c.
2004-02-07 00:30:03 +00:00
likewise
7129d4797c
Merged ARP fixes from STABLE. Should have made those fixes in HEAD first.
2004-02-06 22:28:37 +00:00
uid67528
eed8ea5bc1
Merged from DEVEL. etharp prepared for queueing feature. DHCP fix.
2003-12-28 02:38:51 +00:00
likewise
3c71c378bc
An overriden merge from DEVEL to main was needed as small changes had been made to main.
2003-11-14 14:56:30 +00:00
likewise
e4a6d199fe
Merged from DEVEL into main tree.
2003-11-14 13:17:23 +00:00
marcbou
351e590e01
Merged from DEVEL.
2003-06-27 20:46:11 +00:00
marcbou
55f64f13c7
Important bug fixes and improvements.
2003-06-19 11:31:25 +00:00
marcbou
f0e0e72e4d
Patch #1623 : Add missing pbuf_free() call after pbuf_chain() in slipif_input()
2003-06-19 10:30:13 +00:00
likewise
ba786dc49b
Applied patch #1596 fixing wrongly cast LWIP_DEBUGF arguments.
...
(printf expects integers on the var args stack)
2003-06-11 22:11:42 +00:00
kieranm
8014551908
Changed DEBUGF to LWIP_DEBUGF
2003-06-10 10:45:29 +00:00
likewise
df99ce9d98
Replaced all tabs with two spaces (regardless of indentation is correct).
2003-06-09 21:14:47 +00:00
likewise
734400cafa
Only free the queued packets if there are any.
2003-06-09 20:28:10 +00:00
likewise
08703f46f8
Several additional documentation fixes.
2003-06-04 08:58:51 +00:00
jani
26d9b28f77
sio and PPP updates from Marc
2003-06-02 11:12:56 +00:00
jani
ff63557d39
Cleanups in PPP: C++ comments removed, make it compile for unixsim too. Does not work yet only compiles
2003-05-30 08:49:34 +00:00
jani
31776e23fe
add PPP stack from Marc. Work in progress
2003-05-27 14:37:56 +00:00
jani
8bfe344923
fix format warning
2003-05-06 12:13:34 +00:00
likewise
03bc7c868b
Major stylo search/replace for "One space between keyword and opening bracket."
2003-05-01 13:24:01 +00:00
likewise
042b2a39d9
Either first or last packet can be queued. Fixed (err_t)NULL return value in etharp_query().
2003-04-22 15:08:47 +00:00
likewise
9ef5a61b1e
Prevent compiler warning on unused function arguments.
2003-04-15 12:41:52 +00:00
likewise
1a72feb128
etharp_query() has error return type now. Matched dhcp.c with this change.
...
Added debug messages in other places.
2003-04-01 14:02:50 +00:00
davidhaas
09ca7a181b
In keeping with pbuf->ref always having the count of the number of pointers
...
to the particular buffer (and the last rewrite of pbuf_free), changed most
pbuf_ref_chain() calls back to pbuf_ref(). I think this was causing some pbuf
leaks.
2003-03-31 22:09:39 +00:00
likewise
6c147709b6
Documentation changes. Added missing trailing newlines to debug messages.
2003-03-31 10:32:35 +00:00
likewise
002998cf49
Fixed bugs #2968 (ref count) and #2670 (total length).
...
Name of pbuf_unref() falsely suggests to undo pbuf_ref(), renamed to pbuf_take().
2003-03-28 08:49:05 +00:00
likewise
fa34d51b7e
Added documentation and comments.
2003-03-25 12:59:42 +00:00
jani
c60d0de919
Add sio.h containing interface to platform specific serial layer.Make slipif use it instead of defining extern functions.This is in preparation for PPP
2003-03-24 10:54:03 +00:00
jani
9cafc7a764
avoid compiler warning
2003-03-21 10:34:47 +00:00
davidhaas
32d9f25a6f
Fixed up and made work a PBUF_REF type. Most of the code uses this now
...
instead of PBUF_ROM. This addition allows support of copy-on-demand where the
lower layers can call pbuf_unref() which tests for any PBUF_REF buffers and
replaces them with PBUF_POOL buffers. This is now used
everywhere. pbuf_unref() is called in ARP queueing and in the coldfire
driver, which puts frames on a DMA queue and frees them later.
Along with this change pbuf_free() now goes through the entire chain of
buffers and tests all the ref counters, not just the first one. Generally now
pbuf_ref_chain() should be called and not pbuf_ref(). This change was made
because it is possible for the head of the pbuf chain to have a different
count than the payload pbuf which might have been passed by the application.
2003-03-19 22:14:49 +00:00
jani
84697ce713
Add priority argument to thread sys_thread_new.Patch from floriZ but slightly modfied
2003-03-19 15:27:56 +00:00
davidhaas
f9f21934ab
Fix to last fix for bug 2826: find_arp_entry() was now not finding any
...
entries unless there was an attached buffer. Fixed so that it finds entries
without attached buffer.
Also: Now attaching buffer to arp queue before sending arp request. For
Coldfire, where ethernet receive is done under interrupts arp response was
received before buffer was attached, thus causing attached frame to never get
transmitted.
2003-03-18 14:48:40 +00:00
likewise
45c13ad08f
Fixed bug #2826 (re-use of oldest ARP entry with queued packet leaks pbuf). Only if ARP_QUEUEING == 1.
2003-03-16 23:46:29 +00:00
likewise
76d395c8de
Fixed bug #2841 (etharp.c packet queueing always picks table entry 6).
2003-03-16 22:44:05 +00:00
jani
d390ca7056
cleaned up opt.h a bit, added more option defaults ad changed SYS_LIGHTWEIGHT_PROT to be a 0/1 define.The same for COMPAT_SOCKET
2003-02-24 10:49:05 +00:00
jani
18df3961e9
byte-order handling functions are in inet.c now and the uperrcase counterparts are gone. opt.h has all the
...
configurable items debug does not need to be directly included.
2003-02-21 16:43:46 +00:00
jani
8e9aa84070
do not directly include lwipopts.h but lwip/opt.h instead
2003-02-20 16:32:22 +00:00
likewise
37629fc1b6
Fixed some issues open after merging 'leon-dhcp'. Added new debugging.
2003-02-20 13:13:51 +00:00
jani
cc31bb9358
make netif->init return err_t instead of void.Patch from David Le Corfec
2003-02-20 11:51:53 +00:00
likewise
d8d787545e
Merged with leon-dhcp branch. Tagged as POST_leon-dhcp afterwards.
2003-02-20 08:41:59 +00:00
davidhaas
7f1becc682
Allow minimal unix target to build in cygwin (but not necessarily run).
...
Applied a patch from Marc Boucher which has the following changes:
1) Fixed sys_arch.txt documentation to have new return type from
sys_thread_new.
2) Removed unnecessary casts on calling sys_timeout() in certain files.
3) Removed some unnecessary break statements after return statements.
4) Changed sys_timeout_remove() to sys_untimeout().
5) Added some forgotten #ifndef SYS_LIGHTWEIGHT_PROT to memp.c
6) Changed LWIP_DIAG and LWIP_PLATFORM_ASSERT to have do while().
2003-02-18 19:27:48 +00:00
davidhaas
dd2fa15e8a
Add the following features and bugfixes:
...
Added select() functionality to sockets library.
Support for errno in sockets library.
Byte ordering fixes.
basic lwip_ioctl(), FIONREAD, get/setsockopt() etc. support
- added additional argument to netif_add to pass state pointer so that the
if_init function has access to context information before
the interface is added, without accessing globals.
- added netif_remove()
- to conserve cpu load the tcpip_tcp_timer should only be active
when tcbs that need it exist.
- pass length of available data to callbacks for NETCONN_EVT_RCV events
- added tcpip_link_input(), a hack to allow processing of PPP
packets in tcpip_thread() context. This saves threads and context
switches.
- renamed incompatible ASSERT() macro to LWIP_ASSERT() to avoid name
collision.
- changed a bunch of %d's to %u's in format strings for unsigned values.
- added ip_frag to lwip_stats.
- changed IP_REASS_MAXAGE and IP_REASS_TMO defaults to more realistic
values.
- added sys_timeout_remove() function to cancel timeouts (needed by PPP
amongst other things).
- tolerate NULL returns from sys_arch_timeouts() since some threads might
not need to use or have timeouts.
- added sys_sem_wait_timeout()
- moved mem_malloc() function to end of mem.c to work around tasking
compiler bug.
- automatically bind to local tcp port if 0.
- allow customization of port ranges for automatic local bindings.
- corrected various typos, spelling errors, etc..
Thanks to Marc Boucher for many of these changes.
2003-02-06 22:18:56 +00:00
jani
d2e008d4b4
Update src/FILES and src/netif/FILES
2003-02-05 13:39:35 +00:00
jani
39edc69514
When all entries are 0 due to the whole table changing since the last arp tick (past 10 seconds) there's no oldest entry and the new entry does not get a spot.Fix this (from Ed Sutter)
2003-01-18 16:05:24 +00:00
likewise
1ad5537c9b
Fixed some typo's in the comments.
2003-01-13 13:22:09 +00:00
jani
8d7f09fa92
remove global ctime.Each entry's ctime is now absolute.This avoids wrapping and also solves naming clash reported on the list
2003-01-13 09:38:21 +00:00
likewise
ced453a72b
Moved ETHARP_ALWAYS_INSERT switch to lwipopts.h
2003-01-08 11:03:54 +00:00
likewise
0f3e8c19e8
Added check if ARP_QUEUEING is 1 for a queueing related debug statement.
2003-01-08 10:49:16 +00:00
likewise
cc4df7100d
Updated lwIP module copyright years to include 2003. Committers must check theirs.
2003-01-08 10:09:39 +00:00
likewise
0bd02a5f7a
Removed etharp_output_sent() as etharp.c no longer returns ARP packets to the driver.
2003-01-08 09:24:06 +00:00
likewise
b311ab0d53
Allocate PBUF_RAW instead of PBUF_LINK type pbufs. Fixes bug #1890 for this driver.
2003-01-08 09:09:35 +00:00
jani
b6b905412e
Patch #928 from Marc
2003-01-07 12:50:34 +00:00
jani
ef68392388
renamed (hopefully everywhere) stats to lwip_stats.closes bug #1901
2002-12-18 12:49:01 +00:00
jani
95c1bca3f1
Moved tcpdump to unix arch since it's specific to that.
2002-12-18 10:48:51 +00:00
jani
4c1069c38b
use memset and memcpy instead of bzero and bcopy throughout lwIP core code.Archs need to update.Bug #1899
2002-12-18 10:40:01 +00:00
jani
c0a8ef6f6f
Use C style comments.In debug stataments cast various struct pointers to void* to
...
avoid printf warnings.misc warnings in etharp.
2002-12-17 09:41:16 +00:00
jani
a071cbf86c
Allocate PBUF_POOL_BUFSIZE at once not harcoded 128.Init MTU for slip - 1500 for
...
now needs a SLIP_MTU in opts (later).Add prototypes for low level sio callbacks.
2002-12-17 09:39:10 +00:00
kieranm
cac01f7a89
Fixed compiler warnings when ARP_QUEUEING is not defined.
2002-12-05 09:41:52 +00:00
likewise
ac46dbacfa
Fixed wrong assertion condition.
2002-12-02 16:08:09 +00:00
likewise
dfa0369678
More complete ARP protocol implementation.
2002-11-29 16:02:11 +00:00
likewise
bda378bb9f
All ARP queueing code is now conditionally compiled-in.
2002-11-28 09:26:18 +00:00
likewise
29f5968c23
Conditionally have ARP queue outgoing pbufs.
2002-11-18 10:30:02 +00:00
jani
dbac2ff0b3
Move etharp packed structures to the header file.
2002-11-18 08:41:31 +00:00
likewise
4beff6c2cf
ETHARP_SNOOP_UPDATES made externally configurable.
2002-11-15 12:41:59 +00:00
jani
ecf0f56d33
Fix bug which eats pbufs if SLIP_END comes at a pbuf boundary.Also cleaned up and commented the code.
2002-11-14 08:03:25 +00:00
likewise
d31ef42acf
ARP entries can now be updated (but not added) on any ARP traffic. Set #define ETHARP_SNOOP_UPDATES 1 to enable.
2002-11-13 09:10:19 +00:00
likewise
f9129c4dcd
Implemented conditional insertion of ARP entries to update_arp_entry using ARP_INSERT_FLAG.
2002-11-13 08:56:11 +00:00
likewise
e41134bbbe
Note about ethernetif.c not up-to-date with etharp.c API. Fixed typo.
2002-11-11 14:37:30 +00:00
likewise
b9353eaf12
Changed static etharp_query() to support queueing packets. This fix missed in last commit.
2002-11-11 14:34:12 +00:00
likewise
2b53babf99
Fixed numerous bugs. Re-used etharp_query() in etharp_output(). Added comments and JavaDoc documentation.
2002-11-08 22:14:24 +00:00
proff_fs
f1c0bbc62b
Added includeds for bpstruct and epstruct.
...
Ports should update from using PACK_STRUCT_BEGIN and PACK_STRUCT_END to use these includes.
Maybe there should be an PACK_STRUCT_USE_INCLUDES ifdef around these, for ports for which PACK_STRUCT_BEGIN and PACK_STRUCT_END works nicely.
2002-11-08 12:54:43 +00:00
likewise
e988d2ee0b
find_arp_entry() returned 0 instead of ARP_TABLE_SIZE if full pending cache (bug #1625 ).
2002-11-06 11:43:21 +00:00
likewise
bb06293b30
Fixed NULL pointer bug ( #1493 ). Fix for memory leak bug ( #1601 ), etharp_output_sent(). Added etharp_query for DHCP.
2002-11-04 14:56:24 +00:00
adamdunkels
01cccf4aee
Reformatted the code to make it consistent with the rest of lwIP.
2002-11-02 20:40:06 +00:00
adamdunkels
4e4da8e019
Added short descriptions of the generic network interface code.
2002-11-02 20:38:49 +00:00
likewise
bcb2600107
New file structure towards SLIP/PPP. Renamed tcp_*.c for 8.3 sake.
...
See lwip@sics.se Mon, 21 Oct 2002 magnus.ivarsson
2002-10-22 12:32:58 +00:00
likewise
f06e955072
Initial revision
2002-10-19 12:59:30 +00:00