Newer
Older
ubixos / doc / html / descrip_8c.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>UbixOS V2: C:/Dev/git/UbixOS/sys/kernel/descrip.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">UbixOS V2
   &#160;<span id="projectnumber">2.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('descrip_8c.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">descrip.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;<a class="el" href="descrip_8h_source.html">sys/descrip.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="sysproto__posix_8h_source.html">sys/sysproto_posix.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="thread_8h_source.html">sys/thread.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="kprintf_8h_source.html">lib/kprintf.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="endtask_8h_source.html">ubixos/endtask.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="kmalloc_8h_source.html">lib/kmalloc.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="assert_8h_source.html">assert.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="select_8h_source.html">sys/select.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="ioctl_8h_source.html">sys/ioctl.h</a>&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for descrip.c:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c__incl.png" border="0" usemap="#C_1_2Dev_2git_2UbixOS_2sys_2kernel_2descrip_8c" alt=""/></div>
</div>
</div>
<p><a href="descrip_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aec14600d2aa9db1288f00704ba3a55d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#aec14600d2aa9db1288f00704ba3a55d7">close</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structclose__args.html">close_args</a> *uap)</td></tr>
<tr class="separator:aec14600d2aa9db1288f00704ba3a55d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a266f2b3582c66190ca585589f2938065"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a266f2b3582c66190ca585589f2938065">dup2</a> (struct <a class="el" href="structthread.html">thread</a> *td, <a class="el" href="include_2sys_2types_8h.html#aba29fd78d95cce0ecb249c24b58d07da">u_int32_t</a> from, <a class="el" href="include_2sys_2types_8h.html#aba29fd78d95cce0ecb249c24b58d07da">u_int32_t</a> to)</td></tr>
<tr class="separator:a266f2b3582c66190ca585589f2938065"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c93ac280b559128027746bda7c5d6d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a9c93ac280b559128027746bda7c5d6d4">falloc</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structfile.html">file</a> **resultfp, int *resultfd)</td></tr>
<tr class="separator:a9c93ac280b559128027746bda7c5d6d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa825d15d1f3691b7e31917e05ef9f3bc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#aa825d15d1f3691b7e31917e05ef9f3bc">fcntl</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__fcntl__args.html">sys_fcntl_args</a> *uap)</td></tr>
<tr class="separator:aa825d15d1f3691b7e31917e05ef9f3bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7b881d8f4c6e81d8e10468783ce080f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#ae7b881d8f4c6e81d8e10468783ce080f">fdestroy</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structfile.html">file</a> *fp, int fd)</td></tr>
<tr class="memdesc:ae7b881d8f4c6e81d8e10468783ce080f"><td class="mdescLeft">&#160;</td><td class="mdescRight">The function bar.  <a href="descrip_8c.html#ae7b881d8f4c6e81d8e10468783ce080f">More...</a><br /></td></tr>
<tr class="separator:ae7b881d8f4c6e81d8e10468783ce080f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebab3bde2588cf74aad5b90cab9e7d30"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#aebab3bde2588cf74aad5b90cab9e7d30">fstat</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__fstat__args.html">sys_fstat_args</a> *uap)</td></tr>
<tr class="separator:aebab3bde2588cf74aad5b90cab9e7d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac26938ed109edd82077382276bc8258c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#ac26938ed109edd82077382276bc8258c">getdtablesize</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structgetdtablesize__args.html">getdtablesize_args</a> *uap)</td></tr>
<tr class="memdesc:ac26938ed109edd82077382276bc8258c"><td class="mdescLeft">&#160;</td><td class="mdescRight">return data table size  <a href="descrip_8c.html#ac26938ed109edd82077382276bc8258c">More...</a><br /></td></tr>
<tr class="separator:ac26938ed109edd82077382276bc8258c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14e228d6e5391a882d3b20ff2466b2ac"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a14e228d6e5391a882d3b20ff2466b2ac">getfd</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structfile.html">file</a> **fp, int fd)</td></tr>
<tr class="memdesc:a14e228d6e5391a882d3b20ff2466b2ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">get pointer to file fd in specified thread  <a href="descrip_8c.html#a14e228d6e5391a882d3b20ff2466b2ac">More...</a><br /></td></tr>
<tr class="separator:a14e228d6e5391a882d3b20ff2466b2ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a899127227d8b9c9da3bcccc32332c749"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a899127227d8b9c9da3bcccc32332c749">ioctl</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structioctl__args.html">ioctl_args</a> *uap)</td></tr>
<tr class="memdesc:a899127227d8b9c9da3bcccc32332c749"><td class="mdescLeft">&#160;</td><td class="mdescRight">ioctl functionality not implimented yet  <a href="descrip_8c.html#a899127227d8b9c9da3bcccc32332c749">More...</a><br /></td></tr>
<tr class="separator:a899127227d8b9c9da3bcccc32332c749"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4241417ab42ebe37298b3ad7451a84d3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a4241417ab42ebe37298b3ad7451a84d3">sys_dup2</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__dup2__args.html">sys_dup2_args</a> *args)</td></tr>
<tr class="separator:a4241417ab42ebe37298b3ad7451a84d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a849f786ab87d384afb59d03d4dcb8b7d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a849f786ab87d384afb59d03d4dcb8b7d">sys_fcntl</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__fcntl__args.html">sys_fcntl_args</a> *uap)</td></tr>
<tr class="separator:a849f786ab87d384afb59d03d4dcb8b7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae68dd7969c4aadba4fc099a3624e8aed"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#ae68dd7969c4aadba4fc099a3624e8aed">sys_ioctl</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__ioctl__args.html">sys_ioctl_args</a> *args)</td></tr>
<tr class="separator:ae68dd7969c4aadba4fc099a3624e8aed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eb9bf7af8ef45b0c37ca703f6007db5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="descrip_8c.html#a6eb9bf7af8ef45b0c37ca703f6007db5">sys_select</a> (struct <a class="el" href="structthread.html">thread</a> *td, struct <a class="el" href="structsys__select__args.html">sys_select_args</a> *args)</td></tr>
<tr class="separator:a6eb9bf7af8ef45b0c37ca703f6007db5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="aec14600d2aa9db1288f00704ba3a55d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec14600d2aa9db1288f00704ba3a55d7">&#9670;&nbsp;</a></span>close()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int close </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structclose__args.html">close_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00162">162</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="sysproto__posix_8h_source.html#l00374">close_args::fd</a>, <a class="el" href="kmalloc_8c_source.html#l00342">kfree()</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>, and <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_aec14600d2aa9db1288f00704ba3a55d7_cgraph.png" border="0" usemap="#descrip_8c_aec14600d2aa9db1288f00704ba3a55d7_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a266f2b3582c66190ca585589f2938065"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a266f2b3582c66190ca585589f2938065">&#9670;&nbsp;</a></span>dup2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int dup2 </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="include_2sys_2types_8h.html#aba29fd78d95cce0ecb249c24b58d07da">u_int32_t</a>&#160;</td>
          <td class="paramname"><em>from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="include_2sys_2types_8h.html#aba29fd78d95cce0ecb249c24b58d07da">u_int32_t</a>&#160;</td>
          <td class="paramname"><em>to</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00348">348</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="include_2vfs_2file_8h_source.html#l00083">fileDescriptor::dup</a>, <a class="el" href="file_8c_source.html#l00526">fclose()</a>, <a class="el" href="descrip_8h_source.html#l00071">file::fd</a>, <a class="el" href="descrip_8c_source.html#l00147">fdestroy()</a>, <a class="el" href="kmalloc_8c_source.html#l00241">kmalloc()</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="descrip_8h_source.html#l00042">MAX_FILES</a>, <a class="el" href="string_8h.html#ae33b18edb618c656b9b795b9fce2316c">memcpy()</a>, and <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>.</p>

