DtMsgLogOpenFile(library call) DtMsgLogOpenFile(library call)
NAME [Toc] [Back]
DtMsgLogOpenFile - opens a log file
SYNOPSIS [Toc] [Back]
#include <Dt/MsgLog.h>
FILE* DtMsgLogOpenFile(
const char* type,
char** filename_return);
DESCRIPTION [Toc] [Back]
The DtMsgLogOpenFile function calls fopen to open a log file with type
open mode. If fopen opens a log file successfully and returns a nonNULL
filename_return, DtMsgLogOpenFile calls malloc to allocate space
for filename_return. DtMsgLogOpenFile then copies the log file name
to filename_return.
The caller must use the free function to release the space allocated
for filename_return, if it is not NULL. The caller must also close the
file pointer returned by DtMsgLogOpenFile. Use caution in doing this
because stderr may be returned.
For a description of the algorithm used to determine the log file to
open, see DtMsgLogMessage(3). Note that if a log file cannot be
opened, filename_return will be set to NULL.
ARGUMENTS [Toc] [Back]
type Specifies the file open flag. See fopen(3) for more
information.
filename_return
Specifies the variable to receive the returned log file
name.
ENVIRONMENT VARIABLES [Toc] [Back]
None.
RESOURCES [Toc] [Back]
None.
ACTIONS/MESSAGES
None.
ERRORS/WARNINGS
None.
EXAMPLES [Toc] [Back]
The following code fragment opens the log file, logs the log file
name, closes the file, and frees the space allocated for the file
name.
- 1 - Formatted: January 24, 2005
DtMsgLogOpenFile(library call) DtMsgLogOpenFile(library call)
char * log_file;
FILE * fp = DtMsgLogOpenFile ("a+", &log_file);
if (log_file) {
DtMsgLogMessage (argv[0], DtMsgLogInformation,
"The log file name is: %s", log_file);
free (log_file);
}
if (fp && fp != stderr)
fclose (fp);
RETURN VALUE [Toc] [Back]
If DtMsgLogMessage completes successfully, it returns a pointer to the
opened log file. If it cannot open a log file, it returns stderr.
FILES [Toc] [Back]
None.
SEE ALSO [Toc] [Back]
DtMsgLogMessage(3), DtMsgLogSetHandler(3)
- 2 - Formatted: January 24, 2005 [ Back ] |