X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Futil.h;h=1662bd44576851875f3ba9b543b3db090abb8f4f;hb=df41aaf9a2b195c9a8bb6fca6672cbf25bc147fb;hp=dc35b4d9801466fb0d992f45f28828d78a36940f;hpb=295edddf5a2d884222a26935b40a4e99b924543d;p=elogind.git diff --git a/src/shared/util.h b/src/shared/util.h index dc35b4d98..1662bd445 100644 --- a/src/shared/util.h +++ b/src/shared/util.h @@ -237,9 +237,6 @@ char *cunescape_length_with_prefix(const char *s, size_t length, const char *pre char *xescape(const char *s, const char *bad); -char *bus_path_escape(const char *s); -char *bus_path_unescape(const char *s); - char *ascii_strlower(char *path); bool dirent_is_file(const struct dirent *de) _pure_; @@ -398,6 +395,10 @@ static inline const char *ansi_highlight_green(void) { return on_tty() ? ANSI_HIGHLIGHT_GREEN_ON : ""; } +static inline const char *ansi_highlight_yellow(void) { + return on_tty() ? ANSI_HIGHLIGHT_YELLOW_ON : ""; +} + static inline const char *ansi_highlight_off(void) { return on_tty() ? ANSI_HIGHLIGHT_OFF : ""; } @@ -572,6 +573,10 @@ static inline void umaskp(mode_t *u) { umask(*u); } +static inline void close_pipep(int (*p)[2]) { + close_pipe(*p); +} + DEFINE_TRIVIAL_CLEANUP_FUNC(FILE*, fclose); DEFINE_TRIVIAL_CLEANUP_FUNC(FILE*, pclose); DEFINE_TRIVIAL_CLEANUP_FUNC(DIR*, closedir); @@ -585,6 +590,7 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(FILE*, endmntent); #define _cleanup_pclose_ _cleanup_(pclosep) #define _cleanup_closedir_ _cleanup_(closedirp) #define _cleanup_endmntent_ _cleanup_(endmntentp) +#define _cleanup_close_pipe_ _cleanup_(close_pipep) _malloc_ _alloc_(1, 2) static inline void *malloc_multiply(size_t a, size_t b) { if (_unlikely_(b == 0 || a > ((size_t) -1) / b)) @@ -617,6 +623,7 @@ typedef enum DrawSpecialChar { DRAW_TREE_RIGHT, DRAW_TREE_SPACE, DRAW_TRIANGULAR_BULLET, + DRAW_BLACK_CIRCLE, _DRAW_SPECIAL_CHAR_MAX } DrawSpecialChar; const char *draw_special_char(DrawSpecialChar ch); @@ -629,7 +636,6 @@ int on_ac_power(void); int search_and_fopen(const char *path, const char *mode, const char **search, FILE **_f); int search_and_fopen_nulstr(const char *path, const char *mode, const char *search, FILE **_f); -int create_tmp_dir(char template[], char** dir_name); #define FOREACH_LINE(line, f, on_error) \ for (;;) \ @@ -765,7 +771,7 @@ void parse_user_at_host(char *arg, char **user, char **host); int split_pair(const char *s, const char *sep, char **l, char **r); -bool restore_state(void); +int shall_restore_state(void); /** * Normal qsort requires base to be nonnull. Here were require @@ -778,3 +784,5 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, qsort(base, nmemb, size, compar); } } + +int proc_cmdline(char **ret);