kernel-ark/include/linux
Al Viro 831830b5a2 restrict reading from /proc/<pid>/maps to those who share ->mm or can ptrace pid
Contents of /proc/*/maps is sensitive and may become sensitive after
open() (e.g.  if target originally shares our ->mm and later does exec
on suid-root binary).

Check at read() (actually, ->start() of iterator) time that mm_struct
we'd grabbed and locked is
 - still the ->mm of target
 - equal to reader's ->mm or the target is ptracable by reader.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-01-02 13:13:27 -08:00
..
amba
byteorder
dvb
hdlc
isdn
lockd
mlx4
mmc mmc: remove unused 'mode' from the mmc_host structure 2007-12-12 20:01:01 +01:00
mtd
netfilter [NETFILTER]: Sort matches/targets in Kbuild file 2007-11-07 04:08:21 -08:00
netfilter_arp
netfilter_bridge
netfilter_ipv4 [NETFILTER]: Sort matches/targets in Kbuild file 2007-11-07 04:08:21 -08:00
netfilter_ipv6 [NETFILTER]: Sort matches/targets in Kbuild file 2007-11-07 04:08:21 -08:00
nfsd
raid
rtc
spi
ssb
sunrpc SUNRPC: make sunrpc/xprtsock.c:xs_setup_{udp,tcp}() static 2007-11-26 16:24:50 -05:00
tc_act [NET] tc_nat: header install 2007-12-26 19:36:35 -08:00
tc_ematch
usb
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi_pmtmr.h
acpi.h ACPI: fix two IRQ8 issues in IOAPIC mode 2007-11-20 01:16:29 -05:00
adb.h
adfs_fs_i.h
adfs_fs_sb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio_abi.h
aio.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm_bios.h apm_event{,info}_t are userspace types 2007-12-17 19:28:16 -08:00
apm-emulation.h
arcdevice.h
arcfb.h
async_tx.h
ata.h libata: add more opcodes to ata.h 2007-12-17 20:33:12 -05:00
atalk.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmel_pdc.h
atmel-ssc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h
auto_fs4.h
auto_fs.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blkdev.h Add UNPLUG traces to all appropriate places 2007-11-09 13:41:32 +01:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h Revert "x86_64: allocate sparsemem memmap above 4G" 2007-10-29 14:05:37 -07:00
bottom_half.h
bpqether.h
bsg.h
buffer_head.h
bug.h
cache.h
calc64.h
capability.h
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
cgroup_subsys.h sched: cpu accounting controller (V2) 2007-12-02 20:04:49 +01:00
cgroup.h
cgroupstats.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h
cm4000_cs.h
cn_proc.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coda.h
coff.h
com20020.h
compat.h
compiler-gcc3.h
compiler-gcc4.h
compiler-gcc.h
compiler-intel.h
compiler.h Permit silencing of __deprecated warnings. 2007-10-25 15:10:17 -07:00
completion.h sched: fix fastcall mismatch in completion APIs 2007-10-24 18:23:48 +02:00
comstats.h
concap.h
configfs.h
connector.h
console_struct.h
console.h
consolemap.h
const.h
cpu.h
cpufreq.h
cpuidle.h cpuidle: fix HP nx6125 regression 2007-11-19 21:43:22 -05:00
cpumask.h
cpuset.h
cramfs_fs_sb.h
cramfs_fs.h
crash_dump.h
crc7.h
crc16.h
crc32.h
crc32c.h
crc-ccitt.h
crc-itu-t.h
crypto.h
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dca.h
dcache.h
dccp.h [DCCP]: Convert Reset code into socket error number 2007-10-24 10:27:48 -02:00
dcookies.h
debug_locks.h
debugfs.h
delay.h
delayacct.h
device-mapper.h dm: merge max_hw_sector 2007-12-20 17:32:12 +00:00
device.h Revert "Driver core: remove class_device_*_bin_file" 2007-10-31 12:51:29 -07:00
devpts_fs.h
dio.h
dirent.h
display.h
dlm_device.h
dlm_netlink.h
dlm.h
dm9000.h
dm-ioctl.h
dma-mapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h
ds17287rtc.h
dtlk.h
edac.h
edd.h
eeprom_93cx6.h
efi.h
efs_dir.h
efs_fs_i.h
efs_fs_sb.h
efs_fs.h
efs_vh.h
eisa.h
elevator.h block: let elv_register() return void 2007-12-18 08:29:28 +01:00
elf-em.h
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
eventfd.h
eventpoll.h x86 merge fallout: uml 2007-10-29 07:41:32 -07:00
exportfs.h
ext2_fs_sb.h
ext2_fs.h fix up ext2_fs.h for userspace after reservations backport 2007-11-29 09:24:53 -08:00
ext3_fs_i.h
ext3_fs_sb.h
ext3_fs.h Fix 64KB blocksize in ext3 directories 2007-11-14 18:45:43 -08:00
ext3_jbd.h
ext4_fs_extents.h
ext4_fs_i.h
ext4_fs_sb.h
ext4_fs.h
ext4_jbd2.h
f75375s.h hwmon: (f75375s) Allow setting up fans with platform_data 2007-11-08 08:42:46 -05:00
fadvise.h
falloc.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd1772.h
fd.h
fddidevice.h
fdreg.h
fib_rules.h
file.h
filter.h
firewire-cdev.h
firewire-constants.h
firmware.h
flat.h
font.h
freezer.h
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h
fsl_devices.h
fsnotify.h
fuse.h fuse: pass open flags to read and write 2007-11-29 09:24:54 -08:00
futex.h kernel/futex.c: make 3 functions static 2007-11-05 21:53:46 +11:00
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h
getcpu.h
gfp.h
gfs2_ondisk.h
gigaset_dev.h
gpio_keys.h
gpio_mouse.h
hardirq.h
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hdsmart.h
hid-debug.h
hid.h
hiddev.h
hidraw.h
highmem.h
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htirq.h
hugetlb.h Revert "hugetlb: Add hugetlb_dynamic_pool sysctl" 2007-12-17 19:28:17 -08:00
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-algo-sgi.h
i2c-dev.h
i2c-gpio.h
i2c-id.h
i2c-ocores.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Make i2c_check_addr static 2007-11-15 19:24:02 +01:00
i2o-dev.h
i2o.h
i8k.h
i8042.h
ibmtr.h
icmp.h
icmpv6.h
ide.h ide: DMA reporting and validity checking fixes (take 3) 2007-12-12 23:31:58 +01:00
idr.h
ieee80211.h
if_addr.h
if_arcnet.h
if_arp.h
if_bonding.h bonding: Add new layer2+3 hash for xor/802.3ad modes 2007-12-07 15:00:32 -05:00
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h
if_ltalk.h
if_macvlan.h
if_packet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_shaper.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h
if_wanpipe.h
if.h
igmp.h
in6.h
in_route.h
in.h
inet_diag.h
inet_lro.h [LRO]: fix lro_gen_skb() alignment 2007-12-05 05:37:32 -08:00
inet.h
inetdevice.h
init_task.h
init.h
initrd.h
inotify.h
input-polldev.h
input.h Input: adds the context menu key (HUT GenDesc 0x84) 2007-11-27 00:47:04 -05:00
interrupt.h
io.h
ioc3.h
ioc4.h
ioctl.h
ioport.h
ioprio.h
ip6_tunnel.h
ip.h
ipc.h
ipmi_msgdefs.h
ipmi_smi.h IPMI: fix comparison in demangle_device_id 2007-10-30 08:06:55 -07:00
ipmi.h
ipsec.h
ipv6_route.h
ipv6.h
ipx.h
irda.h
irq_cpustat.h
irq.h genirq: add unlocked version of set_irq_handler() 2007-12-18 18:05:58 +01:00
irqflags.h
irqreturn.h
isa.h
isapnp.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h
ivtvfb.h
ixjuser.h
jbd2.h
jbd.h jbd: Fix assertion failure in fs/jbd/checkpoint.c 2007-12-05 09:21:20 -08:00
jffs2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h Missing include file in kallsyms.h 2007-11-05 15:12:32 -08:00
kbd_diacr.h
kbd_kern.h
Kbuild [VETH]: move veth.h to include/linux 2007-12-26 19:36:35 -08:00
kd.h Fix <linux/kd.h> usage in userspace 2007-11-29 09:24:52 -08:00
kdebug.h
kdev_t.h
kernel_stat.h
kernel.h
kernelcapi.h
kexec.h
key-type.h
key-ui.h
key.h
keyboard.h
keyctl.h
kfifo.h
klist.h
kmalloc_sizes.h
kmod.h
kobj_map.h
kobject.h
kprobes.h
kref.h
ks0108.h
kthread.h
ktime.h
kvm_para.h
kvm.h
lapb.h
latency.h
lcd.h
leds.h leds: Fix led trigger locking bugs 2007-12-07 09:06:53 +00:00
lguest_launcher.h lguest: documentation update 2007-10-25 15:02:50 +10:00
lguest.h lguest: documentation update 2007-10-25 15:02:50 +10:00
libata.h libata: fix ATAPI draining 2007-12-17 20:43:28 -05:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
list.h
llc.h
lm_interface.h
lock_dlm_plock.h
lockdep.h
log2.h
loop.h
lp.h
lzo.h
m41t00.h
m48t86.h
magic.h
major.h
maple.h
marker.h
matroxfb.h
mbcache.h
mc6821.h
mc146818rtc.h rtc: fall back to requesting only the ports we actually use 2007-11-14 18:45:41 -08:00
mca-legacy.h
mca.h
mdio-bitbang.h
memory_hotplug.h
memory.h
mempolicy.h
mempool.h
meye.h
migrate.h
mii.h
minix_fs.h
miscdevice.h
mm_inline.h
mm_types.h
mm.h Security: round mmap hint address above mmap_min_addr 2007-12-06 00:25:10 +11:00
mman.h
mmtimer.h
mmzone.h
mnt_namespace.h
mod_devicetable.h
module.h
moduleloader.h
moduleparam.h
mount.h
mpage.h
mqueue.h
mroute.h [IPV4]: Clean the ip_sockglue.c from some ugly ifdefs 2007-11-07 04:08:55 -08:00
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
mv643xx_eth.h mv643xx_eth: Fix MV643XX_ETH offsets used by Pegasos 2 2007-10-30 14:32:16 -04:00
mv643xx.h mv643xx_eth: Move ethernet register definitions into private header 2007-10-23 08:23:00 -07:00
n_r3964.h
namei.h
nbd.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
neighbour.h
net.h [NET]: Add the helper kernel_sock_shutdown() 2007-11-12 18:10:39 -08:00
netdevice.h [NET]: docbook fixes for netif_ functions 2007-11-01 02:21:47 -07:00
netfilter_arp.h
netfilter_bridge.h [NETFILTER]: bridge: fix missing link layer headers on outgoing routed packets 2007-12-14 13:54:39 -08:00
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h
netlink.h [NETLINK]: Fix unicast timeouts 2007-11-07 04:15:12 -08:00
netpoll.h
netrom.h
nfs2.h
nfs3.h
nfs4_acl.h
nfs4_mount.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h NFS: make nfs_wb_page_priority() static 2007-11-26 16:24:48 -05:00
nfs_idmap.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfs.h
nfsacl.h
nfsd_idmap.h
nl80211.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
of_device.h
of_platform.h
of.h
oom.h
oprofile.h
page-flags.h
page-isolation.h
pageblock-flags.h
pagemap.h
pagevec.h
param.h
parport_pc.h
parport.h [PARPORT] Remove unused 'irq' argument from parport irq functions 2007-10-23 19:53:16 -04:00
parser.h
pata_platform.h
patchkey.h
pci_hotplug.h
pci_ids.h sdhci: support JMicron JMB38x chips 2007-12-12 20:01:00 +01:00
pci_regs.h
pci-acpi.h
pci.h PCI: Add Kconfig option to disable deprecated pci_find_* API 2007-11-05 13:35:17 -08:00
pcieport_if.h
pda_power.h
percpu_counter.h
percpu.h
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phy_fixed.h
phy.h PHY: Add the phy_device_release device method. 2007-12-04 15:06:33 -05:00
pid_namespace.h pidns: Place under CONFIG_EXPERIMENTAL 2007-11-14 18:45:43 -08:00
pid.h
pipe_fs_i.h
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
plist.h
pm_legacy.h
pm.h
pmu.h
pnp.h PNP: increase the maximum number of resources 2007-11-29 09:24:52 -08:00
pnpbios.h
poison.h
poll.h
posix_acl_xattr.h
posix_acl.h
posix_types.h
posix-timers.h
power_supply.h
ppdev.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
prctl.h
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h proc: fix proc_dir_entry refcounting 2007-12-05 09:21:20 -08:00
profile.h
proportions.h
ps2esdi.h
ptrace.h restrict reading from /proc/<pid>/maps to those who share ->mm or can ptrace pid 2008-01-02 13:13:27 -08:00
qnx4_fs.h
qnxtypes.h
quicklist.h quicklists: do not release off node pages early 2007-12-23 12:54:36 -08:00
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcupdate.h
reboot.h
reciprocal_div.h
reiserfs_acl.h
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_fs.h
reiserfs_xattr.h
relay.h
resource.h
resume-trace.h
rfkill.h
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h RTC: convert mutex to bitfield 2007-11-29 09:24:54 -08:00
rtmutex.h
rtnetlink.h [IPV6]: Add ifindex field to ND user option messages. 2007-11-12 17:58:35 -08:00
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h scatterlist: add more safeguards 2007-11-27 09:30:39 +01:00
scc.h
sched.h sched: clean up, move __sched_text_start/end to sched.h 2007-11-28 15:52:56 +01:00
screen_info.h x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
sctp.h
scx200_gpio.h
scx200.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux_netlink.h
selinux.h SELinux: return EOPNOTSUPP not ENOTSUPP 2007-11-17 10:38:16 +11:00
sem.h
seq_file.h
seqlock.h
serial167.h
serial_8250.h
serial_core.h IP22ZILOG: fix lockup and sysrq 2007-11-29 09:24:53 -08:00
serial_pnx8xxx.h
serial_reg.h
serial.h
serialP.h
serio.h
shm.h
shmem_fs.h
signal.h
signalfd.h
skbuff.h [SKBUFF]: Free old skb properly in skb_morph 2007-11-26 23:11:19 +08:00
slab_def.h Unify /proc/slabinfo configuration 2008-01-02 13:04:48 -08:00
slab.h Unify /proc/slabinfo configuration 2008-01-02 13:04:48 -08:00
slob_def.h
slub_def.h Unify /proc/slabinfo configuration 2008-01-02 13:04:48 -08:00
sm501-regs.h
sm501.h
smb_fs_i.h
smb_fs_sb.h
smb_fs.h
smb_mount.h
smb.h
smbno.h
smp_lock.h
smp.h KVM: fix !SMP build error 2007-11-09 22:39:38 +01:00
snmp.h
socket.h
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types_up.h
spinlock_types.h
spinlock_up.h
spinlock.h
splice.h
srcu.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h [TIPC]: Fix headercheck wrt. tipc_config.h 2007-10-30 21:44:00 -07:00
stringify.h
superhyway.h
suspend.h
svga.h
swap.h
swapops.h
synclink.h
sys.h
syscalls.h
sysctl.h [S390] appldata: remove unused binary sysctls. 2007-11-20 11:13:45 +01:00
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
task_io_accounting_ops.h
task_io_accounting.h
taskstats_kern.h
taskstats.h
tc.h
tcp.h
telephony.h
termios.h
textsearch_fsm.h
textsearch.h
tfrc.h
thread_info.h futex: fix for futex_wait signal stack corruption 2007-12-05 15:46:09 +01:00
threads.h
tick.h
tifm.h
time.h
timer.h
timerfd.h
times.h
timex.h time: add ADJ_OFFSET_SS_READ 2007-11-26 20:42:19 +01:00
tiocl.h
tipc_config.h
tipc.h
topology.h
toshiba.h
transport_class.h
trdevice.h
tsacct_kern.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty.h [TTY]: Fix network driver interactions with TCGET/SET calls. 2007-11-07 04:14:19 -08:00
types.h fix abuses of ptrdiff_t 2007-10-29 07:41:33 -07:00
uaccess.h
udf_fs_i.h
udf_fs_sb.h
udf_fs.h
udp.h
ufs_fs.h
uinput.h
uio_driver.h
uio.h
ultrasound.h
un.h
unistd.h
unwind.h
usb_usual.h usb-storage: Fix devices that cannot handle 32k transfers 2007-12-17 10:47:14 -08:00
usb.h usb.h: fix kernel-doc warning 2007-12-17 10:47:15 -08:00
usbdevice_fs.h USB: Fix signr comment in usbdevice_fs.h 2007-11-28 13:58:34 -08:00
user_namespace.h
user.h
utime.h
uts.h
utsname.h
vermagic.h
veth.h [VETH]: move veth.h to include/linux 2007-12-26 19:36:35 -08:00
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev2.h
videodev.h
videotext.h
virtio_9p.h 9p: add virtio transport 2007-10-23 13:47:31 -05:00
virtio_blk.h Block driver using virtio. 2007-10-23 15:49:54 +10:00
virtio_config.h
virtio_console.h Virtio console driver 2007-10-23 15:49:55 +10:00
virtio_net.h
virtio_ring.h virtio: Force use of power-of-two for descriptor ring sizes 2007-11-12 13:59:40 +11:00
virtio.h
vmalloc.h
vmstat.h
vt_buffer.h
vt_kern.h
vt.h
wait.h
wanrouter.h
watchdog.h
wireless.h
workqueue.h
writeback.h
x25.h
xattr.h
xfrm.h
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro_ids.h
zorro.h
zutil.h