adamdunkels
d73124cc5e
Bugfix: there was a problem with TCP segments not being properly retransmitted for protosockets-based applications. Cleaning up the logic around acknowledgements and retransmissions fixed the bugs pertaining to retransmissions of lost packets. This bugfix affects both the telnet server and the web server (which now work as expected wrt packet loss).
2008-10-31 18:10:24 +00:00
nvt-se
afeedb1f2b
fixed compiler warnings that were introduced with the new reserve function.
2008-10-29 15:36:21 +00:00
nvt-se
e15fbdbd40
allow duplicate reservations when flushing the log.
2008-10-28 14:47:50 +00:00
nvt-se
f05ccac0a7
documented the extra Coffee functions.
2008-10-21 13:39:56 +00:00
nvt-se
b591bb1b72
read as much as possible, even when reading log records.
2008-10-21 13:26:24 +00:00
adamdunkels
f623b81d59
Temporarily out-commented the problematic code and added a comment that describes the problem
2008-10-17 14:40:16 +00:00
nvt-se
7d07a7f65d
prohibit 0-sized log entries.
2008-10-16 13:17:27 +00:00
nvt-se
8bb7e37baf
- new log semantics: read the previous log entry only if the new one doesn't completely overshadow it.
...
- bug fix: prohibit file reservations with names that already exist.
2008-10-16 12:54:36 +00:00
nvt-se
77c72f4588
improved log write semantics on configured logs.
2008-10-16 09:58:57 +00:00
mdurvy
75f036f698
uncommented the remove of the router (necessary for compliance)
2008-10-16 09:07:43 +00:00
blakelev
99f6932cdf
Removed one line to prevent the default router from being removed
...
prematurely. This timer should not time out, but it does.
2008-10-15 23:29:38 +00:00
nvt-se
0a6ae9b7aa
fixed documentation typos
2008-10-15 14:17:28 +00:00
nvt-se
ccd492f687
sanity check on configure_log parameters
2008-10-15 13:57:30 +00:00
adamdunkels
adc57729c3
struct uip_udp_conn should be declared even if UIP_UDP is zero (it does not add any extra code)
2008-10-15 08:56:44 +00:00
adamdunkels
e931260603
Added more curly brackets to ensure ANSI C compliance when UIP_TCP is defined;
2008-10-15 08:52:30 +00:00
adamdunkels
6a3565f5b6
Added an #if around the whole code if IPv6 is defined
2008-10-15 08:08:32 +00:00
adamdunkels
91910f82dd
added curly brackets to ensure ANSI C compliance when UIP_TCP is defined; some automatic whitespace removal
2008-10-15 07:59:34 +00:00
adamdunkels
647443cb9d
Added payload field to ICMP v4 header that was inadvertedly removed during the uIPv6 commits; automatic whitespace removal at line ends
2008-10-15 07:55:00 +00:00
julienabeille
2238f2e7da
Debugged autoconf for ethernet
2008-10-14 16:50:11 +00:00
julienabeille
4f9bc05f90
ping-ipv6 example compiles on native cygwin
2008-10-14 13:39:12 +00:00
nvt-se
b693690fbe
added parameter descriptions
2008-10-14 13:27:55 +00:00
nvt-se
775b8b4ae5
fixed documentation typos.
2008-10-14 12:46:39 +00:00
adamdunkels
fc1a8575d6
Removed unused include files (also automatically removed whitespace from line endings)
2008-10-14 12:26:18 +00:00
julienabeille
2e8264010b
Main uIPv6 files addition - more
2008-10-14 09:42:33 +00:00
julienabeille
f95cdc5abb
Main uIPv6 files addition
2008-10-14 09:40:56 +00:00
nvt-se
10639bc982
use abstract types for offsets and pages so that we can easily port it to
...
very large or small memories.
2008-10-03 19:27:28 +00:00
nvt-se
ebeb0b1452
use unsigned long since clock_seconds() returns that.
2008-10-02 15:04:37 +00:00
nvt-se
87a136d33a
a timer of seconds
2008-10-02 10:17:48 +00:00
joxe
193bbc9ffa
fixed energest to always add positive values and to use all bits, removed energest arch
2008-09-29 11:44:37 +00:00
joxe
673d73bfa3
added energest on all parts of leds API and some cleanup
2008-09-29 11:35:28 +00:00
nvt-se
7f3e81f5d3
fixed file descriptor leakage and erroneous flag setting.
2008-09-21 16:07:26 +00:00
nvt-se
9e7add658b
corrected assignments.
2008-09-21 15:30:51 +00:00
nvt-se
ac6ce4cbf1
increased sequential read performance by eliminating a header reading.
2008-09-21 15:01:48 +00:00
nvt-se
4b6abd4fb7
bug fixes:
...
- close all file descriptors after formatting.
- do not increase file size when flushing the log.
- make sure that the fd is positive in FD_VALID.
2008-09-21 12:49:08 +00:00
adamdunkels
f127b3e24c
Added a timer_remaining() function that returns the time until the timer expires
2008-09-21 08:58:05 +00:00
adamdunkels
7b238a91af
Don't turn on the radio on after sending a broadcast
2008-09-04 17:44:01 +00:00
nvt-se
195062416e
corrected parameter type
2008-08-28 14:32:53 +00:00
nvt-se
86bce2636d
fixed bug with eof hint
2008-08-28 14:31:10 +00:00
nvt-se
f122654317
the isolated flag must have higher precedence than the obsolete flag
2008-08-28 12:50:09 +00:00
adamdunkels
45e2f10989
Constness
2008-08-26 21:46:06 +00:00
adamdunkels
6a460fecdd
There is problem with the CC2420 driver: under high traffic load the packets often get mangled in the receive FIFO. Not sure why this happens or how to best prevent it. As a temporary workaround, I've added an additional CRC16 check to the incoming packets. This eats two bytes from each packet, but at least protects against the erroneous packets we've seen quite a few of lately. The reception code was also cleaned up, which resulted in a smaller code size.
2008-08-26 21:44:03 +00:00
nvt-se
e483f335ce
activated EOF hints and fixed a bug in the garbage collector.
2008-08-25 09:57:38 +00:00
adamdunkels
c6c11d1245
2.2 -> 2.2.1
2008-08-18 08:40:16 +00:00
nvt-se
8b7e743921
Enforce the number of pages in a sector to be a power of two.
2008-08-15 22:38:43 +00:00
adamdunkels
a6148ac3d0
Moved unused code to backyard
2008-08-15 19:57:13 +00:00
adamdunkels
41dcd78c8b
Improved debugging output
2008-08-15 19:28:33 +00:00
adamdunkels
9324dc1e7d
Hardy Griech's timer bugfix: avoid direct comparison for timer values since they may wrap. Instead, use the CLOCK_LT() that works correctly even for wrapped timers.
2008-08-15 19:16:09 +00:00
adamdunkels
2f81a0463a
Moved unused malloc code to backyard directory
2008-08-15 19:05:16 +00:00
adamdunkels
31509ad726
Fixed a bunch of bugs in the collection neighbor announcement/discovery code: neighbor announcments were not repeated unless there was a change in the ETX val. Neighbor announcements happened to often when there were changes in the ETX.
2008-08-15 19:00:38 +00:00
adamdunkels
210782d9c6
Set the channel as a packet attribute
2008-08-15 18:59:22 +00:00
nvt-se
c36a0a33fc
Improved the performance of the garbage collector and the algorithm for
...
finding contiguous pages.
Adjusted the file header and added a validity indicator.
Removed some redundant code and fixes minor issues in the text.
2008-08-15 12:34:56 +00:00
nvt-se
2b68f88e77
moved platform independent definitions
2008-07-11 21:39:26 +00:00
nvt-se
e8a85b3726
moved platform independent code to the right place
2008-07-11 21:35:10 +00:00
adamdunkels
4875d5926d
Added CCIF to make clock_seconds() function name visible for win32
2008-07-10 17:09:32 +00:00
adamdunkels
3cef1046c9
2.1 -> 2.2
2008-07-09 23:04:43 +00:00
adamdunkels
8835868590
Moved to core/net/rime long ago...
2008-07-09 22:14:34 +00:00
adamdunkels
4fe5b37d87
Added debugging statements
2008-07-09 20:56:25 +00:00
adamdunkels
9a4e5dfabf
Rewrote the neighbor discovery code so that messages are suppressed if a lower rtmetric is received. This reduces the overall number of broadcast packets.
2008-07-09 09:33:58 +00:00
adamdunkels
9318117429
Fixed function prototype compiler warning
2008-07-08 10:59:31 +00:00
adamdunkels
f58b387bd3
Code style fixes
2008-07-08 08:23:47 +00:00
adamdunkels
e04e49999d
Added a clock_seconds() function prototype to core/sys/clock.h, that returns seconds in 32 bit format.
2008-07-07 23:38:46 +00:00
adamdunkels
ba5c18a468
Rewrote the trickle code to run directly over the broadcast primitive: the previous implementation did not work as expected, because packets were not supressed correctly by the previous underlying netflood primitive
2008-07-07 23:29:30 +00:00
adamdunkels
df33cb6e16
Only send ACK if it was possible to allocate a queuebuf to hold the data packet.
2008-07-07 23:27:57 +00:00
adamdunkels
4d35b905d3
Bugfix: check should cover min(hdrsize, datalen), not max
2008-07-07 23:27:05 +00:00
adamdunkels
c0c26262c4
No need to send strobes for broadcast packets: just send the actual packet instead
2008-07-07 23:25:12 +00:00
adamdunkels
35261f5208
Added a function for computing the CRC16 over a portion of data
2008-07-07 23:24:36 +00:00
oliverschmidt
5ac52ec4d1
Added VC++ compatibility.
2008-07-06 11:08:07 +00:00
nvt-se
671f5c6393
Major performance boost to directory listings and non-cached file openings.
2008-07-04 02:54:30 +00:00
nvt-se
45c6d92377
exclude log files from directory list
2008-07-03 23:50:54 +00:00
nvt-se
3fc9c96ac2
should be comparison, not assignment
2008-07-03 23:41:28 +00:00
adamdunkels
985fb009bf
Rename static function log2 to ilog2 to avoid clashes (and compiler warnings) with built-in function called log2
2008-07-03 23:40:12 +00:00
adamdunkels
1f005b6299
Moved energest.{c,h} from core/lib to core/sys: power profiling is a system mechanism, not a library
2008-07-03 23:36:30 +00:00
nvt-se
8f64a71362
Simplified file finding code.
...
Renamed fd_set to coffee_fd_set in order to avoid name clash on the native
platform.
2008-07-03 23:29:58 +00:00
adamdunkels
cfcdac3122
Avoid crashing if Rime/Chameleon is not initialized when Rime code is run
2008-07-03 23:13:31 +00:00
adamdunkels
51f4ab8b2c
Changed type from off_t (that potentially conflicts with existing types.h typedefs) to unsigned long
2008-07-03 23:12:10 +00:00
nvt-se
379b09d576
Fixed bug that occured after the node had been rebooted.
2008-07-03 22:59:10 +00:00
adamdunkels
4687c2c948
Renamed Rime module mh to multihop
2008-07-03 22:36:02 +00:00
adamdunkels
d9b3097037
Renamed Rime nf module to netflood
2008-07-03 22:25:22 +00:00
adamdunkels
ec22f3c2fc
Renamed Rime nf module to netflood
2008-07-03 22:02:09 +00:00
adamdunkels
c2c3835110
Changed name of Rime module ruc to unicast
2008-07-03 21:52:25 +00:00
adamdunkels
eddf71f534
Changed name of suc module to stunicast
2008-07-03 21:35:46 +00:00
adamdunkels
8a1ed696d9
Slightly nicer formatting
2008-07-03 21:34:12 +00:00
adamdunkels
a6682c4bfd
originator address is const
2008-07-03 17:58:10 +00:00
adamdunkels
f274b26588
Added CC_CONST_FUNCTION as a work-around to the sdcc const function pointer bug
2008-07-03 07:38:52 +00:00
adamdunkels
040d65c1f6
Added missing #include sys/cc.h to make system compile
2008-07-03 07:37:51 +00:00
nvt-se
65ec55e68f
call watchdog_periodic in potentially long-running loops
2008-07-02 15:18:43 +00:00
matsutsuka
d194d54e8e
CC_CONST_FUNCTION replaces some const keywords in order to workaround a sdcc bug, which cannot handle function pointers as const.
2008-07-02 15:02:33 +00:00
adamdunkels
05454ce929
Documentation bugfix
2008-07-02 14:10:28 +00:00
nvt-se
7e4bab3cc8
turned off debugging by default
2008-07-02 12:06:02 +00:00
nvt-se
26716fe7a1
added formatting function and made code style compliant
2008-07-02 11:11:13 +00:00
adamdunkels
66876625d4
Changed name of the simple-cc2420 module to cc2420: changed all function names and variable names from simple_cc2420_* to cc2420_*.
2008-07-02 09:05:40 +00:00
adamdunkels
6b187328bd
Added AES cipher constants
2008-07-02 09:03:49 +00:00
nifi
1cef019e78
Fixed typo.
2008-07-02 09:02:39 +00:00
adamdunkels
1da58b8858
Functions for interfacing the built-in AES functions of the CC2420 chip
2008-07-02 08:46:13 +00:00
adamdunkels
3847448496
Added configuration option to circumvent C compilers that have problems with const function pointers (i.e., sdcc)
2008-07-02 08:35:29 +00:00
adamdunkels
1586d8f36f
Changed filename of the CC2420 driver from simple-cc2420 to cc2420.
2008-07-01 21:02:51 +00:00
adamdunkels
c802151453
Removed unused files
2008-07-01 20:13:24 +00:00
adamdunkels
7054083d88
Reverted mistakenly added #include for non-existant file
2008-06-30 20:00:53 +00:00
adamdunkels
1d1ab90642
Added rimebuf attributes for RSSI, timestamp, and network ID (used for e.g. 802.15.4 PAN ID)
2008-06-30 19:57:10 +00:00
adamdunkels
651a374eca
Removed unused sibc module
2008-06-30 19:56:08 +00:00
adamdunkels
020a0c30aa
Rewrote the collect module to use packet attributes instead of explicit headers
2008-06-30 09:15:22 +00:00
adamdunkels
6bbb99438e
Cleaned up Rime makefile - removed sibc, changed name of sabc to stbroadcast
2008-06-30 08:29:32 +00:00
adamdunkels
e6079870fe
Changed name of the sabc module to stbroadcast
2008-06-30 08:28:53 +00:00
adamdunkels
1093a8fe28
Added name to mac structure. Do not turn radio on when sending a broadcast packet. Changed default off time to half a second.
2008-06-30 08:10:02 +00:00
adamdunkels
247de015b5
added name to mac structure
2008-06-30 08:09:17 +00:00
adamdunkels
c9528fb010
Added name, made default listen time shorter
2008-06-30 08:08:59 +00:00
adamdunkels
a7dfa95551
Added a 'name' field in the mac structure, which allows boot-up code to print out the name of the currently selected MAC protocol
2008-06-30 08:08:27 +00:00
adamdunkels
4349504219
Bugfix: fixed the missing arguments to make Rime compile
2008-06-27 16:44:58 +00:00
nifi
839b6111d6
Changed send function to return false if it was not possible to send
2008-06-26 11:38:59 +00:00
adamdunkels
63c620303a
Changed the 'ibc' and 'uc' Rime modules into the more descriptive names 'broadcast' and 'unicast'
2008-06-26 11:19:22 +00:00
nifi
d76474bc13
Changed energest_type_time() to first update the total time, if the device
...
is currently active, before returning the total time.
Added energest_flush() that updates the total time for all currently
active devices. It should be called periodically to avoid the time to
overflow for devices that are active for long periods of time.
2008-06-02 13:12:07 +00:00
adamdunkels
41f2443c02
Removed old unused documentation that messed up Doxygen
2008-05-27 14:00:09 +00:00
oliverschmidt
a5fcfa2787
I seem to remember that we wanted to avoid ignoring gcc warnings that might trigger errors with other compilers ;-)
2008-05-16 21:31:57 +00:00
adamdunkels
532692e5a0
Removed reference to non-existant function rimebuf_attr_isset()
2008-05-16 15:04:10 +00:00
adamdunkels
8ea461b039
Changed on time to work with the current default tick time on the sky platform
2008-05-15 08:59:48 +00:00
adamdunkels
dbab9fbdb5
A quick, initial implementation of the LPP power-saving MAC protocol (Musaloiu-E et al, IPSN 2008)
2008-05-15 08:56:29 +00:00
adamdunkels
6709823d4a
Bugfix: energy estimation was not correct if a packet was sent when the radio was not in listen mode
2008-05-14 19:44:30 +00:00
adamdunkels
1feb4fe3cb
Removed call to tcpip_set_forwarding() - the UIP_CONF_IP_FORWARDING configuration option is used instead
2008-05-14 19:20:28 +00:00
adamdunkels
31ea41d8db
Changed the name of UIP_CONF_TCP_FORWARD to UIP_CONF_IP_FORWARD since forwarding is done at the IP level
2008-05-14 19:19:28 +00:00
nvt-se
63a8390f51
no debugging printouts by default
2008-05-14 14:02:48 +00:00
nvt-se
92649bedce
A flash file system for sensor nodes.
2008-04-28 10:33:14 +00:00
joxe
7722a73abf
modified API for fft
2008-04-25 22:12:25 +00:00
nifi
fe4f8f4339
clear attributes when clearing buffer
2008-04-03 09:07:28 +00:00
nifi
f187981cd6
Fixed type offset bug in rimebuf_addr() and removed unused type for attributes and addresses. Replaced memcpy with loop.
2008-04-02 14:49:21 +00:00
nifi
8d47324d8f
fixed typo
2008-04-01 13:22:59 +00:00
nifi
fabe4393f7
fixed alignment problem with rime/chameleon
2008-04-01 13:10:22 +00:00
oliverschmidt
59145615b0
Changed packet forwarding from a runtime option to a compiletime option. This avoids pulling in uip-fw.o if forwarding isn't required (saves > 1400 bytes on 6502 targets).
...
*** This change breaks all platforms calling tcpip_set_forwarding() ! These calls were intentionally not removed as they need to be replaced by setting the new compiletime option UIP_CONF_TCP_FORWARD - which should be done by the platform owners. ***
2008-03-29 15:19:25 +00:00
oliverschmidt
5d910d643e
Set directory entry size if available in some dirent field. Currently for the Apple2 only.
2008-03-29 13:54:56 +00:00
joxe
918616a1bf
initial/alpha version of integer fft
2008-03-27 12:12:24 +00:00
adamdunkels
5901bf977a
Changed assignment to explicit copy to enable compilation with SDCC
2008-03-20 09:40:31 +00:00
fros4943
7fcb9554f4
added timetable aggregate reset function
2008-03-13 14:27:34 +00:00
adamdunkels
39c85118d8
Ensure that header_module is != NULL before calling it. Define and print headers only if DEBUG is set.
2008-03-03 20:20:33 +00:00
oliverschmidt
aa7ba44fb1
Avoided compiler warning.
2008-02-28 23:59:05 +00:00
oliverschmidt
2b24ec3189
The cc65 compiler has a bug that doesn't allow to initialize an automatic struct with references to automatic variables. Therefore I changed the timetable used for measuring the timestamping time from automatic to static - which wastes some bytes in the data segment. If this isn't generally acceptable then an #ifdef __CC65__ seems to be the appropriate approach.
2008-02-28 22:43:40 +00:00
oliverschmidt
20dc5ee52f
Adjusted tabs.
2008-02-28 22:11:30 +00:00
oliverschmidt
edbae75705
Stick to CC_INLINE.
2008-02-28 21:25:34 +00:00
fros4943
cefaa38581
-debugging output
2008-02-27 10:39:17 +00:00
adamdunkels
a0c833da11
Mistakenly included development code in the Makefile target
2008-02-25 13:22:34 +00:00
adamdunkels
412facb831
This is an initial commit of an implementation of the Chameleon
...
architecture for the Rime stack for Contiki. The Chameleon
architecture separates the header processing from the Rime protocol
logic. Instead of having each protocol create its own part of the
packet header, protocols use packet attributes. Before sending a
packet, a special Chameleon header processing module creates a packet
header from the packet attributes. The same Chameleon module parses
incoming packets and creates packet attributes from the header.
The details are in our SenSys 2007 paper:
Adam Dunkels, Fredrik Osterlind, Zhitao He. An Adaptive Communication
Architecture for Wireless Sensor Networks. In Proceedings of the Fifth
ACM Conference on Networked Embedded Sensor Systems (SenSys 2007),
Sydney, Australia, November 2007.
http://www.sics.se/~adam/dunkels07adaptive.pdf
This is a rewrite of the code that was developed for the paper.
2008-02-25 02:14:34 +00:00
adamdunkels
39abed8672
Moved old CC2420 driver to the backyard
2008-02-24 22:29:08 +00:00
adamdunkels
974870359a
Changed all occurences of u8_t and u16_t to uint8_t and uint16_t
2008-02-24 22:10:30 +00:00
adamdunkels
d99ca27820
Changed all occurences of u8_t and u16_t to uint8_t and uint16_t
2008-02-24 22:05:27 +00:00
adamdunkels
3c1b0f4e65
Debug output slightly improved
2008-02-24 21:09:08 +00:00
adamdunkels
16c715aade
Updated collect_open() definiton to match prototype declaration
2008-02-24 21:08:37 +00:00
adamdunkels
be1dd57cb3
Stopping watchdog before sending packets to allow for wait times longer than 1 second. Reduced default on time to 5 ms. Added option for turning off X-MAC but keeping the radio turned on.
2008-02-24 21:07:28 +00:00
adamdunkels
32a3fa5d4a
Added parameter to the mac off() method that specifies whether or not the radio should be turned off when the MAC layer is turned off
2008-02-24 21:05:28 +00:00
adamdunkels
436d1f25eb
Added a configuration option for using u32 in the uip_ip4addr_t structure: UIP_CONF_UIP_IP4ADDR_T_WITH_U32
2008-02-24 21:04:15 +00:00
adamdunkels
8c782de931
Ensure that no more data than can be held by the buffer is sent with uip_send()
2008-02-24 21:03:24 +00:00
adamdunkels
49bc31236e
Improved debug output
2008-02-24 21:02:09 +00:00
adamdunkels
af48b648ee
Added a function that gets called when we see SLIP input. This function can be used to determine if a node is a SLIP gateway or not.
2008-02-24 21:00:53 +00:00