Provided by: libminicoredumper-dev_2.0.1-1.1_amd64 bug

NAME

       mcd_dump_data_register_text,  mcd_vdump_data_register_text  -  register  text  data  to be
       dumped

SYNOPSIS

       #include <minicoredumper.h>

       int mcd_dump_data_register_text(const char *ident,
                                       unsigned long dump_scope,
                                       mcd_dump_data_t *save_ptr,
                                       const char *fmt, ...);

       int mcd_vdump_data_register_text(const char *ident,
                                        unsigned long dump_scope,
                                        mcd_dump_data_t *save_ptr,
                                        const char *fmt,
                                        va_list ap);

       Compile and link with -lminicoredumper.

DESCRIPTION

       The mcd_dump_data_register_text() function registers text data to be dumped.  ident  is  a
       string  to identify the text dump later. It must be non-NULL.  If the ident is not unique,
       the text dump is appended to previously registered text dumps with the  same  ident.   The
       data will only be dumped if a scope value greater than or equal to dump_scope is requested
       by the minicoredumper(1).  If save_ptr is non-NULL, a pointer to the registered dump  will
       be  stored  there.  This  is needed if mcd_dump_data_unregister(3) will be used.  fmt is a
       printf(3) format string used to print the  text  data  to  a  dump  file.   The  remaining
       arguments are pointer arguments specified by fmt.  Each pointer argument must be of a type
       that is appropriate for the associated length modifier and conversion  specifier  in  fmt.
       Since  the  arguments  are always pointers, the syntax for these arguments matches that of
       scanf(3).

       The   mcd_vdump_data_register_text()   function   is   equivalent    to    the    function
       mcd_dump_data_register_text()  except  that  it  is  called  with  a  va_list instead of a
       variable number of arguments. These functions do not call the va_end macro.  Because  they
       invoke the va_arg macro, the value of ap is undefined after the call. See stdarg(3).

RETURN VALUE

       mcd_dump_data_register_text()  and  mcd_vdump_data_register_text()  return  0  on success,
       otherwise an error value is returned.

ERRORS

       ENOMEM Insufficient memory available to allocate internal structures.

       EINVAL ident was invalid or fmt was NULL.

       EEXIST A binary dump matching ident was already registered.

EXAMPLE

       Register a text dump with 2 different sized variables.

              mcd_dump_data_t dd;
              unsigned long val1;
              unsigned char val2;

              mcd_dump_data_register_text("tdump.txt", 6, &dd,
                                          "val1=0x%lx val2=0x%hhx\n",
                                          &val1, &val2);

BUGS

       When dumping, each pointer argument  is  typecasted  based  on  the  length  modifier  and
       conversion  specifier  associated with that argument. If this does not match the true type
       of the variable, the dumped text may be invalid.

       The string specified in ident is also the file name of the text dump file. For this reason
       characters such as '/' are not permitted.

SEE ALSO

       libminicoredumper(7), mcd_dump_data_unregister(3)

       The DiaMon Workgroup: <http://www.diamon.org>