X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Fos.h;h=7a4f78b9b1fa7919e4a37940831ee976be323e89;hb=efea5a34bb5be542630ce7161bd3b9cc26a0bcf3;hp=9e3a561b65ed5e06f01be297fc17ca8760a2720b;hpb=50b288aca324649fb5b357ce75972a5261cf94fc;p=oweals%2Fu-boot.git diff --git a/include/os.h b/include/os.h index 9e3a561b65..7a4f78b9b1 100644 --- a/include/os.h +++ b/include/os.h @@ -26,16 +26,6 @@ struct sandbox_state; */ ssize_t os_read(int fd, void *buf, size_t count); -/** - * Access to the OS read() system call with non-blocking access - * - * \param fd File descriptor as returned by os_open() - * \param buf Buffer to place data - * \param count Number of bytes to read - * \return number of bytes read, or -1 on error - */ -ssize_t os_read_no_block(int fd, void *buf, size_t count); - /** * Access to the OS write() system call * @@ -347,4 +337,42 @@ void os_abort(void); */ int os_mprotect_allow(void *start, size_t len); +/** + * os_write_file() - Write a file to the host filesystem + * + * This can be useful when debugging for writing data out of sandbox for + * inspection by external tools. + * + * @name: File path to write to + * @buf: Data to write + * @size: Size of data to write + * @return 0 if OK, -ve on error + */ +int os_write_file(const char *name, const void *buf, int size); + +/** + * os_read_file() - Read a file from the host filesystem + * + * This can be useful when reading test data into sandbox for use by test + * routines. The data is allocated using os_malloc() and should be freed by + * the caller. + * + * @name: File path to read from + * @bufp: Returns buffer containing data read + * @sizep: Returns size of data + * @return 0 if OK, -ve on error + */ +int os_read_file(const char *name, void **bufp, int *sizep); + +/* + * os_find_text_base() - Find the text section in this running process + * + * This tries to find the address of the text section in this running process. + * It can be useful to map the address of functions to the address listed in + * the u-boot.map file. + * + * @return address if found, else NULL + */ +void *os_find_text_base(void); + #endif