Archives de l’auteur : Modificator

La comparaison des codes sources

La comparaison des codes sources d’OBM et de Blue Mind a révélé que l’équipe BLUE MIND a repris les fichiers source d’OBM en changeant leur entête de licence et en supprimant la mention de paternité de LINAGORA sur ceux-ci.

Voici comment LINAGORA s’en est aperçu :

Le code source de la solution Blue Mind est librement accessible et peut être téléchargé par quiconque à partir du site internet de la société BLUE MIND, en utilisant la commande :

git clone http://git.blue-mind.net bluemind

Lorsque, en avril 2012, BLUE MIND a révélé la version beta du logiciel Blue Mind au public en insistant sur son caractère novateur, LINAGORA s’est trouvée très intriguée.

La société LINAGORA a donc téléchargé le code source de la beta de Blue Mind, et a trouvé au cœur de son architecture des lignes de code java semblables à celles d’OBM, notamment les modules OBM-SYNC et OPUSH

Voulant en avoir le cœur net, LINAGORA a d’abord procédé seule à quelques comparaisons de codes sources de sa propre solution logicielle OBM, dans sa version 2.3.10, avec le logiciel Blue Mind, version beta 1.

Par exemple, pour le fichier Ical4JHelper.java, présent dans le module OBM-SYNC (à gauche) et dans le module net.bluemind.core de Blue Mind (à droite), la commande meld révélera très peu de changements, mis à part l’entête de licence et les mentions de paternité, totalement modifiées :

meld_iCal4jHelper_note

Le reste de la comparaison de ces fichiers fait apparaître qu’ils sont presque identiques :

meld_iCal4jHelper_note2  meld_iCal4jHelper_note3  meld_iCal4jHelper_note4  meld_iCal4jHelper_note5

meld_iCal4jHelper_note6  meld_iCal4jHelper_note7  meld_iCal4jHelper_note8  meld_iCal4jHelper_note9

Nous nous arrêtons aux 400 premières lignes de comparaison, mais les 900 et quelques lignes suivantes présentent la même régulière identité.

Que des développeurs puissent parfois, par coïncidence, créer des lignes de code qui se ressemblent, soit. Mais sur 1300 lignes d’un même fichier, toute coïncidence est exclue : BLUE MIND est partie d’OBM pour créer sa propre solution.

Et ce fichier Ical4jHelper.java est loin d’être le seul fichier d’OBM repris par BLUE MIND.

À ce stade, LINAGORA ne pouvait faire autrement que de s’interroger sur l’étendue de la reprise. D’autres fichiers étaient-ils concernés ? La réponse était et est encore et toujours oui, et les fichiers repris provenaient surtout des modules OBM-SYNC et OPUSH (mis à part quelques-uns, issus par exemple du module OBM-Locator).

Ne sachant pas exactement quelle version d’OBM avait été reprise par les équipes de BLUE MIND pour créer leur solution Blue Mind, LINAGORA a fait appel à un expert judiciaire, Monsieur Serge Migayron, qui a procédé à des comparaisons de 9 fichiers sources issus des modules OBM-SYNC et OPUSH avec des fichiers issus de deux versions différentes de Blue Mind :

Sa note technique a conclu à une reprise massive du code source java de ces modules d’OBM dans la solution Blue Mind. L’évidence et l’étendue de cette reprise de code source le contraint même dans sa note à utiliser l’expression « taux d’identité » plutôt que « taux de similitude » :

Cette note technique a également relevé (pages 34 à 37) que cette reprise par BLUE MIND avait été accompagnée d’une suppression des entêtes des fichiers source, et des mentions de paternité de LINAGORA.

Avant :

/* ***** BEGIN LICENSE BLOCK *****
 * 
 * Copyright (c) 1997-2008 Aliasource - Groupe LINAGORA
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License as
 * published by the Free Software Foundation; either version 2 of the
 * License, (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 * 
 * http://www.obm.org/ 
 * 
 * ***** END LICENSE BLOCK ***** */

Après :

/*BEGIN LICENSE
 * Copyright © Blue Mind SAS, 2012
 *
 * This file is part of Blue Mind. Blue Mind is a messaging and collaborative
 * solution.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of either the GNU Affero General Public License as
 * published by the Free Software Foundation (version 3 of the License)
 * or the CeCILL as published by CeCILL.info (version 2 of the License).
 *
 * There are special exceptions to the terms and conditions of the
 * licenses as they are applied to this program. See LICENSE.txt in
 * the directory of this program distribution.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * 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
 * END LICENSE
 */

