modify_ldt

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
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)