<p class="reference">Referenced by <a class="el" href="descrip_8c_source.html#l00377">sys_dup2()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_a266f2b3582c66190ca585589f2938065_cgraph.png" border="0" usemap="#descrip_8c_a266f2b3582c66190ca585589f2938065_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a9c93ac280b559128027746bda7c5d6d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c93ac280b559128027746bda7c5d6d4">&#9670;&nbsp;</a></span>falloc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int falloc </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structfile.html">file</a> **&#160;</td>
          <td class="paramname"><em>resultfp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>resultfd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00096">96</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="kmalloc_8c_source.html#l00342">kfree()</a>, <a class="el" href="kmalloc_8c_source.html#l00241">kmalloc()</a>, <a class="el" href="descrip_8h_source.html#l00042">MAX_FILES</a>, and <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>.</p>

<p class="reference">Referenced by <a class="el" href="vfs__calls_8c_source.html#l00399">kern_openat()</a>, <a class="el" href="pipe_8c_source.html#l00039">pipe()</a>, <a class="el" href="vfs__calls_8c_source.html#l00045">sys_openat()</a>, <a class="el" href="kern__pipe_8c_source.html#l00036">sys_pipe2()</a>, and <a class="el" href="sys__arch_8c_source.html#l00502">sys_socket()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_a9c93ac280b559128027746bda7c5d6d4_cgraph.png" border="0" usemap="#descrip_8c_a9c93ac280b559128027746bda7c5d6d4_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="aa825d15d1f3691b7e31917e05ef9f3bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa825d15d1f3691b7e31917e05ef9f3bc">&#9670;&nbsp;</a></span>fcntl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int fcntl </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__fcntl__args.html">sys_fcntl_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00040">40</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="sysproto__posix_8h_source.html#l00260">sys_fcntl_args::arg</a>, <a class="el" href="sysproto__posix_8h_source.html#l00257">sys_fcntl_args::cmd</a>, <a class="el" href="descrip_8h_source.html#l00068">file::f_flag</a>, <a class="el" href="file_8c_source.html#l00526">fclose()</a>, <a class="el" href="fcntl_8h_source.html#l00080">FCNTLFLAGS</a>, <a class="el" href="sysproto__posix_8h_source.html#l00254">sys_fcntl_args::fd</a>, <a class="el" href="descrip_8c_source.html#l00147">fdestroy()</a>, <a class="el" href="fcntl_8h_source.html#l00088">FFLAGS</a>, <a class="el" href="kmalloc_8c_source.html#l00241">kmalloc()</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="descrip_8h_source.html#l00042">MAX_FILES</a>, <a class="el" href="string_8h.html#ae33b18edb618c656b9b795b9fce2316c">memcpy()</a>, <a class="el" href="fcntl_8h_source.html#l00064">O_ACCMODE</a>, <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>, and <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>.</p>

