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

Example applications


Detailed Description

The uIP distribution contains a number of example applications that can be either used directory or studied when learning to develop applications for uIP.


Files

file  memb.c
 Memory block allocation routines.

file  memb.h
 Memory block allocation routines.


Modules

Web client
SMTP E-mail sender
Telnet server
Web server

Defines

#define MEMB(name, size, num)
 Declare a memory block.


Functions

void memb_init (struct memb_blocks *m)
 Initialize a memory block that was declared with MEMB().

char * memb_alloc (struct memb_blocks *m)
 Allocate a memory block from a block of memory declared with MEMB().

char memb_ref (struct memb_blocks *m, char *ptr)
 Increase the reference count for a memory chunk.

char memb_free (struct memb_blocks *m, char *ptr)
 Deallocate a memory block from a memory block previously declared with MEMB().


Define Documentation

#define MEMB name,
size,
num   ) 
 

Value:

static char memb_mem[(size + 1) * num]; \
        static struct memb_blocks name = {size, num, memb_mem}
Declare a memory block.

Parameters:
name The name of the memory block (later used with memb_init(), memb_alloc() and memb_free()).
size The size of each memory chunk, in bytes.
num The total number of memory chunks in the block.


Function Documentation

char* memb_alloc struct memb_blocks *  m  ) 
 

Allocate a memory block from a block of memory declared with MEMB().

Parameters:
m A memory block previosly declared with MEMB().

char memb_free struct memb_blocks *  m,
char *  ptr
 

Deallocate a memory block from a memory block previously declared with MEMB().

Parameters:
m m A memory block previosly declared with MEMB().
ptr A pointer to the memory block that is to be deallocated.
Returns:
The new reference count for the memory block (should be 0 if successfully deallocated) or -1 if the pointer "ptr" did not point to a legal memory block.

void memb_init struct memb_blocks *  m  ) 
 

Initialize a memory block that was declared with MEMB().

Parameters:
m A memory block previosly declared with MEMB().

char memb_ref struct memb_blocks *  m,
char *  ptr
 

Increase the reference count for a memory chunk.

Note:
No sanity checks are currently made.
Parameters:
m m A memory block previosly declared with MEMB().
ptr A pointer to the memory chunk for which the reference count should be increased.
Returns:
The new reference count.


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