summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/auditpipe.4 3.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man4/auditpipe.4 3.html')
-rw-r--r--static/freebsd/man4/auditpipe.4 3.html219
1 files changed, 0 insertions, 219 deletions
diff --git a/static/freebsd/man4/auditpipe.4 3.html b/static/freebsd/man4/auditpipe.4 3.html
deleted file mode 100644
index b388b82c..00000000
--- a/static/freebsd/man4/auditpipe.4 3.html
+++ /dev/null
@@ -1,219 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">AUDITPIPE(4)</td>
- <td class="head-vol">Device Drivers Manual</td>
- <td class="head-rtitle">AUDITPIPE(4)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">auditpipe</code> &#x2014;
- <span class="Nd">pseudo-device for live audit event tracking</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp"><code class="Cd">options AUDIT</code></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
-<p class="Pp">While audit trail files generated with <a class="Xr">audit(4)</a>
- and maintained by <a class="Xr">auditd(8)</a> provide a reliable long-term
- store for audit log information, current log files are owned by the audit
- daemon until terminated making them somewhat unwieldy for live monitoring
- applications such as host-based intrusion detection. For example, the log
- may be cycled and new records written to a new file without notice to
- applications that may be accessing the file.</p>
-<p class="Pp">The audit facility provides an audit pipe facility for
- applications requiring direct access to live BSM audit data for the purposes
- of real-time monitoring. Audit pipes are available via a clonable special
- device, <span class="Pa">/dev/auditpipe</span>, subject to the permissions
- on the device node, and provide a &quot;tee&quot; of the audit event stream.
- As the device is clonable, more than one instance of the device may be
- opened at a time; each device instance will provide independent access to
- all records.</p>
-<p class="Pp">The audit pipe device provides discrete BSM audit records; if the
- read buffer passed by the application is too small to hold the next record
- in the sequence, it will be dropped. Unlike audit data written to the audit
- trail, the reliability of record delivery is not guaranteed. In particular,
- when an audit pipe queue fills, records will be dropped. Audit pipe devices
- are blocking by default, but support non-blocking I/O, asynchronous I/O
- using <code class="Dv">SIGIO</code>, and polled operation via
- <a class="Xr">select(2)</a> and <a class="Xr">poll(2)</a>.</p>
-<p class="Pp">Applications may choose to track the global audit trail, or
- configure local preselection parameters independent of the global audit
- trail parameters.</p>
-<section class="Ss">
-<h2 class="Ss" id="Audit_Pipe_Queue_Ioctls"><a class="permalink" href="#Audit_Pipe_Queue_Ioctls">Audit
- Pipe Queue Ioctls</a></h2>
-<p class="Pp">The following ioctls retrieve and set various audit pipe record
- queue properties:</p>
-<dl class="Bl-tag">
- <dt id="AUDITPIPE_GET_QLEN"><a class="permalink" href="#AUDITPIPE_GET_QLEN"><code class="Dv">AUDITPIPE_GET_QLEN</code></a></dt>
- <dd>Query the current number of records available for reading on the
- pipe.</dd>
- <dt id="AUDITPIPE_GET_QLIMIT"><a class="permalink" href="#AUDITPIPE_GET_QLIMIT"><code class="Dv">AUDITPIPE_GET_QLIMIT</code></a></dt>
- <dd>Retrieve the current maximum number of records that may be queued for
- reading on the pipe.</dd>
- <dt id="AUDITPIPE_SET_QLIMIT"><a class="permalink" href="#AUDITPIPE_SET_QLIMIT"><code class="Dv">AUDITPIPE_SET_QLIMIT</code></a></dt>
- <dd>Set the current maximum number of records that may be queued for reading
- on the pipe. The new limit must fall between the queue limit minimum and
- queue limit maximum queryable using the following two ioctls.</dd>
- <dt id="AUDITPIPE_GET_QLIMIT_MIN"><a class="permalink" href="#AUDITPIPE_GET_QLIMIT_MIN"><code class="Dv">AUDITPIPE_GET_QLIMIT_MIN</code></a></dt>
- <dd>Query the lowest possible maximum number of records that may be queued for
- reading on the pipe.</dd>
- <dt id="AUDITPIPE_GET_QLIMIT_MAX"><a class="permalink" href="#AUDITPIPE_GET_QLIMIT_MAX"><code class="Dv">AUDITPIPE_GET_QLIMIT_MAX</code></a></dt>
- <dd>Query the highest possible maximum number of records that may be queued
- for reading on the pipe.</dd>
- <dt id="AUDITPIPE_FLUSH"><a class="permalink" href="#AUDITPIPE_FLUSH"><code class="Dv">AUDITPIPE_FLUSH</code></a></dt>
- <dd>Flush all outstanding records on the audit pipe; useful after setting
- initial preselection properties to delete records queued during the
- configuration process which may not match the interests of the user
- process.</dd>
- <dt id="AUDITPIPE_GET_MAXAUDITDATA"><a class="permalink" href="#AUDITPIPE_GET_MAXAUDITDATA"><code class="Dv">AUDITPIPE_GET_MAXAUDITDATA</code></a></dt>
- <dd>Query the maximum size of an audit record, which is a useful minimum size
- for a user space buffer intended to hold audit records read from the audit
- pipe.</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Audit_Pipe_Preselection_Mode_Ioctls"><a class="permalink" href="#Audit_Pipe_Preselection_Mode_Ioctls">Audit
- Pipe Preselection Mode Ioctls</a></h2>
-<p class="Pp">By default, the audit pipe facility configures pipes to present
- records matched by the system-wide audit trail, configured by
- <a class="Xr">auditd(8)</a>. However, the preselection mechanism for audit
- pipes can be configured using alternative criteria, including pipe-local
- flags and naflags settings, as well as auid-specific selection masks. This
- allows applications to track events not captured in the global audit trail,
- as well as limit records presented to those of specific interest to the
- application.</p>
-<p class="Pp">The following ioctls configure the preselection mode on an audit
- pipe:</p>
-<dl class="Bl-tag">
- <dt id="AUDITPIPE_GET_PRESELECT_MODE"><a class="permalink" href="#AUDITPIPE_GET_PRESELECT_MODE"><code class="Dv">AUDITPIPE_GET_PRESELECT_MODE</code></a></dt>
- <dd>Return the current preselect mode on the audit pipe. The ioctl argument
- should be of type <var class="Vt">int</var>.</dd>
- <dt id="AUDITPIPE_SET_PRESELECT_MODE"><a class="permalink" href="#AUDITPIPE_SET_PRESELECT_MODE"><code class="Dv">AUDITPIPE_SET_PRESELECT_MODE</code></a></dt>
- <dd>Set the current preselection mode on the audit pipe. The ioctl argument
- should be of type <var class="Vt">int</var>.</dd>
-</dl>
-<p class="Pp">Possible preselection mode values are:</p>
-<dl class="Bl-tag">
- <dt id="AUDITPIPE_PRESELECT_MODE_TRAIL"><a class="permalink" href="#AUDITPIPE_PRESELECT_MODE_TRAIL"><code class="Dv">AUDITPIPE_PRESELECT_MODE_TRAIL</code></a></dt>
- <dd>Use the global audit trail preselection parameters to select records for
- the audit pipe.</dd>
- <dt id="AUDITPIPE_PRESELECT_MODE_LOCAL"><a class="permalink" href="#AUDITPIPE_PRESELECT_MODE_LOCAL"><code class="Dv">AUDITPIPE_PRESELECT_MODE_LOCAL</code></a></dt>
- <dd>Use local audit pipe preselection; this model is similar to the global
- audit trail configuration model, consisting of global flags and naflags
- parameters, as well as a set of per-auid masks. These parameters are
- configured using further ioctls.</dd>
-</dl>
-<p class="Pp">After changing the audit pipe preselection mode, records selected
- under earlier preselection configuration may still be in the audit pipe
- queue. The application may flush the current record queue after changing the
- configuration to remove possibly undesired records.</p>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Audit_Pipe_Local_Preselection_Mode_Ioctls"><a class="permalink" href="#Audit_Pipe_Local_Preselection_Mode_Ioctls">Audit
- Pipe Local Preselection Mode Ioctls</a></h2>
-<p class="Pp">The following ioctls configure the preselection parameters used
- when an audit pipe is configured for the
- <code class="Dv">AUDITPIPE_PRESELECT_MODE_LOCAL</code> preselection
- mode.</p>
-<dl class="Bl-tag">
- <dt id="AUDITPIPE_GET_PRESELECT_FLAGS"><a class="permalink" href="#AUDITPIPE_GET_PRESELECT_FLAGS"><code class="Dv">AUDITPIPE_GET_PRESELECT_FLAGS</code></a></dt>
- <dd>Retrieve the current default preselection flags for attributable events on
- the pipe. These flags correspond to the <var class="Va">flags</var> field
- in <a class="Xr">audit_control(5)</a>. The ioctl argument should be of
- type <var class="Vt">au_mask_t</var>.</dd>
- <dt id="AUDITPIPE_SET_PRESELECT_FLAGS"><a class="permalink" href="#AUDITPIPE_SET_PRESELECT_FLAGS"><code class="Dv">AUDITPIPE_SET_PRESELECT_FLAGS</code></a></dt>
- <dd>Set the current default preselection flags for attributable events on the
- pipe. These flags correspond to the <var class="Va">flags</var> field in
- <a class="Xr">audit_control(5)</a>. The ioctl argument should be of type
- <var class="Vt">au_mask_t</var>.</dd>
- <dt id="AUDITPIPE_GET_PRESELECT_NAFLAGS"><a class="permalink" href="#AUDITPIPE_GET_PRESELECT_NAFLAGS"><code class="Dv">AUDITPIPE_GET_PRESELECT_NAFLAGS</code></a></dt>
- <dd>Retrieve the current default preselection flags for non-attributable
- events on the pipe. These flags correspond to the
- <var class="Va">naflags</var> field in <a class="Xr">audit_control(5)</a>.
- The ioctl argument should be of type <var class="Vt">au_mask_t</var>.</dd>
- <dt id="AUDITPIPE_SET_PRESELECT_NAFLAGS"><a class="permalink" href="#AUDITPIPE_SET_PRESELECT_NAFLAGS"><code class="Dv">AUDITPIPE_SET_PRESELECT_NAFLAGS</code></a></dt>
- <dd>Set the current default preselection flags for non-attributable events on
- the pipe. These flags correspond to the <var class="Va">naflags</var>
- field in <a class="Xr">audit_control(5)</a>. The ioctl argument should be
- of type <var class="Vt">au_mask_t</var>.</dd>
- <dt id="AUDITPIPE_GET_PRESELECT_AUID"><a class="permalink" href="#AUDITPIPE_GET_PRESELECT_AUID"><code class="Dv">AUDITPIPE_GET_PRESELECT_AUID</code></a></dt>
- <dd>Query the current preselection masks for a specific auid on the pipe. The
- ioctl argument should be of type <var class="Vt">struct
- auditpipe_ioctl_preselect</var>. The auid to query is specified via the
- <var class="Va">ap_auid</var> field of type <var class="Vt">au_id_t</var>;
- the mask will be returned via <var class="Va">ap_mask</var> of type
- <var class="Vt">au_mask_t</var>.</dd>
- <dt id="AUDITPIPE_SET_PRESELECT_AUID"><a class="permalink" href="#AUDITPIPE_SET_PRESELECT_AUID"><code class="Dv">AUDITPIPE_SET_PRESELECT_AUID</code></a></dt>
- <dd>Set the current preselection masks for a specific auid on the pipe.
- Arguments are identical to
- <code class="Dv">AUDITPIPE_GET_PRESELECT_AUID</code>, except that the
- caller should properly initialize the <var class="Va">ap_mask</var> field
- to hold the desired preselection mask.</dd>
- <dt id="AUDITPIPE_DELETE_PRESELECT_AUID"><a class="permalink" href="#AUDITPIPE_DELETE_PRESELECT_AUID"><code class="Dv">AUDITPIPE_DELETE_PRESELECT_AUID</code></a></dt>
- <dd>Delete the current preselection mask for a specific auid on the pipe. Once
- called, events associated with the specified auid will use the default
- flags mask. The ioctl argument should be of type
- <var class="Vt">au_id_t</var>.</dd>
- <dt id="AUDITPIPE_FLUSH_PRESELECT_AUID"><a class="permalink" href="#AUDITPIPE_FLUSH_PRESELECT_AUID"><code class="Dv">AUDITPIPE_FLUSH_PRESELECT_AUID</code></a></dt>
- <dd>Delete all auid specific preselection specifications.</dd>
-</dl>
-</section>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1>
-<p class="Pp">The <a class="Xr">praudit(1)</a> utility may be directly executed
- on <span class="Pa">/dev/auditpipe</span> to review the default audit
- trail.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp"><a class="Xr">poll(2)</a>, <a class="Xr">select(2)</a>,
- <a class="Xr">audit(4)</a>, <a class="Xr">dtaudit(4)</a>,
- <a class="Xr">audit_control(5)</a>, <a class="Xr">audit(8)</a>,
- <a class="Xr">auditd(8)</a></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
-<p class="Pp">The OpenBSM implementation was created by McAfee Research, the
- security division of McAfee Inc., under contract to Apple Computer Inc. in
- 2004. It was subsequently adopted by the TrustedBSD Project as the
- foundation for the OpenBSM distribution.</p>
-<p class="Pp">Support for kernel audit first appeared in
- <span class="Ux">FreeBSD 6.2</span>.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
-<p class="Pp">The audit pipe facility was designed and implemented by
- <span class="An">Robert Watson</span>
- &lt;<a class="Mt" href="mailto:rwatson@FreeBSD.org">rwatson@FreeBSD.org</a>&gt;.</p>
-<p class="Pp">The Basic Security Module (BSM) interface to audit records and
- audit event stream format were defined by Sun Microsystems.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1>
-<p class="Pp">See the <a class="Xr">audit(4)</a> manual page for information on
- audit-related bugs and limitations.</p>
-<p class="Pp">The configurable preselection mechanism mirrors the selection
- model present for the global audit trail. It might be desirable to provide a
- more flexible selection model.</p>
-<p class="Pp">The per-pipe audit event queue is fifo, with drops occurring if
- either the user thread provides in sufficient for the record on the queue
- head, or on enqueue if there is insufficient room. It might be desirable to
- support partial reads of records, which would be more compatible with
- buffered I/O as implemented in system libraries, and to allow applications
- to select which records are dropped, possibly in the style of
- preselection.</p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">April 28, 2019</td>
- <td class="foot-os">FreeBSD 15.0</td>
- </tr>
-</table>