<p class="reference">Referenced by <a class="el" href="descrip_8c_source.html#l00092">sys_fcntl()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_aa825d15d1f3691b7e31917e05ef9f3bc_cgraph.png" border="0" usemap="#descrip_8c_aa825d15d1f3691b7e31917e05ef9f3bc_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="ae7b881d8f4c6e81d8e10468783ce080f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7b881d8f4c6e81d8e10468783ce080f">&#9670;&nbsp;</a></span>fdestroy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int fdestroy </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structfile.html">file</a> *&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>fd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The function bar. </p>
<p>This function does something which is doing nothing. So this text is totally senseless and you really do not need to read this, because this text is basically saying nothing.</p>
<dl class="section note"><dt>Note</dt><dd>This text shall only show you, how such a "note" section is looking. There is nothing which really needs your notice, so you do not really need to read this section.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">a</td><td>Description of parameter a. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">b</td><td>Description of the parameter b. </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">c</td><td>Description of the parameter c.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The error return code of the function.</dd></dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">ERR_SUCCESS</td><td>The function is successfully executed </td></tr>
    <tr><td class="paramname">ERR_FAILURE</td><td>An error occurred </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00147">147</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="descrip_8h_source.html#l00071">file::fd</a>, <a class="el" href="kmalloc_8c_source.html#l00342">kfree()</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, and <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>.</p>

