<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::PtraceBroker Class 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="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" />
<link href="crashpad_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">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<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>
<!-- 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 id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1PtraceBroker.html">PtraceBroker</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcrashpad_1_1PtraceBroker-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::PtraceBroker Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Implements a <a class="el" href="classcrashpad_1_1PtraceConnection.html" title="Provides an interface for making ptrace requests against a process and its threads. ">PtraceConnection</a> over a socket.  
 <a href="classcrashpad_1_1PtraceBroker.html#details">More...</a></p>

<p><code>#include &quot;util/linux/ptrace_broker.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1PtraceBroker_1_1GetThreadInfoResponse.html">GetThreadInfoResponse</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The response sent for a <a class="el" href="structcrashpad_1_1PtraceBroker_1_1Request.html" title="A request sent to a PtraceBroker from a PtraceClient. ">Request</a> with type kTypeGetThreadInfo.  <a href="structcrashpad_1_1PtraceBroker_1_1GetThreadInfoResponse.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1PtraceBroker_1_1Request.html">Request</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A request sent to a <a class="el" href="classcrashpad_1_1PtraceBroker.html" title="Implements a PtraceConnection over a socket. ">PtraceBroker</a> from a <a class="el" href="classcrashpad_1_1PtraceClient.html" title="Implements a PtraceConnection over a socket. ">PtraceClient</a>.  <a href="structcrashpad_1_1PtraceBroker_1_1Request.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ace8571d7cc63395929f3f201a4d54f66"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1PtraceBroker.html#ace8571d7cc63395929f3f201a4d54f66">OpenResult</a> : int32_t </td></tr>
<tr class="memdesc:ace8571d7cc63395929f3f201a4d54f66"><td class="mdescLeft">&#160;</td><td class="mdescRight">A result used in operations that accept paths.  <a href="classcrashpad_1_1PtraceBroker.html#ace8571d7cc63395929f3f201a4d54f66">More...</a><br /></td></tr>
<tr class="separator:ace8571d7cc63395929f3f201a4d54f66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1991f30401e58b5c6581f11062f71bb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1PtraceBroker.html#ac1991f30401e58b5c6581f11062f71bb">ReadError</a> : int32_t </td></tr>
<tr class="memdesc:ac1991f30401e58b5c6581f11062f71bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">A result used in operations that read from memory or files.  <a href="classcrashpad_1_1PtraceBroker.html#ac1991f30401e58b5c6581f11062f71bb">More...</a><br /></td></tr>
<tr class="separator:ac1991f30401e58b5c6581f11062f71bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a39034363380b9c0b7c9832168a807639"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1PtraceBroker.html#a39034363380b9c0b7c9832168a807639">PtraceBroker</a> (int sock, pid_t pid, bool is_64_bit)</td></tr>
<tr class="memdesc:a39034363380b9c0b7c9832168a807639"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs this object.  <a href="#a39034363380b9c0b7c9832168a807639">More...</a><br /></td></tr>
<tr class="separator:a39034363380b9c0b7c9832168a807639"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59ca24b120d4a2f015bffd3305f5ac17"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1PtraceBroker.html#a59ca24b120d4a2f015bffd3305f5ac17">SetFileRoot</a> (const char *root)</td></tr>
<tr class="memdesc:a59ca24b120d4a2f015bffd3305f5ac17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restricts the broker to serving the contents of files under <em>root</em>.  <a href="#a59ca24b120d4a2f015bffd3305f5ac17">More...</a><br /></td></tr>
<tr class="separator:a59ca24b120d4a2f015bffd3305f5ac17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7710bcabc694ce327838c0b537f2fdc4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1PtraceBroker.html#a7710bcabc694ce327838c0b537f2fdc4">Run</a> ()</td></tr>
<tr class="memdesc:a7710bcabc694ce327838c0b537f2fdc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin serving requests on the configured socket.  <a href="#a7710bcabc694ce327838c0b537f2fdc4">More...</a><br /></td></tr>
<tr class="separator:a7710bcabc694ce327838c0b537f2fdc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implements a <a class="el" href="classcrashpad_1_1PtraceConnection.html" title="Provides an interface for making ptrace requests against a process and its threads. ">PtraceConnection</a> over a socket. </p>
<p>This class is the server half of the connection. The broker should be run in a process with <code>ptrace</code> capabilities for the target process and may run in a compromised context. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="ace8571d7cc63395929f3f201a4d54f66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace8571d7cc63395929f3f201a4d54f66">&#9670;&nbsp;</a></span>OpenResult</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classcrashpad_1_1PtraceBroker.html#ace8571d7cc63395929f3f201a4d54f66">crashpad::PtraceBroker::OpenResult</a> : int32_t</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A result used in operations that accept paths. </p>
<p>Positive values of this enum are reserved for sending errno values. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ace8571d7cc63395929f3f201a4d54f66a44130e43ef083c4f2abdf479143a42a1"></a>kOpenResultAccessDenied&#160;</td><td class="fielddoc"><p>Access to the path is denied. </p>
</td></tr>
<tr><td class="fieldname"><a id="ace8571d7cc63395929f3f201a4d54f66a9e0aa9534d62334542e1725b1ff426f7"></a>kOpenResultTooLong&#160;</td><td class="fielddoc"><p>The path name is too long. </p>
</td></tr>
<tr><td class="fieldname"><a id="ace8571d7cc63395929f3f201a4d54f66a4ae8cfbc566d9e57877b31a36fe69f9f"></a>kOpenResultSuccess&#160;</td><td class="fielddoc"><p>The file was successfully opened. </p>
</td></tr>
</table>

