aboutsummaryrefslogtreecommitdiff
path: root/sys/compat/linux/linux_ioctl.c
Commit message (Collapse)AuthorAgeFilesLines
* Partial MFC of rev. 1.79.Marcel Moolenaar2002-01-231-4/+12
| | | | | | | | | | | | | | The I/F renaming as performed by the SIOCGIFCONF ioctl() is now in sync with current. The linux_ifname interface function has not been removed (as done in 1.79) or changed (as done in 1.82) due to the 11th hour in the 4.5 release cycle. This is fine as the function is not used at all ATM and thus will not break anything. An MFC will happen shortly after 4.5 is safely out the door. Approved by: re Notes: svn path=/stable/4/; revision=89677
* MFC: rev 1.77Marcel Moolenaar2001-12-061-3/+9
| | | | Notes: svn path=/stable/4/; revision=87440
* MFC: Fix a few problems with ioctl translation that stopped VMwareIan Dowse2001-11-221-5/+60
| | | | | | | from working. Notes: svn path=/stable/4/; revision=86778
* Mega MFC: This syncs-up the Linuxulator with -current and henceMarcel Moolenaar2001-11-051-130/+423
| | | | | | | | | | allows Linux_base-7 to work properly. tested on alpha by: gallatin (thanks!) tested on i386 by: marcel (among others probably) Notes: svn path=/stable/4/; revision=86095
* Remove a stay include.David E. O'Brien2000-11-031-1/+0
| | | | | | | Approved by: JKH Notes: svn path=/stable/4/; revision=68282
* MFC: allow AlphaLinux compat bits to build.David E. O'Brien2000-11-021-1/+18
| | | | | | | Approved by: JKH Notes: svn path=/stable/4/; revision=68265
* I took rev 1.55, when I should have taken rev 1.53.David E. O'Brien2000-11-011-2/+2
| | | | Notes: svn path=/stable/4/; revision=68198
* This commit was manufactured by cvs2svn to create branch 'RELENG_4'.cvs2svn2000-10-081-0/+1529
| | | | Notes: svn path=/stable/4/; revision=66835
* This commit was manufactured by cvs2svn to create branch 'RELENG_4'.cvs2svn2000-03-131-1529/+0
| | | | Notes: svn path=/stable/4/; revision=57955
* Implement Linux BLKGETSIZE ioctl, and open the door to implementingNick Sayer2000-03-091-0/+23
| | | | | | | | | other BLK.* ioctls should the desire arize. Approved by: jkh (via dufault) Notes: svn path=/head/; revision=57858
* Avoid passing an uninitialized structure member to the realNick Sayer2000-02-011-0/+1
| | | | | | | | | | READSUBCHANNEL ioctl. This makes vmware work with SCSI CDROM drives. Approved by: jkh Notes: svn path=/head/; revision=56940
* Implement pluggable ioctl handlers.Marcel Moolenaar1999-12-041-1077/+1293
| | | | | | | | | | | | | | | | | | | | | | | | | | | Other modules can register and unregister ioctl handlers to extend the ioctls known by the Linuxulator. A recent application is the vmware port. The Linuxulator itself uses the new interface to register its handlers as well. Handlers for the following types of ioctls have been defined: cdrom console (=keyboard and VT handling) socket sound termio All ioctl related defines and declarations have been moved to a new file (linux_ioctl.h), except for the pluggable ioctl handler interface definition. While there, cleanup linux.h some more. linux.h and linux_ioctl.[ch] have been made to conform to style(9) as much as possible. Inspired and reviewed by: Vladimir N. Silyaev Notes: svn path=/head/; revision=54122
* add linuxulator wrapper for SNDCTL_DSP_GETODELAYAlfred Perlstein1999-11-291-0/+4
| | | | Notes: svn path=/head/; revision=53902
* Swap IOC_OUT and IOC_IN for the SETDIR macro. The linux ioctl read andJohn Hay1999-10-061-1/+1
| | | | | | | | | write bits are swapped. Reviewed by: luoqi, marcel Notes: svn path=/head/; revision=51969
* This is what was "fdfix2.patch," a fix for fd sharing. It's prettyBrian Feldman1999-09-191-21/+19
| | | | | | | | | | | | | | | | | | | | far-reaching in fd-land, so you'll want to consult the code for changes. The biggest change is that now, you don't use fp->f_ops->fo_foo(fp, bar) but instead fo_foo(fp, bar), which increments and decrements the fp refcount upon entry and exit. Two new calls, fhold() and fdrop(), are provided. Each does what it seems like it should, and if fdrop() brings the refcount to zero, the fd is freed as well. Thanks to peter ("to hell with it, it looks ok to me.") for his review. Thanks to msmith for keeping me from putting locks everywhere :) Reviewed by: peter Notes: svn path=/head/; revision=51418
* <machine/soundcard.h> -> <sys/soundcard.h>, since it's an exported APIPeter Wemm1999-09-041-1/+1
| | | | | | | that's arch neutral and OSS API and Linux API compatable. Notes: svn path=/head/; revision=50903
* Implement the OSS_GETVERSION ioctl. The version returned can be changed throughMarcel Moolenaar1999-08-281-0/+8
| | | | | | | | | | the sysctl variable `compat.linux.oss_version'. PR: 12917 Originator: Dean Lombardo <dlombardo@excite.com> Notes: svn path=/head/; revision=50500
* $Id$ -> $FreeBSD$Peter Wemm1999-08-281-1/+1
| | | | Notes: svn path=/head/; revision=50477
* Fix a bug in debug-printfs of struct linux_termios fields, where I forgot toMarcel Moolenaar1999-08-171-5/+5
| | | | | | | | | | change the format specifier after changing the definition of the structure. Submitted by: billf Commented on by: bde Notes: svn path=/head/; revision=49960
* Fix LINUX_TIOC{S|G}SERIAL implementation. Both do not copy data in or outMarcel Moolenaar1999-08-141-25/+21
| | | | | | | | | | | | of kernel space. Remove the ioctl supporting functions, and move the actual code to the switch-statement. Now everybody can clearly see that the implementation is really poor. Also fix a typo in LINUX_TIOCGETD. The underlying function was given command TIOCSETD instead op TIOCGETD... Notes: svn path=/head/; revision=49774
* Fix the LINUX_TCSET{A|AW|AF} and LINUX_TCSET{S|SW|SF} ioctls. These all sufferMarcel Moolenaar1999-08-141-7/+28
| | | | | | | | from the same bug in that the argument is not first copied from user space before it is used. This is part 2 (of 2) of the termios fixes. Notes: svn path=/head/; revision=49768
* Fix a couple of termio/termios conversion bugs/typos/dupos/brainos and otherMarcel Moolenaar1999-08-141-18/+23
| | | | | | | | | | | | | | | | | | | | | | | | | changes. This is part 1 of the complete termios ioctl fixes. o change type of c_{i|o|c|l}flag in struct termios from unsigned long to unsigned int. The type now matches the Linux definitions. o replaced constants by the corresponding defines in sptab[] for clarity. Since there's no define for 135 baud, its mapping has been dropped. function bsd_to_linux_termios: o Fix typo IXON -> IXANY. o Remove bogus assignment to c_cc[LINUX_VSWTC]. function linux_to_bsd_termios: o Fix dupo LINUX_IXON -> LINUX_IXANY. o Add LINUX_CREAD mapping. o Fix typo IEXTEN -> LINUX_IEXTEN. function linux_to_bsd_termio: o Small optimization: Don't preset the complete c_cc array when we next assign to the first LINUX_NCC entries. Notes: svn path=/head/; revision=49766
* Implementation of the CDROMSUBCHNL ioctl.Marcel Moolenaar1999-08-131-1/+65
| | | | Notes: svn path=/head/; revision=49688
* Implementation of TCXONC.Marcel Moolenaar1999-07-171-1/+32
| | | | | | | Reviewed by: bde Notes: svn path=/head/; revision=48851
* Implement VT_RELDISP ioctlMarcel Moolenaar1999-07-081-1/+6
| | | | | | | Submitted by: Kazutaka Yokota <yokota@FreeBSD.org> Notes: svn path=/head/; revision=48685
* Trivial implementation of TIOCM{S|G}ET and TIOCMBI{S|C} ioctls. No needMarcel Moolenaar1999-07-061-1/+17
| | | | | | | to convert the arguments. Notes: svn path=/head/; revision=48628
* Fix a couple of warnings and some bitrot in comments.Peter Wemm1999-05-091-1/+3
| | | | Notes: svn path=/head/; revision=46803
* Fix up a few easy 'assignment used as truth value' and 'suggest parensPeter Wemm1999-05-061-2/+3
| | | | | | | | around && within ||' type warnings. I'm pretty sure I have not masked any problems here, I've committed real problem fixes seperately. Notes: svn path=/head/; revision=46571
* - Handle mixer read ioctls correctly. They have the same group, number andLuoqi Chen1999-04-291-18/+149
| | | | | | | | argument size as their write counterparts and were handled as write ioctls. - Emulate some cdrom ioctls. Notes: svn path=/head/; revision=46163
* MF22: Bring in some linux sound ioctl support which I committed to 2.2Jordan K. Hubbard1998-11-121-1/+61
| | | | | | | | | | for PR 7792 but did not bring forward. Submitted by: Avatar Liang <avatar@www.mmlab.cse.yzu.edu.tw> PR: 8656 Notes: svn path=/head/; revision=41105
* Add several missing ioctl handlers. One needed by Sybase, the othersJohn Fieber1998-09-301-1/+21
| | | | | | | found while looking for the one. Notes: svn path=/head/; revision=39799
* Argh! *Now* the correct 3.0 fix is committed.Jordan K. Hubbard1998-08-311-7/+7
| | | | Notes: svn path=/head/; revision=38679
* Whoops! Stamp out a 2.2-ism that snuck between branches here.Jordan K. Hubbard1998-08-311-2/+2
| | | | Notes: svn path=/head/; revision=38677
* Initial support for using linux X servers under emulation - to use anJordan K. Hubbard1998-08-311-4/+36
| | | | | | | | | | | | | | | | | | | XFree86 server, users need to create the following links in their /compat/linux/dev directory (assuming kernel configured with 4 VTs). lrwxrwxrwx 1 root wheel 7 Aug 30 22:59 tty0 -> console lrwxrwxrwx 1 root wheel 5 Aug 30 22:45 tty1 -> ttyv0 lrwxrwxrwx 1 root wheel 5 Aug 30 22:45 tty2 -> ttyv1 lrwxrwxrwx 1 root wheel 5 Aug 30 22:45 tty3 -> ttyv2 lrwxrwxrwx 1 root wheel 5 Aug 30 22:45 tty4 -> ttyv3 VT switching is still not yet supported. Attempting to switch VT currently will cause Xserver bus error. Submitted by: Chain Lee <chain@110.net> Notes: svn path=/head/; revision=38672
* Fixed print format errors.Bruce Evans1998-07-291-13/+11
| | | | Notes: svn path=/head/; revision=37950
* This commit fixes various 64bit portability problems required forDoug Rabson1998-06-071-2/+2
| | | | | | | | | | | | | FreeBSD/alpha. The most significant item is to change the command argument to ioctl functions from int to u_long. This change brings us inline with various other BSD versions. Driver writers may like to use (__FreeBSD_version == 300003) to detect this change. The prototype FreeBSD/alpha machdep will follow in a couple of days time. Notes: svn path=/head/; revision=36735
* As described by the submitter:Mike Smith1997-12-151-1/+54
| | | | | | | | | | | | | | These patches enables us to play quake2 . Support linux keyboard ioctl for setting RAW, MEDIUMRAW and XLATE. Support linux virtual terminal operations: OPENQRY, GETMODE, SETMODE, GETSTATE, ACTIVATE, and WAITACTIVE. Submitted by: Amancio Hasty <hasty@rah.star-gate.com> Notes: svn path=/head/; revision=31730
* Added support for linux sound ioctls:Amancio Hasty1997-11-171-2/+18
| | | | | | | | | | | | LINUX_SNDCTL_DSP_GETOPTR LINUX_SNDCTL_DSP_GETIPTR LINUX_SNDCTL_DSP_SETTRIGGER LINUX_SNDCTL_DSP_GETCAPS With this rev level the linux realaudio player 5 and xquake should work. Notes: svn path=/head/; revision=31198
* Move the "retval" (3rd) parameter from all syscall functions and putPoul-Henning Kamp1997-11-061-57/+57
| | | | | | | | | | | | | | | it in struct proc instead. This fixes a boatload of compiler warning, and removes a lot of cruft from the sources. I have not removed the /*ARGSUSED*/, they will require some looking at. libkvm, ps and other userland struct proc frobbing programs will need recompiled. Notes: svn path=/head/; revision=30994
* Removed unused #includes.Bruce Evans1997-07-201-3/+1
| | | | Notes: svn path=/head/; revision=27557
* Make this thing actually compile.Doug Rabson1997-06-021-2/+2
| | | | Notes: svn path=/head/; revision=26378
* Oops, remove some bogus debugging code that crept in with the last commit.Mike Smith1997-06-021-10/+1
| | | | Notes: svn path=/head/; revision=26366
* Add support for the SIOCGIFHWADDR ioctl, commonly used byMike Smith1997-06-021-1/+44
| | | | | | | | | | | | license managers to obtain the host's ethernet address as a key. Note that this implementation takes the first hardware address for the first ethernet interface found, and disregards the interface name that may be passed in, as linux ethernet devices are all "ethX". Notes: svn path=/head/; revision=26364
* Don't include <sys/ioctl.h> in the kernel. Stage 3: includeBruce Evans1997-03-241-3/+2
| | | | | | | <sys/filio.h> instead of <sys/ioctl.h> in non-network non-tty files. Notes: svn path=/head/; revision=24205
* Don't #include <sys/fcntl.h> in <sys/file.h> if KERNEL is defined.Bruce Evans1997-03-231-1/+2
| | | | | | | | Fixed everything that depended on getting fcntl.h stuff from the wrong place. Most things don't depend on file.h stuff at all. Notes: svn path=/head/; revision=24131
* Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are notPeter Wemm1997-02-221-1/+1
| | | | | | | ready for it yet. Notes: svn path=/head/; revision=22975
* Make the long-awaited change from $Id$ to $FreeBSD$Jordan K. Hubbard1997-01-141-1/+1
| | | | | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise. Notes: svn path=/head/; revision=21673
* Add audio mixer ioctls.Sujal Patel1996-11-051-1/+73
| | | | | | | Only writing to the mixer is implemented. Notes: svn path=/head/; revision=19414
* Removed unused #include. Linux doesn't support SCO consoles.Bruce Evans1996-06-231-2/+1
| | | | Notes: svn path=/head/; revision=16632
* Clean up -Wunused warnings.Gary Palmer1996-06-121-5/+3
| | | | | | | Reviewed by: bde Notes: svn path=/head/; revision=16322