[doc] Give files a common structure by placing license first (partial)
Followed by doxyen file and group tags. This patch is only a first attempt to make provide a clean structure, many more files require rework, too.
This commit is contained in:
parent
b0206e2f58
commit
85b494c16b
|
@ -1,17 +1,3 @@
|
|||
/**
|
||||
* \file
|
||||
* The program handler, used for loading programs and starting the
|
||||
* screensaver.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The Contiki program handler is responsible for the Contiki menu and
|
||||
* the desktop icons, as well as for loading programs and displaying a
|
||||
* dialog with a message telling which program that is loading.
|
||||
*
|
||||
* The program handler also is responsible for starting the
|
||||
* screensaver when the CTK detects that it should be started.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -46,6 +32,20 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The program handler, used for loading programs and starting the
|
||||
* screensaver.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The Contiki program handler is responsible for the Contiki menu and
|
||||
* the desktop icons, as well as for loading programs and displaying a
|
||||
* dialog with a message telling which program that is loading.
|
||||
*
|
||||
* The program handler also is responsible for starting the
|
||||
* screensaver when the CTK detects that it should be started.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup shell
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -41,6 +36,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup shell
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "shell.h"
|
||||
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
/** \addtogroup servreghack
|
||||
* @{ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -40,6 +37,9 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/** \addtogroup servreghack
|
||||
* @{ */
|
||||
|
||||
#include "contiki.h"
|
||||
#include "contiki-lib.h"
|
||||
#include "contiki-net.h"
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/** \addtogroup apps
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup servreghack A service registration and diseemination hack
|
||||
* @{
|
||||
*
|
||||
* This application is a quick'n'dirty hack for registering,
|
||||
* disseminating, and looking up services. A service is identified by
|
||||
* an 8-bit integer between 1 and 255. Integers below 128 are reserved
|
||||
* for system services.
|
||||
*
|
||||
* A service is registered with the function
|
||||
* servreg_hack_register(). Registered services will be transmitted to
|
||||
* all neighbors that run the servreg-hack application. These will in
|
||||
* turn resend the registration to their neighbors.
|
||||
*
|
||||
* Services from neighbors are stored in a local table. Services
|
||||
* stored in the table can be looked up using a combination of the
|
||||
* servreg_hack_list() and servreg_hack_item_match() functions.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -60,6 +37,29 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/** \addtogroup apps
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup servreghack A service registration and diseemination hack
|
||||
* @{
|
||||
*
|
||||
* This application is a quick'n'dirty hack for registering,
|
||||
* disseminating, and looking up services. A service is identified by
|
||||
* an 8-bit integer between 1 and 255. Integers below 128 are reserved
|
||||
* for system services.
|
||||
*
|
||||
* A service is registered with the function
|
||||
* servreg_hack_register(). Registered services will be transmitted to
|
||||
* all neighbors that run the servreg-hack application. These will in
|
||||
* turn resend the registration to their neighbors.
|
||||
*
|
||||
* Services from neighbors are stored in a local table. Services
|
||||
* stored in the table can be looked up using a combination of the
|
||||
* servreg_hack_list() and servreg_hack_item_match() functions.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef SERVREG_HACK_H
|
||||
#define SERVREG_HACK_H
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup shell
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup shell
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "contiki-lib.h"
|
||||
|
||||
|
|
|
@ -1,23 +1,3 @@
|
|||
/** \addtogroup apps
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup shell The Contiki shell
|
||||
* @{
|
||||
*
|
||||
* The Contiki shell provides both interactive and batch processing
|
||||
* for Contiki.
|
||||
*
|
||||
* The shell consists of two parts: the shell application and a shell
|
||||
* back-end. The shell application contains all the logic of the
|
||||
* shell, whereas the shell back-end provides I/O for the
|
||||
* shell. Examples of shell back-ends are a serial I/O shell back-end,
|
||||
* that allows the shell to operate over a serial connection, and a
|
||||
* telnet server back-end, that allows the shell to operate over a
|
||||
* TCP/IP telnet connection.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -57,6 +37,26 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/** \addtogroup apps
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup shell The Contiki shell
|
||||
* @{
|
||||
*
|
||||
* The Contiki shell provides both interactive and batch processing
|
||||
* for Contiki.
|
||||
*
|
||||
* The shell consists of two parts: the shell application and a shell
|
||||
* back-end. The shell application contains all the logic of the
|
||||
* shell, whereas the shell back-end provides I/O for the
|
||||
* shell. Examples of shell back-ends are a serial I/O shell back-end,
|
||||
* that allows the shell to operate over a serial connection, and a
|
||||
* telnet server back-end, that allows the shell to operate over a
|
||||
* TCP/IP telnet connection.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef SHELL_H_
|
||||
#define SHELL_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup cfs
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science
|
||||
* All rights reserved.
|
||||
|
@ -35,6 +30,11 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup cfs
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef CFS_COFFEE_H
|
||||
#define CFS_COFFEE_H
|
||||
|
||||
|
|
|
@ -1,27 +1,3 @@
|
|||
/**
|
||||
* \addtogroup sys
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup cfs The Contiki file system interface
|
||||
*
|
||||
* The Contiki file system interface (CFS) defines an abstract API for
|
||||
* reading directories and for reading and writing files. The CFS API
|
||||
* is intentionally simple. The CFS API is modeled after the POSIX
|
||||
* file API, and slightly simplified.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CFS header file.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -55,6 +31,31 @@
|
|||
* Author: Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CFS header file.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup sys
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup cfs The Contiki file system interface
|
||||
*
|
||||
* The Contiki file system interface (CFS) defines an abstract API for
|
||||
* reading directories and for reading and writing files. The CFS API
|
||||
* is intentionally simple. The CFS API is modeled after the POSIX
|
||||
* file API, and slightly simplified.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef CFS_H_
|
||||
#define CFS_H_
|
||||
|
||||
|
|
|
@ -1,19 +1,3 @@
|
|||
/**
|
||||
* \addtogroup ctk
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CTK screen drawing module interface, ctk-draw.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* This file contains the interface for the ctk-draw module.The
|
||||
* ctk-draw module takes care of the actual screen drawing for CTK by
|
||||
* implementing a handful of functions that are called by CTK.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -48,6 +32,22 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup ctk
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CTK screen drawing module interface, ctk-draw.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* This file contains the interface for the ctk-draw module.The
|
||||
* ctk-draw module takes care of the actual screen drawing for CTK by
|
||||
* implementing a handful of functions that are called by CTK.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef CTK_DRAW_H_
|
||||
#define CTK_DRAW_H_
|
||||
|
||||
|
|
|
@ -1,18 +1,3 @@
|
|||
/**
|
||||
* \defgroup ctk CTK graphical user interface
|
||||
*
|
||||
* The Contiki Toolkit (CTK) provides the graphical user interface for
|
||||
* the Contiki system.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The Contiki Toolkit CTK, the Contiki GUI.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -47,6 +32,21 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The Contiki Toolkit CTK, the Contiki GUI.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup ctk CTK graphical user interface
|
||||
*
|
||||
* The Contiki Toolkit (CTK) provides the graphical user interface for
|
||||
* the Contiki system.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "contiki.h"
|
||||
|
|
|
@ -1,17 +1,3 @@
|
|||
/**
|
||||
* \addtogroup ctk
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CTK header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The CTK header file contains functioin declarations and definitions
|
||||
* of CTK structures and macros.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -46,6 +32,20 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* CTK header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The CTK header file contains functioin declarations and definitions
|
||||
* of CTK structures and macros.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup ctk
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef CTK_H_
|
||||
#define CTK_H_
|
||||
|
||||
|
|
|
@ -1,25 +1,3 @@
|
|||
/**
|
||||
* \addtogroup dev
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup eeprom EEPROM API
|
||||
*
|
||||
* The EEPROM API defines a common interface for EEPROM access on
|
||||
* Contiki platforms.
|
||||
*
|
||||
* A platform with EEPROM support must implement this API.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* EEPROM functions.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/* Copyright (c) 2004 Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
*
|
||||
|
@ -50,6 +28,27 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* EEPROM functions.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup dev
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup eeprom EEPROM API
|
||||
*
|
||||
* The EEPROM API defines a common interface for EEPROM access on
|
||||
* Contiki platforms.
|
||||
*
|
||||
* A platform with EEPROM support must implement this API.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef EEPROM_H_
|
||||
#define EEPROM_H_
|
||||
|
|
|
@ -1,17 +1,3 @@
|
|||
/**
|
||||
* \addtogroup dev
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup radio Radio API
|
||||
*
|
||||
* The radio API module defines a set of functions that a radio device
|
||||
* driver must implement.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -54,6 +40,20 @@
|
|||
* Nicolas Tsiftes <nvt@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup dev
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup radio Radio API
|
||||
*
|
||||
* The radio API module defines a set of functions that a radio device
|
||||
* driver must implement.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef RADIO_H_
|
||||
#define RADIO_H_
|
||||
|
||||
|
|
|
@ -1,25 +1,3 @@
|
|||
/** \addtogroup lib
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup crc16 Cyclic Redundancy Check 16 (CRC16) calculation
|
||||
*
|
||||
* The Cyclic Redundancy Check 16 is a hash function that produces a
|
||||
* checksum that is used to detect errors in transmissions. The CRC16
|
||||
* calculation module is an iterative CRC calculator that can be used
|
||||
* to cumulatively update a CRC checksum for every incoming byte.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the CRC16 calculcation
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, Swedish Institute of Computer Science
|
||||
* All rights reserved.
|
||||
|
@ -51,6 +29,29 @@
|
|||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the CRC16 calculcation
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/** \addtogroup lib
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup crc16 Cyclic Redundancy Check 16 (CRC16) calculation
|
||||
*
|
||||
* The Cyclic Redundancy Check 16 is a hash function that produces a
|
||||
* checksum that is used to detect errors in transmissions. The CRC16
|
||||
* calculation module is an iterative CRC calculator that can be used
|
||||
* to cumulatively update a CRC checksum for every incoming byte.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef CRC16_H_
|
||||
#define CRC16_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup list
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Linked list library implementation.
|
||||
*
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -44,6 +31,20 @@
|
|||
* Author: Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Linked list library implementation.
|
||||
*
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup list
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "lib/list.h"
|
||||
|
||||
#define NULL 0
|
||||
|
|
|
@ -1,37 +1,3 @@
|
|||
/** \addtogroup lib
|
||||
@{ */
|
||||
/**
|
||||
* \defgroup list Linked list library
|
||||
*
|
||||
* The linked list library provides a set of functions for
|
||||
* manipulating linked lists.
|
||||
*
|
||||
* A linked list is made up of elements where the first element \b
|
||||
* must be a pointer. This pointer is used by the linked list library
|
||||
* to form lists of the elements.
|
||||
*
|
||||
* Lists are declared with the LIST() macro. The declaration specifies
|
||||
* the name of the list that later is used with all list functions.
|
||||
*
|
||||
* Lists can be manipulated by inserting or removing elements from
|
||||
* either sides of the list (list_push(), list_add(), list_pop(),
|
||||
* list_chop()). A specified element can also be removed from inside a
|
||||
* list with list_remove(). The head and tail of a list can be
|
||||
* extracted using list_head() and list_tail(), respectively.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Linked list manipulation routines.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -65,6 +31,38 @@
|
|||
* Author: Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Linked list manipulation routines.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/** \addtogroup lib
|
||||
@{ */
|
||||
/**
|
||||
* \defgroup list Linked list library
|
||||
*
|
||||
* The linked list library provides a set of functions for
|
||||
* manipulating linked lists.
|
||||
*
|
||||
* A linked list is made up of elements where the first element \b
|
||||
* must be a pointer. This pointer is used by the linked list library
|
||||
* to form lists of the elements.
|
||||
*
|
||||
* Lists are declared with the LIST() macro. The declaration specifies
|
||||
* the name of the list that later is used with all list functions.
|
||||
*
|
||||
* Lists can be manipulated by inserting or removing elements from
|
||||
* either sides of the list (list_push(), list_add(), list_pop(),
|
||||
* list_chop()). A specified element can also be removed from inside a
|
||||
* list with list_remove(). The head and tail of a list can be
|
||||
* extracted using list_head() and list_tail(), respectively.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef LIST_H_
|
||||
#define LIST_H_
|
||||
|
||||
|
|
|
@ -1,18 +1,3 @@
|
|||
/**
|
||||
* \file
|
||||
* PETSCII/ASCII conversion functions.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The Commodore based Contiki targets all have a special character
|
||||
* encoding called PETSCII which differs from the ASCII encoding that
|
||||
* normally is used for representing characters.
|
||||
*
|
||||
* \note For targets that do not use PETSCII encoding the C compiler
|
||||
* define WITH_ASCII should be used to avoid the PETSCII converting
|
||||
* functions.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -46,6 +31,22 @@
|
|||
*
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* PETSCII/ASCII conversion functions.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* The Commodore based Contiki targets all have a special character
|
||||
* encoding called PETSCII which differs from the ASCII encoding that
|
||||
* normally is used for representing characters.
|
||||
*
|
||||
* \note For targets that do not use PETSCII encoding the C compiler
|
||||
* define WITH_ASCII should be used to avoid the PETSCII converting
|
||||
* functions.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef PETSCIICONV_H_
|
||||
#define PETSCIICONV_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/** \addtogroup lib
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup ringbuf Ring buffer library
|
||||
* @{
|
||||
*
|
||||
* The ring buffer library implements ring (circular) buffer where
|
||||
* bytes can be read and written independently. A ring buffer is
|
||||
* particularly useful in device drivers where data can come in
|
||||
* through interrupts.
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,20 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/** \addtogroup lib
|
||||
* @{ */
|
||||
|
||||
/**
|
||||
* \defgroup ringbuf Ring buffer library
|
||||
* @{
|
||||
*
|
||||
* The ring buffer library implements ring (circular) buffer where
|
||||
* bytes can be read and written independently. A ring buffer is
|
||||
* particularly useful in device drivers where data can come in
|
||||
* through interrupts.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef RINGBUF_H_
|
||||
#define RINGBUF_H_
|
||||
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup trickle-timer
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Trickle timer library implementation.
|
||||
* \author
|
||||
* George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2012, George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
* All rights reserved.
|
||||
|
@ -40,6 +28,19 @@
|
|||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Trickle timer library implementation.
|
||||
* \author
|
||||
* George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup trickle-timer
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki-conf.h"
|
||||
#include "lib/trickle-timer.h"
|
||||
#include "sys/ctimer.h"
|
||||
|
|
|
@ -1,3 +1,42 @@
|
|||
/*
|
||||
* Copyright (c) 2012, George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the copyright holder nor the names of its
|
||||
* contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Trickle timer library header file.
|
||||
*
|
||||
* \author
|
||||
* George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
*/
|
||||
|
||||
/** \addtogroup lib
|
||||
* @{ */
|
||||
|
||||
|
@ -29,45 +68,6 @@
|
|||
* @{
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Trickle timer library header file.
|
||||
*
|
||||
* \author
|
||||
* George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2012, George Oikonomou - <oikonomou@users.sourceforge.net>
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the copyright holder nor the names of its
|
||||
* contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef TRICKLE_TIMER_H_
|
||||
#define TRICKLE_TIMER_H_
|
||||
|
||||
|
|
|
@ -1,3 +1,43 @@
|
|||
/*
|
||||
* Copyright (c) 2005, Swedish Institute of Computer Science
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the Contiki ELF loader.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup loader
|
||||
* @{
|
||||
|
@ -32,45 +72,6 @@
|
|||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the Contiki ELF loader.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, Swedish Institute of Computer Science
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
#ifndef ELFLOADER_H_
|
||||
#define ELFLOADER_H_
|
||||
|
||||
|
|
|
@ -1,34 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uipdns uIP hostname resolver functions
|
||||
* @{
|
||||
*
|
||||
* The uIP DNS resolver functions are used to lookup a hostname and
|
||||
* map it to a numerical IP address. It maintains a list of resolved
|
||||
* hostnames that can be queried with the resolv_lookup()
|
||||
* function. New hostnames can be resolved using the resolv_query()
|
||||
* function.
|
||||
*
|
||||
* The event resolv_event_found is posted when a hostname has been
|
||||
* resolved. It is up to the receiving process to determine if the
|
||||
* correct hostname has been found by calling the resolv_lookup()
|
||||
* function with the hostname.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* DNS host name to IP address resolver.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
* \author Robert Quattlebaum <darco@deepdarc.com>
|
||||
*
|
||||
* This file implements a DNS host name to IP address resolver,
|
||||
* as well as an MDNS responder and resolver.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -62,6 +31,37 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* DNS host name to IP address resolver.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
* \author Robert Quattlebaum <darco@deepdarc.com>
|
||||
*
|
||||
* This file implements a DNS host name to IP address resolver,
|
||||
* as well as an MDNS responder and resolver.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uipdns uIP hostname resolver functions
|
||||
* @{
|
||||
*
|
||||
* The uIP DNS resolver functions are used to lookup a hostname and
|
||||
* map it to a numerical IP address. It maintains a list of resolved
|
||||
* hostnames that can be queried with the resolv_lookup()
|
||||
* function. New hostnames can be resolved using the resolv_query()
|
||||
* function.
|
||||
*
|
||||
* The event resolv_event_found is posted when a hostname has been
|
||||
* resolved. It is up to the receiving process to determine if the
|
||||
* correct hostname has been found by calling the resolv_lookup()
|
||||
* function with the hostname.
|
||||
*/
|
||||
|
||||
#include "net/ip/tcpip.h"
|
||||
#include "net/ip/resolv.h"
|
||||
#include "net/ip/uip-udp-packet.h"
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
/**
|
||||
* \file
|
||||
* uIP DNS resolver code header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -36,6 +30,13 @@
|
|||
*
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* uIP DNS resolver code header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
#ifndef RESOLV_H_
|
||||
#define RESOLV_H_
|
||||
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
/**
|
||||
* \addtogroup simple-udp
|
||||
* @{
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Copyright (c) 2011, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -43,6 +37,11 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup simple-udp
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki-net.h"
|
||||
#include "net/ip/simple-udp.h"
|
||||
|
||||
|
|
|
@ -1,18 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* \defgroup simple-udp
|
||||
*
|
||||
* The default Contiki UDP API is difficult to use. The simple-udp
|
||||
* module provides a significantly simpler API.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2011, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -52,6 +37,21 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* \defgroup simple-udp
|
||||
*
|
||||
* The default Contiki UDP API is difficult to use. The simple-udp
|
||||
* module provides a significantly simpler API.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef SIMPLE_UDP_H
|
||||
#define SIMPLE_UDP_H
|
||||
|
||||
|
|
|
@ -1,28 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup slip Serial Line IP (SLIP) protocol
|
||||
* @{
|
||||
*
|
||||
* The SLIP protocol is a very simple way to transmit IP packets over
|
||||
* a serial line. It does not provide any framing or error control,
|
||||
* and is therefore not very widely used today.
|
||||
*
|
||||
* This SLIP implementation requires two functions for accessing the
|
||||
* serial device: slipdev_char_poll() and slipdev_char_put(). These
|
||||
* must be implemented specifically for the system on which the SLIP
|
||||
* protocol is to be run.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* SLIP protocol implementation
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -56,6 +31,31 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* SLIP protocol implementation
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup slip Serial Line IP (SLIP) protocol
|
||||
* @{
|
||||
*
|
||||
* The SLIP protocol is a very simple way to transmit IP packets over
|
||||
* a serial line. It does not provide any framing or error control,
|
||||
* and is therefore not very widely used today.
|
||||
*
|
||||
* This SLIP implementation requires two functions for accessing the
|
||||
* serial device: slipdev_char_poll() and slipdev_char_put(). These
|
||||
* must be implemented specifically for the system on which the SLIP
|
||||
* protocol is to be run.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This is a generic implementation of the SLIP protocol over an RS232
|
||||
* (serial) device.
|
||||
|
|
|
@ -1,14 +1,3 @@
|
|||
/**
|
||||
* \addtogroup slip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* SLIP header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +31,17 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* SLIP header file.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup slip
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef SLIPDEV_H_
|
||||
#define SLIPDEV_H_
|
||||
|
||||
|
|
|
@ -1,35 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup tcpip The Contiki/uIP interface
|
||||
* @{
|
||||
*
|
||||
* TCP/IP support in Contiki is implemented using the uIP TCP/IP
|
||||
* stack. For sending and receiving data, Contiki uses the functions
|
||||
* provided by the uIP module, but Contiki adds a set of functions for
|
||||
* connection management. The connection management functions make
|
||||
* sure that the uIP TCP/IP connections are connected to the correct
|
||||
* process.
|
||||
*
|
||||
* Contiki also includes an optional protosocket library that provides
|
||||
* an API similar to the BSD socket API.
|
||||
*
|
||||
* \sa \ref uip "The uIP TCP/IP stack"
|
||||
* \sa \ref psock "Protosockets library"
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header for the Contiki/uIP interface.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -63,6 +31,39 @@
|
|||
* Author: Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header for the Contiki/uIP interface.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup tcpip The Contiki/uIP interface
|
||||
* @{
|
||||
*
|
||||
* TCP/IP support in Contiki is implemented using the uIP TCP/IP
|
||||
* stack. For sending and receiving data, Contiki uses the functions
|
||||
* provided by the uIP module, but Contiki adds a set of functions for
|
||||
* connection management. The connection management functions make
|
||||
* sure that the uIP TCP/IP connections are connected to the correct
|
||||
* process.
|
||||
*
|
||||
* Contiki also includes an optional protosocket library that provides
|
||||
* an API similar to the BSD socket API.
|
||||
*
|
||||
* \sa \ref uip "The uIP TCP/IP stack"
|
||||
* \sa \ref psock "Protosockets library"
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef TCPIP_H_
|
||||
#define TCPIP_H_
|
||||
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the uIP TCP/IP stack.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
*
|
||||
* The uIP TCP/IP stack header file contains definitions for a number
|
||||
* of C macros that are used by uIP programs as well as internal uIP
|
||||
* structures, TCP/IP header structures and function declarations.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +31,24 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the uIP TCP/IP stack.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
*
|
||||
* The uIP TCP/IP stack header file contains definitions for a number
|
||||
* of C macros that are used by uIP programs as well as internal uIP
|
||||
* structures, TCP/IP header structures and function declarations.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef UIP_H_
|
||||
#define UIP_H_
|
||||
|
||||
|
|
|
@ -1,29 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* {@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uiparch Architecture specific uIP functions
|
||||
* @{
|
||||
*
|
||||
* The functions in the architecture specific module implement the IP
|
||||
* check sum and 32-bit additions.
|
||||
*
|
||||
* The IP checksum calculation is the most computationally expensive
|
||||
* operation in the TCP/IP stack and it therefore pays off to
|
||||
* implement this in efficient assembler. The purpose of the uip-arch
|
||||
* module is to let the checksum functions to be implemented in
|
||||
* architecture specific assembler.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Declarations of architecture specific functions.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -57,6 +31,32 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Declarations of architecture specific functions.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* {@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uiparch Architecture specific uIP functions
|
||||
* @{
|
||||
*
|
||||
* The functions in the architecture specific module implement the IP
|
||||
* check sum and 32-bit additions.
|
||||
*
|
||||
* The IP checksum calculation is the most computationally expensive
|
||||
* operation in the TCP/IP stack and it therefore pays off to
|
||||
* implement this in efficient assembler. The purpose of the uip-arch
|
||||
* module is to let the checksum functions to be implemented in
|
||||
* architecture specific assembler.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef UIP_ARCH_H_
|
||||
#define UIP_ARCH_H_
|
||||
|
||||
|
|
|
@ -1,11 +1,3 @@
|
|||
/**
|
||||
* \file
|
||||
* Various uIP library functions.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -39,6 +31,15 @@
|
|||
*
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Various uIP library functions.
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef UIPLIB_H_
|
||||
#define UIPLIB_H_
|
||||
|
||||
|
|
|
@ -1,33 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uipopt Configuration options for uIP
|
||||
* @{
|
||||
*
|
||||
* uIP is configured using the per-project configuration file
|
||||
* "uipopt.h". This file contains all compile-time options for uIP and
|
||||
* should be tweaked to match each specific project. The uIP
|
||||
* distribution contains a documented example "uipopt.h" that can be
|
||||
* copied and modified for each project.
|
||||
*
|
||||
* \note Contiki does not use the uipopt.h file to configure uIP, but
|
||||
* uses a per-port uip-conf.h file that should be edited instead.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Configuration options for uIP.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* This file is used for tweaking various configuration options for
|
||||
* uIP. You should make a copy of this file into one of your project's
|
||||
* directories instead of editing this example "uipopt.h" file that
|
||||
* comes with the uIP distribution.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -61,6 +31,36 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Configuration options for uIP.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
* This file is used for tweaking various configuration options for
|
||||
* uIP. You should make a copy of this file into one of your project's
|
||||
* directories instead of editing this example "uipopt.h" file that
|
||||
* comes with the uIP distribution.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uipopt Configuration options for uIP
|
||||
* @{
|
||||
*
|
||||
* uIP is configured using the per-project configuration file
|
||||
* "uipopt.h". This file contains all compile-time options for uIP and
|
||||
* should be tweaked to match each specific project. The uIP
|
||||
* distribution contains a documented example "uipopt.h" that can be
|
||||
* copied and modified for each project.
|
||||
*
|
||||
* \note Contiki does not use the uipopt.h file to configure uIP, but
|
||||
* uses a per-port uip-conf.h file that should be edited instead.
|
||||
*/
|
||||
|
||||
#ifndef UIPOPT_H_
|
||||
#define UIPOPT_H_
|
||||
|
||||
|
|
|
@ -1,14 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uipfw
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* uIP packet forwarding header file.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +31,18 @@
|
|||
* Author: Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* uIP packet forwarding header file.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uipfw
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef UIP_FW_H_
|
||||
#define UIP_FW_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
#define DEBUG_PRINTF(...) /*printf(__VA_ARGS__)*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The uIP TCP/IP stack code.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -44,6 +31,19 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The uIP TCP/IP stack code.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
#define DEBUG_PRINTF(...) /*printf(__VA_ARGS__)*/
|
||||
|
||||
/*
|
||||
* uIP is a small implementation of the IP, UDP and TCP protocols (as
|
||||
* well as some basic ICMP stuff). The implementation couples the IP,
|
||||
|
|
|
@ -1,29 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uiparp uIP Address Resolution Protocol
|
||||
* @{
|
||||
*
|
||||
* The Address Resolution Protocol ARP is used for mapping between IP
|
||||
* addresses and link level addresses such as the Ethernet MAC
|
||||
* addresses. ARP uses broadcast queries to ask for the link level
|
||||
* address of a known IP address and the host which is configured with
|
||||
* the IP address for which the query was meant, will respond with its
|
||||
* link level address.
|
||||
*
|
||||
* \note This ARP implementation only supports Ethernet.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Implementation of the ARP Address Resolution Protocol.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -57,7 +31,32 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Implementation of the ARP Address Resolution Protocol.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup uiparp uIP Address Resolution Protocol
|
||||
* @{
|
||||
*
|
||||
* The Address Resolution Protocol ARP is used for mapping between IP
|
||||
* addresses and link level addresses such as the Ethernet MAC
|
||||
* addresses. ARP uses broadcast queries to ask for the link level
|
||||
* address of a known IP address and the host which is configured with
|
||||
* the IP address for which the query was meant, will respond with its
|
||||
* link level address.
|
||||
*
|
||||
* \note This ARP implementation only supports Ethernet.
|
||||
*/
|
||||
|
||||
#include "net/ipv4/uip_arp.h"
|
||||
|
||||
#include <string.h>
|
||||
|
|
|
@ -1,20 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uiparp
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Macros and definitions for the ARP module.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -48,6 +31,22 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Macros and definitions for the ARP module.
|
||||
* \author Adam Dunkels <adam@dunkels.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uiparp
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef UIP_ARP_H_
|
||||
#define UIP_ARP_H_
|
||||
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
/**
|
||||
* \addtogroup sicslowpan
|
||||
* @{
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -33,6 +29,7 @@
|
|||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* 6lowpan implementation (RFC4944 and draft-ietf-6lowpan-hc-06)
|
||||
|
@ -46,6 +43,11 @@
|
|||
* \author Joel Hoglund <joel@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup sicslowpan
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* FOR HC-06 COMPLIANCE TODO:
|
||||
* -Add compression options to UDP, currently only supports
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup sicslowpan
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -34,6 +29,7 @@
|
|||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the 6lowpan implementation
|
||||
|
@ -45,6 +41,11 @@
|
|||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup sicslowpan
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef SICSLOWPAN_H_
|
||||
#define SICSLOWPAN_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -43,6 +38,11 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <stddef.h>
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -43,6 +38,11 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef UIP_DS6_NEIGHBOR_H_
|
||||
#define UIP_DS6_NEIGHBOR_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* IPv6 data structures handling functions.
|
||||
* Comprises part of the Neighbor discovery (RFC 4861)
|
||||
* and auto configuration (RFC 4862) state machines.
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -40,6 +27,21 @@
|
|||
* SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* IPv6 data structures handling functions.
|
||||
* Comprises part of the Neighbor discovery (RFC 4861)
|
||||
* and auto configuration (RFC 4862) state machines.
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <stddef.h>
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* ICMPv6 echo request and error messages (RFC 4443)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +30,18 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* ICMPv6 echo request and error messages (RFC 4443)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include "net/ipv6/uip-ds6.h"
|
||||
#include "net/ipv6/uip-icmp6.h"
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* ICMPv6 echo request and error messages (RFC 4443)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +30,17 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* ICMPv6 echo request and error messages (RFC 4443)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef ICMP6_H_
|
||||
#define ICMP6_H_
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Neighbor discovery (RFC 4861)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
|
||||
* All rights reserved.
|
||||
|
@ -68,6 +56,18 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Neighbor discovery (RFC 4861)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include "net/ipv6/uip-icmp6.h"
|
||||
#include "net/ipv6/uip-nd6.h"
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Neighbor discovery (RFC 4861)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +30,18 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Neighbor discovery (RFC 4861)
|
||||
* \author Julien Abeille <jabeille@cisco.com>
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef UIP_ND6_H_
|
||||
#define UIP_ND6_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The uIP TCP/IPv6 stack code.
|
||||
*
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2001-2003, Adam Dunkels.
|
||||
* All rights reserved.
|
||||
|
@ -44,6 +31,20 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* The uIP TCP/IPv6 stack code.
|
||||
*
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
|
||||
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup uip6
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* uIP is a small implementation of the IP, UDP and TCP protocols (as
|
||||
* well as some basic ICMP stuff). The implementation couples the IP,
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup linkaddr
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup linkaddr
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/linkaddr.h"
|
||||
#include <string.h>
|
||||
|
||||
|
|
|
@ -1,17 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup linkaddr Rime addresses
|
||||
* @{
|
||||
*
|
||||
* The linkaddr module is an abstract representation of addresses in
|
||||
* Rime.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -51,6 +37,20 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup linkaddr Rime addresses
|
||||
* @{
|
||||
*
|
||||
* The linkaddr module is an abstract representation of addresses in
|
||||
* Rime.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef LINKADDR_H_
|
||||
#define LINKADDR_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2014, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -43,6 +38,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/llsec/anti-replay.h"
|
||||
#include "net/packetbuf.h"
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2014, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef ANTI_REPLAY_H
|
||||
#define ANTI_REPLAY_H
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/llsec/ccm-star.h"
|
||||
#include "net/llsec/llsec802154.h"
|
||||
#include "net/packetbuf.h"
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef CCM_STAR_H_
|
||||
#define CCM_STAR_H_
|
||||
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
/**
|
||||
* \ingroup net
|
||||
* \defgroup llsec Link Layer Security
|
||||
*
|
||||
* Layer for implementing link layer security.
|
||||
*
|
||||
* NETSTACK_LLSEC sits in between NETSTACK_MAC and NETSTACK_NETWORK
|
||||
* protocols. All NETSTACK_MAC protocols invoke NETSTACK_LLSEC.input()
|
||||
* for incoming packets. Likewise, all NETSTACK_NETWORK protocols
|
||||
* invoke NETSTACK_LLSEC.send(...) for outgoing packets.
|
||||
*
|
||||
* The bootstrap function of llsec_drivers can be used to defer the start
|
||||
* of upper layers so as to bootstrap pairwise keys. Only contiki-sky-main.c
|
||||
* supports this at the moment.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -55,6 +37,24 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \ingroup net
|
||||
* \defgroup llsec Link Layer Security
|
||||
*
|
||||
* Layer for implementing link layer security.
|
||||
*
|
||||
* NETSTACK_LLSEC sits in between NETSTACK_MAC and NETSTACK_NETWORK
|
||||
* protocols. All NETSTACK_MAC protocols invoke NETSTACK_LLSEC.input()
|
||||
* for incoming packets. Likewise, all NETSTACK_NETWORK protocols
|
||||
* invoke NETSTACK_LLSEC.send(...) for outgoing packets.
|
||||
*
|
||||
* The bootstrap function of llsec_drivers can be used to defer the start
|
||||
* of upper layers so as to bootstrap pairwise keys. Only contiki-sky-main.c
|
||||
* supports this at the moment.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef LLSEC_H_
|
||||
#define LLSEC_H_
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup llsec802154
|
||||
*
|
||||
* Common functionality of 802.15.4-compliant llsec_drivers.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,19 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup llsec802154
|
||||
*
|
||||
* Common functionality of 802.15.4-compliant llsec_drivers.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef LLSEC802154_H_
|
||||
#define LLSEC802154_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup noncoresec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2014, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup noncoresec
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/llsec/noncoresec/noncoresec.h"
|
||||
#include "net/llsec/anti-replay.h"
|
||||
#include "net/llsec/llsec802154.h"
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup noncoresec
|
||||
*
|
||||
* Noncompromise-resilient 802.15.4 security
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2014, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,19 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup noncoresec
|
||||
*
|
||||
* Noncompromise-resilient 802.15.4 security
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef NONCORESEC_H_
|
||||
#define NONCORESEC_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup nullsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup nullsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/llsec/nullsec.h"
|
||||
#include "net/mac/frame802154.h"
|
||||
#include "net/netstack.h"
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup nullsec
|
||||
*
|
||||
* Insecure link layer security driver.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2013, Hasso-Plattner-Institut.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,19 @@
|
|||
* Konrad Krentz <konrad.krentz@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup llsec
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup nullsec
|
||||
*
|
||||
* Insecure link layer security driver.
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef NULLSEC_H_
|
||||
#define NULLSEC_H_
|
||||
|
||||
|
|
|
@ -49,10 +49,7 @@
|
|||
* \brief This file is where the main functions that relate to frame
|
||||
* manipulation will reside.
|
||||
*/
|
||||
/**
|
||||
* \addtogroup frame802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* \brief 802.15.4 frame creation and parsing functions
|
||||
|
@ -61,6 +58,11 @@
|
|||
* frame.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup frame802154
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "sys/cc.h"
|
||||
#include "net/mac/frame802154.h"
|
||||
#include "net/llsec/llsec802154.h"
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup packetbuf
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup packetbuf
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "contiki-net.h"
|
||||
|
|
|
@ -1,15 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup packetbuf Rime buffer management
|
||||
* @{
|
||||
*
|
||||
* The packetbuf module does Rime's buffer management.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -49,6 +37,18 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup packetbuf Rime buffer management
|
||||
* @{
|
||||
*
|
||||
* The packetbuf module does Rime's buffer management.
|
||||
*/
|
||||
|
||||
#ifndef PACKETBUF_H_
|
||||
#define PACKETBUF_H_
|
||||
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
/**
|
||||
* \addtogroup packetqueue
|
||||
* @{
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2009, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -41,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup packetqueue
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "sys/ctimer.h"
|
||||
#include "net/packetqueue.h"
|
||||
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup packetqueue Packet queue
|
||||
* @{
|
||||
*
|
||||
* The packetqueue module handles a list of queued packets.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2009, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,19 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup packetqueue Packet queue
|
||||
* @{
|
||||
*
|
||||
* The packetqueue module handles a list of queued packets.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef PACKETQUEUE_H_
|
||||
#define PACKETQUEUE_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimequeuebuf
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimequeuebuf
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki-net.h"
|
||||
#if WITH_SWAP
|
||||
#include "cfs/cfs.h"
|
||||
|
|
|
@ -1,16 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimequeuebuf Rime queue buffer management
|
||||
* @{
|
||||
*
|
||||
* The queuebuf module handles buffers that are queued.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -50,6 +37,19 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimequeuebuf Rime queue buffer management
|
||||
* @{
|
||||
*
|
||||
* The queuebuf module handles buffers that are queued.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef QUEUEBUF_H_
|
||||
#define QUEUEBUF_H_
|
||||
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeabc
|
||||
* @{
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -45,6 +39,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeabc
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki-net.h"
|
||||
#include "net/rime/rime.h"
|
||||
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeabc Anonymous best-effort local area broadcast
|
||||
* @{
|
||||
*
|
||||
* The abc module sends packets to all local area neighbors. The abc
|
||||
* module adds no headers to outgoing packets.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The abc module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -47,6 +29,7 @@
|
|||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for the Rime module Anonymous BroadCast (abc)
|
||||
|
@ -54,6 +37,24 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeabc Anonymous best-effort local area broadcast
|
||||
* @{
|
||||
*
|
||||
* The abc module sends packets to all local area neighbors. The abc
|
||||
* module adds no headers to outgoing packets.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The abc module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef ABC_H_
|
||||
#define ABC_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeannouncement
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeannouncement
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/rime/announcement.h"
|
||||
#include "lib/list.h"
|
||||
#include "sys/cc.h"
|
||||
|
|
|
@ -1,29 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeannouncement Announcements
|
||||
* @{
|
||||
*
|
||||
* The Announcement primitive does local area announcements. An
|
||||
* announcement is an (ID, value) tuple that is disseminated to local
|
||||
* area neighbors. An application or protocol can explicitly listen to
|
||||
* announcements from neighbors. When an announcement is heard, a
|
||||
* callback is invoked.
|
||||
*
|
||||
* Announcements can be used for a variety of network mechanisms such
|
||||
* as neighbor discovery, node-level service discovery, or routing
|
||||
* metric dissemination.
|
||||
*
|
||||
* Application programs and protocols register announcements with the
|
||||
* announcement module. An announcement back-end, implemented by the
|
||||
* system, takes care of sending out announcements over the radio, as
|
||||
* well as collecting announcements heard from neighbors.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -63,6 +37,32 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeannouncement Announcements
|
||||
* @{
|
||||
*
|
||||
* The Announcement primitive does local area announcements. An
|
||||
* announcement is an (ID, value) tuple that is disseminated to local
|
||||
* area neighbors. An application or protocol can explicitly listen to
|
||||
* announcements from neighbors. When an announcement is heard, a
|
||||
* callback is invoked.
|
||||
*
|
||||
* Announcements can be used for a variety of network mechanisms such
|
||||
* as neighbor discovery, node-level service discovery, or routing
|
||||
* metric dissemination.
|
||||
*
|
||||
* Application programs and protocols register announcements with the
|
||||
* announcement module. An announcement back-end, implemented by the
|
||||
* system, takes care of sending out announcements over the radio, as
|
||||
* well as collecting announcements heard from neighbors.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef ANNOUNCEMENT_H_
|
||||
#define ANNOUNCEMENT_H_
|
||||
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimebroadcastannouncement Broadcast announcement
|
||||
* @{
|
||||
*
|
||||
* The broadcast announcement module implements a periodic explicit
|
||||
* announcement. THe module announces the announcements that have been
|
||||
* registered with the \ref rimeannouncement "announcement module".
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The broadcast announcement module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -56,6 +37,25 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimebroadcastannouncement Broadcast announcement
|
||||
* @{
|
||||
*
|
||||
* The broadcast announcement module implements a periodic explicit
|
||||
* announcement. THe module announces the announcements that have been
|
||||
* registered with the \ref rimeannouncement "announcement module".
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The broadcast announcement module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BROADCAST_ANNOUNCEMENT_H_
|
||||
#define BROADCAST_ANNOUNCEMENT_H_
|
||||
|
||||
|
|
|
@ -1,28 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeibc Best-effort local area broadcast
|
||||
* @{
|
||||
*
|
||||
* The broadcast module sends packets to all local area neighbors with an a
|
||||
* header that identifies the sender.
|
||||
*
|
||||
* The broadcast module sends a packet to all local neighbors. The
|
||||
* module adds the single-hop sender address as a packet attribute to
|
||||
* outgoing packets. All Rime primitives that need the identity of
|
||||
* the sender in the outgoing packets use the broadcast primitive,
|
||||
* either directly or indirectly through any of the other
|
||||
* communication primitives that are based on the broadcast primitive.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The broadcast module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -62,6 +37,31 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeibc Best-effort local area broadcast
|
||||
* @{
|
||||
*
|
||||
* The broadcast module sends packets to all local area neighbors with an a
|
||||
* header that identifies the sender.
|
||||
*
|
||||
* The broadcast module sends a packet to all local neighbors. The
|
||||
* module adds the single-hop sender address as a packet attribute to
|
||||
* outgoing packets. All Rime primitives that need the identity of
|
||||
* the sender in the outgoing packets use the broadcast primitive,
|
||||
* either directly or indirectly through any of the other
|
||||
* communication primitives that are based on the broadcast primitive.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The broadcast module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BROADCAST_H_
|
||||
#define BROADCAST_H_
|
||||
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimelinkestimate
|
||||
* @{
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -41,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimelinkestimate
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/rime/collect.h"
|
||||
#include "net/rime/collect-link-estimate.h"
|
||||
|
||||
|
|
|
@ -1,17 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* \defgroup rimelinkestimate Link estimate management
|
||||
*
|
||||
* The link estimate module is used for computing estimations of link
|
||||
* quality. It computes a quality index for links, based on
|
||||
* information about how many times a packet has been transmitted, as
|
||||
* well as information about incoming packets. The link estimate
|
||||
* module exposes an interface that provides functions that are called
|
||||
* for incoming and outgoing packets.
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2010, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -51,6 +37,22 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimelinkestimate Link estimate management
|
||||
*
|
||||
* The link estimate module is used for computing estimations of link
|
||||
* quality. It computes a quality index for links, based on
|
||||
* information about how many times a packet has been transmitted, as
|
||||
* well as information about incoming packets. The link estimate
|
||||
* module exposes an interface that provides functions that are called
|
||||
* for incoming and outgoing packets.
|
||||
*/
|
||||
|
||||
#ifndef COLLECT_LINK_ESTIMATE_H
|
||||
#define COLLECT_LINK_ESTIMATE_H
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeneighbor
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeneighbor
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <limits.h>
|
||||
#include <stdio.h>
|
||||
|
||||
|
|
|
@ -1,14 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* \defgroup rimeneighbor Collect neighbor management
|
||||
* @{
|
||||
*
|
||||
* The neighbor module manages the neighbor table that is used by the
|
||||
* Collect module.
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -48,6 +37,19 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeneighbor Collect neighbor management
|
||||
* @{
|
||||
*
|
||||
* The neighbor module manages the neighbor table that is used by the
|
||||
* Collect module.
|
||||
*/
|
||||
|
||||
#ifndef COLLECT_NEIGHBOR_H_
|
||||
#define COLLECT_NEIGHBOR_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimecollect
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimecollect
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "net/netstack.h"
|
||||
#include "net/rime/rime.h"
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimecollect Tree-based hop-by-hop reliable data collection
|
||||
* @{
|
||||
*
|
||||
* The collect module implements a hop-by-hop reliable data collection
|
||||
* mechanism.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The collect module uses 2 channels; one for neighbor discovery and one
|
||||
* for data packets.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -56,6 +37,25 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimecollect Tree-based hop-by-hop reliable data collection
|
||||
* @{
|
||||
*
|
||||
* The collect module implements a hop-by-hop reliable data collection
|
||||
* mechanism.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The collect module uses 2 channels; one for neighbor discovery and one
|
||||
* for data packets.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef COLLECT_H_
|
||||
#define COLLECT_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeipolite
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeipolite
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/ipolite.h"
|
||||
#include "lib/random.h"
|
||||
|
|
|
@ -1,3 +1,42 @@
|
|||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for Ipolite best effort local Broadcast (ipolite)
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
|
@ -51,45 +90,6 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for Ipolite best effort local Broadcast (ipolite)
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
#ifndef IPOLITE_H_
|
||||
#define IPOLITE_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimemesh
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimemesh
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/route.h"
|
||||
|
|
|
@ -1,24 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimemesh Mesh routing
|
||||
* @{
|
||||
*
|
||||
* The mesh module sends packets using multi-hop routing to a specified
|
||||
* receiver somewhere in the network.
|
||||
*
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The mesh module uses 3 channel; one for the multi-hop forwarding
|
||||
* (\ref rimemultihop "multihop") and two for the route disovery (\ref
|
||||
* routediscovery "route-discovery").
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -58,6 +37,27 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimemesh Mesh routing
|
||||
* @{
|
||||
*
|
||||
* The mesh module sends packets using multi-hop routing to a specified
|
||||
* receiver somewhere in the network.
|
||||
*
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The mesh module uses 3 channel; one for the multi-hop forwarding
|
||||
* (\ref rimemultihop "multihop") and two for the route disovery (\ref
|
||||
* routediscovery "route-discovery").
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef MESH_H_
|
||||
#define MESH_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/multihop.h"
|
||||
|
|
|
@ -1,33 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimemultihop Best-effort multihop forwarding
|
||||
* @{
|
||||
*
|
||||
* The multihop module implements a multihop forwarding mechanism. Routes
|
||||
* must have already been setup with the route_add() function. Setting
|
||||
* up routes is done with another Rime module such as the \ref
|
||||
* routediscovery "route-discovery module".
|
||||
*
|
||||
* The multihop sends a packet to an identified node in the network by
|
||||
* using multi-hop forwarding at each node in the network. The
|
||||
* application or protocol that uses the multihop primitive supplies a
|
||||
* routing function for selecting the next-hop neighbor. If the
|
||||
* multihop primitive is requested to send a packet for which no
|
||||
* suitable next hop neighbor is found, the caller is immediately
|
||||
* notified of this and may choose to initiate a route discovery
|
||||
* process.
|
||||
*
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The multihop module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -67,6 +37,36 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimemultihop Best-effort multihop forwarding
|
||||
* @{
|
||||
*
|
||||
* The multihop module implements a multihop forwarding mechanism. Routes
|
||||
* must have already been setup with the route_add() function. Setting
|
||||
* up routes is done with another Rime module such as the \ref
|
||||
* routediscovery "route-discovery module".
|
||||
*
|
||||
* The multihop sends a packet to an identified node in the network by
|
||||
* using multi-hop forwarding at each node in the network. The
|
||||
* application or protocol that uses the multihop primitive supplies a
|
||||
* routing function for selecting the next-hop neighbor. If the
|
||||
* multihop primitive is requested to send a packet for which no
|
||||
* suitable next hop neighbor is found, the caller is immediately
|
||||
* notified of this and may choose to initiate a route discovery
|
||||
* process.
|
||||
*
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The multihop module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef MULTIHOP_H_
|
||||
#define MULTIHOP_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeneighbordiscovery
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeneighbordiscovery
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
|
||||
#include "net/rime/rime.h"
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeneighbordiscovery Neighbor discovery
|
||||
* @{
|
||||
*
|
||||
* The neighbor-discovery module implements a periodic neighbor
|
||||
* discovery mechanism. A callback is invoked for every incoming
|
||||
* neighbor discovery message.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The neighbor-discovery module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -56,6 +37,25 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeneighbordiscovery Neighbor discovery
|
||||
* @{
|
||||
*
|
||||
* The neighbor-discovery module implements a periodic neighbor
|
||||
* discovery mechanism. A callback is invoked for every incoming
|
||||
* neighbor discovery message.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The neighbor-discovery module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef NEIGHBOR_DISCOVERY_H_
|
||||
#define NEIGHBOR_DISCOVERY_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimenetflood
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimenetflood
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/rime/netflood.h"
|
||||
|
||||
#include <string.h>
|
||||
|
|
|
@ -1,37 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimenetflood Best-effort network flooding
|
||||
* @{
|
||||
*
|
||||
* The netflood module does best-effort flooding.
|
||||
*
|
||||
* The netflood primitive sends a single packet to all nodes in the
|
||||
* network. The netflood primitive uses polite broadcasts at every hop
|
||||
* to reduce the number of redundant transmissions. The netflood
|
||||
* primitive does not perform retransmissions of flooded packets and
|
||||
* packets are not tagged with version numbers. Instead, the netflood
|
||||
* primitive sets the end-to-end sender and end-to-end packet ID
|
||||
* attributes on the packets it sends. A forwarding node saves the
|
||||
* end-to-end sender and packet ID of the last packet it forwards and
|
||||
* does not forward a packet if it has the same end-to-end sender and
|
||||
* packet ID as the last packet. This reduces the risk of routing
|
||||
* loops, but does not eliminate them entirely as the netflood
|
||||
* primitive saves the attributes of the latest packet seen only.
|
||||
* Therefore, the netflood primitive also uses the time to live
|
||||
* attribute, which is decreased by one before forwarding a packet.
|
||||
* If the time to live reaches zero, the primitive does not forward
|
||||
* the packet.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The netflood module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -71,6 +37,40 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimenetflood Best-effort network flooding
|
||||
* @{
|
||||
*
|
||||
* The netflood module does best-effort flooding.
|
||||
*
|
||||
* The netflood primitive sends a single packet to all nodes in the
|
||||
* network. The netflood primitive uses polite broadcasts at every hop
|
||||
* to reduce the number of redundant transmissions. The netflood
|
||||
* primitive does not perform retransmissions of flooded packets and
|
||||
* packets are not tagged with version numbers. Instead, the netflood
|
||||
* primitive sets the end-to-end sender and end-to-end packet ID
|
||||
* attributes on the packets it sends. A forwarding node saves the
|
||||
* end-to-end sender and packet ID of the last packet it forwards and
|
||||
* does not forward a packet if it has the same end-to-end sender and
|
||||
* packet ID as the last packet. This reduces the risk of routing
|
||||
* loops, but does not eliminate them entirely as the netflood
|
||||
* primitive saves the attributes of the latest packet seen only.
|
||||
* Therefore, the netflood primitive also uses the time to live
|
||||
* attribute, which is decreased by one before forwarding a packet.
|
||||
* If the time to live reaches zero, the primitive does not forward
|
||||
* the packet.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The netflood module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef NETFLOOD_H_
|
||||
#define NETFLOOD_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimepoliteannouncement
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimepoliteannouncement
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
|
||||
#include "lib/list.h"
|
||||
|
|
|
@ -1,22 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimepoliteannouncement Polite announcement
|
||||
* @{
|
||||
*
|
||||
* The polite announcement module implements a periodic explicit
|
||||
* announcement. THe module announces the announcements that have been
|
||||
* registered with the \ref rimeannouncement "announcement module".
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The polite announcement module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -56,6 +37,25 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimepoliteannouncement Polite announcement
|
||||
* @{
|
||||
*
|
||||
* The polite announcement module implements a periodic explicit
|
||||
* announcement. THe module announces the announcements that have been
|
||||
* registered with the \ref rimeannouncement "announcement module".
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The polite announcement module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef POLITE_ANNOUNCEMENT_H_
|
||||
#define POLITE_ANNOUNCEMENT_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimepolite
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimepolite
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/polite.h"
|
||||
#include "lib/random.h"
|
||||
|
|
|
@ -1,3 +1,42 @@
|
|||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for Polite Anonymous best effort local Broadcast (polite)
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
|
@ -51,45 +90,6 @@
|
|||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Header file for Polite Anonymous best effort local Broadcast (polite)
|
||||
* \author
|
||||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
#ifndef POLITE_H_
|
||||
#define POLITE_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
#define DEBUG 0
|
||||
#if DEBUG
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef RIME_H_
|
||||
#define RIME_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimermh
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimermh
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/rmh.h"
|
||||
|
|
|
@ -1,28 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimermh Reliable multihop forwarding
|
||||
* @{
|
||||
*
|
||||
* The rmh module implements a multihop forwarding mechanism. Routes
|
||||
* must have already been setup with the route_add() function. Setting
|
||||
* up routes is done with another Rime module such as the \ref
|
||||
* routediscovery "route-discovery module".
|
||||
*
|
||||
* The hop-by-hop reliable multi-hop unciast primitive is similar to
|
||||
* the best-effot multi-hop unicast primitive except that it uses the
|
||||
* reliable single-hop primitive for the communication between two
|
||||
* single-hop neighbors.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The rmh module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -62,6 +37,31 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimermh Reliable multihop forwarding
|
||||
* @{
|
||||
*
|
||||
* The rmh module implements a multihop forwarding mechanism. Routes
|
||||
* must have already been setup with the route_add() function. Setting
|
||||
* up routes is done with another Rime module such as the \ref
|
||||
* routediscovery "route-discovery module".
|
||||
*
|
||||
* The hop-by-hop reliable multi-hop unciast primitive is similar to
|
||||
* the best-effot multi-hop unicast primitive except that it uses the
|
||||
* reliable single-hop primitive for the communication between two
|
||||
* single-hop neighbors.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The rmh module uses 1 channel.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef RMH_H_
|
||||
#define RMH_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup routediscovery
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup routediscovery
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include "contiki.h"
|
||||
#include "net/rime/rime.h"
|
||||
#include "net/rime/route.h"
|
||||
|
|
|
@ -1,20 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup routediscovery Rime route discovery protocol
|
||||
* @{
|
||||
*
|
||||
* The route-discovery module does route discovery for Rime.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The ibc module uses 2 channels; one for the flooded route request
|
||||
* packets and one for the unicast route replies.
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -54,6 +37,23 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup routediscovery Rime route discovery protocol
|
||||
* @{
|
||||
*
|
||||
* The route-discovery module does route discovery for Rime.
|
||||
*
|
||||
* \section channels Channels
|
||||
*
|
||||
* The ibc module uses 2 channels; one for the flooded route request
|
||||
* packets and one for the unicast route replies.
|
||||
*
|
||||
*/
|
||||
#ifndef ROUTE_DISCOVERY_H_
|
||||
#define ROUTE_DISCOVERY_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rimeroute
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rimeroute
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "lib/list.h"
|
||||
|
|
|
@ -1,14 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* \defgroup rimeroute Rime route table
|
||||
* @{
|
||||
*
|
||||
* The route module handles the route table in Rime.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -48,6 +37,18 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rime
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup rimeroute Rime route table
|
||||
* @{
|
||||
*
|
||||
* The route module handles the route table in Rime.
|
||||
*/
|
||||
|
||||
#ifndef ROUTE_H_
|
||||
#define ROUTE_H_
|
||||
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
/**
|
||||
* \addtogroup rudolph0
|
||||
* @{
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007, Swedish Institute of Computer Science.
|
||||
* All rights reserved.
|
||||
|
@ -42,6 +37,11 @@
|
|||
* Adam Dunkels <adam@sics.se>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \addtogroup rudolph0
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <stddef.h> /* for offsetof */
|
||||
|
||||
#include "net/rime/rime.h"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue