+void setproctitle(char *msg, ...) FORMAT_CHECK(printf,1,2);
+char *getproctitle(void);
+
+/* randomkey.c */
+
+void randomkey(byte *buf, uns size);
+
+/* exitstatus.c */
+
+#define EXIT_STATUS_MSG_SIZE 32
+int format_exit_status(byte *msg, int stat);
+
+/* runcmd.c */
+
+int run_command(byte *cmd, ...);
+void NONRET exec_command(byte *cmd, ...);
+void echo_command(byte *buf, int size, byte *cmd, ...);
+int run_command_v(byte *cmd, va_list args);
+void NONRET exec_command_v(byte *cmd, va_list args);
+void echo_command_v(byte *buf, int size, byte *cmd, va_list args);
+
+/* carefulio.c */
+
+int careful_read(int fd, void *buf, int len);
+int careful_write(int fd, void *buf, int len);
+
+/* sync.c */
+
+void sync_dir(byte *name);
+
+/* sighandler.c */
+
+typedef int (*sh_sighandler_t)(int); // gets signum, returns nonzero if abort() should be called
+
+void handle_signal(int signum);
+void unhandle_signal(int signum);
+sh_sighandler_t set_signal_handler(int signum, sh_sighandler_t new);
+
+/* string.c */
+
+byte *str_unesc(byte *dest, byte *src);
+
+/* bigalloc.c */
+
+void *big_alloc(unsigned int len);
+void big_free(void *start, unsigned int len);