Dans la mise à jour de macOS 15.4 publiée la semaine dernière, Apple a remplacé l'outil rsync par une implémentation alternative openrsync, développée par le projet OpenBSD. Le fichier exécutable /usr/bin/rsync dans macOS fait maintenant référence à openrsync. Cette substitution est probablement due à des problèmes de sécurité récemment découverts dans rsync, à la volonté de réduire les composants sous licences copyleft, et au désir de se débarrasser de la version obsolète de rsync, qui ne peut être mise à jour en raison de la politique de licence.
Les principales caractéristiques d'openrsync sont sa conception initiale axée sur la sécurité, la distribution du code sous la licence permissive ISC (famille BSD) au lieu de la licence copyleft GPL de rsync, et l'utilisation d'une architecture interne différente (un processus pour recevoir et envoyer des données utilisant une boucle d'événements). Au niveau du protocole, openrsync est compatible avec rsync, mais ne prend pas en charge toutes les options de ligne de commande, seulement celles les plus demandées pour la synchronisation des fichiers et la sauvegarde. L'absence de prise en charge des fonctions secondaires permet de maintenir la taille de la base de code d'openrsync en dessous de 10 000 lignes de code pour réduire la surface d'attaque. En comparaison, la dernière version de rsync compte 62 000 lignes en langage C.
Étant donné qu'une version obsolète de rsync 2.6.9, sortie en novembre 2006, était encore fournie avec macOS, ce remplacement ne conduira pas à une réduction significative de la fonctionnalité. La version rsync 2.6.9 a été choisie comme dernière version distribuée sous licence GPLv2+. Le suivant était la version rsync 3.0, passée sous licence GPLv3, qui interdit la tivoization (lien du logiciel au matériel).
Source : opennet.ru
