KVM_READ(3KVM) Kernel VM Library Functions KVM_READ(3KVM)
NAME
kvm_read, kvm_write - copy data to or from a kernel image or running
system
SYNOPSIS
cc [
flag... ]
file...
-lkvm [
library...]
#include <kvm.h>
ssize_t kvm_read(
kvm_t *kd,
uintptr_t addr,
void *buf,
size_t nbytes);
ssize_t kvm_write(
kvm_t *kd,
uintptr_t addr,
void *buf,
size_t nbytes);
DESCRIPTION
The
kvm_read() function transfers data from the kernel image
specified by
kd (see
kvm_open(3KVM)) to the address space of the
process.
nbytes bytes of data are copied from the kernel virtual
address given by
addr to the buffer pointed to by
buf.
The
kvm_write() function is like
kvm_read(), except that the
direction of data transfer is reversed. To use this function, the
kvm_open(3KVM) call that returned
kd must have specified write
access. If a user virtual address is given, it is resolved in the
address space of the process specified in the most recent
kvm_getu(3KVM) call.
USAGE
The
kvm_read() and
kvm_write() functions are obsolete and might be
removed in a future release. The functions described on the
kvm_kread(3KVM) manual page should be used instead.
RETURN VALUES
On success, these functions return the number of bytes actually
transferred. On failure, they return
-1.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Obsolete |
+--------------------+-----------------+
|MT-Level | Unsafe |
+--------------------+-----------------+
SEE ALSO
kvm_getu(3KVM),
kvm_kread(3KVM),
kvm_nlist(3KVM),
kvm_open(3KVM),
attributes(7) May 2, 2002 KVM_READ(3KVM)