Une application ne peut donc créer de nouveaux fichiers.
Si, mais seulement ceux dont le nom lui a été passé sur sa ligne de commande.
En revanche, pour des fonctionnalités du genre "nouveau document" ou "enregistrer sous", il faudra effectivement passer par un programme externe. Mais ça ne pose aucun problème : en effet, les programmes graphiques qui proposent ces fonctionnalités le font déjà en employant des bibliothèques (c'est pour ça que les apparences de ces boîtes de dialogue sont si semblables). Tout ce qu'il y aura à faire, c'est de fournir une bibliothèque appelant ce programme.
que l'exemple du ':!ls' ne te fasse pas percuter que c'est ce que les applications passent leur temps à faire
Hmmm... Quelles applications font ce genre de choses? Je veux dire, le lancement de commandes entièrement arbitraires. Je ne vois guère que les shells (gérés), les scripts de l'utilisateur (gérés), et les "make" (gérés).
En ce qui concerne les applications qui ont besoin de faire appel à une autre de façon prévisible, pas de problème : cela signifie que le second programme fait partie de leurs dépendances, et donc qu'ils ont dans leur racine un lien matériel vers le lanceur de ce programme.
Par exemple, si tu as un programme qui a une dépendance sur ls, alors il aura, dans sa racine, un fichier /bin/ls correspondant au lanceur de ls, qui lui permettra de le lancer à volonté, sans restrictions. Mais comme l'accès au lanceur d'un programme n'implique pas l'accès à son xchroot, cela laisse intacte la sécurité de l'application, comme celle de ls.
[^] # Re: Intéressant
Posté par Emmanuel Colbus . En réponse au journal Annonce : Manux 0.0.1. Évalué à 5.
Si, mais seulement ceux dont le nom lui a été passé sur sa ligne de commande.
En revanche, pour des fonctionnalités du genre "nouveau document" ou "enregistrer sous", il faudra effectivement passer par un programme externe. Mais ça ne pose aucun problème : en effet, les programmes graphiques qui proposent ces fonctionnalités le font déjà en employant des bibliothèques (c'est pour ça que les apparences de ces boîtes de dialogue sont si semblables). Tout ce qu'il y aura à faire, c'est de fournir une bibliothèque appelant ce programme.
Hmmm... Quelles applications font ce genre de choses? Je veux dire, le lancement de commandes entièrement arbitraires. Je ne vois guère que les shells (gérés), les scripts de l'utilisateur (gérés), et les "make" (gérés).
En ce qui concerne les applications qui ont besoin de faire appel à une autre de façon prévisible, pas de problème : cela signifie que le second programme fait partie de leurs dépendances, et donc qu'ils ont dans leur racine un lien matériel vers le lanceur de ce programme.
Par exemple, si tu as un programme qui a une dépendance sur ls, alors il aura, dans sa racine, un fichier /bin/ls correspondant au lanceur de ls, qui lui permettra de le lancer à volonté, sans restrictions. Mais comme l'accès au lanceur d'un programme n'implique pas l'accès à son xchroot, cela laisse intacte la sécurité de l'application, comme celle de ls.