Les opérations de dissimulation du 21 janvier 2014

La pression judiciaire et le grand nombre de preuves réunies par LINAGORA à la suite de la saisie-contrefaçon réalisée dans les locaux de BLUE MIND ont forcé cette dernière a mener dans la plus grande discrétion des opérations de modification du code source de sa solution Blue Mind.

Le 21 janvier 2014, entre 2 et 4 heures du matin, par trois commits intitulés « Update header for 2014 » dans http://git.blue-mind.net/gitlist/bluemind/commits/master/, BLUE MIND a apporté d’importantes modifications sur le code de sa solution logicielle, que chacun peut aisément vérifier en téléchargeant le code source de Blue Mind et en recherchant les commits dont les ID SHA sont :

ID 70e74913fababf40f7eb5b8759ec6cd0fa9b0f5c
ID 771a1d5e07f2b4d9795eff3a14aaa2d572058147
ID fc7b86c544ce105a4531f7bb59b8f84b5c5693ac

Ces modifications sont :

  • La suppression de la licence commerciale qui figurait dans les fichiers d’en-tête de la solution Blue Mind, et qui est interdite par la licence libre des fichiers sources d’OBM repris. Voici la différence entre les entêtes des codes source de la solution Blue Mind avant (à gauche) et après (à droite) cette mise à jour :

changt_entet_21022014

Le texte supprimé est le suivant :

* Blue Mind SAS also offers commercial licenses with additional warranties,
* professional functionalities or services. If you purchase a commercial
* license, then it supersedes and replaces any other agreement between 
* you and Blue Mind SAS (above licenses and LICENSE.txt included). 
* See http://www.blue-mind.net/licenses
  • La restauration de mentions de paternité de Linagora pour certains fichiers. Ce rétablissement prouve la fausseté du discours marketing de BLUE MIND, également avancé devant les Tribunaux, consistant à dire que Blue Mind ne serait pas un fork d’OBM.

Ces modifications constituent l’aveu le plus flagrant que Blue Mind est une œuvre dérivée d’OBM.

Néanmoins, la société BLUE MIND ne respecte toujours pas la licence originelle d’OBM et la solution BLUE MIND demeure un logiciel contrefaisant, pour deux raisons :

1. Des modifications incomplètes à la seule attention des Tribunaux

Dans le cadre des actions judiciaires menées contre BLUE MIND pour prouver la réalité de la contrefaçon, LINAGORA a présenté aux juridictions saisies des fichiers source issus d’OBM repris par BLUE MIND dont les licences ont été modifiées et les mentions de paternité de LINAGORA supprimées.

Lors de ces modifications du 21 janvier 2014, censément à des fins de « Update headers for 2014 » (mise à jour des entêtes pour 2014), l’équipe de BLUE MIND a donc remis des mentions de paternité de LINAGORA dans des fichiers sources de Blue Mind.

Cependant, cette « régularisation » est de pure opportunité et a pour seul objectif de troubler les procédures juridictionnelles en cours contre BLUE MIND. En effet, BLUE MIND s’est limitée à mettre des mentions de paternité de LINAGORA pour les seuls fichiers évoqués au cours des procédures.

Ainsi, ce fichier source de Blue Mind :

plugins/net.bluemind.core.common.ical4j/src/net/bluemind/core/common/ical4j/Ical4jHelper.java

qui est issu du fichier source d’OBM :

/obm/java/sync/icalendar/src/main/java/org/obm/icalendar/Ical4jHelper.java

et qui a été évoqué dans la procédure judiciaire d’action en contrefaçon devant le Tribunal de grande instance, a, été modifié de manière significative par l’équipe BLUE MIND au cours des opérations du 21 janvier 2014.

Comparons l’état de ce fichier au 25 avril 2012 (à gauche) et au 4 mars 2014 (à droite) :

meld_ical4jHelper_avant-apres

On constate la disparition de la licence commerciale, de la licence CeCill V2, et l’apparition d’une mention de paternité de LINAGORA.

En revanche, à titre d’exemple, ce fichier source de Blue Mind n’a jamais été évoqué dans les procédures judiciaires :

plugins/net.bluemind.core.common/src/net/bluemind/core/common/calendar/CalendarItemsParser.java

BLUE MIND l’a bien modifié au cours de ses opérations du 21 janvier 2014 pour en supprimer la mention commerciale, mais sans y appliquer aucune mention de paternité de LINAGORA (du moins au 4 mars 2014 – date à laquelle ce fichier source a été copié du git de BLUE MIND), alors que ce fichier était en réalité le fichier source d’OBM suivant :

java/sync/common/src/main/java/org/obm/sync/calendar/CalendarItemsParser.java

