FFmpeg
Data Structures | Macros | Functions | Variables
file_open.c File Reference
#include "config.h"
#include "avutil.h"
#include "file_open.h"
#include "mem.h"
#include <stdarg.h>
#include <fcntl.h>
#include <sys/stat.h>

Go to the source code of this file.

Data Structures

struct  FileLogContext
 

Macros

#define O_BINARY   0
 
#define O_EXCL   0
 

Functions

int avpriv_open (const char *filename, int flags,...)
 A wrapper for open() setting O_CLOEXEC. More...
 
int avpriv_tempfile (const char *prefix, char **filename, int log_offset, void *log_ctx)
 Wrapper to work around the lack of mkstemp() on mingw. More...
 
FILE * avpriv_fopen_utf8 (const char *path, const char *mode)
 Open a file using a UTF-8 filename. More...
 

Variables

static const AVClass file_log_ctx_class
 

Macro Definition Documentation

◆ O_BINARY

#define O_BINARY   0
Examples
ffhash.c.

◆ O_EXCL

#define O_EXCL   0

Function Documentation

◆ avpriv_open()

int avpriv_open ( const char *  filename,
int  flags,
  ... 
)

A wrapper for open() setting O_CLOEXEC.

Definition at line 67 of file file_open.c.

Referenced by av_file_map(), avpriv_fopen_utf8(), bktr_init(), fbdev_read_header(), fbdev_write_header(), ff_fbdev_get_device_list(), and ff_oss_audio_open().

◆ avpriv_tempfile()

int avpriv_tempfile ( const char *  prefix,
char **  filename,
int  log_offset,
void *  log_ctx 
)

Wrapper to work around the lack of mkstemp() on mingw.

Also, tries to create file in /tmp first, if possible. *prefix can be a character constant; *filename will be allocated internally.

Returns
file descriptor of opened file (or negative value corresponding to an AVERROR code on error) and opened file name in **filename.
Note
On very old libcs it is necessary to set a secure umask before calling this, av_tempfile() can't call umask itself as it is used in libraries and could interfere with the calling application.

Definition at line 111 of file file_open.c.

Referenced by cache_open(), and xvid_encode_init().

◆ avpriv_fopen_utf8()

FILE* avpriv_fopen_utf8 ( const char *  path,
const char *  mode 
)

Variable Documentation

◆ file_log_ctx_class

const AVClass file_log_ctx_class
static
Initial value:
= {
.class_name = "TEMPFILE",
.item_name = av_default_item_name,
.option = NULL,
.log_level_offset_offset = 0x42,
.parent_log_context_offset = 0x42,
}

Definition at line 102 of file file_open.c.

Referenced by avpriv_tempfile().

LIBAVUTIL_VERSION_INT
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
NULL
#define NULL
Definition: coverity.c:32
av_default_item_name
const char * av_default_item_name(void *ptr)
Return the context name.
Definition: log.c:237