Hi Evan,
please see my response in line.
Thank you,
Jan
On 03/31/09 01:23, Evan Layton wrote:
> jan damborsky wrote:
>> ai_utils.c
>> ----------
>> 52 - since ssize_t is not a pointer, I might recommend to
>> return 0 instead of NULL in case of failure.
>>
>> 61-62 - is this check valid ? Looking at the scf_limit man page,
>> it is not specified that 0 is invalid value.
>
> Yes this is a valid check. If scf_limit fails it -1 which is waht
> we're checking for. However the comment is incorrect and should state
> that if scf_limit fails we return MAXPATHLEN.
Is it safe to return MAXPATHLEN in case of failure ? Is it
assured that buffer overflow can't happen e.g. on lines
293, 501 ?
I think that if scf_limit() fails, something is really broken
and it might be safer not to proceed further.
>
>
>>
>> 171 - It seems that return code doesn't reflect the
>> failure, since it was checked on 168 that property
>> group exists
>
> you're right the return code is incorrect. I added "AI_PG_DELETE_ERR,
> /* Failed to delete PG */" in the header file and this now returns
> that error.
Thank you.
>
>>
>>
>> 417 if ((ret = ai_end_transaction(handle)) != AI_SUCCESS) {
>> ->
>> 417 return (ai_end_transaction(handle));
>
> I added another function that needs to be called here in case the call
> to end_transaction fails. This fucntion (ai_abort_tranaction) will
> clean things up if there is a transaction failure. For more on this
> see my response to Sundar's comments.
ok.
>
>>
>>
>> 464, 465, 499, 566, 595
>> - how is it handled, if scf_limit() fails in ai_get_scf_limit() ?
>
> I don't understand what you mean here. In each instance we'll have
> MAXPATHLEN as the value in vallen and we'll use that for getting the
> value.
I am sorry for the confusion - please see my comments
above about scf_limit() failure.