Apache Felix UPnP Base Driver
Copyright 2006-2009 The Apache Software Foundation


I. Included Software

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
Licensed under the Apache License 2.0.

This product includes software developed at
ISTI-CNR (http://domoware.isti.cnr.it/).
Copyright 2007-2008, ISTI-CNR,
Licensed under the BSD License.

This product includes software developed by Satoshi Konno
(http://sourceforge.net/projects/cgupnpjava/)
Copyright 2003-2008 Satoshi Konno,
Licensed under the BSD License.

The version targeting JVM 1.3 of this product includes software from http://kxml.sourceforge.net.
Copyright (c) 2002,2003, Stefan Haustein, Oberhausen, Rhld., Germany.
Licensed under the BSD License.

II. Used Software

This product uses software developed at
The OSGi Alliance (http://www.osgi.org/).
Copyright 2006-2008 The OSGi Alliance.
Licensed under the Apache License 2.0.

III. License Summary
- Apache License 2.0
- BSD License
