diff options
| author | Michael Brown | 2008-06-18 01:43:58 +0200 |
|---|---|---|
| committer | Michael Brown | 2008-06-18 01:43:58 +0200 |
| commit | 0ea821c7b774d7d4fbfc8407b2bf37ff050f4cd9 (patch) | |
| tree | 94ddeca92ca0d5d1921c62be57a22d014df756b6 /src/arch/i386/include | |
| parent | [legacy] Align legacy drivers' __shared data to the maximum possible (diff) | |
| download | ipxe-0ea821c7b774d7d4fbfc8407b2bf37ff050f4cd9.tar.gz ipxe-0ea821c7b774d7d4fbfc8407b2bf37ff050f4cd9.tar.xz ipxe-0ea821c7b774d7d4fbfc8407b2bf37ff050f4cd9.zip | |
[script] Remove arbitrary limit on script line lengths
Diffstat (limited to 'src/arch/i386/include')
| -rw-r--r-- | src/arch/i386/include/librm.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/arch/i386/include/librm.h b/src/arch/i386/include/librm.h index 32dceed67..31b509793 100644 --- a/src/arch/i386/include/librm.h +++ b/src/arch/i386/include/librm.h @@ -211,6 +211,23 @@ strlen_user ( userptr_t buffer, off_t offset ) { } /** + * Find character in user buffer + * + * @v buffer User buffer + * @v offset Starting offset within buffer + * @v c Character to search for + * @v len Length of user buffer + * @ret offset Offset of character, or <0 if not found + */ +static inline __attribute__ (( always_inline )) off_t +memchr_user ( userptr_t buffer, off_t offset, int c, size_t len ) { + void *found; + + found = memchr ( ( ( void * ) buffer + offset ), c, len ); + return ( found ? ( found - ( void * ) buffer ) : -1 ); +} + +/** * Convert virtual address to user buffer * * @v virtual Virtual address |
