1.\" $NetBSD: posix_spawnattr_init.3,v 1.4 2014/03/18 18:20:37 riastradh Exp $ 2.\" 3.\" Copyright (c) 2008 Ed Schouten <ed@FreeBSD.org> 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.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" 27.\" Portions of this text are reprinted and reproduced in electronic form 28.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- 29.\" Portable Operating System Interface (POSIX), The Open Group Base 30.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of 31.\" Electrical and Electronics Engineers, Inc and The Open Group. In the 32.\" event of any discrepancy between this version and the original IEEE and 33.\" The Open Group Standard, the original IEEE and The Open Group Standard is 34.\" the referee document. The original Standard can be obtained online at 35.\" http://www.opengroup.org/unix/online.html. 36.\" 37.\" $FreeBSD: src/lib/libc/gen/posix_spawnattr_init.3,v 1.1.2.1.4.1 2010/06/14 02:09:06 kensmith Exp $ 38.\" 39.Dd December 20, 2011 40.Dt POSIX_SPAWNATTR_INIT 3 41.Os 42.Sh NAME 43.Nm posix_spawnattr_init , 44.Nm posix_spawnattr_destroy 45.Nd "initialize and destroy spawn attributes object" 46.Sh LIBRARY 47.Lb libc 48.Sh SYNOPSIS 49.In spawn.h 50.Ft int 51.Fn posix_spawnattr_init "posix_spawnattr_t * attr" 52.Ft int 53.Fn posix_spawnattr_destroy "posix_spawnattr_t * attr" 54.Sh DESCRIPTION 55The 56.Fn posix_spawnattr_init 57function initializes a spawn attributes object 58.Fa attr 59with the default value for all of the individual attributes used by the 60implementation. 61Initializing an already initialized spawn attributes object may cause 62memory to be leaked. 63.Pp 64The 65.Fn posix_spawnattr_destroy 66function destroys a spawn attributes object. 67A destroyed 68.Fa attr 69attributes object can be reinitialized using 70.Fn posix_spawnattr_init . 71The object should not be used after it has been destroyed. 72.Pp 73A spawn attributes object is of type 74.Vt posix_spawnattr_t 75(defined in 76.In spawn.h ) 77and is used to specify the inheritance of process attributes across a 78spawn operation. 79.Pp 80The resulting spawn attributes object (possibly modified by setting 81individual attribute values), is used to modify the behavior of 82.Fn posix_spawn 83or 84.Fn posix_spawnp . 85After a spawn attributes object has been used to spawn a process by a 86call to a 87.Fn posix_spawn 88or 89.Fn posix_spawnp , 90any function affecting the attributes object (including destruction) 91will not affect any process that has been spawned in this way. 92.Sh RETURN VALUES 93Upon successful completion, 94.Fn posix_spawnattr_init 95and 96.Fn posix_spawnattr_destroy 97return zero; 98otherwise, an error number is returned to indicate the error. 99.Sh ERRORS 100The 101.Fn posix_spawnattr_init 102function will fail if: 103.Bl -tag -width Er 104.It Bq Er ENOMEM 105Insufficient memory exists to initialize the spawn file actions object. 106.El 107.Sh SEE ALSO 108.Xr posix_spawn 3 , 109.Xr posix_spawnp 3 110.Sh STANDARDS 111The 112.Fn posix_spawnattr_init 113and 114.Fn posix_spawnattr_destroy 115functions conform to 116.St -p1003.1-2001 . 117.Sh HISTORY 118The 119.Fn posix_spawnattr_init 120and 121.Fn posix_spawnattr_destroy 122functions first appeared in 123.Fx 8.0 124and imported for 125.Nx 6.0 . 126.Sh AUTHORS 127.An Ed Schouten Aq Mt ed@FreeBSD.org 128