Commit Graph

481 Commits

Author SHA1 Message Date
christiaans
2539b5cf61 Fixed up mib_external_node support, snmpwalk works for external objects. 2006-10-06 08:41:24 +00:00
christiaans
f7881e58bb Improved message parse robustness. Rejecting 'error requests'. Removed invalid genError return on varbindlist parse error, changed badValue into noSuchName error for non-writeable objects. 2006-10-04 09:15:23 +00:00
christiaans
25ed4e9d16 Fixed clearing of head and tail pointers in snmp_mib_node_delete(). 2006-10-03 10:41:48 +00:00
christiaans
cfb082a20b Added external mibnode panic closure functions, tobe called for error responses. 2006-10-02 10:13:04 +00:00
christiaans
e440590c37 Fixed snmp_mib_node_insert() to return 2, for node present (not inserted). Also solves invalid rootnode count for this case. 2006-09-29 13:34:38 +00:00
christiaans
c851a19ab2 Added en->get_value_a() call for zero size get_value replies, e.g. for closing external transactions. 2006-09-28 11:46:24 +00:00
christiaans
c2f9d7dee0 Fixed encoding of object sub identifiers with trailing zero. 2006-09-28 11:43:49 +00:00
christiaans
473e567047 Added en->set_value_a() call for closing external transactions. 2006-09-27 15:11:30 +00:00
christiaans
64dab92c6b Redesign of snmp_msg_event() fsm, added SNMP SET to fsm. 2006-09-27 07:25:16 +00:00
christiaans
d0f279ece4 Set TODO_SNMP_MSG_EVENT to 1. Moved some more code from snmp_recv() to snmp_event_service(). 2006-09-22 08:05:17 +00:00
christiaans
a5532ffd4d Added one strategic LWIP_DEBUGF to snmp_send_response(). 2006-09-22 08:03:16 +00:00
christiaans
cb412134dd Added newlines to LWIP_DEBUGFs. 2006-09-22 08:00:56 +00:00
christiaans
d079aae0e0 Fixed NULL dereferencing for zero length raw data. 2006-09-22 07:59:44 +00:00
christiaans
eabfb233b8 Moved SNMP_CONCURRENT_REQUESTS to opt.h, babysteps for external MIB nodes. 2006-09-20 13:33:50 +00:00
christiaans
960e724ad3 Improved mib node struct for external object access and moved get_object_def() calls to the message processing bit. 2006-09-14 15:08:54 +00:00
christiaans
82c46f957a Fixed double iterator bug in send_trap(), multiple trap destinations work ok now. 2006-09-12 12:46:36 +00:00
christiaans
320ea29861 Added some lines for SET command. 2006-09-12 10:03:46 +00:00
christiaans
c5e99ada63 Fixed sysObjectID length to copy private IDs with unkown lengths properly. 2006-09-08 09:22:28 +00:00
christiaans
a88d054d05 Improved TRAP interfacing. Varbinds maybe allocated at (external) trap source as wel. Added trap destination settings. 2006-09-07 14:17:03 +00:00
christiaans
6576802287 Fixed compilation for LWIP_SNMP 0. 2006-09-07 07:39:49 +00:00
christiaans
41ff80e5d3 First getnext succes, values are returned insead of NULLs, empty tables are skipped. Limitation: a single varbind per request, so 'snmptable' will fail. 2006-09-06 10:14:07 +00:00
christiaans
56c5fdbeaf Added newlines in debug output, small optimalisations, more work on 'getnext', fixed 'get' on udp table. 2006-09-04 09:22:48 +00:00
christiaans
130d39cc03 Changed index structs to mib_list_node structs to place the table index trees directly in the mib tree. 2006-09-01 07:14:50 +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
514ee867a6 Pacified GCC warnings and elaborated getnext to work on scalars, tables don't work yet. 2006-08-21 11:52:58 +00:00
christiaans
3cc7a406f4 Pacified GCC warnings and fixed double mem_free() while returning nosuchname err. 2006-08-21 11:51:19 +00:00
christiaans
c3f82acf7a Pacified GCC warnings. 2006-08-21 11:50:03 +00:00
christiaans
cdb7557d88 Added SNMP counters. 2006-08-18 10:18:42 +00:00
christiaans
7d1728f05a Started with getnext and ensure zero length identifiers are accepted. 2006-08-17 14:14:58 +00:00
christiaans
4b5c14470a Fixed htons into htonl for trap desctination ip. 2006-08-17 14:11:45 +00:00
christiaans
f198b11f27 Accepting zero length identifiers e.g. for getnext operation. Uncommon but valid. 2006-08-17 14:09:57 +00:00
christiaans
7d16087789 Fixed bug #17200, added check for broadcast destinations for PCBs bound to a unicast address. 2006-08-17 09:40:15 +00:00
christiaans
d734cd986c Moved noleafs_get_object_def() and noleafs_get_value() protos from mib2.c to snmp_structs.h 2006-08-15 07:28:43 +00:00
christiaans
8559f3e583 MIB-2 object values near to completion, just committing for keeping the flame alive. 2006-08-11 14:16:36 +00:00
christiaans
d0b81d3b20 Corrected comment typo. 2006-08-11 14:13:39 +00:00
christiaans
43bf9a8e46 Added SNMP counters, moved some defines. 2006-08-11 14:12:05 +00:00
christiaans
19f57bf810 Exported udp_pcbs in udp.h (for SNMP agent). 2006-08-11 14:09:48 +00:00
christiaans
9b11c4670d Corrected returned object id for interfaces.ifTable.ifEntry.ifSpecific to zeroDotZero (0.0). 2006-08-07 11:35:32 +00:00
christiaans
7eeaf8eaa5 Corrected object identifier codec for object ids not starting with .iso.dod (e.g. zeroDotZero (0.0)). 2006-08-07 11:32:44 +00:00
christiaans
d8922d0410 Added minimalistic SNMP GET functionality. 2006-07-14 12:54:38 +00:00
christiaans
54bb20b486 Added SNMP statistics to struct netif and changed SNMP macro glue. 2006-07-14 09:58:02 +00:00
christiaans
7a5cb21056 Fixed (experi)mental typo. 2006-07-07 11:33:36 +00:00
christiaans
333c3f18c0 Initial commit. Expirimental code, please note this is not yet fully functional. 2006-07-07 09:49:31 +00:00
christiaans
a5cab96ff3 Added ip_frag_init() and some LWIP_DEBUGFs. 2006-07-04 08:24:17 +00:00
christiaans
dd060ceed3 Added ip_frag_init() to ip_init(). 2006-07-04 08:23:33 +00:00
curtmcd
dd314e1bdf Fix incorrect calculation of dhcp->dns_count.
Comment out unused static dhcp_get_option_short() to avoid warning.
2006-06-08 00:16:56 +00:00
curtmcd
1dae102359 Fix debug print, remove reference to TCP_COARSE_TIMEOUT 2006-05-31 21:23:26 +00:00
curtmcd
b306594cad Remove unused mem_reallocm 2006-05-31 21:23:01 +00:00
curtmcd
b60b7cf8fe Use isprint() instead of isascii() as it's more common
Change return type of inet_aton from s8_t to int (standard)
Touch up comments and white space
2006-05-30 19:09:41 +00:00
curtmcd
6158aa684b udp_input() operated by removing the IP and UDP headers, putting back
the UDP header, then re-removing it.  However, pbuf_header() can't add
back the UDP header on pbufs of type PBUF_REF, so these would all get
dropped for bad checksum.  This change addresses the problem and
simplifies things by stripping each header just once.
2006-05-26 02:40:54 +00:00
curtmcd
047e3455f7 Improve formatting by fixing wrong indents and lines too long. 2006-05-26 01:36:16 +00:00
christiaans
7fc966dced Optimized for speed and size. Test against zero for both the inverted and non-inverted address. (old and new-style broadcasts) 2006-04-24 07:26:06 +00:00
curtmcd
680afa4229 memp_memory could be unaligned, causing one buffer in the memp pool to
be unaligned, resulting in nasty random data corruption on some CPUs.
Also, clean up the code a little and save a few bytes.
2006-04-12 21:07:44 +00:00
likewise
313743c833 Fix for out-of-sequence FIN handling, patch by Oleg Tychev. 2006-04-08 00:36:25 +00:00
likewise
6cb19d7e34 Dangling inseg.p pointer fix by Pedro Alves. 2006-04-08 00:13:49 +00:00
christiaans
c9db715bae addr->addr test size and speed optimalisation (helping a dumb compiler) 2006-04-04 07:21:54 +00:00
christiaans
94abf9d935 Added LWIP_PLATFORM_BYTESWAP optimalisation flag and macro glue. 2006-03-29 10:15:43 +00:00
christiaans
d9b4ab1658 Pbuf flag test size and speed optimalisation (helping a dumb compiler). 2006-03-28 15:06:33 +00:00
christiaans
61dc2e7dd5 Added pbuf_alloc() return value checks in ip_frag(). 2006-03-03 11:25:36 +00:00
christiaans
11a820458f Increased ip_reassbitmap size with 1, added assertions to catch boundary cases.
Beautified indentation again.
2006-03-02 15:45:19 +00:00
likewise
0b3b713123 Removed 'even sndbuf' fix in TCP, this fix was a ugly hack for the incomplete checksum routine that does not work now that the checksum routine is fixed. 2006-03-01 16:53:41 +00:00
likewise
db76ca248b 2006-02-27 Merged patch by Curt McDowell
pbuf.c: Fix alignment; pbuf_init() would not work unless pbuf_pool_memory[] is properly aligned.
2006-02-27 14:11:19 +00:00
christiaans
3aea7bc053 Removed timer dependency on sys.c (raw-API). Beautified indentation. 2006-02-13 08:12:07 +00:00
christiaans
6c8850698d Small optimalization for udp_input(). 2006-01-02 12:06:02 +00:00
likewise
f8663a7129 Remove PCBs which stay in LAST_ACK state too long. 2005-12-20 11:03:18 +00:00
christiaans
60dc1c22f7 Disabled the added summing routine to preserve code space, fixed some comments. 2005-12-15 08:26:00 +00:00
likewise
02b575e9e4 Added Curt McDowell's platform-independent optimized checksum routine. 2005-12-14 22:51:35 +00:00
likewise
6facaf8f05 Trailing dangling byte in checksum should be considered MSB. 2005-12-14 22:29:03 +00:00
likewise
319a972e75 Duplicate FIN ACK race condition fix by Kelvin Lawson. 2005-12-14 21:58:14 +00:00
christiaans
61cdbb30a6 Added some more fixes to the lwip_standard_chksum() comments. 2005-12-14 12:55:12 +00:00
likewise
e1dcfcbb76 Updated comment on optimization and aim of this generic algorithm. 2005-12-12 09:32:05 +00:00
christiaans
43d448e73f Fixed lwip_standard_chksum() for unaligned memory access. Verified to work on c16x and BSD on P4. 2005-12-09 08:59:08 +00:00
christiaans
33fbb06604 Fixed void ptr address increment bug reported by Bertrik Sikken. 2005-11-25 12:23:03 +00:00
christiaans
e1b215aa73 Introduced cc.h formatters and removed SO_REUSE from transport layers. 2005-11-25 12:03:38 +00:00
likewise
f05d392920 Unaligned 16-bit access fix for the standard checksum routine by Peter Jolasson. 2005-07-17 15:30:27 +00:00
likewise
baf377679a 2005-06-08 Leon Woestenberg <leon.woestenberg@gmx.net>
* tcp_in.c: Send reset on unexpected ACK in two cases. Fix submitted by olaf.peters@technolution.
2005-06-08 18:57:05 +00:00
likewise
f9355136d8 2005-06-08 Leon Woestenberg <leon.woestenberg@gmx.net>
* udp.c: Fixed memory leak; when ip_route() failed, a possibly allocated q was never de-allocated. Fixed by called ip_route() before allocating q.
2005-06-08 18:35:00 +00:00
likewise
533fc217d4 4 February 2004, Leon Woestenberg <leon.woestenberg@gmx.net>
tcp_in.c: Applied fix patch for bug #2679.
tcp_out.c: Applied fix patch for bug #2679.
http://savannah.nongnu.org/bugs/?func=detailitem&item_id=2679
2005-02-04 13:43:13 +00:00
likewise
3160488352 queue was referenced before initialization in first goto memerr branch code. Replaced goto branch by its minimal equivalent error handling code. 2005-02-04 13:28:50 +00:00
likewise
8579e4144f More robust DHCP ARP reply checking. 2005-01-24 23:02:29 +00:00
likewise
6880fa62f8 Added some missing string.h includes. 2005-01-24 21:05:47 +00:00
likewise
86c774443c Fixed missing semicolon in LWIP_DEBUG statement. 2005-01-04 12:20:25 +00:00
likewise
3b715f4602 3 January 2004, Leon Woestenberg <leon.woestenberg@gmx>
udp.c: pcb->recv() callback was called even when it was NULL.
2005-01-03 17:54:21 +00:00
likewise
a549ec0382 Added inline source documentation. 2004-12-27 14:42:02 +00:00
likewise
c61f01b206 tcp_write(): optimize order of valid states checks, most common first.
added assertion: when the queues are NULL, queuelen must be zero.
remove ACK flags from a PCB, only when we could succesfully sent
an empty ACK packet.
2004-12-26 01:36:37 +00:00
christiaans
089378ef87 christiaans: cosmetic change debug formatters as requested by Tom. 2004-12-07 08:16:27 +00:00
likewise
f3def542ee Compile dammit 2004-11-25 14:03:31 +00:00
likewise
aa249922df Removed redundant closing bracket. 2004-11-25 13:59:06 +00:00
likewise
37a0c57bed 2004-11-25 Leon Woestenberg <leon.woestenberg@gmx.net>
* ip.c: Exploit the fact that ip_addr_isbroadcast() now checks that the
     given IP address actually belongs to the network of the given interface.
