| /* SPDX-License-Identifier: GPL-2.0-only */ | 
 |  | 
 | #ifndef XALLOC_H | 
 | #define XALLOC_H | 
 |  | 
 | #include <stdlib.h> | 
 | #include <string.h> | 
 |  | 
 | static inline void *xmalloc(size_t size) | 
 | { | 
 | 	void *p = malloc(size); | 
 |  | 
 | 	if (!p) | 
 | 		exit(1); | 
 | 	return p; | 
 | } | 
 |  | 
 | static inline void *xcalloc(size_t nmemb, size_t size) | 
 | { | 
 | 	void *p = calloc(nmemb, size); | 
 |  | 
 | 	if (!p) | 
 | 		exit(1); | 
 | 	return p; | 
 | } | 
 |  | 
 | static inline void *xrealloc(void *p, size_t size) | 
 | { | 
 | 	p = realloc(p, size); | 
 | 	if (!p) | 
 | 		exit(1); | 
 | 	return p; | 
 | } | 
 |  | 
 | static inline char *xstrdup(const char *s) | 
 | { | 
 | 	char *p = strdup(s); | 
 |  | 
 | 	if (!p) | 
 | 		exit(1); | 
 | 	return p; | 
 | } | 
 |  | 
 | static inline char *xstrndup(const char *s, size_t n) | 
 | { | 
 | 	char *p = strndup(s, n); | 
 |  | 
 | 	if (!p) | 
 | 		exit(1); | 
 | 	return p; | 
 | } | 
 |  | 
 | #endif /* XALLOC_H */ |