freebsd-dev/sys/kern
Don Lewis 643a8daaaf If the session leader dies, s_leader is set to NULL and getsid() may
dereference a NULL pointer, causing a panic.  Instead of following
s_leader to find the session id, store it in the session structure.

Jukka found the following info:

	BTW - I just found what I have been looking for. Std 1003.1
	Part 1: SYSTEM API [C LANGUAGE] section 2.2.2.80 states quite
	explicitly...

	Session lifetime: The period between when a session is created
	and the end of lifetime of all the process groups that remain
	as members of the session.

	So, this quite clearly tells that while there is any single
	process in any process group which is a member of the session,
	the session remains as an independent entity.

Reviewed by:	peter
Submitted by:	"Jukka A. Ukkonen" <jau@jau.tmt.tele.fi>
1998-11-09 15:08:04 +00:00
..
bus_if.m Add semicolon to INTERFACE declaration. 1998-11-08 18:51:38 +00:00
device_if.m Add semicolon to INTERFACE declarations 1998-11-08 18:35:53 +00:00
imgact_aout.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
imgact_elf.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
imgact_gzip.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
imgact_shell.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
inflate.c Last major round (Unless Bruce thinks of somthing :-) of malloc changes. 1997-10-12 20:26:33 +00:00
init_main.c Fix sysinit_add(). 1998-10-15 17:09:19 +00:00
init_sysent.c Implemented zero-copy TCP/IP extensions via sendfile(2) - send a 1998-11-05 14:28:26 +00:00
kern_acct.c Moved limit frobbing (and the resulting limcopy()) that occurs for 1998-06-05 21:44:20 +00:00
kern_clock.c Fixed breakage of the GPROF case of statclock() in the previous commit. 1998-10-26 06:13:18 +00:00
kern_conf.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_descrip.c Fixed printf format errors. 1998-07-29 17:38:14 +00:00
kern_environment.c Don't try to initialise the environment out of a sysinit, it's handled 1998-10-09 21:21:34 +00:00
kern_exec.c Added a second argument, "activate" to the vm_page_unwire() call so that 1998-10-28 13:37:02 +00:00
kern_exit.c Moved limit frobbing (and the resulting limcopy()) that occurs for 1998-06-05 21:44:20 +00:00
kern_fork.c If the session leader dies, s_leader is set to NULL and getsid() may 1998-11-09 15:08:04 +00:00
kern_intr.c Start using the new SWI registration system instead of hardwiring everything. 1998-09-26 14:25:32 +00:00
kern_ktrace.c Don't depend on "implicit int". 1998-02-20 13:37:40 +00:00
kern_linker.c Define the kld_debug variable if KLD_DEBUG is enabled 1998-11-06 15:10:17 +00:00
kern_lkm.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_lock.c Really finish supporting compiling with `gcc -ansi'. 1998-04-17 04:53:44 +00:00
kern_lockf.c Fixed printf format errors. 1998-07-29 17:38:14 +00:00
kern_malloc.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_mib.c - hw.machine_arch returns cpu architecture type. 1998-08-31 08:41:58 +00:00
kern_module.c put a \n on an error message printf 1998-11-06 02:18:57 +00:00
kern_ntptime.c Introduce std_pps_ioctl() to automagically DTRT. 1998-06-13 09:30:26 +00:00
kern_physio.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_proc.c If the session leader dies, s_leader is set to NULL and getsid() may 1998-11-09 15:08:04 +00:00
kern_prot.c If the session leader dies, s_leader is set to NULL and getsid() may 1998-11-09 15:08:04 +00:00
kern_random.c Converted add_interrupt_randomness() to take a `void *' arg. Rewrote 1998-06-21 11:33:32 +00:00
kern_resource.c Fixed double counting of runtime after a process exits. The last 1998-07-27 19:16:21 +00:00
kern_shutdown.c Add the ability to specify where on the at_shutdown queue a handler is 1998-10-30 05:41:15 +00:00
kern_sig.c Eliminate a superfluous comment. 1998-10-21 16:31:38 +00:00
kern_subr.c remove nonsense code. 1998-08-04 09:21:04 +00:00
kern_synch.c Oops, back out some local changes that shouldn't have been in the 1998-10-25 20:11:36 +00:00
kern_sysctl.c *gulp*. Jordan specifically OK'ed this.. 1998-10-16 03:55:01 +00:00
kern_tc.c Fixed breakage of the GPROF case of statclock() in the previous commit. 1998-10-26 06:13:18 +00:00
kern_threads.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_time.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
kern_timeout.c Fixed stale references to hzto() in comments. 1998-05-17 20:08:05 +00:00
kern_xxx.c Change various syscalls to use size_t arguments instead of u_int. 1998-08-24 08:39:39 +00:00
ksched.c 1. Add new defs for mins and maxs for the POSIX flavor priorities. They 1998-05-19 21:11:53 +00:00
link_aout.c The handle for the kernel is common. With this fix, ELF kernels can load 1998-11-04 15:20:58 +00:00
link_elf_obj.c Don't put aggregate structs 4K large on the kernel stack, especially when 1998-11-06 15:16:07 +00:00
link_elf.c Don't put aggregate structs 4K large on the kernel stack, especially when 1998-11-06 15:16:07 +00:00
Make.tags.inc Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not 1997-02-22 09:48:43 +00:00
makedevops.pl "Here is the most recent version of makedevops.pl. I've made the parsing 1998-11-08 18:33:11 +00:00
makedevops.sh Use the interface name as well as the method name when creating the method 1998-10-15 09:50:45 +00:00
Makefile Remove bogus architectures to allow make tags to work. 1996-03-31 18:53:43 +00:00
makesyscalls.sh Add trailing newline to sys/syscall.mk so that diff doesn't choke on it. 1998-06-28 10:01:52 +00:00
md5c.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
p1003_1b.c Set PAGE_SIZE for _SC_PAGESIZE sysconf(). 1998-06-01 21:54:43 +00:00
posix4_mib.c Finish _POSIX_PRIORITY_SCHEDULING. Needs P1003_1B and 1998-03-28 11:51:01 +00:00
subr_autoconf.c Removed an unused #include. Ifdefed a conditionally used #include. 1997-11-18 12:43:41 +00:00
subr_bus.c Lots of debugging code and some bugfixes. 1998-10-27 09:21:43 +00:00
subr_clist.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
subr_devstat.c Disable the 'devstat_end_transaction' busy count printf until after 3.0 1998-10-14 20:44:05 +00:00
subr_disklabel.c Use only the correct raw partition for writing labels. Don't use the 1998-10-17 07:49:04 +00:00
subr_diskmbr.c The machine dependent disk slice manager does not recognize 1998-08-10 07:22:14 +00:00
subr_diskslice.c Overload the correct errno for attempts to set an in-core label with 1998-10-17 09:46:42 +00:00
subr_dkbad.c In all such uses of struct buf: 's/b_un.b_addr/b_data/g' 1997-12-02 21:07:20 +00:00
subr_log.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
subr_module.c Align to sizeof(long) rather than sizeof(int32_t). It needs to be 1998-10-14 05:07:23 +00:00
subr_param.c Implemented zero-copy TCP/IP extensions via sendfile(2) - send a 1998-11-05 14:28:26 +00:00
subr_prf.c Store formatted panic string in static buffer to make it available later 1998-09-06 06:25:18 +00:00
subr_prof.c Fixed bogotification of pseudocode for syscall args by rev.1.53 of 1998-09-05 14:30:11 +00:00
subr_rlist.c Move assignment of cur_rlp to after the acquisition of the list lock. 1998-08-05 14:06:04 +00:00
subr_rman.c The new resource manager, hopefully in a reasonably stable form. 1998-10-29 01:48:36 +00:00
subr_smp.c mp_machdep.c: Set a vector to boot code (PC-98). 1998-10-10 13:37:16 +00:00
subr_trap.c Fixed printf format errors. 1998-08-23 10:16:26 +00:00
subr_xxx.c * Fix a couple of places in the device pager where an address was 1998-11-08 12:39:07 +00:00
sys_generic.c Fixed bogotification of pseudocode for syscall args by rev.1.53 of 1998-09-05 14:30:11 +00:00
sys_pipe.c Added a second argument, "activate" to the vm_page_unwire() call so that 1998-10-28 13:37:02 +00:00
sys_process.c Only access an int for READU/WRITEU since that is what ptrace is declared to 1998-07-29 18:41:30 +00:00
sys_socket.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
syscalls.c Implemented zero-copy TCP/IP extensions via sendfile(2) - send a 1998-11-05 14:28:26 +00:00
syscalls.master Implemented zero-copy TCP/IP extensions via sendfile(2) - send a 1998-11-05 14:28:26 +00:00
sysv_ipc.c Removed an unused #include. Added an unsed #include of <sys/ucred.h> 1997-11-18 12:52:10 +00:00
sysv_msg.c Eradicate the variable "time" from the kernel, using various measures. 1998-03-30 09:56:58 +00:00
sysv_sem.c Eradicate the variable "time" from the kernel, using various measures. 1998-03-30 09:56:58 +00:00
sysv_shm.c Fixed two potentially serious classes of bugs: 1998-10-13 08:24:45 +00:00
tty_compat.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_conf.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_cons.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty_pty.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty_snoop.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
tty_subr.c Cast pointers to uintptr_t/intptr_t instead of to u_long/long, 1998-07-15 02:32:35 +00:00
tty_tb.c Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not 1997-02-22 09:48:43 +00:00
tty_tty.c Added D_TTY to the cdevswitch flags for all tty drivers. This is required 1998-08-23 08:26:42 +00:00
tty.c A limit of 200000 for the output buffer high watermark was excessive, 1998-08-19 04:01:00 +00:00
uipc_domain.c Convert socket structures to be type-stable and add a version number. 1998-05-15 20:11:40 +00:00
uipc_mbuf.c Only call m_reclaim() if M_WAIT since calling it from an interrupt can 1998-07-27 03:59:48 +00:00
uipc_proto.c Yow! Completely change the way socket options are handled, eliminating 1998-08-23 03:07:17 +00:00
uipc_sockbuf.c Fix sbcheck() to check all packets on socket buffer. 1998-11-04 20:22:11 +00:00
uipc_socket2.c Fix sbcheck() to check all packets on socket buffer. 1998-11-04 20:22:11 +00:00
uipc_socket.c Bow to tradition and correctly implement the bogus-but-hallowed semantics 1998-08-31 18:07:23 +00:00
uipc_syscalls.c Added support for non-blocking sockets to sendfile(2). 1998-11-06 19:16:30 +00:00
uipc_usrreq.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
vfs_aio.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
vfs_bio.c Use TAILQ macros for clean/dirty block list processing. Set b_xflags 1998-10-31 15:31:29 +00:00
vfs_cache.c Don't use CTL_VFS at the wrong level. This caused loops in the sysctl 1998-09-09 07:41:41 +00:00
vfs_cluster.c Nitpicking and dusting performed on a train. Removes trivial warnings 1998-10-25 17:44:59 +00:00
vfs_conf.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_default.c VOP_STRATEGY grows an (struct vnode *) argument 1998-07-04 20:45:42 +00:00
vfs_export.c Convert lists for bufs attached to vnodes from a LIST to a TAILQ. 1998-10-31 14:20:39 +00:00
vfs_extattr.c make mount(2) automatically kldload modules if the requested filesystem 1998-11-03 14:29:09 +00:00
vfs_init.c General tidy up: remove more unused code, update comments, simplify some 1998-11-04 03:18:10 +00:00
vfs_lookup.c This commit fixes various 64bit portability problems required for 1998-06-07 17:13:14 +00:00
vfs_mount.c Remove the SLICE code. 1998-09-14 19:56:42 +00:00
vfs_subr.c Convert lists for bufs attached to vnodes from a LIST to a TAILQ. 1998-10-31 14:20:39 +00:00
vfs_syscalls.c make mount(2) automatically kldload modules if the requested filesystem 1998-11-03 14:29:09 +00:00
vfs_vnops.c Only do one VOP_ACCESS() per open() instead of two. This should reduce 1998-11-02 02:36:16 +00:00
vnode_if.pl VOP_STRATEGY grows an (struct vnode *) argument 1998-07-04 20:45:42 +00:00
vnode_if.sh VOP_STRATEGY grows an (struct vnode *) argument 1998-07-04 20:45:42 +00:00
vnode_if.src Add a new vnode op, VOP_FREEBLKS(), which filesystems can use to inform 1998-09-05 14:13:12 +00:00