</div>
</div>
<a id="ac1991f30401e58b5c6581f11062f71bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac1991f30401e58b5c6581f11062f71bb">&#9670;&nbsp;</a></span>ReadError</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classcrashpad_1_1PtraceBroker.html#ac1991f30401e58b5c6581f11062f71bb">crashpad::PtraceBroker::ReadError</a> : int32_t</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A result used in operations that read from memory or files. </p>
<p>Positive values of this enum are reserved for sending errno values. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ac1991f30401e58b5c6581f11062f71bba0e2d7965307a85896c009d2b9d2d20bd"></a>kReadErrorAccessDenied&#160;</td><td class="fielddoc"><p>Access to this data is denied. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a39034363380b9c0b7c9832168a807639"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39034363380b9c0b7c9832168a807639">&#9670;&nbsp;</a></span>PtraceBroker()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">crashpad::PtraceBroker::PtraceBroker </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>sock</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">pid_t&#160;</td>
          <td class="paramname"><em>pid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>is_64_bit</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sock</td><td>A socket on which to read requests from a connected <a class="el" href="classcrashpad_1_1PtraceClient.html" title="Implements a PtraceConnection over a socket. ">PtraceClient</a>. Does not take ownership of the socket. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">pid</td><td>The process ID of the process the broker is expected to trace. Setting this value exends the default file root to "/proc/[pid]/" and enables memory reading via /proc/[pid]/mem. The broker will deny any requests to read memory from processes whose processID is not <em>pid</em>. If pid is -1, the broker will serve requests to read memory from any process it is able to via <code>ptrace PEEKDATA</code>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">is_64_bit</td><td>Whether this broker should be configured to trace a 64-bit process. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7710bcabc694ce327838c0b537f2fdc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7710bcabc694ce327838c0b537f2fdc4">&#9670;&nbsp;</a></span>Run()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int crashpad::PtraceBroker::Run </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Begin serving requests on the configured socket. </p>
<p>This method returns when a PtraceBrokerRequest with type kTypeExit is received or an error is encountered on the socket.</p>
<p>This method calls <code>sbrk</code>, which may break other memory management tools, such as <code>malloc</code>.</p>
<dl class="section return"><dt>Returns</dt><dd>0 if <a class="el" href="classcrashpad_1_1PtraceBroker.html#a7710bcabc694ce327838c0b537f2fdc4" title="Begin serving requests on the configured socket. ">Run()</a> exited due to an exit request. Otherwise an error code. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::PtraceBroker::SetFileRoot </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>root</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restricts the broker to serving the contents of files under <em>root</em>. </p>
<p>If this method is not called, the broker defaults to only serving files under "/proc/" or "/proc/[pid]/" if a pid was set.</p>
<p>Calling this function disables reading from a memory file if one has not already been opened.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">root</td><td>A NUL-terminated c-string containing the path to the new root. <em>root</em> must not be <code>nullptr</code>, must end in a '/', and the caller should ensure that <em>root</em> remains valid for the lifetime of the broker. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>util/linux/ptrace_broker.h</li>
<li>util/linux/ptrace_broker.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
