linux/drivers
Eric W. Biederman 98a27ba485 tty: introduce no_tty and use it in selinux
While researching the tty layer pid leaks I found a weird case in selinux when
we drop a controlling tty because of inadequate permissions we don't do the
normal hangup processing.  Which is a problem if it happens the session leader
has exec'd something that can no longer access the tty.

We already have code in the kernel to handle this case in the form of the
TIOCNOTTY ioctl.  So this patch factors out a helper function that is the
essence of that ioctl and calls it from the selinux code.

This removes the inconsistency in handling dropping of a controlling tty and
who knows it might even make some part of user space happy because it received
a SIGHUP it was expecting.

In addition since this removes the last user of proc_set_tty outside of
tty_io.c proc_set_tty is made static and removed from tty.h

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: James Morris <jmorris@namei.org>
Cc: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:04 -07:00
..
acorn
acpi Fix section mismatch of memory hotplug related code. 2007-05-08 11:14:57 -07:00
amba
ata Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2007-05-06 13:20:10 -07:00
atm PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
auxdisplay
base Introduce CONFIG_HAS_DMA 2007-05-07 12:12:51 -07:00
block floppy: handle device_create_file() failure while init 2007-05-08 11:15:02 -07:00
bluetooth [Bluetooth] Correct SCO buffer for another Broadcom based dongle 2007-05-05 00:36:22 +02:00
cdrom mm: remove destroy_dirty_buffers from invalidate_bdev() 2007-05-07 12:12:55 -07:00
char tty: introduce no_tty and use it in selinux 2007-05-08 11:15:04 -07:00
clocksource
connector
cpufreq
crypto [CRYPTO] padlock: Remove pointless padlock module 2007-05-02 22:08:26 +10:00
dio
dma
edac
eisa virtual_eisa_root_init() should be __init 2007-05-08 11:15:02 -07:00
fc4
firmware remove "struct subsystem" as it is no longer needed 2007-05-02 18:57:59 -07:00
hid Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid 2007-04-30 08:58:21 -07:00
hwmon Apple SMC driver (hardware monitoring and control) 2007-05-08 11:15:00 -07:00
i2c remove software_suspend() 2007-05-07 12:12:59 -07:00
ide ide-cs: recognize 2GB CompactFlash from Transcend 2007-05-05 22:03:51 +02:00
ieee1394 PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
infiniband Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband 2007-05-07 12:18:21 -07:00
input sh: hp6xx driver compile fixes. 2007-05-07 02:10:54 +00:00
isdn PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
kvm KVM: Remove unused 'instruction_length' 2007-05-03 10:52:32 +03:00
leds
macintosh CUDA ADB fixes 2007-05-04 17:59:07 -07:00
mca
md mm: remove destroy_dirty_buffers from invalidate_bdev() 2007-05-07 12:12:55 -07:00
media cx88-video build fix 2007-05-07 12:13:04 -07:00
message remove unused header file: drivers/message/i2o/i2o_lan.h 2007-05-08 11:15:02 -07:00
mfd
misc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc 2007-05-04 21:44:34 -07:00
mmc Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2007-05-06 13:20:10 -07:00
mtd slab allocators: Remove SLAB_DEBUG_INITIAL flag 2007-05-07 12:12:57 -07:00
net Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2007-05-07 12:23:31 -07:00
nubus
oprofile
parisc Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2007-05-04 19:36:58 -07:00
parport
pci Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 2007-05-04 18:04:48 -07:00
pcmcia add new_id to PCMCIA drivers 2007-05-07 12:12:50 -07:00
pnp init dma masks in pnp_dev 2007-05-08 11:15:00 -07:00
ps3 ps3av: Use __func__ instead of __FUNCTION__ 2007-05-04 17:59:09 -07:00
rapidio
rtc rtc: add RTC class driver for the Maxim MAX6900 2007-05-08 11:15:03 -07:00
s390 Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-05 13:30:44 -07:00
sbus PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
scsi [SCSI] esp_scsi: Fix section mismatch warnings. 2007-05-07 14:05:03 -07:00
serial Subject: jsm driver fix for linuxpps support 2007-05-08 11:15:03 -07:00
sh
sn
spi spi_s3c24xx.c: Fix build 2007-05-07 12:13:04 -07:00
tc
telephony replace pci_find_device in drivers/telephony/ixj.c 2007-05-08 11:15:02 -07:00
usb ehci-ps3, ohci-ps3: fix compilation 2007-05-07 12:13:04 -07:00
video [VIDEO] sunxvr2500: Fix PCI device ID table. 2007-05-07 14:02:51 -07:00
w1
zorro Amiga Zorro bus: kill resource_size_t warnings 2007-05-04 17:59:08 -07:00
Kconfig
Makefile i2c: Add i2c_board_info and i2c_new_device() 2007-05-01 23:26:31 +02:00