Show source code of software.

Solved
Turki1923 Posted messages 590 Status Membre -  
Turki1923 Posted messages 590 Status Membre -
Hello,

I would like to display the source code of a program that is installed on my computer.
Here are the questions I have...
Is it legal?
And how to do it?

Configuration: Nvidia 8600 GT ;
ACER CPU E5200 ;
4GB MEMORY ;
1 TB HDD
Ubuntu 9.10 gnome
64 Bit

4 réponses

[Dal] Posted messages 6205 Registration date   Status Contributeur Last intervention   1 108
 
Hello everyone,

I would like to correct what has been said for some time on this subject.

Since 1994, French law permits the decompilation of software for interoperability purposes under certain conditions.

This is now codified in Article L122-6-1 of the Intellectual Property Code (https://www.legifrance.gouv.fr/codes/id/LEGIARTI000028345224/2013-12-20/) :

"(...) IV. The reproduction of the software code or the translation of the form of that code is not subject to the authorization of the author when reproduction or translation as referred to in 1° or 2° of article L. 122-6 is indispensable to obtain the information necessary for the interoperability of independently created software with other software, provided that the following conditions are met: 1° These acts are carried out by the person having the right to use a copy of the software or on behalf of that person by a person authorized for that purpose; 2° The information necessary for interoperability has not already been made easily and quickly accessible to the persons mentioned in 1° above; 3° And these acts are limited to the parts of the original software necessary for such interoperability. The information thus obtained may not be: 1° Used for purposes other than achieving the interoperability of independently created software; 2° Communicated to third parties unless necessary for the interoperability of independently created software; 3° Used for the development, production, or marketing of software whose expression is substantially similar or for any other act that infringes copyright. V. This article shall not be interpreted as allowing harm to the normal exploitation of the software or causing unjustified prejudice to the legitimate interests of the author. Any provision contrary to the provisions set out in II, III, and IV of this article shall be null and void."

It is therefore allowed under certain conditions and it is prohibited to forbid it.

In summary, according to my understanding: if you hold a license for the software and the interoperability information is not provided to you by the publisher, you can decompile the software to understand its internal workings solely for the purpose of making (interoperating) the software with other software.

Assessing the conditions is not always easy.

It may require consulting a legal professional.

Dal
20
J'
 
Far from me the idea of criticizing, we're on a tech forum and not a criminal code...
1
[Dal] Posted messages 6205 Registration date   Status Contributeur Last intervention   1 108
 
Hi J',

The technical answers were not provided because the previous contributors assumed that trying to retrieve source code from object code was illegal except for open-source software (which is partially incorrect)... and that it goes against the forum's charter to assist users in illegal activities.

But in fact, since we do not know the reason behind "Turki1923", we cannot tell if his case is legal (and it is up to him to take responsibility), the technical response could, in doubt, be the same anyway: "we're not going to help you with this, figure it out yourself"...


Dal
0
Turki1923 Posted messages 590 Status Membre 10
 
I had opened this topic a while ago to better understand how a program coded in C looked, and I was going to take examples from well-known software for my learning.

2 years later, I still don't know how to do it.
0
[Dal] Posted messages 6205 Registration date   Status Contributeur Last intervention   1 108
 
Hello Turki1923,

The best way to see what the source code of a C program looks like compared to a known program is to obtain the source code of an open-source software you use (as suggested), and to learn programming in C yourself.

If you are still using Ubuntu, you probably have plenty on your computer.

If the software is programmed in C, decompilation is very difficult, if not impossible (that is to say, recovering a C source file from an executable file), because the compilation phase performs different transformations and optimizations depending on the compilers (with loss of the original context in the result) and the compilation options. Not to mention that the executable could also be the result of linking object files resulting from the compilation of multiple files containing the source programs.

This difficulty or impossibility does not necessarily apply to other languages.

Regarding C, however, you can at most disassemble the C program (if the law permits), using a disassembler, which will translate the executable file into machine language (assembly language), that is to say into instructions directly understood by the processor of the machine for which the program was compiled. Assembly language is a very low-level programming language (very close to the machine) and it is very difficult to have a global understanding of the code through this type of exploration. Additionally, it can only be used on the processor for which the code is designed.

The gdb debugger present on Linux technically allows you to do this (legally, it depends, see above).


Dal
0
Turki1923 Posted messages 590 Status Membre 10
 
Yes, I'm still using Ubuntu, but I'm not really interested in looking at the source codes anymore.

I prefer to go at it myself without examples.

Thank you for your help.
0