Using Adobe Flash in developing Gnash in the EU

The question of exactly how legal it is to use Adobe Flash in the course of developing Gnash is a frequent topic on the Gnash mailing lists. Here I'll discuss the situation in the EU.

In this subject I'll avoid the term reverse engineering since it means different things to different people.

The relevant legislation in the EU is the Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs. Council directives are generally implemented also in national law, although the European Court of Justice has held that directives are binding on member states (i.e., EU countries) even if they have not (yet) added them into national law.

The relevant part of the directive is Article 5, paragraph 3:

The person having a right to use a copy of a computer program shall be entitled, without the authorization of the rightholder, to observe, study or test the functioning of the program in order to determine the ideas and principles which underlie any element of the program if he does so while performing any of the acts of loading, displaying, running, transmitting or storing the program which he is entitled to do.

In short, so long as you are allowed to use Adobe Flash, you can use it to observe and study to understand its behavior.

So first we must insure that we have the right to use Adobe Flash. This is easy, because usage of Adobe Flash is free under the Flash EULA.

Now the observant reader might point out that the EULA specifically prohibits using Adobe Flash in order to create a competing product (such as Gnash). However, the above-quoted article from the directive says that the study and observation may take place without the authorization of the rightholder. This means that Adobe cannot bindingly prohibit such activites in its licensing agreements.