rust-vmm / linux-loader

Linux kernel loader
Apache License 2.0
181 stars 55 forks source link

License clarification #136

Open dm0- opened 1 year ago

dm0- commented 1 year ago

I was reviewing crate licenses and encountered a conflict here: The README says the project is dual-licensed (i.e. an OR relation where either license can be chosen), but Cargo.toml and every source file's SPDX identifier declare an AND relation (i.e. the terms of both licenses must be satisfied simultaneously). Which is intended? Can the relevant file(s) please be fixed?

andreeaflorescu commented 1 year ago

Yes, this needs to be fixed. The correct license is with OR, but depending on where the code originates from, we might need to keep it as BSD-3-Clause only. See discussion on https://github.com/rust-vmm/vmm-sys-util/issues/161.

I can submit a PR with the fix.

rbradford commented 1 year ago

I think the SPDX data in the files are correct. The code is a mixture (so AND) not licensed equally under both (OR). It would require some work to move it to solely BSD-3-Clause or a true dual licensed version.

andreeaflorescu commented 1 year ago

Right, I think we need something similar to what we did for vmm-sys-util: https://github.com/rust-vmm/vmm-sys-util/pull/167. The initial code was derived from Crosvm, so that is BSD-3-Clause, so that's why I think it would be easier to have it as BSD-3-Clause because we would need agreement from the authors of the patches added on top to switch them to BSD-3-Clause instead. From our side, we are ok with updating the license as this is in the end compatible with the projects where we are using it.