Irrespectueuse de toute notion de propriété intellectuelle, l’équipe de BLUE MIND a modifié l’entête des fichiers sources d’OBM qu’elle a repris dans sa solution pour :

  • changer sans autorisation la licence des codes sources repris de « GNU General Public License as published by the Free Software Foundation; either version 2 of the License, (at your option) any later version » à « GNU Affero General Public License as published by the Free Software Foundation (version 3 of the License) or the CeCILL as published by CeCILL.info (version 2 of the License) » et « commercial licenses with additional warranties, professional functionalities or services » ;
  • supprimer et remplacer « Copyright (c) 1997-2008 Aliasource – Groupe LINAGORA » par « Copyright © Blue Mind SAS, 2012« .

La nature des modifications :

Nous avons les preuves que ces remplacements de licences et mentions de paternité dans les codes sources sont délibérés :

Le 30 mars 2012, après avoir constaté qu’un huissier de justice s’était connecté à leurs profils Linkedin, les membres de l’équipe BLUE MIND s’inquiètent de ce LINAGORA pourrait faire. Dans un courrier électronique adressé à son équipe se voulant rassurant, Pierre Baudracco, fondateur et principal actionnaire de BLUE MIND, indique ouvertement que l’équipe BLUE MIND a « fait ce qu’il faut » pour éviter le risque que LINAGORA ne revendique des droits sur le logiciel Blue Mind :

on_a_fait_ce_quil_faut

Malgré ces paroles qui se veulent rassurantes pour son équipe, Monsieur Pierre Baudracco est inquiet. Il vérifie donc le lendemain que toutes les traces du délit de contrefaçon ont bien été supprimées.

Or, il s’aperçoit que ce n’est pas le cas : il reste des mentions d’OBM dans le code source de Blue Mind accessible sur le git public de la société BLUE MIND. Résultat : le 31 mars 2012, à 10:45, Pierre Baudracco envoie un courrier électronique à l’équipe BLUE MIND intitulé : « On coupe le Git, n’importe quoi dedans ! », dont le contenu est : « des www.obm.org dans le repos git public !! » :

 

Le changement de modèle économique

 

Cherchant à maximiser ses profits au jour le jour, BLUE MIND entretient en permanence en confusion concernant son modèle économique.

Initialement, il s’agissait pour BLUE MIND de fournir le logiciel de messagerie sous deux versions et une triple licence :

  • une version libre et gratuite, sous double licence GNU Affero GPL v3 et CeCill v2, sans prestations de support associées ;
  • une version privatrice et payante, seule version pour laquelle BLUE MIND proposait du support.

licence_commerciale

La version privatrice et payante n’a bien entendu jamais été mise en évidence dans la communication de BLUE MIND pour ne pas s’attirer les foudres de la communauté, mais directement proposée à ses clients.

Évidemment, un tel modèle d’affaires requiert d’être titulaire des droits sur son propre code, et de ne pas avoir de briques tierces sous des licences comme la GNU GPL.

Ce n’était pas le cas de BLUE MIND, qui loin de repartir d’une page blanche, avait créé une nouvelle interface mais repris comme moteur de sa solution les modules au cœur d’OBM, qui sont sous des licences très protectrices des libertés des utilisateurs.

En clair, BLUE MIND faisait du privateur à partir de briques sous GNU GPL. Ce n’est pas seulement mal, c’est illégal.

En agissant pour protéger ses droits, LINAGORA a obligé BLUE MIND a purger son code de la licence privatrices payante. Avec la modification des entêtes de son code source intervenue le 21 janvier 2014, entre 2 heures et 4 heures du matin1, BLUE MIND a en effet opéré discrètement une nouvelle volte-face concernant de son modèle économique.

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

Avant, BLUE MIND propose une licence privatrice payante sur du code libre.

Après, le site de BLUE MIND et sa communication commerciale ne parlent plus du tout de licence privatrice payante, mais d’une offre de services avec une souscription autour de la solution Blue Mind.

Ainsi, craignant les conséquences graves de sa contrefaçon grossière, BLUE MIND a changé de modèle économique. C’est, avec les opérations de dissimulation du 21 janvier 2014, une admission implicite de la légitimité de la démarche de LINAGORA, et de la réalité de la contrefaçon.

 


 

