This page details which software licenses are acceptable to be used with ONF software, and notes on how licenses should be applied.
Most of ONF's software is licensed under the Apache License, Version 2.0 (commonly referred to as Apache-2 or APL2).
Some software that is in an incubator phase is licensed under the ONF Member-Only Software License.
The Software Package Data Exchange (SPDX) license headers should be applied to every source code file in the system. These generally look like:
# SPDX-FileCopyrightText: © 2021 Open Networking Foundation <firstname.lastname@example.org>
# SPDX-License-Identifier: Apache-2.0
To verify correct licensing of code, the REUSE software is run against code checkins, to ensure that every file has the correct licensing applied to it.
Apache 2.0 licensed software can incorporate or link directly against the following licenses. A few examples:
See also the ASF 3rd Party License Policy for more details.
Code with these kinds of licenses can be used at runtime, but can't be directly linked to:
Licenses that should be avoided
The following licenses have various issues and can't be used
It may be advantageous to dual-license code in certain circumstances.
Code that serves as an example and templates that a user would copy and modify. This also could include any code that is within documentation.
In cases such as this, it may be advantageous to place examples in the public domain, or with a less strict license such as MIT.
The Contributor License Agreement (CLA) that is signed before contributing code gives ONF a copyright and patent grant on all code contributions, and may sublicense the code in the future.