<p class="reference">Referenced by <a class="el" href="descrip_8c_source.html#l00348">dup2()</a>, <a class="el" href="descrip_8c_source.html#l00040">fcntl()</a>, <a class="el" href="vfs__calls_8c_source.html#l00399">kern_openat()</a>, <a class="el" href="vfs__calls_8c_source.html#l00099">sys_close()</a>, <a class="el" href="vfs__calls_8c_source.html#l00045">sys_openat()</a>, and <a class="el" href="sys__arch_8c_source.html#l00502">sys_socket()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_ae7b881d8f4c6e81d8e10468783ce080f_cgraph.png" border="0" usemap="#descrip_8c_ae7b881d8f4c6e81d8e10468783ce080f_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="aebab3bde2588cf74aad5b90cab9e7d30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebab3bde2588cf74aad5b90cab9e7d30">&#9670;&nbsp;</a></span>fstat()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int fstat </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__fstat__args.html">sys_fstat_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00185">185</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="armv6_2sched_8c_source.html#l00050">_current</a>, <a class="el" href="sysproto__posix_8h_source.html#l00469">sys_fstat_args::fd</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>, <a class="el" href="sysproto__posix_8h_source.html#l00472">sys_fstat_args::sb</a>, <a class="el" href="stat_8h_source.html#l00060">stat::st_blksize</a>, <a class="el" href="stat_8h_source.html#l00047">stat::st_mode</a>, and <a class="el" href="sched_8h_source.html#l00078">taskStruct::td</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_aebab3bde2588cf74aad5b90cab9e7d30_cgraph.png" border="0" usemap="#descrip_8c_aebab3bde2588cf74aad5b90cab9e7d30_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="ac26938ed109edd82077382276bc8258c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac26938ed109edd82077382276bc8258c">&#9670;&nbsp;</a></span>getdtablesize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int getdtablesize </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structgetdtablesize__args.html">getdtablesize_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>return data table size </p>

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00176">176</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="thread_8h_source.html#l00038">O_FILES</a>, and <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_ac26938ed109edd82077382276bc8258c_cgraph.png" border="0" usemap="#descrip_8c_ac26938ed109edd82077382276bc8258c_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a14e228d6e5391a882d3b20ff2466b2ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14e228d6e5391a882d3b20ff2466b2ac">&#9670;&nbsp;</a></span>getfd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int getfd </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structfile.html">file</a> **&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>fd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>get pointer to file fd in specified thread </p>
<dl class="section return"><dt>Returns</dt><dd>returns fp </dd></dl>

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00214">214</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="descrip_8h_source.html#l00071">file::fd</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, and <a class="el" href="thread_8h_source.html#l00042">thread::o_files</a>.</p>

<p class="reference">Referenced by <a class="el" href="gen__calls_8c_source.html#l00100">read()</a>, <a class="el" href="vfs__calls_8c_source.html#l00099">sys_close()</a>, <a class="el" href="file_8c_source.html#l00197">sys_fchdir()</a>, <a class="el" href="stat_8c_source.html#l00091">sys_fstat()</a>, <a class="el" href="stat_8c_source.html#l00133">sys_fstatat()</a>, <a class="el" href="stat_8c_source.html#l00182">sys_fstatfs()</a>, <a class="el" href="vfs__calls_8c_source.html#l00373">sys_getdirentries()</a>, <a class="el" href="file_8c_source.html#l00149">sys_lseek()</a>, <a class="el" href="vmm__mmap_8c_source.html#l00162">sys_mmap()</a>, <a class="el" href="vfs__calls_8c_source.html#l00239">sys_pread()</a>, <a class="el" href="vfs__calls_8c_source.html#l00151">sys_read()</a>, <a class="el" href="sys__arch_8c_source.html#l00540">sys_sendto()</a>, <a class="el" href="sys__arch_8c_source.html#l00529">sys_setsockopt()</a>, and <a class="el" href="vfs__calls_8c_source.html#l00293">sys_write()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_a14e228d6e5391a882d3b20ff2466b2ac_cgraph.png" border="0" usemap="#descrip_8c_a14e228d6e5391a882d3b20ff2466b2ac_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a899127227d8b9c9da3bcccc32332c749"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a899127227d8b9c9da3bcccc32332c749">&#9670;&nbsp;</a></span>ioctl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ioctl </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structioctl__args.html">ioctl_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ioctl functionality not implimented yet </p>
<dl class="section return"><dt>Returns</dt><dd>NULL for now </dd></dl>

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00204">204</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>.</p>