1 Commits intitulés « Update header for 2014 » dans http://git.blue-mind.net/gitlist/bluemind/commits/master/

 

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é.

Des logiciels piratés

Certains logiciels sont indispensables à l’activité de la société BLUE MIND.

Or, ces logiciels sous licence privatrice ont un coût non négligeable pour une société récemment créée.

Afin de limiter ses coûts et accélérer son développement, la société BLUE MIND a donc mis en oeuvre une tactique de piratage systématique des logiciels « indispensables à son activité » pour s’en épargner les coûts de licence :

softs_pirates

Cet extrait provient d’un courrier électronique interne à la société BLUE MIND, récupéré lors de la saisie-contrefaçon. Et 2k8r2 désigne Microsoft Windows 2008 Server.

Autrement dit, les pratiques de contrefaçon de BLUE MIND pour les besoins de son activité sont générales et nullement limitées à la seule contrefaçon du code de LINAGORA et de celui de développeurs tiers dans la solution Blue Mind.

Travail au noir

Grâce à la saisie-contrefaçon, LINAGORA a pu mettre au jour des manœuvres frauduleuses dont elle ne soupçonnait même pas l’existence de la part de BLUE MIND.

Et quelles manœuvres !

Pendant les 18 mois qui ont suivi la démission de l’ensemble des membres de l’équipe OBM, ces derniers ont travaillé à la mise sur pied du projet Blue Mind :

  • soit en se faisant employer par des sociétés diverses (et notamment une société dont Pierre Baudracco est administrateur, E-DEAL) ;
  • soit directement par BLUE MIND ;
  • soit sans même être légalement déclaré.

Selon son niveau de trésorerie disponible, la société BLUE MIND fait en effet osciller ses collaborateurs entre le statut de salarié et celui de chômeur, pendant lequel ils continuent néanmoins de travailler de manière non déclarée pour BLUE MIND.

Le registre du personnel recueilli au cours de la saisie-contrefaçon permet de constater ces aller-retours de salariés, entrant puis sortant de l’entreprise :

rpbm

Ces délits de travail dissimulé répétés sont corroborés par un courrier électronique interne dans lequel Monsieur Pierre Baudracco, outre qu’il reconnaît à demi mot la reprise du code source d’OBM (« on a fait ce qu’il faut« ) fait état que Monsieur Anthony Prades travaille au noir pour BLUE MIND :

salarie_et_pas_vrai

Cette pratique de travail dissimulé par dissimulation d’emploi salarié concernant Monsieur Anthony Prades semble avoir continué dans le cadre des activités « normales » de BLUE MIND :

carrement_bien_renseigne

Aussi, pour Monsieur David Phan :

devirer_david

De même, pour Monsieur Pierre Carlier qui mentionne son « nouvel employeur » au détour d’une conversation instantanée recueillie au cours de la saisie-contrefaçon :

screenshot5

Ainsi, à la contrefaçon du code de LINAGORA et du code d’autres développeurs, s’ajoute le travail au noir.

Pour compléter le tableau, BLUE MIND ne craint pas d’utiliser des logiciels piratés pour les besoins de son activité.

Les arguments de BLUE MIND

BLUE MIND expose de multiples arguments pour tenter de discréditer la position de Linagora. Aucun n’est sérieux.

Sur la titularité de Thomas Cataldo

Les expertises réalisées par LINAGORA ont permis de démontrer que BLUE MIND avait repris au moins deux modules fondamentaux d’OBM, OBM-Sync et OPUSH.

Après avoir nié totalement la reprise du code OBM, BLUE MIND a fini par admettre, quoique de manière très discrète, qu’elle avait bien repris du code d’OBM.

Toutefois, pour minorer l’impact de cette reprise, BLUE MIND prétend n’avoir repris qu’un seul module – OBM-SYNC.

En effet, d’après BLUE MIND, LINAGORA ne serait pas titulaire des droits sur OPUSH. Ainsi, Monsieur Thomas Cataldo est volontairement intervenu dans la procédure d’action en contrefaçon diligentée par LINAGORA contre BLUE MIND, se prétendant titulaire des droits sur OPUSH.

Cette intervention de Monsieur Thomas Cataldo, qui n’avait auparavant n’avait jamais exprimé une telle revendication, devrait bien entendu être mise en perspective avec son statut d’actionnaire de BLUE MIND :

PV_AGE_Extrait_Cataldo

