ABCDEFGHIJKLMNOPQRSTUVWXYZ

modify_ldt

MODIFY_LDT(2)              Linux Programmer's Manual             MODIFY_LDT(2)



NAME
       modify_ldt - get or set ldt

SYNOPSIS
       #include <linux/ldt.h>
       #include <linux/unistd.h>

       _syscall3( int, modify_ldt, int, func, void *, ptr, unsigned long, bytecount )

       int modify_ldt(int func, void *ptr, unsigned long bytecount);

DESCRIPTION
       modify_ldt  reads or writes the local descriptor table (ldt) for a pro-
       cess.  The ldt is a per-process memory management  table  used  by  the
       i386  processor.   For more information on this table, see an Intel 386
       processor handbook.

       When func is 0, modify_ldt reads the ldt into the memory pointed to  by
       ptr.   The  number  of  bytes  read is the smaller of bytecount and the
       actual size of the ldt.

       When func is 1, modify_ldt modifies one ldt entry.   ptr  points  to  a
       modify_ldt_ldt_s  structure  and  bytecount must equal the size of this
       structure.

RETURN VALUE
       On success, modify_ldt returns either the actual number of  bytes  read
       (for  reading)  or  0 (for writing).  On failure, modify_ldt returns -1
       and sets errno.

ERRORS
       ENOSYS func is neither 0 nor 1.

       EINVAL ptr is 0, or func is 1 and bytecount is not equal to the size of
              the  structure  modify_ldt_ldt_s,  or  func is 1 and the new ldt
              entry has invalid values.

       EFAULT ptr points outside the address space.

CONFORMING TO
       This call in Linux-specific and should not be used in programs intended
       to be portable.

SEE ALSO
       vm86(2)



Linux 1.3.6                       1995-07-22                     MODIFY_LDT(2)