Linux Headquarters
[ Register ]
[ About us ] [ Home Page ]

Advertisement
[ Kernel ] [ Documentation ] [ Links ] [ Books ]

Advertisement

Kernel v1.3.99 /MAGIC

Filename:/MAGIC
Lines Added:0
Lines Deleted:105
Also changed in: (Previous) 1.3.94  1.3.78  1.3.71  1.3.69  1.3.58  1.3.46 
(Following)

Location
[  1.3.99
   o  MAGIC

Patch

diff -u --recursive --new-file v1.3.98/linux/MAGIC linux/MAGIC
--- v1.3.98/linux/MAGIC   Tue Apr 23 13:57:01 1996
+++ linux/MAGIC   Thu Jan  1 02:00:00 1970
@@ -1,105 +0,0 @@
-This file is a registry of magic numbers which are in use.  When you
-add a magic number to a structure, you should also add it to this
-file, since it is best if the magic numbers used by various structures
-are unique.
-
-It is a *very* good idea to protect kernel data structures with magic
-numbers.  This allows you to check at run time whether (a) a structure
-has been clobbered, or (b) you've passed the wrong structure to a
-routine.  This last is especially useful --- particularly when you are
-passing pointers to structures via a void * pointer.  The tty code,
-for example, does this frequently to pass driver-specific and line
-discipline-specific structures back and forth.
-
-The way to use magic numbers is to declare then at the beginning of
-the structure, like so:
-
-struct tty_ldisc {
-   int   magic;
-   ...
-};
-
-Please follow this discipline when you are adding future enhancements
-to the kernel!  It has saved me countless hours of debugging,
-especially in the screw cases where an array has been overrun and
-structures following the array have been overwritten.  Using this
-discipline, these cases get detected quickly and safely.
-
-You should also register the magic number used by ioctls in the table
-below.  This allows ioctls on inappropriate devices to fail, rather than
-doing something completely unexpected.  The magic number is the first
-argument to the _IO family of macros (see include/linux/ioctl.h) or
-in general bits 8..15 of the ioctl number.  Where ioctls are done on
-devices with a major device number, it is recommended that you use the
-major device number as the ioctl magic value (e.g. hd, lp).
-
-               Theodore Ts'o
-               31-Mar-94
-
-The magic table is current to Linux 1.3.35.
-The ioctl table is current to Linux 1.3.35.
-For a complete list of kernel ioctl's, look for 'ioctl-list.X.Y.ZZ' on
-an ftp site, where 'X.Y.ZZ' is the kernel version for the ioctl list.
-
-               Michael Chastain
-               <mec@duracef.shout.net>
-               17-Oct-95
-
-
-
-
-Magic Name          Number  Structure            File
-===========================================================================
-APM_BIOS_MAGIC      0x4101  struct apm_struct    include/linux/apm_bios.h
-CYCLADES_MAGIC      0x4359  struct cyclades_port include/linux/cyclades.h
-FASYNC_MAGIC        0x4601  struct fasync_struct include/linux/fs.h
-PTY_MAGIC           0x5001  struct pty_struct    drivers/char/pty.c
-PPP_MAGIC           0x5002  struct ppp_struct    include/linux/if_ppp.h
-TTY_MAGIC           0x5401  struct tty_struct    include/linux/tty.h
-TTY_DRIVER_MAGIC    0x5402  struct tty_driver    include/linux/tty_driver.h
-TTY_LDISC_MAGIC     0x5403  struct tty_ldisc     include/linux/tty_ldisc.h
-SERIAL_MAGIC        0x5301  struct async_struct  include/linux/serial.h
-SLIP_MAGIC          0x5302  struct slip          drivers/net/slip.h
-SCC_MAGIC           0x8530  struct scc_channel   include/linux/scc.h
-RISCOM8_MAGIC       0x0907  struct riscom_port    drivers/char/riscom8.h
-
-
-
-Ioctl   Include File      Comments
-========================================================
-0x00   linux/fs.h      only FIBMAP, FIGETBSZ
-0x00   linux/random.h      codes in 0x010800NN
-0x02   linux/fd.h
-0x03   linux/hdreg.h
-0x04   linux/umsdos_fs.h
-0x06   linux/lp.h
-0x09   linux/md.h
-0x12   linux/fs.h
-0x20   linux/cm206.h
-0x22   linux/scc.h
-'A'   linux/apm_bios.h
-'C'   linux/soundcard.h
-'I'   linux/isdn.h
-'K'   linux/kd.h
-'L'   linux/loop.h
-'M'   linux/soundcard.h
-'P'   linux/soundcard.h
-'Q'   linux/soundcard.h
-'S'   linux/cdrom.h      conflict!
-'S'   linux/scsi.h      conflict!
-'T'   linux/soundcard.h   conflict!
-'T'   asm/termios.h      conflict!
-'V'   linux/vt.h
-'Y'   linux/cyclades.h   codes in 0x004359NN
-'a'   various, see http://lrcwww.epfl.ch/linux-atm/magic.html
-'f'   linux/ext2_fs.h
-'m'   linux/mtio.h      conflict!
-'m'   linux/soundcard.h   conflict!
-'n'   linux/ncp_fs.h
-'s'   linux/cdk.h
-'t'   linux/if_ppp.h
-'u'   linux/smb_fs.h
-'u'   linux/smb_fs.h
-'v'   linux/ext2_fs.h
-0x89   asm/socket.h      no conflict
-0x89   linux/sockios.h      no conflict


Comments: webmaster (at) linuxhq.com.
Advertising: banners (at) linuxhq.com.
Compilation ©1998-2008 Linux Headquarters, Inc.