> Tech > Délier un fichier pendant son utilisation

Délier un fichier pendant son utilisation

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

On veut parfois créer des données temporaires dans le répertoire /tmp, utiliser les données pour une poignée de programmes, puis abandonner les données. Dans un tel cas, aucun autre programme du système ne doit pouvoir accéder au fichier.

Une manière astucieuse d’aborder ce programme consiste à délier le

fichier pendant qu’il est ouvert. Dans ce cas, le lien vers le fichier est supprimé mais les données du fichier proprement dites restent sur disque jusqu’à la fermeture du fichier. On peut donc utiliser le fichier pour un stockage temporaire sans craindre que d’autres programmes y accèdent. En effet, sans lien vers le fichier, comment d’autres programmes pourraient-ils le lire ?

La figure 11 montre le programme TEMPFILE2, qui démontre cette technique pour créer un fichier temporaire. Il utilise tmpnam() pour obtenir un nom de fichier unique (A en figure 11) puis ouvre un nouveau fichier de ce nom (B en figure 11). Le fichier étant ouvert, il peut le délier, rendant ainsi son accès difficile pour les autres jobs du système (C en figure 11). Une fois le fichier fermé, comme il n’existe plus de liens durs vers le fichier, les données sont supprimées (D en figure 11).

On peut même utiliser les API givedescriptor() et takedescriptor(), l’API spawn() ou l’API sendmsg() pour transmettre ce fichier temporaire à un job différent sur le système. Je préfère l’API spawn() parce qu’elle soumet le nouveau job et transmet le descripteur dans la foulée.

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010