git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git-compat-util: work around for access(X_OK) under root

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Apr 23, 2019, 23:55 UTC
Message-ID
<20190423235526.GF6316@genre.crustytoothpaste.net>
In-Reply-To
<AM6PR02MB495010DED643EC262D116DD0EA230@AM6PR02MB4950.eurprd02.prod.outlook.com>
On Tue, Apr 23, 2019 at 11:31:02AM +0000, CHIGOT, CLEMENT wrote:
Show 7 quoted lines
> From: Junio C Hamano <jch2355@gmail.com> on behalf of Junio C Hamano <gitster@pobox.com>
> This patch is needed in order to have hooks working on AIX. When run as root,
> access on hooks will return true even if a hook can't be executed. Therefore,
> as far as I know, git will try to execute it as is and we'll get this kind of
> error:
> "git commit -m content
>  fatal: cannot exec '.git/hooks/pre-commit': Permission denied"
I think this is the interesting part.
What POSIX says on this is the following:
  If any access permissions are checked, each shall be checked
  individually, as described in XBD File Access Permissions, except that
  where that description refers to execute permission for a process with
  appropriate privileges, an implementation may indicate success for
  X_OK even if execute permission is not granted to any user.
The XBD File Access Permissions text says:
  If a process has appropriate privileges:
    […]
    If execute permission is requested, access shall be granted if
    execute permission is granted to at least one user by the file
    permission bits or by an alternate access control mechanism;
    otherwise, access shall be denied.

I believe that's what's occurring here. Your commit message, however, should contain some text that explains that AIX takes this liberty provided by POSIX, and why that causes problems for Git (i.e., what problems the user will see). Ideally, the reader of the commit message will know the relevant details about this issue from your commit message without needing to consult the standard itself.

-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204
Previous: CHIGOT, CLEMENTNext: Junio C Hamano
Message 5 of 9 in “git-compat-util: work around for access(X_OK) under root”
  1. git-compat-util: work around for access(X_OK) under rootCHIGOT, CLEMENT, Apr 23, 2019
  2. Duy NguyenApr 23, 2019
  3. Junio C HamanoApr 23, 2019
  4. CHIGOT, CLEMENTApr 23, 2019
  5. brian m. carlsonApr 23, 2019
  6. Junio C HamanoApr 24, 2019
  7. brian m. carlsonApr 24, 2019
  8. Junio C HamanoApr 24, 2019
  9. CHIGOT, CLEMENTApr 24, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.