</div>
</div>
<a id="a4241417ab42ebe37298b3ad7451a84d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4241417ab42ebe37298b3ad7451a84d3">&#9670;&nbsp;</a></span>sys_dup2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sys_dup2 </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__dup2__args.html">sys_dup2_args</a> *&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00377">377</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="descrip_8c_source.html#l00348">dup2()</a>, <a class="el" href="sysproto__posix_8h_source.html#l00812">sys_dup2_args::from</a>, <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>, and <a class="el" href="sysproto__posix_8h_source.html#l00815">sys_dup2_args::to</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_a4241417ab42ebe37298b3ad7451a84d3_cgraph.png" border="0" usemap="#descrip_8c_a4241417ab42ebe37298b3ad7451a84d3_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a849f786ab87d384afb59d03d4dcb8b7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a849f786ab87d384afb59d03d4dcb8b7d">&#9670;&nbsp;</a></span>sys_fcntl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sys_fcntl </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__fcntl__args.html">sys_fcntl_args</a> *&#160;</td>
          <td class="paramname"><em>uap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00092">92</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="descrip_8c_source.html#l00040">fcntl()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_a849f786ab87d384afb59d03d4dcb8b7d_cgraph.png" border="0" usemap="#descrip_8c_a849f786ab87d384afb59d03d4dcb8b7d_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="ae68dd7969c4aadba4fc099a3624e8aed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae68dd7969c4aadba4fc099a3624e8aed">&#9670;&nbsp;</a></span>sys_ioctl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sys_ioctl </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__ioctl__args.html">sys_ioctl_args</a> *&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00229">229</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="ioctl_8h_source.html#l00041">termios::c_cc</a>, <a class="el" href="ioctl_8h_source.html#l00039">termios::c_cflag</a>, <a class="el" href="ioctl_8h_source.html#l00037">termios::c_iflag</a>, <a class="el" href="ioctl_8h_source.html#l00042">termios::c_ispeed</a>, <a class="el" href="ioctl_8h_source.html#l00040">termios::c_lflag</a>, <a class="el" href="ioctl_8h_source.html#l00038">termios::c_oflag</a>, <a class="el" href="ioctl_8h_source.html#l00043">termios::c_ospeed</a>, <a class="el" href="sysproto__posix_8h_source.html#l00532">sys_ioctl_args::com</a>, <a class="el" href="sysproto__posix_8h_source.html#l00535">sys_ioctl_args::data</a>, <a class="el" href="sysproto__posix_8h_source.html#l00529">sys_ioctl_args::fd</a>, <a class="el" href="kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>, <a class="el" href="ioctl_8h_source.html#l00053">TIOCGETA</a>, <a class="el" href="ioctl_8h_source.html#l00054">TIOCGWINSZ</a>, <a class="el" href="ioctl_8h_source.html#l00048">winsize::ws_col</a>, and <a class="el" href="ioctl_8h_source.html#l00047">winsize::ws_row</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="descrip_8c_ae68dd7969c4aadba4fc099a3624e8aed_cgraph.png" border="0" usemap="#descrip_8c_ae68dd7969c4aadba4fc099a3624e8aed_cgraph" alt=""/></div>
</div>

</div>
</div>
<a id="a6eb9bf7af8ef45b0c37ca703f6007db5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6eb9bf7af8ef45b0c37ca703f6007db5">&#9670;&nbsp;</a></span>sys_select()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sys_select </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> *&#160;</td>
          <td class="paramname"><em>td</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structsys__select__args.html">sys_select_args</a> *&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="descrip_8c_source.html#l00285">285</a> of file <a class="el" href="descrip_8c_source.html">descrip.c</a>.</p>

<p class="reference">References <a class="el" href="sysproto__posix_8h_source.html#l00682">sys_select_args::ex</a>, <a class="el" href="sysproto__posix_8h_source.html#l00676">sys_select_args::in</a>, <a class="el" href="sysproto__posix_8h_source.html#l00673">sys_select_args::nd</a>, <a class="el" href="sysproto__posix_8h_source.html#l00679">sys_select_args::ou</a>, <a class="el" href="thread_8h_source.html#l00041">thread::td_retval</a>, and <a class="el" href="sysproto__posix_8h_source.html#l00685">sys_select_args::tv</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_e6bb53534ac0e427887cf7a94c0c004e.html">C:</a></li><li class="navelem"><a class="el" href="dir_d99d5d4662bf24521eef49da6a8cd34d.html">Dev</a></li><li class="navelem"><a class="el" href="dir_474a4b306371cf7e7f6fa12cb0b77df6.html">git</a></li><li class="navelem"><a class="el" href="dir_849109bbd106d461b128d63e5babcedf.html">UbixOS</a></li><li class="navelem"><a class="el" href="dir_6ec99f6d7d5182ba8913209ab70c9f18.html">sys</a></li><li class="navelem"><a class="el" href="dir_63d032512ea6b67a4623bc739c35248b.html">kernel</a></li><li class="navelem"><a class="el" href="descrip_8c.html">descrip.c</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.16 </li>
  </ul>
</div>
</body>
</html>