BLUE MIND invente donc un certain nombre d’arguments pour tenter de « sauver la face » concernant le module OPUSH :

  1. Thomas Cataldo serait seul et unique auteur et donc seul et unique titulaire des droits sur le module OPUSH (une implémentation libre d’ActiveSync) utilisé dans OBM et repris dans la solution de messagerie Blue Mind avec un changement de licence (et une modification de la paternité) ;
  2. Thomas Cataldo aurait donné l’autorisation de cette reprise et modification de paternité à la société BLUE MIND.

Ces deux arguments sont faux.

La forge OPUSH sur Google code a été enregistrée avec l’adresse e-mail « gmail » de Thomas Cataldo, et celui-ci est indiqué comme « mainteneur ».

Mais à y regarder de plus près :

  • Les premiers commits de Thomas Cataldo sur la forge ont été réalisés pendant son temps de travail, et avec une adresse e-mail ALIASOURCE. Avec les règles de dévolution automatique des droits à l’employeur, ces commits ont été faits au nom et pour le compte d’ALIASOURCE et donc de LINAGORA qui a racheté ALIASOURCE et tous ses actifs.
  • D’autres salariés de LINAGORA autres que Thomas Cataldo, ont, dans l’exercice de leurs fonctions, contribué de manière importante au projet sur la forge Google d’OPUSH, notamment Adrien Poupard.
  • Cette forge utilisait le bugzilla d’OBM pour gérer les rapports de bugs :o-push_bugzilla
  • Cette forge est morte depuis que Thomas Cataldo a quitté LINAGORA, ce qui prouve a contrario que son travail sur OPUSH n’était pas un hobby personnel mais relevait de son activité professionnelle à LINAGORA. Ainsi, il est aisé de constater que le dernier commit date d’octobre 2010.

o-push issue tracking

Pourquoi ouvrir la forge avec une adresse mail google personnelle et non une adresse « @linagora.com », dans ce cas ? Parce qu’à l’époque de l’ouverture de cette forge, les conditions générales de Google exigeaient un compte gmail pour démarrer un projet, ce qui n’est plus le cas aujourd’hui :

o-push_forge_account

En tant que chef développeur du module OPUSH pour OBM, il était normal que Thomas Cataldo soit mainteneur de la forge Google Code pour OPUSH. Cependant, à son départ, Thomas Cataldo a refusé de restituer à LINAGORA les droits d’accès à cette forge google, alors même qu’elle a été ouverte sur les instructions de LINAGORA pour l’un de ses projets internes.

LINAGORA s’est donc vue contrainte de rapatrier son propre code d’OPUSH sur une autre forge afin de continuer à le faire vivre.

Sur la question de l’autorisation de reprise, celle-ci est sans valeur, et constitue à nouveau une tentative d’appropriation de code par un membre de l’équipe BLUE MIND, puisque LINAGORA est bien titulaire du code d’OPUSH.

Mais, même à supposer que LINAGORA ne serait pas titulaire d’OPUSH par le biais de la dévolution automatique des droits à l’employeur, OPUSH serait alors une création collaborative avec plusieurs auteurs, dont Thomas Cataldo et Linagora, de sorte que l’unanimité des auteurs serait nécessaire pour faire des actes aussi importants que celui de changer la licence ou les mentions de paternité du code. Sinon, celui des auteurs qui changerait ces mentions et cette licence sans l’autorisation des autres violerait les droits d’auteur de ces derniers.

BLUE MIND est parfaitement consciente de cette violation et de l’impossibilité de prétendre avoir l’autorisation des auteurs pour reprendre et changer la licence d’OPUSH, puisque sous le prétexte de modifier quelques fautes de frappe ( le titre du commit est « Fix some typos« ), elle a changé le 24 janvier 2014 le fichier licence.txt :

o-push_fausses_typos

Là où BLUE MIND prétendait auparavant disposer de l’accord de l’auteur pour intégrer le code d’OPUSH et en modifier la licence, ce n’est désormais plus le cas.

Dans tous les cas, Thomas Cataldo est en totale violation des droits d’auteur de LINAGORA. Mais il est vrai que l’équipe de BLUE MIND ne s’embarrasse pas de scrupules lorsqu’elle reprend le code de tiers.

En matière de logiciels libres, la notion de contrefaçon serait différente (selon Blue Mind)

