Re: [PATCH v5 1/2] selinux: add brief info to policydb

From: Sebastien Buisson
Date: Wed May 17 2017 - 11:43:52 EST


2017-05-17 17:34 GMT+02:00 William Roberts <bill.c.roberts@xxxxxxxxx>:
>>>>> Is there a particular reason to not just return policybrief_len here as
>>>>> well, for consistency in the interface? How do you intend to use this
>>>>> value in the caller?
>>>>
>>>> As called in the other patch to expose policy brief via selinuxfs
>>>> (sel_read_policybrief), the intent is to provide the caller with the
>>>> length of the string returned.
>>>> Or should I set *len to policy brief_len here, and just make the
>>>> caller aware that the returned length is in fact the length of the
>>>> buffer (i.e. including terminating NUL byte)?
>>>
>>> What is the caller supposed to do with length? This interface seemed kind of
>>> odd. If it's guaranteed NUL byte terminated, do they even need length?
>>
>> The length is useful as an input parameter in case the caller provides
>> its own buffer (instead of letting the function allocate one), and as
>
> This is what I don't get, why doesn't the function just always allocate?

For performance reasons mainly. The caller would have a statically
allocated buffer, reused every time it needs to get the policy brief
info.