2004-11-25 13:57:05 +00:00
likewise
90b7e68b4e Removed the Smurf. 2004-11-25 13:52:34 +00:00
likewise
fd49ee3c8d 2004-11-25 Leon Woestenberg <leon.woestenberg@gmx.net>
* ipv4/ip_addr.h: Renamed ip_addr_maskcmp() to _netcmp() as we are
    comparing network addresses (identifiers), not the network masks
    themselves.
  * ipv4/ip_addr.c: ip_addr_isbroadcast() now checks that the given
    IP address actually belongs to the network of the given interface.
2004-11-25 13:33:07 +00:00
likewise
ae4955f59e Replaced erronous LWIP_ERRORF with LWIP_DEBUGF 2004-11-25 11:23:37 +00:00
likewise
fab107a9df DECLINE message was unicast instead of broadcast 2004-11-25 11:10:53 +00:00
kieranm
bb87d19e84 Kieran Mansley - kjm25@cam.ac.uk - 24th Nov 2004
* Increase pcb->snd_buf by 1 when an ACK is received in SYN_SENT state to ensure correct operation
2004-11-24 17:05:41 +00:00
kieranm
64aa4c716d Kieran Mansley - kjm25@cam.ac.uk - 24th Nov 2004
* Increased argument checking at start of pbuf_queue() and made resulting errors more verbose
2004-11-24 17:03:03 +00:00
likewise
791fa28817 Removed static declaration of dhcp_release(). 2004-11-04 19:19:29 +00:00
kieranm
751557bcbf 16th October 2004 - Kieran Mansley - kjm25@cam.ac.uk
- Add code to tcp_recved() to send an ACK (window update)
immediately, even if one is already pending, if the rcv_wnd is above a
threshold (currently TCP_WND/2)
 - This avoids waiting for a timer to expire to send a delayed ACK in
