binaryninja/commercial/scc-docs/recv.html

76 lines
2.9 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="generator" content="AsciiDoc 8.6.9" />
<title>Shellcode Compiler Runtime</title>
<link rel="stylesheet" href="lib/v35.css" type="text/css" />
<link rel="stylesheet" href="lib/layout2v35.css" type="text/css" />
<script type="text/javascript" src="lib/asciidoc.js"></script>
<script type="text/javascript">
/*<![CDATA[*/
asciidoc.install();
/*]]>*/
</script>
</head>
<body>
<div id="layout-menu-box">
<div id="layout-menu">
<div>&#187;<a href="index.html">Home</a></div>
<div>&#187;<a href="examples.html">Examples</a></div>
<div>&#187;<a href="scc.html">Invocation</a></div>
<div>&#187;<a href="runtime.html">Runtime&nbsp;Library</a></div>
<div>&#187;<a href="python.html">Python&nbsp;Bindings</a></div>
<div>&#187;<a href="issues.html">Known&nbsp;Issues</a></div>
</div>
</div>
<div id="layout-content-box">
<div id="layout-banner">
<div id="layout-title">Shellcode Compiler</div>
<div id="layout-description">A custom shellcode compiler for Binary Ninja</div>
</div>
<div id="layout-content">
<div id="header">
<h1>recv</h1>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="listingblock">
<div class="content monospaced">
<pre>ssize_t recv(int fd, void* buf, size_t n, int flags);</pre>
</div></div>
<div class="paragraph"><p>Reads <span class="monospaced">n</span> bytes from the socket <span class="monospaced">fd</span>, and places the result in <span class="monospaced">buf</span>. Returns the number of bytes read, or
the negation of the error code on error. It is possible for the number of bytes read to be smaller than the number
of bytes requested.</p></div>
<div class="admonitionblock">
<table><tr>
<td class="icon">
<img src="./images/icons/important.png" alt="Important">
</td>
<td class="content">If the system call is interrupted, this function will return <span class="monospaced">-EINTR</span>. This differs from most C runtimes,
where <span class="monospaced">-1</span> is returned with <span class="monospaced">errno</span> set to <span class="monospaced">EINTR</span>. As this runtime does not have <span class="monospaced">errno</span>, callers should check
for <span class="monospaced">-EINTR</span> and a result less than zero in the error checking code.</td>
</tr></table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">See also</h2>
<div class="sectionbody">
<div class="paragraph"><p><a href="recv_all.html">recv_all</a>,
<a href="recvfrom.html">recvfrom</a>,
<a href="send.html">send</a>,
<a href="send_all.html">send_all</a>,
<a href="send_string.html">send_string</a>,
<a href="sendto.html">sendto</a></p></div>
</div>
</div>
</div>
<div id="footnotes"><hr /></div>
</div>
</div>
</body>
</html>