<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>On 25/03/2020 20:33, Joel Sherrill wrote:<br>
</p>
<blockquote type="cite"
cite="mid:CAF9ehCUuQoX_wAvBkMHJ=n64ZT0U59+Nm_-qSc4KJ8TN9Z6Vcg@mail.gmail.com">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Mar 25, 2020 at 12:17
AM Eshan Dhawan <<a href="mailto:eshandhawan51@gmail.com"
moz-do-not-send="true">eshandhawan51@gmail.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Mar 25, 2020 at
4:01 AM Joel Sherrill <<a
href="mailto:joel@rtems.org" target="_blank"
moz-do-not-send="true">joel@rtems.org</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, Mar 24,
2020 at 4:57 PM Eshan Dhawan <<a
href="mailto:eshandhawan51@gmail.com"
target="_blank" moz-do-not-send="true">eshandhawan51@gmail.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px
0px 0px 0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div>Hello everyone,</div>
<div>As <a class="gmail_plusreply"
id="gmail-m_7264151322156336212gmail-m_6755986261809983477gmail-m_4381290465950915824plusReplyChip-3"
href="mailto:vaibhav.varodek@gmail.com"
target="_blank" moz-do-not-send="true">@Vaibhav
Gupta</a> suggested I have also added adding
file descriptor functions to my GSOC project.</div>
<div>I went through the mailing list archives
for more information.<br>
</div>
<div>RTEMS as its own file descriptor so the
functions need to be implemented from scratch.<br>
</div>
<div>I wanted to get more information related to
it.<br>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>What's the set of functions you are proposing
for those not tracking your draft proposal? </div>
</div>
</div>
</blockquote>
<div>Link: <a
href="https://docs.google.com/document/d/1n-JOFUbFn6V1kViAGWsEGbVHL9MxlMyKP0BbZhEA1Rs/edit?usp=sharing"
target="_blank" moz-do-not-send="true">https://docs.google.com/document/d/1n-JOFUbFn6V1kViAGWsEGbVHL9MxlMyKP0BbZhEA1Rs/edit?usp=sharing</a></div>
<div>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.<br>
</div>
<div>I read the archives that these need to be written
from scratch.<br>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div><br>
</div>
<div>Maybe not. I found at least this implementation of
renameat() which was implemented on top of existing calls:</div>
<div><br>
</div>
<div><a
href="https://github.com/lattera/freebsd/blob/master/contrib/openbsm/bin/auditdistd/renameat.h"
moz-do-not-send="true">https://github.com/lattera/freebsd/blob/master/contrib/openbsm/bin/auditdistd/renameat.h</a></div>
<div><br>
</div>
<div>It should be in a C file but that shows it can be done.
That directory has a lot of these methods.</div>
</div>
</blockquote>
<p>Adding the *at() functions with an RTEMS-specific implementation
would be nice (and not difficult). The generic renameat()
implementation for example changes the current directory. One of
the goals of this API is to avoid exactly this. In glibc/Linux for
example a system call is used:</p>
<p>
<a class="moz-txt-link-freetext" href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/renameat.c;h=901d61f37e10d0c2df245c01bb2ef980d00e8f52;hb=HEAD">https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/renameat.c;h=901d61f37e10d0c2df245c01bb2ef980d00e8f52;hb=HEAD</a></p>
<p><a class="moz-txt-link-freetext" href="https://github.com/torvalds/linux/blob/master/fs/namei.c#L4590">https://github.com/torvalds/linux/blob/master/fs/namei.c#L4590</a><br>
</p>
</body>
</html>