Barracuda Embedded Web Server

Mar 15, 2011 by     No Comments    Posted under: Uncategorized

The Barracuda Embedded Web Server

Despite its name, the Barracuda Embedded Web Server is an embeddable application server that is specifically designed to function as a framework for running server based applications. The Barracuda Embedded Web Server library can be embedded in virtually any type of computer program. The library is implemented in C code and provides a C and optional C++ API to the developers using the library. The C or C++ API is used by developers that prefer to develop server based applications in C or C++ code. However, most of our customers choose to use the Barracuda Embedded Web Server together with the Lua server Pages (LSP) plugin since LSP drastically shortens the development time.

Developing server based applications using the barebone Barracuda Embedded Web Server is done in C/C++ or by using what we refer to as C Server Pages or CSP for short. CSP is a technology that makes it possible to insert C or C++ code in HTML template files by using special CSP tags. The technology is similar to other server side technologies such as JSP, PHP, ASP, etc. The Barracuda Embedded Web Server SDK provides a number of host tools that compile and link CSP files. The tools function similar to a compiler or cross compiler and convert the CSP files to either C or C++ code and to data files. A special linker combines all the data files into one file which is then embedded in your application. The produced C/C++ code is compiled using your standard C/C++ (cross) compiler and the code is then linked with your application. CSP Page Counter Example: 

<%! int count; %>

<%!! count = 1; %>

<html>
  <body>
    <p>
      You are visitor <%="%d" count++%>.
    </p>
  </body>
</html>

The barebone Barracuda Embedded Web Server is typically used by devices which cannot use the LSP plugin due to extremely limited memory. The barebone Barracuda Embedded Web Server together with the authenticator logic is roughly 200Kbytes and requires roughly 40Kbytes of RAM. We strongly recommend that you use the LSP plugin unless you have extremely limited memory.

See the online CSP documentation and/or read the CSP whitepapers for more information about the Barracuda Embedded Web Server.

The Barracuda Embedded Web Server and the various plugins support the following RFC’s:

In addition, the following standards are supported:

  • RFC 1321
  • RFC 1864
  • RFC 1867
  • RFC 2109
  • RFC 2246
  • RFC 2396
  • RFC 2518
  • RFC 2616
  • RFC 2617
  • RFC 3076
  • RFC 3268
  • RFC 3629
  • RFC 3986
  • RFC 4346
  • RFC 4492
  • RFC 4918

Got anything to say? Go ahead and leave a comment!

You must be logged in to post a comment.