aboutsummaryrefslogtreecommitdiff
path: root/mycan.c
diff options
context:
space:
mode:
authorXiao Pan <xyz@flylightning.xyz>2025-05-15 19:18:33 -0700
committerXiao Pan <xyz@flylightning.xyz>2025-05-15 19:18:33 -0700
commit7b8f6c4aa7bc71ea22c7a660c2a5f23a8e469d6d (patch)
treeafe33dce51c72bcd0478e9b733e51966ca78aa61 /mycan.c
parentb98f3557ee4b46510f5c2c26688679a4f3bf79d3 (diff)
The code is licensed under GPL-3.0-or-later. But there are license issues
The code is licensed under GPL-3.0-or-later. mycan.c uses some codes from https://files.waveshare.com/upload/4/4e/RS485_CAN_HAT_Code.zip which does not have a license which means those codes are non-free close souce proprietary, so I don't think I'm allowed to add a free and open soruce license to mycan.c. all_SRE_edited.dbc is edited from "SR-16 Custom BMS.dbc" file from https://github.com/spartanracingelectric/SR16-CustomBMS/blob/main/SR-16%20Custom%20BMS.dbc and authors of SR16-CustomBMS does not have a license in their code repository for "SR-16 Custom BMS.dbc" file, so authors of SR16-CustomBMS have the copyright on "SR-16 Custom BMS.dbc" file, so all_SRE_edited.dbc can be considered non-free close souce proprietary code. **So there are license issues, I use both non-free and free copyleft license codes.** net/if.h's LGPL-2.1-or-later license is compatible with GPL-3.0-or-later. linux/can.h and linux/can/raw.h uses ((GPL-2.0-only WITH Linux-syscall-note) OR BSD-3-Clause) license, Linux-syscall-note see https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/LICENSES/exceptions/Linux-syscall-note allows codes using syscalls not to be contaminate with GPL because it is not "derived work", both (GPL-2.0-only WITH Linux-syscall-note) and BSD-3-Clause are compatible with GPL-3.0-or-later and I only need to use one of the two because of the "OR" word.
Diffstat (limited to 'mycan.c')
-rw-r--r--mycan.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/mycan.c b/mycan.c
index 3eccce7..efe407e 100644
--- a/mycan.c
+++ b/mycan.c
@@ -1,5 +1,8 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
// references:
// https://www.waveshare.com/wiki/RS485_CAN_HAT
+// https://files.waveshare.com/upload/4/4e/RS485_CAN_HAT_Code.zip
// https://github.com/howerj/dbcc MIT
/* build:
@@ -22,7 +25,10 @@ cansend vcan0 680#00.FF.02.00.02.00.02.00
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+
+// LGPL-2.1-or-later
#include <net/if.h>
+
#include <sys/ioctl.h>
#include <sys/socket.h>