1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>audit_log_start</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The Linux Kernel API"><link rel="up" href="audit.html" title="Chapter&#160;12.&#160;Audit Interfaces"><link rel="prev" href="audit.html" title="Chapter&#160;12.&#160;Audit Interfaces"><link rel="next" href="API-audit-log-format.html" title="audit_log_format"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">audit_log_start</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="audit.html">Prev</a>&#160;</td><th width="60%" align="center">Chapter&#160;12.&#160;Audit Interfaces</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-audit-log-format.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-audit-log-start"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>audit_log_start &#8212; 
2  obtain an audit buffer
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">struct audit_buffer * <b class="fsfunc">audit_log_start </b>(</code></td><td>struct audit_context * <var class="pdparam">ctx</var>, </td></tr><tr><td>&#160;</td><td>gfp_t <var class="pdparam">gfp_mask</var>, </td></tr><tr><td>&#160;</td><td>int <var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1127474092"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>ctx</code></em></span></dt><dd><p>
4     audit_context (may be NULL)
5    </p></dd><dt><span class="term"><em class="parameter"><code>gfp_mask</code></em></span></dt><dd><p>
6     type of allocation
7    </p></dd><dt><span class="term"><em class="parameter"><code>type</code></em></span></dt><dd><p>
8     audit message type
9    </p></dd></dl></div></div><div class="refsect1"><a name="idp1127477748"></a><h2>Description</h2><p>
10   Returns audit_buffer pointer on success or NULL on error.
11   </p><p>
12
13   Obtain an audit buffer.  This routine does locking to obtain the
14   audit buffer, but then no locking is required for calls to
15   audit_log_*format.  If the task (ctx) is a task that is currently in a
16   syscall, then the syscall is marked as auditable and an audit record
17   will be written at syscall exit.  If there is no associated task, then
18   task context (ctx) should be NULL.
19</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="audit.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="audit.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-audit-log-format.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&#160;12.&#160;Audit Interfaces&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">audit_log_format</span></td></tr></table></div></body></html>
20