Hello!

My name is Christopher Bazley and I am a member of BSI (the British Standards 
Institution) and WG14 (the international standardization working group for the 
programming language C).

I would be grateful for advice on whether I can include content from Linux 
kernel source code in a paper that I soon plan to submit to the C standards 
committee, via the process outlined here: 
https://www.open-std.org/jtc1/sc22/wg14/www/contributing.html

The Linux kernel mailing list FAQ makes clear that they aren't interested in 
answering questions like this, and instead direct questioners here.

The content I would like to include in my paper comprises only the kvasprintf 
and kasprintf function declarations from Linux, the vasprintf and asprintf 
function declarations from GNU/BSD, and my own summary of their features and 
usage. I am citing them as ‘prior art’ in a paper proposing a standard string 
buffer type for the C programming language.

I order to participate in ISO activities, I had to accept their policies 
(https://www.iso.org/declaration-for-participants-in-iso-activities.html) which 
include:

“Content, such as publications, documents, text, figures, images or other 
content that you submit to the ISO or ISO/IEC standards development process may 
be copyright protected. Copyright in such content remains with the initial 
copyright owner. If you offer such content, you undertake to declare this to 
ISO or ISO/IEC, identify the name of the copyright holder and assist ISO or 
ISO/IEC in obtaining appropriate permission to i) share the content in the 
standards development process, ii) to publish the content, or parts thereof, in 
original or modified form in ISO or ISO/IEC standards and iii) to exploit the 
content as part of an ISO or ISO/IEC standard according to ISO and IEC 
practice.”

To be clear, my proposal is not simply to standardize the Linux functions, 
therefore I do not anticipate them being published “in original or modified 
form in ISO or ISO/IEC standards”. Standardizing the GNU/BSD functions isn't a 
terrible idea, but that isn't what I'm proposing either. However, I would like 
to “share the content in the standards development process” (with appropriate 
acknowledgement of the licence and copyright which applies to Linux source code 
and FreeBSD documentation).

https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html says:

"You must cause any work that you distribute or publish, that in whole or in 
part contains or is derived from the Program or any part thereof, to be 
licensed as a whole at no charge to all third parties under the terms of this 
License."

and

"These requirements apply to the modified work as a whole. If identifiable 
sections of that work are not derived from the Program, and can be reasonably 
considered independent and separate works in themselves, then this License, and 
its terms, do not apply to those sections when you distribute them as separate 
works."

I think it's highly questionable whether the new string functions that my paper 
proposes are "derived from" Linux. Functions similar to the GNU/BSD functions 
vasprintf and asprintf, but which return a pointer to the allocated string 
(rather than requiring the caller to pass the address of an object in which to 
store a pointer), have existed in many code bases which are published under 
non-GNU licences. I would argue that such an interface is 'obvious'.

In any case, that pattern is not precisely what my paper proposes either: the 
functions that I propose return a pointer to a 'struct' type, not a 'char' 
array.

May I assume that my proposed usage is acceptable under the terms of the 
GPL-2.0 licence which apply to the relevant Linux code?
May I also assume that if an interface similar to kvasprintf and kasprintf were 
incorporated into the C standard then the whole of the C standard would not 
fall under the terms of GPL-2.0?

Many thanks,
Chris
IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.

Reply via email to