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

Re: [PATCH v3/GSoC 2/5] path.c: implement xdg_runtime_dir()

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 25, 2016, 16:55 UTC
Message-ID
<xmqqpoui4huo.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<CAKqreux8FHdJoKDishjQkbi9g1oUc265EUK4nOJ_sgeFivGSNA@mail.gmail.com>
惠轶群 <huiyiqun@gmail.com> writes:
Show 17 quoted lines
>> There's a lot of "what" here that the caller doesn't really care about,
>> and which may go stale with respect to the implementation over time. Can
>> we make something more succinct like:
>>
>>   /*
>>    * Return a path suitable for writing run-time files related to git,
>>    * or NULL if no such path can be established. The resulting string
>>    * should be freed by the caller.
>>    */
>>
>> ?
>
> That's clearer, but if I were the caller, I would worry about the
> security of the path.
> How about adding:
>
> The security of the path is ensured by file permission.
Is "by file permission" descriptive enough?

To protect /a/b/c/socket, what filesystem entities have the right permission bits set? If the parent directory is writable by an attacker, the permission bits on 'socket' itself may not matter as the attacker can rename it away and create new one herself, for example.

Show 6 quoted lines
> I will deal with it.
>
> I find there are some similar leakage in this file. I'll fix them in
> another patch.
>
> Do you think we need some additional comments for the release of strbuf?

As Documentation/technical/api-strbuf.txt has this, I think we are already OK.

`strbuf_release`::
	Release a string buffer and the memory it used. You should not use the
	string buffer after using this function, unless you initialize it again.
Previous: 惠轶群Next: Jeff King
Message 6 of 33 in “path.c: implement strbuf_mkpath()”
  1. 1/5 path.c: implement strbuf_mkpath()Hui Yiqun, Mar 23, 2016
  2. 2/5 path.c: implement xdg_runtime_dir()Hui Yiqun, Mar 23, 2016
  3. Jeff KingMar 25, 2016
  4. 惠轶群Mar 25, 2016
  5. 惠轶群Mar 25, 2016
  6. Junio C HamanoMar 25, 2016
  7. Jeff KingMar 25, 2016
  8. Junio C HamanoMar 25, 2016
  9. 惠轶群Mar 28, 2016
  10. Junio C HamanoMar 28, 2016
  11. Jeff KingMar 25, 2016
  12. 惠轶群Mar 28, 2016
  13. Junio C HamanoMar 28, 2016
  14. 惠轶群Mar 28, 2016
  15. Junio C HamanoMar 28, 2016
  16. path.c enter_repo(): fix unproper strbuf unwrapping and memory leakageHui Yiqun, Mar 28, 2016
  17. path.c enter_repo(): fix unproper strbuf unwrapping and memory leakageHui Yiqun, Mar 28, 2016
  18. Jeff KingMar 28, 2016
  19. 惠轶群Mar 29, 2016
  20. path.c enter_repo(): fix unproper strbuf unwrapping and memory leakageHui Yiqun, Mar 28, 2016
  21. 惠轶群Mar 28, 2016
  22. Junio C HamanoMar 28, 2016
  23. 惠轶群Mar 29, 2016
  24. 3/5 git-credential-cache: put socket to xdg-compatible pathHui Yiqun, Mar 23, 2016
  25. Jeff KingMar 25, 2016
  26. 惠轶群Mar 25, 2016
  27. Jeff KingMar 25, 2016
  28. 惠轶群Mar 25, 2016
  29. 4/5 test-lib.sh: unset all environment variables defined in xdg base dir spec[1]Hui Yiqun, Mar 23, 2016
  30. Jeff KingMar 25, 2016
  31. 5/5 t0301: test credential-cache support of XDG_RUNTIME_DIRHui Yiqun, Mar 23, 2016
  32. 惠轶群Mar 25, 2016
  33. Jeff KingMar 25, 2016

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.