Deutsch English Français Italiano |
<slrnrvuuq8.298.naddy@lorvorc.mips.inka.de> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!tr3.iad1.usenetexpress.com!feeder.usenetexpress.com!tr2.eu1.usenetexpress.com!feeder1.feed.usenet.farm!feed.usenet.farm!weretis.net!feeder8.news.weretis.net!news.szaf.org!inka.de!mips.inka.de!.POSTED.localhost!not-for-mail From: Christian Weisgerber <naddy@mips.inka.de> Newsgroups: fr.comp.os.bsd Subject: Re: Fichier binaire d'un daemon writable ssi le damon est =?UTF-8?Q?stopp=C3=A9?= Date: Wed, 13 Jan 2021 22:59:20 -0000 (UTC) Message-ID: <slrnrvuuq8.298.naddy@lorvorc.mips.inka.de> References: <5ffca81a$0$6449$426a74cc@news.free.fr> <slrnrvpiav.ofa.naddy@lorvorc.mips.inka.de> <5ffcf526$0$6458$426a74cc@news.free.fr> <slrnrvre0o.1bha.naddy@lorvorc.mips.inka.de> <5ffdeaa9$0$4026$426a74cc@news.free.fr> <slrnrvs1rb.1j81.naddy@lorvorc.mips.inka.de> <5ffe5345$0$16187$426a34cc@news.free.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Wed, 13 Jan 2021 22:59:20 -0000 (UTC) Injection-Info: lorvorc.mips.inka.de; posting-host="localhost:::1"; logging-data="3541"; mail-complaints-to="usenet@mips.inka.de" User-Agent: slrn/1.0.3 (FreeBSD) Bytes: 2546 Lines: 30 On 2021-01-13, Francois Lafont <francois.lafont@nospam.invalid> wrote: > 1. sur un Linux (en tout cas sur ma Ubuntu 18.04) access() ne renvoie pas d'erreur > sur un ETXTBSY (même si la page man access(2) de ma Ubuntu ne le mentionne nulle > part et mentionne même clairement le contraire). La page dit: | access() and faccessat() may fail if: .... | ETXTBSY | Write access was requested to an executable which is being | executed. https://man7.org/linux/man-pages/man2/access.2.html C'est « may », donc il est permis, il se peut que ça renvoie une telle erreur. Cette formulation est floue et quasi copiée-collée de POSIX. > J'ai encore une dernière petite interrogation si possible : la vérité ultime > c'est donc que le binaire n'est pas modifiable quand il est en cours d'exécution > (sur un Unix), mais alors pourquoi diable sur Linux les développeurs ont-ils > voulu implémenter une fonction access() qui ne dit pas la vérité (elle dit que > c'est modifiable alors que c'est faux) ? J'avoue que la logique m'échappe un peu. J'imagine qu'ils pensent que la fonctionnalité d'access() est seulement de vérifier les permissions du inode et qu'un ETXTBSY est une situation exceptionnelle au-dehors de ce qu'access() doit faire. -- Christian "naddy" Weisgerber naddy@mips.inka.de