order to open the window if the stack is only receiving data.
2004-10-16 12:57:52 +00:00
likewise
0ad7ea16d2 Bring interface up/down with netif_set_up/down(). Fixes bug 10547. 2004-10-14 11:57:53 +00:00
kieranm
4cb8192c1d Kieran Mansley - kjm25@cam.ac.uk - 20th September 2004
* Corrected "out by one" error on one of the TCP_SEQ_BETWEEN macro calls introduced recently
2004-09-20 16:53:48 +00:00
kieranm
2ed5bc5195 Kieran Mansley - kjm25@cam.ac.uk - 12th September 2004
Applied patch from Sam Jansen as detailed in
http://lists.gnu.org/archive/html/lwip-users/2004-07/msg00106.html
to correctly handle retransmission after a retransmission timeout
2004-09-12 16:34:06 +00:00
kieranm
fae1397468 Rename lwip_chksum and add LWIP_CHKSUM macro so that ports can "override" the standard implementation with one of their own. 2004-09-12 16:17:58 +00:00
kieranm
e871548772 Fixed typo (missing "{") in previous checkin 2004-09-12 16:03:54 +00:00
kieranm
a3d27e30e0 Add TCP_SEQ_BETWEEN macro for comparing a range of sequence numbers 2004-09-12 15:56:12 +00:00
likewise
b9ebcd7738 Ingress TCP keep-alive with garbage byte support. 2004-08-17 09:32:31 +00:00
softins
1fa0d66f15 Stop compiler complaining of empty if statement when LWIP_DEBUGF() empty. 2004-07-27 16:08:26 +00:00
softins
4680307a34 Stop compiler complaining of empty if statement when LWIP_DEBUGF() empty.
Close an unclosed comment.
2004-07-27 16:08:05 +00:00
softins
1da6c35a6d Added a couple of casts to quiet the compiler.
No need to test isascii(c) before isdigit(c) or isxdigit(c).
2004-07-27 14:43:58 +00:00
likewise
7c427a4dce Made some comments more explicit. 2004-07-25 23:41:01 +00:00
likewise
c2abae538b pbuf_free() assert triggered by NULLified inseg.p. Reported by Karl Jeacle on 25-7-2004 on lwip-users. 2004-07-25 23:17:07 +00:00
kieranm
eb69032773 Kieran Mansley - kjm25@cam.ac.uk - 23rd July 2004
Now handle CLOSED state in tcp_close() explicitely, and free the pcb.
This is for the case that a pcb has been allocated but never used (so
is in the default "CLOSED" state) and needs to be freed.
2004-07-23 13:07:00 +00:00
likewise
fb5452910f I hate it when it takes twice to fix a typo 2004-07-22 22:10:17 +00:00
likewise
a6d37fcb25 Removed copy-paste errors. 2004-07-22 22:07:00 +00:00
likewise
786cbee510 Support for learning DNS servers through DHCP. 2004-07-22 21:56:09 +00:00
softins
a4f5673ff3 Small corrections to some debugging statements, to pacify compiler. 2004-07-22 08:06:00 +00:00
softins
1121f2b7f7 Made data types consistent in inet_ntoa().
Added casts for return values of checksum routines, to pacify compiler.
2004-07-22 08:03:02 +00:00
softins
d7699ca81d Changed debug statements to use the tidier ip4_addrN() macros. 2004-07-21 09:23:11 +00:00
likewise
58b64d42f1 Additional fix for TCP retransmit fix (as discussed by Sam Jansen en Kieran Mansley on lwip-devel, July 13 2004). 2004-07-14 23:21:53 +00:00
likewise
a6ab0405ea Disabled some code by #if 0 #endif rather than /* */. 2004-07-14 23:19:08 +00:00
kieranm
8273b54108 Kieran Mansley - 14th July 2004
* Only move a single segment from the unacked queue to the unsent queue when performing a retransmit
2004-07-14 09:48:27 +00:00
kieranm
c356f560e8 Kieran Mansley - 14th July 2004
* Fixed whitespace indenting in parts of tcp_in.c
 * Changed adjustment of ssthresh in response to fast retransmit
 * Commented out iteration of unsent list when new ACK received as we no longer put all unacked data on unsent list when retransmitting