Lorsque LINAGORA a assigné BLUE MIND devant le Tribunal de grande instance pour contrefaçon, BLUE MIND a prétendu qu’en matière de logiciels libres, la notion de contrefaçon devait s’apprécier d’une manière différente par rapport au modèle propriétaire.

C’est faux.

En matière de logiciel libre, la notion de contrefaçon est connue et déjà tranchée : « tout non-respect de licence emporte le risque de se voir qualifier de contrefacteur : tout usage n’entrant pas dans le cadre de la licence est un usage non autorisé et donc contrefaisant.

Par ailleurs, en cas de violation, par certains usages de droits de propriété intellectuelle, ou plus fréquemment, du non-respect du formalisme de la licence, celle-ci sera généralement automatiquement résiliée et l’ancien licencié se trouvera rapidement contrefacteur pour tout usage de la création » – Benjamin Jean, « Du bon usage des licences libres », éditions Framasoft

Il n’y a en réalité aucune différence de nature entre un logiciel propriétaire et un logiciel libre. Les deux ont une licence, les deux sont reliés à leur créateur par une mention de paternité. Dans les deux cas, constituent des actes de contrefaçon le fait de :

  • violer les stipulations de la licence ;
  • modifier sans autorisation la licence ;
  • porter atteinte à la mention de paternité.

Ce qui change entre les logiciels libres et les logiciels propriétaires, c’est ce qui constitue une violation de la licence (cas n°1). Pour les logiciels propriétaires, une violation consiste par exemple à copier le logiciel pour le donner à un tiers. Pour les logiciels libre une violation consiste par exemple ne pas respecter l’obligation de fournir un accès au code source lors de la redistribution.

Dans le cas de BLUE MIND, la violation de la licence consiste à redistribuer le code source d’OBM sous une licence propriétaire et des licences non-compatibles. Et en outre, BLUE MIND a brisé le lien de paternité entre l’auteur et sa création en supprimant les mentions de paternité.

Confusion sur les versions reprises

Les développeurs de BLUE MIND affirment avoir mis quelques mois, au cours de leur temps libre (ceux qui n’étaient pas inscrits à Pôle Emploi exerçaient en même temps une activité professionnelle) à développer un logiciel présenté comme la nouvelle génération plus performante d’une solution qu’ils avaient pourtant mis plus de 10 ans à mettre au point.

LINAGORA a fait expertiser les codes sources disponibles sur internet pour les comparer avec le code d’OBM par Monsieur Serge Migayron, spécialiste de la preuve numérique, qui a conclu :

  • à la reprise massive de code Java d’OBM par BLUE MIND ;
  • à la suppression totale de toute mention de paternité de LINAGORA1 et même de contributeurs tiers ;
  • à l’exploitation du logiciel Blue Mind sous des licences incompatibles avec les licences d’origine d’OBM, et notamment une licence commerciale.

Son rapport indique :

« ces taux d’identité sont très élevés, ne peuvent s’expliquer par des contraintes techniques et ne laissent aucun doute quant à une origine commune des programmes comparés. Les noms des programmes sont d’ailleurs identiques dans les deux logiciels. »

Pour se défendre contre cette évidence technique, BLUE MIND allègue que LINAGORA entretiendrait une confusion, et aurait comparé des versions de codes sources qui l’arrangent en termes de reprise et de licence, en se gardant de dire quelle version du code d’OBM les équipes de BLUE MIND ont repris.

Mais comment le savoir ? Ce n’est pas LINAGORA qui a repris le code source d’OBM !

Tout ce que l’expert sollicité par LINAGORA a constaté, c’est qu’il y a du code commun entre les deux logiciels, et que les entêtes de licence et les mentions de paternité ont été supprimées et remplacées.

Mais quel code source originel ? Impossible de savoir à moins de demander aux intéressés. Et ceux-ci ne semblent pas vouloir le révéler.

D’après BLUE MIND, OBM ne serait pas original

BLUE MIND prétend pour se défendre que le logiciel OBM et les modules repris ne seraient pas originaux. Évidemment, un logiciel non original ne serait pas protégeable par le droit d’auteur, donc n’importe qui pourrait en faire n’importe quoi.

Cette position est totalement absurde.

Les premières versions de ces programmes ont été développées justement par les membres de l’équipe BLUE MIND lorsqu’ils faisaient partie d’ALIASOURCE puis de LINAGORA GSO,

LINAGORA a aussi demandé son avis à l’expert qu’elle avait déjà sollicitée pour comparer les codes sources, à savoir Monsieur Serge Migayron.

