Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals

Serial Line IP (SLIP) protocol
[The uIP TCP/IP stack]


Detailed Description

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.


Files

file  slipdev.c
 SLIP protocol implementation.

file  slipdev.h
 SLIP header file.


Functions

void slipdev_char_put (u8_t c)
 Put a character on the serial device.

u8_t slipdev_char_poll (u8_t *c)
 Poll the serial device for a character.

void slipdev_init (void)
 Initialize the SLIP module.

void slipdev_send (void)
 Send the packet in the uip_buf and uip_appdata buffers using the SLIP protocol.

u16_t slipdev_poll (void)
 Poll the SLIP device for an available packet.


Function Documentation

u8_t slipdev_char_poll u8_t c  ) 
 

Poll the serial device for a character.

This function is used by the SLIP implementation to poll the serial device for a character. It must be implemented specifically for the system on which the SLIP implementation is to be run.

The function should return immediately regardless if a character is available or not. If a character is available it should be placed at the memory location pointed to by the pointer supplied by the arguement c.

Parameters:
c A pointer to a byte that is filled in by the function with the received character, if available.
Return values:
0 If no character is available.
Non-zero If a character is available.

void slipdev_char_put u8_t  c  ) 
 

Put a character on the serial device.

This function is used by the SLIP implementation to put a character on the serial device. It must be implemented specifically for the system on which the SLIP implementation is to be run.

Parameters:
c The character to be put on the serial device.

void slipdev_init void   ) 
 

Initialize the SLIP module.

This function does not initialize the underlying RS232 device, but only the SLIP part.

u16_t slipdev_poll void   ) 
 

Poll the SLIP device for an available packet.

This function will poll the SLIP device to see if a packet is available. It uses a buffer in which all avaliable bytes from the RS232 interface are read into. When a full packet has been read into the buffer, the packet is copied into the uip_buf buffer and the length of the packet is returned.

Returns:
The length of the packet placed in the uip_buf buffer, or zero if no packet is available.

Here is the call graph for this function:

void slipdev_send void   ) 
 

Send the packet in the uip_buf and uip_appdata buffers using the SLIP protocol.

The first 40 bytes of the packet (the IP and TCP headers) are read from the uip_buf buffer, and the following bytes (the application data) are read from the uip_appdata buffer.

Here is the call graph for this function:


Generated on Tue Oct 7 15:51:45 2003 for uIP 0.9 by doxygen 1.3.3