X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Flibbb.h;h=a827ba612ed3f193a38636afd2b4213e53d360fd;hb=147a3ca1a40df4a97e9a12f18eadb537bea73b9a;hp=2fec93db1002c2792e0d70326a4d88214891ba97;hpb=2e41d0cb777e6af086b45555551780e02ad13f46;p=oweals%2Fbusybox.git diff --git a/include/libbb.h b/include/libbb.h index 2fec93db1..a827ba612 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -127,11 +127,11 @@ extern void write_mtab(char* blockDevice, char* directory, char* filesystemType, long flags, char* string_flags); extern void erase_mtab(const char * name); extern long atoi_w_units (const char *cp); -extern long* find_pid_by_name( char* pidName); +extern long* find_pid_by_name( const char* pidName); extern char *find_real_root_device_name(const char* name); extern char *get_line_from_file(FILE *file); extern void print_file(FILE *file); -extern int copyfd(int fd1, int fd2); +extern int copyfd(int fd1, int fd2, const off_t chunksize); extern int print_file_by_name(char *filename); extern char process_escape_sequence(const char **ptr); extern char *get_last_path_component(char *path); @@ -165,11 +165,11 @@ extern unsigned long parse_number(const char *numstr, * increases target size and is often not needed embedded systems. */ extern long my_getpwnam(const char *name); extern long my_getgrnam(const char *name); -extern void my_getpwuid(char *name, long uid); -extern void my_getgrgid(char *group, long gid); +extern char * my_getpwuid(char *name, long uid); +extern char * my_getgrgid(char *group, long gid); extern long my_getpwnamegid(const char *name); -extern int device_open(char *device, int mode); +extern int device_open(const char *device, int mode); extern int del_loop(const char *device); extern int set_loop(const char *device, const char *file, int offset, int *loopro); @@ -324,6 +324,7 @@ void bb_asprintf(char **string_ptr, const char *format, ...) __attribute__ ((for #define FAIL_DELAY 3 extern void change_identity ( const struct passwd *pw ); extern void run_shell ( const char *shell, int loginshell, const char *command, const char **additional_args ); +extern int run_parts(char **args, const unsigned char test_mode); extern int restricted_shell ( const char *shell ); extern void setup_environment ( const char *shell, int loginshell, int changeenv, const struct passwd *pw ); extern int correct_password ( const struct passwd *pw ); @@ -333,8 +334,35 @@ extern int obscure(const char *old, const char *newval, const struct passwd *pwd extern int xopen(const char *pathname, int flags); extern ssize_t xread(int fd, void *buf, size_t count); -extern ssize_t xread_all_eof(int fd, void *buf, size_t count); extern void xread_all(int fd, void *buf, size_t count); extern unsigned char xread_char(int fd); +typedef struct { + int pid; + char user[9]; + char state[4]; + unsigned long rss; + int ppid; +#ifdef FEATURE_CPU_USAGE_PERCENTAGE + unsigned pcpu; + unsigned long stime, utime; +#endif + char *cmd; + + /* basename of executable file in call to exec(2), + size from kernel headers */ + char short_cmd[16]; +} procps_status_t; + +extern procps_status_t * procps_scan(int save_user_arg0); +extern unsigned short compare_string_array(const char *string_array[], const char *key); + +extern int my_query_module(const char *name, int which, void **buf, size_t *bufsize, size_t *ret); + +typedef struct llist_s { + char *data; + struct llist_s *link; +} llist_t; +extern llist_t *llist_add_to(llist_t *old_head, char *new_item); + #endif /* __LIBCONFIG_H__ */