Sa note technique n° 2 sur l’originalité montre que le développement du code source des programmes OPUSH et OBM-SYNC a requis, à chaque étape du processus de leur création, des choix de conception opérés par leurs programmeurs. Il s’agit de la définition même de la notion d’originalité en informatique.

En outre, pour autant qu’il puisse être admis que des contraintes techniques extrêmes puissent aboutir à une implémentation sans intelligence, ceci est surtout valable pour du code de bas niveau ou de faible importance en nombre de lignes de code.

Or, en avril 2012, OBM, OBM-SYNC et OPUSH représentaient respectivement 663, 49, et 58 milliers de lignes de code dans des langages de haut niveau. En outre, OBM représente dorénavant 1165 milliers de lignes de code, et OBM-SYNC et OPUSH respectivement 107 et 153 milliers de lignes de code.

Un tel effort de programmation rend quasiment certaine l’originalité de ces programmes.

D’après BLUE MIND, il ne pourrait pas y avoir de reprise car les logiciels sont écrits dans des langages différents

Dans la continuité de la contestation de la reprise, BLUE MIND tente de tirer parti de la différence des langages de programmation utilisés pour coder OBM et coder Blue Mind. Bien entendu, cet argument est totalement fallacieux : la reprise dans Blue Mind de fichiers source d’OBM en violation de leur licence et de leur paternité porte évidemment sur les fichiers sources écrits dans le même langage – en l’occurrence en java.

LINAGORA a concentré ses recherches de reprise en violation de licence sur les fichiers codés en java, qui sont au cœur d’OBM.

Peut-être y a-t-il d’autres reprises de code source en violation de leur licence pour d’autres modules qu’OBM-SYNC ou OPUSH, ou encore dans d’autres langages de programmation que java, ou non ?

Une chose est certaine, les violations de licence et de paternité de BLUE MIND sont plus étendues que le seul code d’OBM repris.



1
 La note d’expertise de Serge Migayron du 18 février 2013 a conclu au remplacement des mentions de paternité de LINAGORA (Copyright © 1997 – 2008 ALIASOURCE – Groupe LINAGORA) par celles de Blue Mind (Copyright © Blue Mind SAS, 2012).

L’exemple du Ministère de l’Intérieur

L’histoire de l’équipe BLUE MIND et de LINAGORA vis-à-vis de ce client de prestige donne un aperçu flagrant des pratiques et de l’état d’esprit de BLUE MIND contre lequel LINAGORA lutte tout en s’efforçant de stopper la contrefaçon d’OBM.

Initialement, le Ministère de l’Intérieur est un utilisateur d’OBM, client d’ALIASOURCE avant que cette société ne soit rachetée par LINAGORA.

A l’origine, les difficultés rencontrées par ALIASOURCE dans la délivrance de projets OBM pour ses grands clients, et notamment le Ministère de l’Intérieur, figuraient en bonne place dans les raisons qui ont motivé la cession de cette société à LINAGORA.

A l’époque, OBM est le premier logiciel libre développé en France conçu pour répondre aux attentes de très grands utilisateurs comme le Ministère de l’Intérieur en matière de messagerie collaborative. ALIASOURCE ne disposait toutefois pas de la structure suffisante permettant d’assurer la délivrance de tels projets.

Incapable d’investir suffisamment de ressources techniques et humaines nécessaires pour mener à bien les marchés qu’elle avait remportés, ALIASOURCE était en difficulté pour respecter ses engagements et les objectifs promis à ses clients et en particulier au Ministère de l’Intérieur.

Malgré cela, les anciens dirigeants d’ALIASOURCE ont réussi à faire illusion pendant quelques mois auprès, d’une part, de leurs clients et, d’autre part, de LINAGORA, avec d’autant plus de facilité qu’ils jouissaient d’une confiance et d’une autonomie totales à la suite de leur rachat par LINAGORA.

Une fois écoulée la période de bonus (earn-out) liés aux résultats de LINAGORA GSO permettant aux actionnaires fondateurs d’ALIASOURCE de toucher leurs compléments de prix, les difficultés sur ce projet ont commencé à apparaître au grand jour. Comme par ailleurs l’ancienne équipe ALIASOURCE quittait LINAGORA sous l’impulsion des futurs fondateurs de BLUE MIND, LINAGORA a dû assumer seule les conséquences de la mauvaise gestion de ce projet OBM.

