W3C libwww

Libwww - the W3C Sample Code Library

Libwww is a general-purpose Web API written in C for Unix and Windows (Win32). With a highly extensible and layered API, it can accommodate many different types of applications including clients, robots, etc. The purpose of Libwww is to provide a sample implementation of HTTP and other Internet protocols and to serve as a testbed for protocol experiments. It comes with a lot of "plug-and-play" modules including a rudimentary HTML parser which can do the very basics.

Nearby you can find the following sample applications that you get when you download the libwww distribution:

Also have a look at the W3C Libwww activity statement on support, usability etc.

@(#) $Id: Overview.html,v 1.102 1998/05/07 15:15:37 frystyk Exp $

News News, Updates, and Events

March 27, 1998
Try out the latest Windows based PUT Tool - a small Windows Widget that can be the start to something big :)
March 25, 1998: Libwww Version 5.1l available for HTTP/1.1 testing! Check out the performance!
This release is a "second generation" HTTP/1.1 implementation using persistent connections, pipelining, smart output buffering, and persistent caching. It is the code base that was used in the "Network Performance Effects of HTTP/1.1, CSS1, and PNG" paper
Dec 24, 1997: Libwww is looking for a new home!
W3C is looking for volunteers to either help or to take over the maintenance and development of the source base including libwww, the Mini Robot (webbot), the terminal based Line Mode Browser, and the Command Line Tool which can be used in batch tools etc. Interested parties can contact Henrik for details!

Activities Libwww Activity Statement

What is the purpose of libwww? Can I use it as a developer tool for writing Web applications? How is it supported? Read answers to these questions and much more from the W3C activity statement on libwww.

Software Getting the Source Code

Read the detailed description or download it directly from here:

You can see how to unpack and compile the software in the README file, and you can find more information on how the Library is designed in the Library Architecture and how to use it in the User's Guide.

Libwww is covered by the W3C Copyright Statement. If you are using libwww then please include in your product documentation a link to the copyright statement, a link to libwww, and to the CERN acknowledgement.

Install Installation Guide and new Features

How do I get started using libwww? How can I compile it? What has changed in the latest release. Find out by starting here!

Documentation User Documentation and Design Overview

We have a huge amount of documentation about the design  of libwww and how to use it for building applications. Often, however, the easiest is to study the example applications which show in practice how to do tricks with libwww. We try to keep the documentation up to date but it may not always be the case. The best thing is to have a look the list of exported functions. This list is generated automatically and is always up to date.

Mail Libwww Forums

Libwww has the following set of mailing lists that you are more than welcome to use! Please do not send mail directly to the authors - the mail load is already rather high and you will most probably get a  better response time by using one of the following mailing lists.

A public mailing list for an open discussion of ideas, diffs, new features etc. This is the most active list. See the information on mailing lists for details on how to subscribe.
A public mailing mailing list where you can register bugs and ideas that you would like to get into the code base. Register them here, so that we don't forget about them!

Authors and Contributors

These people and many more have been involved in turning libwww into the shape it has today.

Henrik Frystyk Nielsen
Designed and Implemented libwww from version 2.17 up until version 5.1
Tim Berners-Lee and Jean-Francois Groff
Came up with the initial design and implementation of libwww
Eric Prud'hommeaux
Provided the Windows integration and asynchronous event management along with many other features.
Anselm Baird-Smith
Provided lots of help through many white-board discussions, especially on the HTTP/1.1 client side implementation.
Jose Kahan
Integrated libwww with Amaya and provided feedback on client side API
Håkon W. Lie
Integrated libwww with Arena
and many others for contributions and bug fixes

Henrik Frystyk Nielsen,
@(#) $Id: Overview.html,v 1.102 1998/05/07 15:15:37 frystyk Exp $

Copyright  ©  1997 W3C (MIT, INRIA, Keio ), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Your interactions with this site are in accordance with our public and Member privacy statements.