svn commit: r298655 - head/sys/kgssapi

Conrad Meyer cem at FreeBSD.org
Tue Apr 26 20:42:29 UTC 2016


I don't do stable, and that's my choice to make (and final decision).

It would be appropriate to ask, "I'd like to MFC this to stable if it makes
sense to do so.  Does it make sense?"

But I think it is totally inappropriate to try to tell me it is my job to
push petty fixes to stable/10, a branch I do not use.

You don't pay me to work on stable/10 and neither does anybody else.  It's
not my job.  I do FreeBSD for fun.

Conrad


On Tue, Apr 26, 2016 at 1:24 PM, Alan Somers <asomers at freebsd.org> wrote:

> You really ought to.  When you MFC yourself, it reduces the likelihood of
> errors, because you understand the change best.  When someone else does it,
> it's more likely he'll make a mistake, because he may not know the fine
> details behind the change.  In fact, it's hard for anybody else to even
> know that a given change should or shouldn't be MFCed.  The MFC reminder
> emails only go to the committer, not to everyone.  And when someone
> unfamiliar with kgssapi looks at a commit message like the one below, he
> doesn't know whether there's no MFC tag because the change isn't applicable
> to stable/10, or because the committer forgot it, or because the committer
> just "doesn't do stable".
>
> Please help maintain stable/10.  It's everyone's job.
> -Alan
>
> On Tue, Apr 26, 2016 at 1:23 PM, Conrad Meyer <cem at freebsd.org> wrote:
>
>> Nope!  I don't do stable/.
>>
>> On Tue, Apr 26, 2016 at 12:06 PM, Alan Somers <asomers at freebsd.org>
>> wrote:
>>
>>> Nice catch.  Will you be MFCing this to stable/10?
>>>
>>> On Tue, Apr 26, 2016 at 12:11 PM, Conrad E. Meyer <cem at freebsd.org>
>>> wrote:
>>>
>>>> Author: cem
>>>> Date: Tue Apr 26 18:11:45 2016
>>>> New Revision: 298655
>>>> URL: https://svnweb.freebsd.org/changeset/base/298655
>>>>
>>>> Log:
>>>>   kgssapi: Don't leak memory in error cases
>>>>
>>>>   Reported by:  Coverity
>>>>   CIDs:         1007046, 1007047, 1007048
>>>>   Sponsored by: EMC / Isilon Storage Division
>>>>
>>>> Modified:
>>>>   head/sys/kgssapi/gssd_prot.c
>>>>
>>>> Modified: head/sys/kgssapi/gssd_prot.c
>>>>
>>>> ==============================================================================
>>>> --- head/sys/kgssapi/gssd_prot.c        Tue Apr 26 18:08:51 2016
>>>> (r298654)
>>>> +++ head/sys/kgssapi/gssd_prot.c        Tue Apr 26 18:11:45 2016
>>>> (r298655)
>>>> @@ -101,8 +101,10 @@ xdr_gss_OID(XDR *xdrs, gss_OID *oidp)
>>>>                 } else {
>>>>                         oid = mem_alloc(sizeof(gss_OID_desc));
>>>>                         memset(oid, 0, sizeof(*oid));
>>>> -                       if (!xdr_gss_OID_desc(xdrs, oid))
>>>> +                       if (!xdr_gss_OID_desc(xdrs, oid)) {
>>>> +                               mem_free(oid, sizeof(gss_OID_desc));
>>>>                                 return (FALSE);
>>>> +                       }
>>>>                         *oidp = oid;
>>>>                 }
>>>>                 break;
>>>> @@ -164,8 +166,10 @@ xdr_gss_OID_set(XDR *xdrs, gss_OID_set *
>>>>                 } else {
>>>>                         set = mem_alloc(sizeof(gss_OID_set_desc));
>>>>                         memset(set, 0, sizeof(*set));
>>>> -                       if (!xdr_gss_OID_set_desc(xdrs, set))
>>>> +                       if (!xdr_gss_OID_set_desc(xdrs, set)) {
>>>> +                               mem_free(set, sizeof(gss_OID_set_desc));
>>>>                                 return (FALSE);
>>>> +                       }
>>>>                         *setp = set;
>>>>                 }
>>>>                 break;
>>>> @@ -224,8 +228,10 @@ xdr_gss_channel_bindings_t(XDR *xdrs, gs
>>>>                             || !xdr_gss_buffer_desc(xdrs,
>>>>                                 &ch->acceptor_address)
>>>>                             || !xdr_gss_buffer_desc(xdrs,
>>>> -                               &ch->application_data))
>>>> +                               &ch->application_data)) {
>>>> +                               mem_free(ch, sizeof(*ch));
>>>>                                 return (FALSE);
>>>> +                       }
>>>>                         *chp = ch;
>>>>                 }
>>>>                 break;
>>>>
>>>>
>>>
>>
>


More information about the svn-src-all mailing list