rpm 4.19.0
The RPM Package Manager
Loading...
Searching...
No Matches
Macros | Typedefs | Functions | Variables
rpmutil.h File Reference
#include <unistd.h>
Include dependency graph for rpmutil.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define RPM_GNUC_EXTENSION
 
#define RPM_GNUC_PURE
 
#define RPM_GNUC_MALLOC
 
#define RPM_GNUC_ALLOC_SIZE(x)
 
#define RPM_GNUC_ALLOC_SIZE2(x, y)
 
#define RPM_GNUC_NULL_TERMINATED
 
#define RPM_GNUC_PRINTF(format_idx, arg_idx)
 
#define RPM_GNUC_SCANF(format_idx, arg_idx)
 
#define RPM_GNUC_FORMAT(arg_idx)
 
#define RPM_GNUC_NORETURN
 
#define RPM_GNUC_CONST
 
#define RPM_GNUC_UNUSED
 
#define RPM_GNUC_NO_INSTRUMENT
 
#define RPM_GNUC_DEPRECATED
 
#define RPM_GNUC_MAY_ALIAS
 
#define RPM_GNUC_NONNULL(...)
 
#define RPM_GNUC_WARN_UNUSED_RESULT
 
#define RPM_GNUC_INTERNAL
 
#define RPM_BEGIN_DECLS
 
#define RPM_END_DECLS
 

Typedefs

typedef void *(* rpmMemFailFunc) (size_t size, void *data)
 

Functions

RPM_GNUC_MALLOC RPM_GNUC_ALLOC_SIZE (1) void *rmalloc(size_t size)
 
RPM_GNUC_MALLOC RPM_GNUC_ALLOC_SIZE2 (1, 2) void *rcalloc(size_t nmemb
 
RPM_GNUC_MALLOC RPM_GNUC_ALLOC_SIZE2 (2, 3) void *rreallocn(void *ptr
 
void * rrealloc (void *ptr, size_t size)
 
char * rstrdup (const char *str)
 
char * rstrndup (const char *str, size_t n)
 
void * rfree (void *ptr)
 
rpmMemFailFunc rpmSetMemFail (rpmMemFailFunc func, void *data)
 

Variables

RPM_GNUC_MALLOC size_t size
 
RPM_GNUC_MALLOC size_t nmemb
 

Detailed Description

Miscellaneous utility macros:

Copied from glib, names replaced to avoid clashing with glib.

Typedef Documentation

◆ rpmMemFailFunc

typedef void *(* rpmMemFailFunc) (size_t size, void *data)

Memory allocation failure callback prototype. When registered through rpmSetMemFail(), this gets called if memory allocation through rmalloc() and friends fails. If the application can somehow recover memory here, it can return a newly allocated memory block of requested size, otherwise it must return NULL after performing it's own shutdown deeds or terminate itself.

Parameters
sizeSize of allocation request in bytes
dataUser data (or NULL)
Returns
Allocated memory block of requested size or NULL

Function Documentation

◆ rpmSetMemFail()

rpmMemFailFunc rpmSetMemFail ( rpmMemFailFunc  func,
void *  data 
)

Set memory allocation failure callback.

Parameters
funcAllocation failure callback function
dataUser data (or NULL)
Returns
Previous callback function