Une comparaison avec la commande meld de ces deux fichiers dans leur état actuel permet d’en avoir le cœur net et de constater les lignes identiques et celles modifiées. Sur chaque copie d’écran, se trouve à gauche le fichier issu d’OBM qui comporte les mentions de paternité de LINAGORA, et à droite, le fichier figurant dans Blue Mind à la date du 4 mars 2014, dans lequel les mentions de paternité de LINAGORA ont été remplacées par celles de BLUE MIND :

meld_CalendarItemsParser_0314meld_CalendarItemsParser_0314_2meld_CalendarItemsParser_0314_3

Les modifications apportées aux entêtes sont donc incomplètes, ce qui prouve que l’intention de BLUE MIND, en menant les opérations du 21 janvier 2014, était de limiter son risque par rapport aux procédures judiciaires en cours.

2. BLUE MIND continue d’usurper les prérogatives de LINAGORA même sur les fichiers avec une mention de paternité

Seul le titulaire des droits sur un logiciel dispose de la prérogative de modifier sa licence et par suite l’entête de son code source. Un tiers reprenant un code source sous licence libre dans sa propre solution doit laisser le code repris sous sa licence d’origine, et doit publier sa solution soit sous la même licence, soit sous une licence compatible.

Ce n’est pas ce qu’a fait, et ce n’est toujours pas ce que fait BLUE MIND.

Si l’on reprend l’exemple du fichier Ical4jHelper.java issu du code source d’OBM, quelle que soit la version de ce fichier reprise par BLUE MIND, il y a encore violation de sa licence.

Cas de reprise d’une ancienne version d’Ical4jHelper.java

Comparons avec meld une ancienne version du fichier dans le code source d’OBM (par exemple dans la version 2.3.10 du module OBM-SYNC) avec la version du fichier dans le code source de Blue Mind à la date du 4 mars 2014 (à droite) :

meld_ical4jHelper_obm2.3.10_bmnewest

Outre que l’on ne constate que peu de changements dans le code source, les entêtes diffèrent sur la version de la licence GNU GPL applicable.

En effet, alors que le fichier source issu d’OBM est sous licence GNU GPL v2 ou ultérieure (GNU General Public License as published by the Free Software Foundation; either version 2 of the License, (at your option) any later version), BLUE MIND a remplacé la licence et l’a remplacée par la licence GNU GPL v3 ou ultérieure (GNU General Public License as published by the Free Software Foundation; either version 3 of the License, (at your option) any later version).

Il s’agit d’une violation de la licence GNU GPL v2 originelle, puisque la compatibilité de la licence GNU GPL v3 et GNU GPL v2 est univoque : on peut intégrer un composant GNU GPL v2 ou ultérieur dans une solution sous licence GNU GPL v3, mais pas l’inverse (la flèche va dans un seul sens) :

quick-guide-gplv3-compatibility.fr

Source : Free Software Foundation

Ainsi, si elle a changé la licence du code source repris et modifié de la version 2 de la licence GNU GPL à la version 3 ou ultérieure, BLUE MIND interdit en pratique que ce code (et les modifications qu’elle y a apportées) puissent être redistribués sous la version 2 de la licence GNU GPL, alors qu’il s’agissait pourtant de la licence d’origine.

Si BLUE MIND a repris une version ancienne d’OBM (et donc ce fichier source sous licence GNU GPL v2), il s’agit donc d’une atteinte à la licence du code source originel, de sorte que ce fichier source modifié par BLUE MIND demeure contrefaisant.

Cas de reprise d’une version récente d’Ical4jHelper.java

Comparons avec meld la version OBM de ce fichier (à gauche) et la version Blue Mind de ce fichier (à droite), tous deux à la date du 4 mars 2014 :

meld_ical4jHelper_obm0314_bmnewest

Outre que ces deux fichiers source présentent des différences un peu plus nombreuses compte tenu de leur évolution indépendante, l’entête du fichier version OBM présente une licence GNU Affero GPL v3 ou ultérieure, et l’entête Blue Mind présente une licence GNU GPL v3 ou utlérieure.

Or, les licences GNU Affero GPL et GNU GPL sont des licences différentes. La licence GNU Affero GPL stipule en effet des obligations plus fortes (précisément, fournir licence et accès au code source du programme aux tiers qui l’utilisent à travers un réseau) que la licence GNU GPL.

Ainsi, si elle a changé la licence du code source repris et modifié de la licence GNU Affero GPL à la licence GNU GPL, BLUE MIND s’est arrogé le droit de délier les tiers, auxquels elle fournit ce fichier source, d’obligations auxquelles elle est pourtant elle-même astreinte.

Si BLUE MIND a repris une version récente d’OBM (et donc ce fichier source sous licence GNU Affero GPL), il s’agit donc d’une atteinte à la licence du code source originel, de sorte que ce fichier source modifié par BLUE MIND demeure contrefaisant.

La manipulation des entêtes des fichiers source par BLUE MIND pour défendre sa cause montre clairement dans quelle démarche de dissimulation se trouvent les dirigeants de cette société.

Partager Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someonePrint this page