tail head cat sleep
QR code linking to this page

Manual Pages  — FETCH

NAME

fetch, fubyte, fuswintr, fuword, fuword16, fuword32, fuword64, fueword, fueword32, fueword64 – fetch data from user-space

CONTENTS

SYNOPSIS

#include <sys/types.h>
#include <sys/systm.h>

int
fubyte(volatile const void *base);

long
fuword(volatile const void *base);

int
fuword16(volatile const void *base);

int32_t
fuword32(volatile const void *base);

int64_t
fuword64(volatile const void *base);

long
fueword(volatile const void *base, long *val);

int32_t
fueword32(volatile const void *base, int32_t *val);

int64_t
fueword64(volatile const void *base, int64_t *val);
#include <sys/resourcevar.h>

int
fuswintr(void *base);

DESCRIPTION

The fetch functions are designed to copy small amounts of data from user-space of the current process. If read is successful, it is performed atomically. The data read must be naturally aligned.

The fetch routines provide the following functionality:
fubyte()
  Fetches a byte of data from the user-space address base. The byte read is zero-extended into the results variable.
fuword()
  Fetches a word of data (long) from the user-space address base.
fuword16()
  Fetches 16 bits of data from the user-space address base. The half-word read is zero-extended into the results variable.
fuword32()
  Fetches 32 bits of data from the user-space address base.
fuword64()
  Fetches 64 bits of data from the user-space address base.
fuswintr()
  Fetches a short word of data from the user-space address base. This function is safe to call during an interrupt context.
fueword()
  Fetches a word of data (long) from the user-space address base and stores the result in the variable pointed by val.
fueword32()
  Fetches 32 bits of data from the user-space address base and stores the result in the variable pointed by val.
fueword64()
  Fetches 64 bits of data from the user-space address base and stores the result in the variable pointed by val.

The callers of fuword(), fuword32() and fuword64() functions cannot distinguish between -1 read from userspace and function failure.

RETURN VALUES

The fubyte(), fuword(), fuword16(), fuword32(), fuword64(), and fuswintr() functions return the data fetched or -1 on failure. The fueword(), fueword32() and fueword64() functions return 0 on success and -1 on failure.

SEE ALSO

copy(9), store(9)

FETCH (9) October 29, 2014

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

Our grievance is not just against Unix itself, but against the cult of Unix zealots who defend and nurture it. They take the heat, disease, and pestilence as givens, and, as ancient shamans did, display their wounds, some self-inflicted, as proof of their power and wizardry. We aim, through bluntness and humor, to show them that they pray to a tin god, and that science, not religion, is the path to useful and friendly technology.
— The Unix Haters' handbook