From: Johannes Sixt <j.sixt@viscovery.net>
To: Brandon Casey <drafnel@gmail.com>
Cc: "peff@peff.net" <peff@peff.net>,
"git@vger.kernel.org" <git@vger.kernel.org>,
"gitster@pobox.com" <gitster@pobox.com>,
"sunshine@sunshineco.com" <sunshine@sunshineco.com>,
"bharrosh@panasas.com" <bharrosh@panasas.com>,
"trast@student.ethz.ch" <trast@student.ethz.ch>,
"zapped@mail.ru" <zapped@mail.ru>
Subject: Re: [PATCH 2/4] cleanup: use internal memory allocation wrapper functions everywhere
Date: Thu, 06 Oct 2011 08:17:54 +0200 [thread overview]
Message-ID: <4E8D4812.9090102@viscovery.net> (raw)
In-Reply-To: <CA+sFfMdHpvdMU==a2sUR9sZZCcgqPfGF7+dy6yi8RVoMZ+uZVA@mail.gmail.com>
Am 10/6/2011 4:00, schrieb Brandon Casey:
> [resend without html bits added by "gmail offline"]
> On Wed, Oct 5, 2011 at 7:53 PM, Brandon Casey <drafnel@gmail.com> wrote:
>> On Thursday, September 15, 2011, Brandon Casey wrote:
>>>
>>> On Thu, Sep 15, 2011 at 1:52 AM, Johannes Sixt <j.sixt@viscovery.net>
>>>> There is a danger that the high-level die() routine (which is used by
>>>> the
>>>> x-wrappers) uses one of the low-level compat/ routines. IOW, in the case
>>>> of errors, recursion might occur. Therefore, I would prefer that the
>>>> compat/ routines do their own error reporting (preferably via return
>>>> values and errno).
>>>
>>> Thanks. Will do.
>>
>> Hi Johannes,
>> I have taken a closer look at the possibility of recursion with respect to
>> die() and the functions in compat/. It appears the risk is only related to
>> vsnprintf/snprintf at the moment. So as long as we avoid calling xmalloc et
>> al from within snprintf.c, I think we should be safe from recursion.
>> I'm inclined to keep the additions to mingw.c and win32/syslog.c since they
>> both already use the x-wrappers or strbuf, even though they could easily be
>> worked around. The other file that was touched is compat/qsort, which
>> returns void and doesn't have a good alternative error handling path. So,
>> I'm inclined to keep that one too.
I'm fine with keeping the change to mingw.c (getaddrinfo related) and
qsort: both are unlikely to be called from die().
But syslog() *is* called from die() in git-daemon, and it would be better
to back out the other offenders instead of adding to them.
-- Hannes
next prev parent reply other threads:[~2011-10-06 6:18 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <5XXEFw0WjtXKd9dpXSxpkskCcgVyG9Db1_zzVSEBNey-kpXSBbmQfYaxZ2Szg6Pbck6hZZTQ5hHzBwG4rhKYXshrdmveEFLPZ9W0V8P_lw@cipher.nrlssc.navy.mil>
2011-09-15 1:59 ` [PATCH 0/4] Honor core.ignorecase for attribute patterns Brandon Casey
2011-09-15 1:59 ` [PATCH 1/4] attr.c: avoid inappropriate access to strbuf "buf" member Brandon Casey
2011-09-15 1:59 ` [PATCH 2/4] cleanup: use internal memory allocation wrapper functions everywhere Brandon Casey
2011-09-15 6:52 ` Johannes Sixt
2011-09-15 15:39 ` Brandon Casey
[not found] ` <CA+sFfMf73K3yv_5K633DKOsVufMV6rTjd+SSunq4sBikt4jCsg@mail.gmail.com>
2011-10-06 2:00 ` Brandon Casey
2011-10-06 6:17 ` Johannes Sixt [this message]
2011-10-06 7:01 ` Alexey Shumkin
2011-10-06 16:14 ` Brandon Casey
2011-10-06 16:50 ` Erik Faye-Lund
2011-10-06 16:52 ` Erik Faye-Lund
2011-10-06 17:17 ` Brandon Casey
2011-09-15 1:59 ` [PATCH 3/4] builtin/mv.c: plug miniscule memory leak Brandon Casey
2011-09-15 1:59 ` [PATCH 4/4] attr.c: respect core.ignorecase when matching attribute patterns Brandon Casey
2011-09-15 4:01 ` Junio C Hamano
2011-09-15 4:06 ` Junio C Hamano
2011-09-15 15:38 ` Brandon Casey
2011-09-15 18:12 ` [PATCH 0/4] Honor core.ignorecase for " Jeff King
2011-09-15 20:28 ` Brandon Casey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E8D4812.9090102@viscovery.net \
--to=j.sixt@viscovery.net \
--cc=bharrosh@panasas.com \
--cc=drafnel@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=sunshine@sunshineco.com \
--cc=trast@student.ethz.ch \
--cc=zapped@mail.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).