diff options
author | hunt <hunt> | 2005-03-09 21:30:05 +0000 |
---|---|---|
committer | hunt <hunt> | 2005-03-09 21:30:05 +0000 |
commit | 204b456c7c08bc40ffe1f21575461d92a544e92b (patch) | |
tree | d4eeb73b11437d723be1e91e0a431f2bd3bed025 /runtime/docs/html/copy_8c.html | |
parent | 67b4cc78da121e708a21e96786cb373201e4f6ff (diff) | |
download | systemtap-steved-204b456c7c08bc40ffe1f21575461d92a544e92b.tar.gz systemtap-steved-204b456c7c08bc40ffe1f21575461d92a544e92b.tar.xz systemtap-steved-204b456c7c08bc40ffe1f21575461d92a544e92b.zip |
Initial runtime checkin.
Diffstat (limited to 'runtime/docs/html/copy_8c.html')
-rw-r--r-- | runtime/docs/html/copy_8c.html | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/runtime/docs/html/copy_8c.html b/runtime/docs/html/copy_8c.html new file mode 100644 index 00000000..0febb9ab --- /dev/null +++ b/runtime/docs/html/copy_8c.html @@ -0,0 +1,204 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>SystemTap: SystemTap Runtime Library</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<div class="qindex"><a class="qindex" href="index.html">Intro</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_defs.html">Defines</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumeration Values</a></div> + +<!-- Generated by Doxygen 1.3.9.1 --> +<h1>copy.c File Reference</h1> +<p> +<a href="copy_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> +<tr><td></td></tr> +<tr><td colspan="2"><br><h2>Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="copy_8c.html#a0">_stp_strncpy_from_user</a> (char *dst, const char __user *src, long count)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy a NULL-terminated string from userspace. <a href="#a0"></a><br></td></tr> +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="copy_8c.html#a1">_stp_copy_from_user</a> (char *dst, const char __user *src, unsigned long count)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy a block of data from user space. <a href="#a1"></a><br></td></tr> +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="copy_8c.html#a2">_stp_copy_argv_from_user</a> (<a class="el" href="structmap__root.html">MAP</a> list, char __user *__user *argv)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy an argv from user space to a List. <a href="#a2"></a><br></td></tr> +</table> +<hr><h2>Function Documentation</h2> +<a class="anchor" name="a2" doxytag="copy.c::_stp_copy_argv_from_user"></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top">int _stp_copy_argv_from_user </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="structmap__root.html">MAP</a> </td> + <td class="mdname" nowrap> <em>list</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td class="md"></td> + <td class="md" nowrap>char __user *__user * </td> + <td class="mdname" nowrap> <em>argv</em></td> + </tr> + <tr> + <td class="md"></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + </table> + </td> + </tr> +</table> +<table cellspacing="5" cellpadding="0" border="0"> + <tr> + <td> + + </td> + <td> + +<p> +Copy an argv from user space to a List. +<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td>A list. </td></tr> + <tr><td valign="top"></td><td valign="top"><em>argv</em> </td><td>Source argv, in user space. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>number of elements in <em>list</em></dd></dl> +<b>Example:</b> <div class="fragment"><pre class="fragment"><a class="code" href="structmap__root.html">MAP</a> arglist ; + +<span class="keywordtype">int</span> inst_do_execve (<span class="keywordtype">char</span> * filename, <span class="keywordtype">char</span> __user *__user *argv, <span class="keywordtype">char</span> __user *__user *envp, <span class="keyword">struct</span> pt_regs * regs) +{ + <span class="keyword">struct </span><a class="code" href="structmap__node__str.html">map_node_str</a> *ptr; + + <a class="code" href="copy_8c.html#a2">_stp_copy_argv_from_user</a> (arglist, argv); + + <a class="code" href="map_8h.html#a8">foreach</a> (arglist, ptr) + printk ("%s ", ptr->str); + printk ("\n"); +} +</pre></div> +<p> +Definition at line <a class="el" href="copy_8c-source.html#l00115">115</a> of file <a class="el" href="copy_8c-source.html">copy.c</a>. +<p> +References <a class="el" href="map_8c-source.html#l00805">_stp_list_add_str()</a>, <a class="el" href="copy_8c-source.html#l00079">_stp_strncpy_from_user()</a>, <a class="el" href="map_8h-source.html#l00084">MAP</a>, and <a class="el" href="map_8h-source.html#l00053">map_root::num</a>. </td> + </tr> +</table> +<a class="anchor" name="a1" doxytag="copy.c::_stp_copy_from_user"></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top">unsigned long _stp_copy_from_user </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">char * </td> + <td class="mdname" nowrap> <em>dst</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td class="md"></td> + <td class="md" nowrap>const char __user * </td> + <td class="mdname" nowrap> <em>src</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td class="md"></td> + <td class="md" nowrap>unsigned long </td> + <td class="mdname" nowrap> <em>count</em></td> + </tr> + <tr> + <td class="md"></td> + <td class="md">) </td> + <td class="md" colspan="2"><code> [inline]</code></td> + </tr> + </table> + </td> + </tr> +</table> +<table cellspacing="5" cellpadding="0" border="0"> + <tr> + <td> + + </td> + <td> + +<p> +Copy a block of data from user space. +<p> +If some data could not be copied, this function will pad the copied data to the requested size using zero bytes.<p> +<dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Destination address, in kernel space. </td></tr> + <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Source address, in user space. </td></tr> + <tr><td valign="top"></td><td valign="top"><em>count</em> </td><td>Number of bytes to copy. </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>number of bytes that could not be copied. On success, this will be zero. </dd></dl> + +<p> +Definition at line <a class="el" href="copy_8c-source.html#l00100">100</a> of file <a class="el" href="copy_8c-source.html">copy.c</a>. </td> + </tr> +</table> +<a class="anchor" name="a0" doxytag="copy.c::_stp_strncpy_from_user"></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top">long _stp_strncpy_from_user </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">char * </td> + <td class="mdname" nowrap> <em>dst</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td class="md"></td> + <td class="md" nowrap>const char __user * </td> + <td class="mdname" nowrap> <em>src</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td class="md"></td> + <td class="md" nowrap>long </td> + <td class="mdname" nowrap> <em>count</em></td> + </tr> + <tr> + <td class="md"></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + </table> + </td> + </tr> +</table> +<table cellspacing="5" cellpadding="0" border="0"> + <tr> + <td> + + </td> + <td> + +<p> +Copy a NULL-terminated string from userspace. +<p> +On success, returns the length of the string (not including the trailing NULL).<p> +If access to userspace fails, returns -EFAULT (some data may have been copied). <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>Destination address, in kernel space. This buffer must be at least <em>count</em> bytes long. </td></tr> + <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Source address, in user space. </td></tr> + <tr><td valign="top"></td><td valign="top"><em>count</em> </td><td>Maximum number of bytes to copy, including the trailing NULL.</td></tr> + </table> +</dl> +If <em>count</em> is smaller than the length of the string, copies <em>count</em> bytes and returns <em>count</em>. +<p> +Definition at line <a class="el" href="copy_8c-source.html#l00079">79</a> of file <a class="el" href="copy_8c-source.html">copy.c</a>. +<p> +Referenced by <a class="el" href="copy_8c-source.html#l00115">_stp_copy_argv_from_user()</a>. </td> + </tr> +</table> +<hr size="1"><address style="align: right;"><small>Generated on Wed Mar 9 13:21:28 2005 for SystemTap by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address> +</body> +</html> |