boot: Add xcalloc and xcalloc_multiply
This commit is contained in:
@@ -2,8 +2,10 @@
|
||||
#pragma once
|
||||
|
||||
#include "efi.h"
|
||||
#include "efi-string.h"
|
||||
#include "log.h"
|
||||
#include "proto/file-io.h"
|
||||
#include "memory-util-fundamental.h"
|
||||
#include "string-util-fundamental.h"
|
||||
|
||||
/* This is provided by the linker. */
|
||||
@@ -31,6 +33,19 @@ static inline void freep(void *p) {
|
||||
_malloc_ _alloc_(1) _returns_nonnull_ _warn_unused_result_
|
||||
void *xmalloc(size_t size);
|
||||
|
||||
_malloc_ _alloc_(1) _returns_nonnull_ _warn_unused_result_
|
||||
static inline void *xcalloc(size_t size) {
|
||||
void *t = xmalloc(size);
|
||||
memzero(t, size);
|
||||
return t;
|
||||
}
|
||||
|
||||
_malloc_ _alloc_(1, 2) _returns_nonnull_ _warn_unused_result_
|
||||
static inline void *xcalloc_multiply(size_t n, size_t size) {
|
||||
assert_se(MUL_ASSIGN_SAFE(&size, n));
|
||||
return xcalloc(size);
|
||||
}
|
||||
|
||||
_malloc_ _alloc_(1, 2) _returns_nonnull_ _warn_unused_result_
|
||||
static inline void *xmalloc_multiply(size_t n, size_t size) {
|
||||
assert_se(MUL_ASSIGN_SAFE(&size, n));
|
||||
|
||||
Reference in New Issue
Block a user