LINAGORA a donc assuré, dans l’urgence et à grand frais, la remise sur pied complète d’une équipe de développement, pour faire face aux engagements pris mais jamais tenus par l’ancienne équipe. C’est cette nouvelle équipe qui, dans le cas du Ministre de l’Intérieur, avec la collaboration intensive du client, a réussi à mener à bien ce projet, qui s’est terminé le 9 août 2013.

Malgré ce succès, la stratégie de parasitisme de BLUE MIND lui a par la suite permis d’écarter LINAGORA du marché du Ministère de l’Intérieur concernant le support d’OBM, qui a été attribué à BLUE MIND via une sous-traitance.

Paradoxe : c’est la même équipe technique, qui s’est avérée incapable de déployer OBM pour le Ministère de l’Intérieur, qui a remporté le soin de le maintenir…

La saisie-contrefaçon a permis à LINAGORA de comprendre comment BLUE MIND s’y est pris pour remporter ce marché de support.

Dans un premier temps, Monsieur Pierre Baudracco a pris contact avec le directeur du projet OBM au sein du Ministère de l’Intérieur, qui lui a fait part de difficultés rencontrées par LINAGORA.

Le 18 juin 2012, dans un mail adressé à toute l’équipe BLUE MIND,  Pierre Baudracco fait part de la satisfaction qu’il retire des difficultés rencontrées par LINAGORA, et de la possibilité pour BLUE MIND de faire perdre ce marché à LINAGORA, à son propre profit et gagner dans la foulée un contrat de support inter-­ministériel.

Pierre Baudracco confie alors ses impressions à toute l’équipe BLUE MIND :

exciteaumax

puis

surmotive

Le 19 juin 2012, Anthony Prades répondra à toute l’équipe BLUE MIND :

interessant

puis, dans le même courriel :

pas_insensible

Le 20 juin 2012, Mehdi Rande fera part de ses réserves sur la faisabilité technique d’un tel projet mais montre sans aucune retenue la volonté de nuisance et de parasitisme qui anime les salariés et actionnaires de BLUE MIND, ainsi que le mépris total des personnes pour qui BLUE MIND travaille :

La stratégie de l’équipe BLUE MIND est particulièrement perverse : elle consiste à utiliser à son profit les conséquences de sa propre mauvaise gestion lorsqu’elle travaillait pour LINAGORA. Puis, profitant de la désorganisation qu’elle a sciemment provoqué au sein de LINAGORA, BLUE MIND est en mesure de provoquer l’éviction de LINAGORA du marché de support d’OBM pour le Ministère de l’Intérieur, en septembre 2013.

Dans sa dernière plaquette commerciale en date, BLUE MIND revendique le Ministère de l’Intérieur comme la principale référence de client de sa solution Blue Mind.

refs

Or, si la société BLUE MIND est bien en charge de réaliser le support du logiciel OBM pour le compte du Ministère de l’Intérieur depuis septembre 2013, en aucun cas, le logiciel Blue Mind n’est utilisé par le Ministère de l’Intérieur.

Cette plaquette est donc un mensonge de plus de la part de BLUE MIND !

BLUE MIND veut faire taire LINAGORA !

Le 15 mai 2014, LINAGORA a reçu un courrier recommandé de la part de BLUE MIND :

Comme vous pourrez le lire, dans ce courrier recommandé, BLUE MIND considère que la divulgation par LINAGORA du litige existant entre elle et BLUE MIND vise à lui nuire.

BLUE MIND met en outre LINAGORA en demeure de :

  • cesser toute communication, directe ou indirecte, relative au litige qui oppose LINAGORA et BLUE MIND ;
  • cesser de « menacer » les prospects et clients de la société BLUE MIND ;
  • cesser la campagne publicitaire faisant état de l’existence de contrefaçon du logiciel OBM ;
  • de manière générale, de cesser tout agissement visant à dénigrer la société BLUE MIND.

Les objectifs de la communication du litige par LINAGORA

Contrairement aux allégations de BLUE MIND, la communication du litige par LINAGORA vise d’abord et avant tout à répondre à un principe de transparence.

LINAGORA et BLUE MIND entendent tous deux se positionner comme des acteurs sur le marché du logiciel libre.

Or, la différence essentielle entre le logiciel libre et celui propriétaire est que le code et les modes de développement du second sont cachés, occultés, alors que le développement du premier se fait en pleine lumière, à la vue et au su de tous.

