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
Jeff King <peff@peff.net>
Date
Mar 25, 2016, 17:55 UTC
Message-ID
<20160325175510.GA10563@sigill.intra.peff.net>
In-Reply-To
<xmqqpoui4huo.fsf@gitster.mtv.corp.google.com>
On Fri, Mar 25, 2016 at 09:55:59AM -0700, Junio C Hamano wrote:
Show 27 quoted lines
> 惠轶群 <huiyiqun@gmail.com> writes:
> 
> >> 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.

I think that is discussed elsewhere, and referring to the xdg document is enough. My main point is that the docstring about a function should tell a potential caller what they need to know to use it, but if it gets overly long, that information is lost in the noise.

-Peff
Previous: Junio C HamanoNext: Junio C Hamano
Message 7 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.