int chvt(int vt);
-int read_one_char(FILE *f, char *ret, bool *need_nl);
+int read_one_char(FILE *f, char *ret, usec_t timeout, bool *need_nl);
int ask(char *ret, const char *replies, const char *text, ...);
-int reset_terminal_fd(int fd);
+int reset_terminal_fd(int fd, bool switch_to_text);
int reset_terminal(const char *name);
int open_terminal(const char *name, int mode);
int fd_columns(int fd);
unsigned columns(void);
+int fd_lines(int fd);
+unsigned lines(void);
+
int running_in_chroot(void);
char *ellipsize(const char *s, size_t length, unsigned percent);
int get_user_creds(const char **username, uid_t *uid, gid_t *gid, const char **home);
int get_group_creds(const char **groupname, gid_t *gid);
+int in_group(const char *name);
+
int glob_exists(const char *path);
int dirent_ensure_type(DIR *d, struct dirent *de);
char *format_bytes(char *buf, size_t l, off_t t);
-int fd_wait_for_event(int fd, int event);
+int fd_wait_for_event(int fd, int event, usec_t timeout);
void* memdup(const void *p, size_t l);
int rtc_open(int flags);
+int is_kernel_thread(pid_t pid);
+
+int fd_inc_sndbuf(int fd, size_t n);
+int fd_inc_rcvbuf(int fd, size_t n);
+
#endif