*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> modify_ldt (2)              



NAME    [Toc]    [Back]

       modify_ldt - get or set ldt

SYNOPSIS    [Toc]    [Back]

       #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    [Toc]    [Back]

       modify_ldt  reads  or  writes  the  local  descriptor table (ldt) for a
       process.  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

RETURN VALUE    [Toc]    [Back]

       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    [Toc]    [Back]

       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 illegal values.

       EFAULT ptr points outside the address space.

CONFORMING TO    [Toc]    [Back]

       This call in Linux-specfic and should not be used in programs  intended
       to be portable.

SEE ALSO    [Toc]    [Back]


Linux 1.3.6			  1995-07-22			 MODIFY_LDT(2)
[ Back ]
 Similar pages
Name OS Title
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service