For MS's WSL, according to their devs, they only allowed themselves to read the documentation (external API). They didn't allow themselves to look at the code. Different case but also a form of reverse engineering.
It's the "internal data structures, macros" stuff that is problematic.
It's the "internal data structures, macros" stuff that is problematic.