#
df8bae1d |
| 24-May-1994 |
Rodney W. Grimes <rgrimes@FreeBSD.org> |
BSD 4.4 Lite Kernel Sources
|
Revision tags: release/8.1.0_cvs, release/8.1.0, release/7.3.0_cvs, release/7.3.0, release/8.0.0_cvs, release/8.0.0, release/7.2.0_cvs, release/7.2.0, release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0 |
|
#
5db88944 |
| 03-Jun-2008 |
Ed Schouten <ed@FreeBSD.org> |
Remove unneeded Giant locking of /dev/tty.
The Giant lock is acquired in two places in tty_tty.c. In both places, it is unneeded.
There is no reason to specify D_NEEDGIANT on this device node. The
Remove unneeded Giant locking of /dev/tty.
The Giant lock is acquired in two places in tty_tty.c. In both places, it is unneeded.
There is no reason to specify D_NEEDGIANT on this device node. The device node has only been designed to return ENXIO when opened. It doesn't make any sense to lock/unlock Giant, just to return this error. D_TTY is also unneeded. The unimplemented functions don't need to be patched by devfs.
We don't need to lock Giant when we want to lookup the proper TTY vnode. s_ttyvp is already protected by proctree_lock (see devfs_vnops.c).
Approved by: philip (mentor)
show more ...
|
#
237fdd78 |
| 16-Mar-2008 |
Robert Watson <rwatson@FreeBSD.org> |
In keeping with style(9)'s recommendations on macros, use a ';' after each SYSINIT() macro invocation. This makes a number of lightweight C parsers much happier with the FreeBSD kernel source, inclu
In keeping with style(9)'s recommendations on macros, use a ';' after each SYSINIT() macro invocation. This makes a number of lightweight C parsers much happier with the FreeBSD kernel source, including cflow's prcc and lxr.
MFC after: 1 month Discussed with: imp, rink
show more ...
|
Revision tags: release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0 |
|
#
f5baf8d6 |
| 03-Jul-2007 |
Konstantin Belousov <kib@FreeBSD.org> |
Lock Giant and proctree lock around dereferencing p_session->s_ttyvp->v_rdev. Lock cdev mutex too to close the race with tty being freed. Relock clone_drain_lock to prevent the LOR with proctree lock
Lock Giant and proctree lock around dereferencing p_session->s_ttyvp->v_rdev. Lock cdev mutex too to close the race with tty being freed. Relock clone_drain_lock to prevent the LOR with proctree lock, thus add #include <fs/devfs/devfs_int.h>.
Suggested by: tegge Debugging help and testing by: Peter Holm Approved by: re (kensmith)
show more ...
|
Revision tags: release/6.2.0_cvs, release/6.2.0 |
|
#
1bf5e4b8 |
| 27-Sep-2006 |
Martin Blapp <mbr@FreeBSD.org> |
Use ctty instead of just returning. ctty just has a simple open that returns ENXIO.
Submitted by: jhb
|
#
153c21c8 |
| 23-Sep-2006 |
Martin Blapp <mbr@FreeBSD.org> |
If /dev/tty gets opened after your controlling terminal has been revoked you can't call tty_clone afterwords. OpenBSD and NetBSD both fail the open call in that case, so we should do so as well. This
If /dev/tty gets opened after your controlling terminal has been revoked you can't call tty_clone afterwords. OpenBSD and NetBSD both fail the open call in that case, so we should do so as well. This can be done in ctty_clone by returning with *dev==NULL. Admittedly this causes open to return ENOENT, instead of ENXIO as on the other BSDs, but this way requires the least touching of code.
Submitted by: Nate Eldredge <nge@cs.hmc.edu> PR: 83375
MFC: 1 week
show more ...
|
Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0, release/6.0.0_cvs, release/6.0.0 |
|
#
6a113b3d |
| 08-Aug-2005 |
Robert Watson <rwatson@FreeBSD.org> |
Merge the dev_clone and dev_clone_cred event handlers into a single event handler, dev_clone, which accepts a credential argument. Implementors of the event can ignore it if they're not interested, a
Merge the dev_clone and dev_clone_cred event handlers into a single event handler, dev_clone, which accepts a credential argument. Implementors of the event can ignore it if they're not interested, and most do. This avoids having multiple event handler types and fall-back/precedence logic in devfs.
This changes the kernel API for /dev cloning, and may affect third party packages containg cloning kernel modules.
Requested by: phk MFC after: 3 days
show more ...
|
Revision tags: release/5.4.0_cvs, release/5.4.0 |
|
#
f4f6abcb |
| 31-Mar-2005 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Explicitly hold a reference to the cdev we have just cloned. This closes the race where the cdev was reclaimed before it ever made it back to devfs lookup.
|
#
acd102e6 |
| 27-Feb-2005 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Use dynamic major number allocation.
|
Revision tags: release/4.11.0_cvs, release/4.11.0, release/5.3.0_cvs, release/5.3.0 |
|
#
f3732fd1 |
| 17-Jun-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to ke
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to kernel space struct cdev etc.
show more ...
|
#
89c9c53d |
| 16-Jun-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Do the dreaded s/dev_t/struct cdev */ Bump __FreeBSD_version accordingly.
|
Revision tags: release/4.10.0_cvs, release/4.10.0, release/5.2.1_cvs, release/5.2.1 |
|
#
dc08ffec |
| 21-Feb-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Device megapatch 4/6:
Introduce d_version field in struct cdevsw, this must always be initialized to D_VERSION.
Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing four D_NOGIANT fl
Device megapatch 4/6:
Introduce d_version field in struct cdevsw, this must always be initialized to D_VERSION.
Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.
show more ...
|
Revision tags: release/5.2.0_cvs, release/5.2.0, release/4.9.0_cvs, release/4.9.0 |
|
#
70cd7713 |
| 27-Sep-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
The present defaults for the open and close for device drivers which provide no methods does not make any sense, and is not used by any driver.
It is a pretty hard to come up with even a theoretical
The present defaults for the open and close for device drivers which provide no methods does not make any sense, and is not used by any driver.
It is a pretty hard to come up with even a theoretical concept of a device driver which would always fail open and close with ENODEV.
Change the defaults to be nullopen() and nullclose() which simply does nothing.
Remove explicit initializations to these from the drivers which already used them.
show more ...
|
#
677b542e |
| 11-Jun-2003 |
David E. O'Brien <obrien@FreeBSD.org> |
Use __FBSDID().
|
Revision tags: release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0 |
|
#
7ac40f5f |
| 03-Mar-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Gigacommit to improve device-driver source compatibility between branches:
Initialize struct cdevsw using C99 sparse initializtion and remove all initializations to default values.
This patch is au
Gigacommit to improve device-driver source compatibility between branches:
Initialize struct cdevsw using C99 sparse initializtion and remove all initializations to default values.
This patch is automatically generated and has been tested by compiling LINT with all the fields in struct cdevsw in reverse order on alpha, sparc64 and i386.
Approved by: re(scottl)
show more ...
|
#
c9834aa9 |
| 30-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
NODEVFS cleanup: Unifdef.
|
#
109751d2 |
| 27-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Don't dereference null vnode pointer if controling terminal was revoked.
Submitted by: "Peter Edwards" <pmedwards@eircom.net>
|
#
7e760e14 |
| 19-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Originally when DEVFS was added, a global variable "devfs_present" was used to control code which were conditional on DEVFS' precense since this avoided the need for large-scale source pollution with
Originally when DEVFS was added, a global variable "devfs_present" was used to control code which were conditional on DEVFS' precense since this avoided the need for large-scale source pollution with #include "opt_geom.h"
Now that we approach making DEVFS standard, replace these tests with an #ifdef to facilitate mechanical removal once DEVFS becomes non-optional.
No functional change by this commit.
show more ...
|
#
ec2c4225 |
| 19-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
When we use DEVFS, we don't need the /dev/tty pseudo-driver to do more than return ENXIO from its open routine, so most of this file is unneeded.
A straight #ifdef'ing would look quite messy, and ma
When we use DEVFS, we don't need the /dev/tty pseudo-driver to do more than return ENXIO from its open routine, so most of this file is unneeded.
A straight #ifdef'ing would look quite messy, and make the file quite unreadable, so instead I have simply added the DEVFS version of the file at the top, protected by #ifndef NODEVFS.
Once we have removed NODEVFS option, we can retain 86 the 86 lines at the top and drop the other 287 lines.
show more ...
|
Revision tags: release/5.0.0_cvs, release/5.0.0, release/4.7.0_cvs |
|
#
177142e4 |
| 19-Aug-2002 |
Robert Watson <rwatson@FreeBSD.org> |
Pass active_cred and file_cred into the MAC framework explicitly for mac_check_vnode_{poll,read,stat,write}(). Pass in fp->f_cred when calling these checks with a struct file available. Otherwise,
Pass active_cred and file_cred into the MAC framework explicitly for mac_check_vnode_{poll,read,stat,write}(). Pass in fp->f_cred when calling these checks with a struct file available. Otherwise, pass NOCRED. All currently MAC policies use active_cred, but could now offer the cached credential semantic used for the base system security model.
Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
show more ...
|
#
7f724f8b |
| 19-Aug-2002 |
Robert Watson <rwatson@FreeBSD.org> |
Break out mac_check_vnode_op() into three seperate checks: mac_check_vnode_poll(), mac_check_vnode_read(), mac_check_vnode_write(). This improves the consistency with other existing vnode checks, and
Break out mac_check_vnode_op() into three seperate checks: mac_check_vnode_poll(), mac_check_vnode_read(), mac_check_vnode_write(). This improves the consistency with other existing vnode checks, and allows policies to avoid implementing switch statements to determine what operations they do and do not want to authorize.
Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
show more ...
|
Revision tags: release/4.6.2_cvs, release/4.6.2 |
|
#
818d7e6d |
| 12-Aug-2002 |
Robert Watson <rwatson@FreeBSD.org> |
Enforce MAC policy in cttyread() as well as the other operations already instrumented.
Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
|
#
f9d0d524 |
| 01-Aug-2002 |
Robert Watson <rwatson@FreeBSD.org> |
Include file cleanup; mac.h and malloc.h at one point had ordering relationship requirements, and no longer do.
Reminded by: bde
|
#
62b24bcc |
| 01-Aug-2002 |
Robert Watson <rwatson@FreeBSD.org> |
Introduce support for Mandatory Access Control and extensible kernel access control.
Instrument ctty driver invocations of various vnode operations on the terminal controlling tty to perform appropr
Introduce support for Mandatory Access Control and extensible kernel access control.
Instrument ctty driver invocations of various vnode operations on the terminal controlling tty to perform appropriate MAC framework authorization checks.
Note: VOP_IOCTL() on the ctty appears to be authorized using NOCRED in the existing code rather than td->td_ucred. Why?
Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
show more ...
|
Revision tags: release/4.6.1, release/4.6.0_cvs |
|
#
4d77a549 |
| 19-Mar-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Remove __P.
|