discussion related to implementation of File descriptor functions in RTEMS

Eshan Dhawan eshandhawan51 at gmail.com
Wed Mar 25 22:41:25 UTC 2020


these are the methods I couldn't find in the compliance guide.


sys/stat.h:                   int utimensat
sys/stat.h:                   int _fstat
sys/_default_fcntl.h:         extern int futimesat
sys/time.h:                   int futimesat

The list of these methods was made by @Vaibhav Gupta
<vaibhav.varodek at gmail.com> last year by taking reference from
https://lists.rtems.org/pipermail/devel/2019-March/053149.html


On Thu, Mar 26, 2020 at 3:30 AM Joel Sherrill <joel at rtems.org> wrote:

>
>
> On Wed, Mar 25, 2020 at 4:09 PM Eshan Dhawan <eshandhawan51 at gmail.com>
> wrote:
>
>>
>>
>> On Thu, Mar 26, 2020 at 1:03 AM Joel Sherrill <joel at rtems.org> wrote:
>>
>>>
>>>
>>> On Wed, Mar 25, 2020 at 12:17 AM Eshan Dhawan <eshandhawan51 at gmail.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Mar 25, 2020 at 4:01 AM Joel Sherrill <joel at rtems.org> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Tue, Mar 24, 2020 at 4:57 PM Eshan Dhawan <eshandhawan51 at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hello everyone,
>>>>>> As @Vaibhav Gupta <vaibhav.varodek at gmail.com> suggested I have also
>>>>>> added adding file descriptor functions to my GSOC project.
>>>>>> I went through the mailing list archives for more information.
>>>>>> RTEMS as its own file descriptor so the functions need to be
>>>>>> implemented from scratch.
>>>>>> I wanted to get more information related to it.
>>>>>>
>>>>>
>>>>> What's the set of functions you are proposing for those not tracking
>>>>> your draft proposal?
>>>>>
>>>> Link:
>>>> https://docs.google.com/document/d/1n-JOFUbFn6V1kViAGWsEGbVHL9MxlMyKP0BbZhEA1Rs/edit?usp=sharing
>>>> I haven't searched about the functions in the list yet. The list was
>>>> made by Vaibhav, last year and he told me that it could be added to
>>>> proposal this year as well.
>>>> I read the archives that these need to be written from scratch.
>>>>
>>>
>>>
>>> Maybe not. I found at least this implementation of renameat() which was
>>> implemented on top of existing calls:
>>>
>>>
>>> https://github.com/lattera/freebsd/blob/master/contrib/openbsm/bin/auditdistd/renameat.h
>>>
>>> It should be in a C file but that shows it can be done. That directory
>>> has a lot of these methods.
>>>
>>> NOTE: That list has fstat() while I am sure it should be fstatat.
>>>
>>> The list has fstatat as well.
>> I will recheck the list and will run a search to confirm that list
>> doesn't contain any function that has been already implemented  :)
>>
>
> The COmpliance Guide is an easy place to search for things. Grep for like
> "at()" and ignore methods like strcat(). :)
>
>>
>>> I would move these up the list since they look easy to port from that
>>> source. Convert them from .h to .c, and we can discuss adding them to
>>> newlib.
>>>
>>> @Aditya Upadhyay <aadit0402 at gmail.com> told that need to be added to
>> RTEMS libbsd
>>
>
> That is the most straightforward way to import non-essential POSIX methods
> that we are taking from FreeBSD. But the implementation I found listed
> above appears to be completely portable and not require any new system
> calls or peeks below POSIX APIs. These are not frequently used methods and
> adding them would be good for all newlib users this way.
>
> We just didn't find that implementation in the past. I'm thrilled it
> exists. Easier to add.
>
> --joel
>
>>
>>> --joel
>>>
>>>>
>>>>
>>>>>> thanks
>>>>>> -Eshan
>>>>>>
>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200326/8b8da378/attachment.html>


More information about the devel mailing list