1.\"- 2.\" Copyright (c) 2004 Apple Inc. 3.\" Copyright (c) 2005 Robert N. M. Watson 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. Neither the name of Apple Inc. ("Apple") nor the names of 15.\" its contributors may be used to endorse or promote products derived 16.\" from this software without specific prior written permission. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND 19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21.\" ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR 22.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 26.\" STRING LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 27.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.Dd April 19, 2005 31.Dt AU_FREE_TOKEN 3 32.Os 33.Sh NAME 34.Nm au_free_token 35.Nd "deallocate a token_t created by any of the au_to_*() BSM API functions" 36.Sh LIBRARY 37.Lb libbsm 38.Sh SYNOPSIS 39.In bsm/libbsm.h 40.Ft void 41.Fn au_free_token "token_t *tok" 42.Sh DESCRIPTION 43The BSM API generally manages deallocation of 44.Vt token_t 45objects. 46However, if 47.Xr au_write 3 48is passed a bad audit descriptor, the 49.Vt "token_t *" 50parameter will be left untouched. 51In that case, the caller can deallocate the 52.Vt token_t 53using 54.Fn au_free_token 55if desired. 56.Pp 57The 58.Fa tok 59argument is a 60.Vt "token_t *" 61generated by one of the 62.Fn au_to_* 63BSM API calls. 64For convenience, 65.Fa tok 66may be 67.Dv NULL , 68in which case 69.Fn au_free_token 70returns immediately. 71.Sh IMPLEMENTATION NOTES 72This is, in fact, what 73.Xr audit_write 3 74does, in keeping with the existing memory management model of the BSM API. 75.Sh SEE ALSO 76.Xr au_write 3 , 77.Xr audit_write 3 , 78.Xr libbsm 3 79.Sh HISTORY 80The OpenBSM implementation was created by McAfee Research, the security 81division of McAfee Inc., under contract to Apple Computer, Inc., in 2004. 82It was subsequently adopted by the TrustedBSD Project as the foundation for 83the OpenBSM distribution. 84.Sh AUTHORS 85.An -nosplit 86This software was created by 87.An Robert Watson , 88.An Wayne Salamon , 89and 90.An Suresh Krishnaswamy 91for McAfee Research, the security research division of McAfee, 92Inc., under contract to Apple Computer, Inc. 93.Pp 94The Basic Security Module (BSM) interface to audit records and audit event 95stream format were defined by Sun Microsystems. 96