Provided by: libexplain-dev_1.4.D001-2_amd64 bug

NAME

       explain_program_name - manipulate the program name

SYNOPSIS

       #include <libexplain/libexplain.h>
       const char *explain_program_name_get(void);
       void explain_program_name_set(const char *name);
       void explain_program_name_assemble(int yesno);

DESCRIPTION

       These  functions  may  be  used to manipulate libexplain's idea of the command name of the
       current process, and whether or not that name is included in error messages.

   explain_program_name_get
       const char *explain_program_name_get(void);

       The explain_program_name_get function may be used  to  obtain  the  command  name  of  the
       calling  process.  Depending on how capable /proc is on your system, or, failing that, how
       capable lsof(1) is on your system, this may or may not  produce  a  sensible  result.   It
       works well on Linux.

       Returns:
               pointer to string containing the command name (no slashes) of the calling process.

   explain_program_name_set
       void explain_program_name_set(const char *name);

       The explain_program_name_set function may be used to set the libexplain libraries' idea of
       the command name of the calling  process,  setting  the  string  to  be  returned  by  the
       explain_program_name_get(3) function.  This overrides the automatic behavior, which can be
       quite desirable in commands that can be invoked with more than one name, e.g. if they  are
       a hard link synonym.

       This  also sets the option to include the program name in all of the error messages issued
       by the explain_*_or_die(3) functions.

       name    The name of the calling process.  Only  the  basename  will  be  used  if  a  path
               containing slashes is given.

   explain_program_name_assemble
       void explain_program_name_assemble(int yesno);

       The  explain_program_name_assemble  function is used to control whether or not the name of
       the calling process is to be included in error messages issued by the  explain_*_or_die(3)
       functions.   If  not  explicitly  set,  is  controlled  by the EXPLAIN_OPTIONS environment
       variable, or defaults to true if not set there either.

       yesno   nonā€zero (true) to have program name included, zero (false) to have  program  name
               excluded.

COPYRIGHT

       libexplain version 1.4
       Copyright (C) 2008 Peter Miller

AUTHOR

       Written by Peter Miller <pmiller@opensource.org.au>

                                                                          explain_program_name(3)