Provided by: manpages-posix-dev_2013a-2_all bug

PROLOG

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of
       this interface may differ (consult the corresponding Linux  manual  page  for  details  of
       Linux behavior), or the interface may not be implemented on Linux.

NAME

       posix_trace_attr_destroy,  posix_trace_attr_init — destroy and initialize the trace stream
       attributes object (TRACING)

SYNOPSIS

       #include <trace.h>

       int posix_trace_attr_destroy(trace_attr_t *attr);
       int posix_trace_attr_init(trace_attr_t *attr);

DESCRIPTION

       The posix_trace_attr_destroy() function shall  destroy  an  initialized  trace  attributes
       object.     A    destroyed   attr   attributes   object   can   be   reinitialized   using
       posix_trace_attr_init(); the results of otherwise referencing the object after it has been
       destroyed are undefined.

       The  posix_trace_attr_init() function shall initialize a trace attributes object attr with
       the default value for all of the individual attributes used by a given implementation. The
       read-only  generation-version  and  clock-resolution  attributes  of the newly initialized
       trace attributes object shall be set to their appropriate values  (see  Section  2.11.1.2,
       posix_trace_status_info Structure).

       Results   are  undefined  if  posix_trace_attr_init()  is  called  specifying  an  already
       initialized attr attributes object.

       Implementations may add extensions to the trace attributes object structure  as  permitted
       in the Base Definitions volume of POSIX.1‐2008, Chapter 2, Conformance.

       The  resulting  attributes  object  (possibly  modified  by  setting individual attributes
       values), when used by posix_trace_create(), defines the attributes  of  the  trace  stream
       created. A single attributes object can be used in multiple calls to posix_trace_create().
       After one or more trace streams have been created using an attributes object, any function
       affecting that attributes object, including destruction, shall not affect any trace stream
       previously created. An initialized attributes object also serves to receive the attributes
       of an existing trace stream or trace log when calling the posix_trace_get_attr() function.

RETURN VALUE

       Upon  successful completion, these functions shall return a value of zero. Otherwise, they
       shall return the corresponding error number.

ERRORS

       The posix_trace_attr_destroy() function may fail if:

       EINVAL The value of attr is invalid.

       The posix_trace_attr_init() function shall fail if:

       ENOMEM Insufficient memory exists to initialize the trace attributes object.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       The posix_trace_attr_destroy() and posix_trace_attr_init() functions may be removed  in  a
       future version.

SEE ALSO

       posix_trace_create(), posix_trace_get_attr(), uname()

       The Base Definitions volume of POSIX.1‐2008, <trace.h>

COPYRIGHT

       Portions  of  this  text  are  reprinted  and  reproduced in electronic form from IEEE Std
       1003.1, 2013 Edition, Standard for Information Technology  --  Portable  Operating  System
       Interface  (POSIX),  The Open Group Base Specifications Issue 7, Copyright (C) 2013 by the
       Institute of Electrical and Electronics Engineers, Inc  and  The  Open  Group.   (This  is
       POSIX.1-2008  with  the  2013  Technical  Corrigendum  1  applied.)  In  the  event of any
       discrepancy between this version and the original IEEE and The Open  Group  Standard,  the
       original  IEEE  and The Open Group Standard is the referee document. The original Standard
       can be obtained online at http://www.unix.org/online.html .

       Any typographical or formatting errors that appear in this page are most  likely  to  have
       been  introduced  during  the conversion of the source files to man page format. To report
       such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html .