2004-07-14 09:45:01 +00:00
likewise
7524893802 Dependencies on C library memset() etc., so include <string.h>. 2004-07-04 23:43:38 +00:00
likewise
07f52b4b96 Fixed compile errors. 2004-06-30 22:14:03 +00:00
likewise
0be3598990 Style fixes. 2004-06-30 18:42:54 +00:00
likewise
c3284c30cd Make restarting() DHCP on on interface more robust by cleaning old state information. 2004-06-30 18:42:33 +00:00
likewise
31c1e72b8c ip_forward() returns netif on which packet was forwarded. 2004-06-30 18:39:17 +00:00
likewise
d11fcafad8 Added netif up/down basics. 2004-06-30 18:38:07 +00:00
kieranm
27c6d299cf Kieran Mansley - kjm25@cam.ac.uk - 30th May 2004
* Fixed bug #9160 after discussion on mailing list
 - alters use of MEM_ALIGN_SIZE in pbuf_alloc when calling mem_malloc for a PBUF_RAM pbuf
2004-05-30 14:04:30 +00:00
kieranm
450dd65165 Kieran Mansley - kjm25@cam.ac.uk - 26th May 2004
* Fixed bug 9076 (changes to pbuf tot_len and seg dataptr when trimming front edge of a received packet)
2004-05-26 10:04:15 +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
e84cc8c0ad Remember head of queue in pbuf_queue() iff PBUF_DEBUG to generate senseful debug report. 2004-05-05 14:28:41 +00:00
likewise
5e13b9528d Adpated comments to match Doxygen/JavaDoc style. 2004-05-05 14:12:28 +00:00
likewise
8bb3cab9d2 Adpated comments to match Doxygen/JavaDoc style. 2004-05-05 13:28:44 +00:00
likewise
ed201c35d2 Made raw_input() more generic allowing multiple matches until someone eats the packet. 2004-05-05 13:27:27 +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
a5148c14a1 Fixed use of struct ip_addr in DHCP header. 2004-04-30 01:00:21 +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
8f309a3fec Clean-up source comment documentation for Doxygen. 2004-04-29 21:50:39 +00:00
likewise
1fe4edbe1c Fix buggy comment. 2004-04-29 21:49:12 +00:00
likewise
fe1696cef7 Clean-up source comment documentation for Doxygen. 2004-04-29 21:48:31 +00:00
likewise
de2e311e6e Updated documentation. 2004-04-28 23:40:53 +00:00
likewise
384fb3c353 Corrected comparison by adding missing parentheses. 2004-04-28 23:36:39 +00:00
likewise
e2b0c6c702 Fixed a cast. 2004-04-28 23:18:57 +00:00
likewise
5b12c61a81 Removed old broadcast check macro. 2004-04-28 23:18:20 +00:00
likewise
237b5a2467 Fix in the ip_addr_isbroadcast() check. 2004-04-23 16:45:06 +00:00
likewise
d91b54882a Fixed #ifdef LWIP_DHCP to #if LWIP_DHCP. 2004-04-16 22:36:48 +00:00
likewise
9106a1f2d5 Fixed #ifdef LWIP_DHCP position. Fixed extranous comma in function arguments. 2004-04-16 22:34:25 +00:00
jani
d27448da8a fix up stats_display which was added in previous commit 2004-03-26 12:47:57 +00:00
jani
d36b723056 fix SO_REUSE ifdef fixes 2004-03-26 12:40:58 +00:00
kieranm
2c8aa6f6f4 Kieran Mansley - kjm25@cam.ac.uk - 23rd March 2003
- Changed all #ifdef SO_REUSE into #if SO_REUSE
2004-03-23 19:33:53 +00:00
likewise
6f7c8fb355 Made #ifdef's into #if's for SO_REUSE. 2004-03-23 00:19:38 +00:00