char *strappend(const char *s, const char *suffix);
int readlink_malloc(const char *p, char **r);
+int readlink_and_make_absolute(const char *p, char **r);
char *file_name_from_path(const char *p);
bool is_path(const char *p);
bool is_clean_exit(int code, int status);
+unsigned long long random_ull(void);
+
#define DEFINE_STRING_TABLE_LOOKUP(name,type) \
const char *name##_to_string(type i) { \
if (i < 0 || i >= (type) ELEMENTSOF(name##_table)) \
bool is_device_path(const char *path);
+int dir_is_empty(const char *path);
+
extern char * __progname;
const char *ioprio_class_to_string(int i);