ublk-org / ublksrv

ublk: userspace block device driver
MIT License
149 stars 53 forks source link

README's licensing is inconsistent with the source code #71

Closed mattysweeps closed 1 month ago

mattysweeps commented 1 month ago

Hi there,

Reading the "license" section of the README.rst explains how most of the code is dual licensed under GPL and MIT (except include/nlohmann/json.hpp is MIT only and ./qcow2 is GPL-2.0 only)

However, scanning the source code there are some // SPDX-License-Identifier headers which don't align with the README.rst. One example is include/ublksrv_tgt_endian.h, which only has a header for GPL-2.0. According to the README.rst, it should have // SPDX-License-Identifier: GPL-2.0 OR MIT

Scanning the source code for files which have a SPDX-License-Identifier on the first line produces the following table: https://gist.github.com/mattysweeps/7cf1dc8029f0ff419039f98588e63e49

Notable files with a header for only GPL 2.0 which are not mentioned in the README:

Can a project owner confirm if the README is up to date or if the current SPDX headers are up to date? I'm only looking to update the documentation for the licenses; I'm NOT interested in re-licensing anything.

Thank you,

ming1 commented 1 month ago

The main inconsistency should be in nbd/ which is GPL-2.0 only.

Except for qcow2 & nbd target code, all others should be (MIT or LGPL) or (MIT).

I will fix the problem later.

Thanks,

ming1 commented 1 month ago

Hello,

Can you check if the following branch works for you?

https://github.com/ublk-org/ublksrv/tree/fix-licensing

mattysweeps commented 1 month ago

Thanks @ming1, that looks good to me. I ran a similar command and everything looks accurate: https://gist.github.com/mattysweeps/7ec5c17bfe836a0f1bfa6d3696966e37

The changes in the fix-licensing branch should do the trick.

mattysweeps commented 1 month ago

Fixed by #72