Barracuda Examples

The following is a list of the Barracuda examples. The examples share a common build structure which is explained in Introduction to the Barracuda Examples.

Note that you may get strange results or "page not found" when using the same browser for the various examples. The browser gets confused with the cache handling when switching from one demo server to another. The browser believes it is using the same server since the address is the same; however, another demo program should be considered another "site". Therefore, always clear the browser cache when switching from one server demo program to another server demo program.

Lua Server Pages (LSP)


Build a complete LSP example using only two C files. This example is not using the BAS libraries, but is instead including all BAS C files in one file. The LspNetIo example is a good starting point for developers of embedded systems, including monolithic embedded systems.


The Xedge is designed as a boot loader for loading, starting, and stopping Lua Server Pages Applications in a running system. The Xedge is designed for embedded systems, including monolithic embedded systems.


NetIo Server, Web File Manager Server, WebDAV Server, and more. The WFS is designed for POSIX and Windows operating systems and not deep embedded systems.

   Mako Server   

The Mako Server is a Barracuda Application Server derivative product designed for operating systems such as Linux, QNX, Windows, and VxWorks.

C/C++ Server Pages (CSP) examples
CSP introduction This is an introduction to the Barracuda Embedded Web Server with simple step by step examples. This is probably a good starting point for those new to the Barracuda Embedded Web Server SDK.
Hangman A simple Hangman Game similar to the Hangman Game whitepaper. The Hangman Game in the whitepaper is in C++. This version of the game is in C code.
The Secure
photo album
This is an advanced example of how to set up user authentication and authorization by using the Barracuda Authentication and Authorization classes.
This is a C example.

WebDAV This is a simple demo program that shows how the WebDAV plugin works.

Misc examples
UploadFirmware This example shows how to upload, extract, and install multiple components from a ZIP file.
ServerTcpCon Proprietary TCP connection over HTTP(S).
This example shows how to Use the Web-server for initiating a proprietary (secure) TCP server connection.

The following is a list of miscellaneous code delivered as examples:
Tools A simple program for converting the "dat" file produced by CspLink into a large C array. This C array can be linked into your executable and be accessed by the web-server. The web-server can access the data in the C array by using a CspReader object.
FileReader The Filereader shows how one can create a CspReader and a ZipReader. The example code uses the regular file system for reading. Therefore, the classes are named FileCspReader and FileZipReader. You can customize these classes to read from, for example, ROM code such as Flash memory without the need of a file system.
CspReader is the interface between the Web-Server and the "dat" file produced by CspLink. The "dat" file contains all the data for CSP files. The "dat" file can also store regular html, gif pictures, etc., for diskless systems. The CspReader driver makes it possible for the web-server to fetch the web-pages from the "dat" file.
ZipReader is the interface between the Web-Server and an instance of class ZipIo. The ZipIo class makes it possible to install ZIP files in the virtual file system.