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 12. Audit Interfaces"><link rel="prev" href="audit.html" title="Chapter 12. 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> </td><th width="60%" align="center">Chapter 12. Audit Interfaces</th><td width="20%" align="right"> <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 — 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> </td><td>gfp_t <var class="pdparam">gfp_mask</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </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> </td><td width="20%" align="center"><a accesskey="u" href="audit.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-audit-log-format.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 12. Audit Interfaces </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">audit_log_format</span></td></tr></table></div></body></html> 20