On aura vu d’autres affaires dans le domaine du logiciel libre : SCO v. IBM ou Novell, FSF v. Cisco, FSF c. Free pour ne citer que celles-ci, dont les éléments factuels et juridiques, et les arguments échangés entre les parties ont été publiés au fur et à mesure des procédures bien avant qu’une décision intervienne, et sans que personne, et surtout pas la communauté des développeurs, n’y trouve à redire.

Pourquoi cacher, dans ces conditions, l’existence d’un litige en cours dans ce domaine ? Pourquoi occulter des faits techniques incontestables, que tout à chacun peut pourtant vérifier en téléchargeant les codes sources des logiciels concernés et en les comparant ?

Une seule explication nous semble possible : BLUE MIND ne veut pas que soient révélés ces faits parce qu’ils mettent en lumière son imposture et ses agissements frauduleux.

Communication directe ou indirecte relative au litige qui oppose LINAGORA et BLUE MIND

LINAGORA est maîtresse de sa propre communication. LINAGORA communique en exposant des faits.

BLUE MIND indique que sa solution est une nouvelle génération de messagerie Open Source. Elle ne l’est pas, et c’est un fait objectif sur lequel LINAGORA est parfaitement en droit de communiquer.

BLUE MIND prétend être repartie d’une page blanche. Ce n’est pas le cas, et c’est un fait objectif sur lequel LINAGORA est parfaitement en droit de communiquer.

BLUE MIND a modifié les entêtes des fichiers de code source des projets tiers qu’elle a repris, pour en remplacer la licence par la sienne propre et pour en remplacer les mentions de paternité par les siennes. C’est un fait objectif sur lequel LINAGORA est parfaitement en droit de communiquer.

Le fait de modifier les entêtes de fichiers source de projets tiers pour en modifier la licence et en remplacer les mentions de paternité relève du délit de contrefaçon. C’est un fait objectif, sur lequel LINAGORA est parfaitement en droit de communiquer :

 

LINAGORA a diligenté des procédures judiciaires contre BLUE MIND, notamment sur le fondement de la contrefaçon. C’est un fait objectif sur lequel LINAGORA est parfaitement en droit de communiquer.

BLUE MIND n’a, pour le moment, pas été condamnée par la justice pour contrefaçon. C’est tout à fait exact. Il serait donc inexact de dire « BLUE MIND a été reconnue coupable de contrefaçon« . Il est en revanche exact de dire que « BLUE MIND a commis des actes que la loi qualifie de contrefaçon ».

Selon la logique de BLUE MIND, un utilisateur faisant une copie de Microsoft Windows sans licence ne serait pas contrefacteur avant d’avoir été condamné par la justice. Ah ! Ceci explique donc cela !

Cesser de menacer les prospects et clients de la société BLUE MIND

LINAGORA ne formule aucune menace de quelque sorte que ce soit, envers qui que ce soit.

LINAGORA communique sur des faits objectifs qui sont constitutifs d’un risque juridique. Ce risque juridique pèse tant sur BLUE MIND, que sur ses utilisateurs. Les en informer, c’est leur rendre service, et non les menacer.

Cesser la campagne publicitaire faisant état de l’existence de contrefaçon du logiciel OBM

L’existence, sur le marché de la messagerie Open Source, de contrefaçons du logiciel OBM ne respectant pas les licences de son code source ni la paternité de LINAGORA est un fait objectif, sur lequel LINAGORA est parfaitement en droit de communiquer.

Cesser tout agissement visant à dénigrer la société BLUE MIND

LINAGORA n’a commis ni ne commet aucun agissement visant à dénigrer la société BLUE MIND.

Loin de craindre la concurrence, LINAGORA considère que celle-ci favorise l’innovation. De nombreux anciens de LINAGORA ont créé de nouvelles sociétés, qui sont de beaux projets : par exemple Normation, Centreon, Inno3, ou encore LibrIT. La différence essentielle est que les fondateurs de ces projets n’ont pas violé leurs obligations contractuelles, et surtout ne se sont pas livrés à des agissements contrefaisants, à la différence des fondateurs de BLUE MIND.

Loin de vouloir dénigrer BLUE MIND, LINAGORA trouve que la messagerie Blue Mind est un beau projet, avec une belle interface. Il est vraiment dommage qu’il s’agisse au final d’une contrefaçon, alors qu’il était si simple de respecter les principes et les valeurs du logiciel libre.