summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename IFF_RUNNING to IFF_DRV_RUNNING, IFF_OACTIVE to IFF_DRV_OACTIVE,rwatson2005-08-094-11/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and move both flags from ifnet.if_flags to ifnet.if_drv_flags, making and documenting the locking of these flags the responsibility of the device driver, not the network stack. The flags for these two fields will be mutually exclusive so that they can be exposed to user space as though they were stored in the same variable. Provide #defines to provide the old names #ifndef _KERNEL, so that user applications (such as ifconfig) can use the old flag names. Using the old names in a device driver will result in a compile error in order to help device driver writers adopt the new model. When exposing the interface flags to user space, via interface ioctls or routing sockets, or the two fields together. Since the driver flags cannot currently be set for user space, no new logic is currently required to handle this case. Add some assertions that general purpose network stack routines, such as if_setflags(), are not improperly used on driver-owned flags. With this change, a large number of very minor network stack races are closed, subject to correct device driver locking. Most were likely never triggered. Driver sweep to follow; many thanks to pjd and bz for the line-by-line review they gave this patch. Reviewed by: pjd, bz MFC after: 7 days
* Check that malloc() succeeds in makelist.cperciva2005-08-091-0/+2
| | | | | Submitted by: Roman Divacky (who did a very complete review of both make_index.c and phttpget.c)
* Update to latest version of this tool.phk2005-08-095-247/+335
| | | | Takes about a week for a full run.
* In preparation for fixing races in ARP (and probably in otherglebius2005-08-096-3/+9
| | | | L2/L3 mappings) make rt_check() return a locked rtentry.
* - Use 'error' variable to store error value, instead of 'i'.glebius2005-08-091-9/+6
| | | | | | | | - Push 'i' into the only block where it is used. - Remove redundant check for rt being NULL. If rt_check() hasn't returned an error, then rt is valid. Reviewed by: gnn
* Replace INT_MAX with OFF_MAX. I used INT_MAX originally (in ports)cperciva2005-08-091-3/+3
| | | | because OFF_MAX wasn't defined on FreeBSD 4.x.
* When parsing the HTTP_PROXY environment variable, strip a trailing /cperciva2005-08-091-1/+5
| | | | | | | | | from the port number (if any exists). This unbreaks env HTTP_PROXY="http://localhost:3128/" portsnap fetch While I'm here, list both the host and the port in the error message output if getaddrinfo() fails, since either of them could be responsible for the failure.
* Add a missing EOL when printing "Latest snapshot on server is oldercperciva2005-08-091-5/+7
| | | | | | | | | | than what we already have" message. [1] When operating with the undocumented --debug option, replace "xargs phttpget" with "xargs -t phttpget", since that might conceivably help debugging. Noticed by: simon [1]
* Use atomic operations on runningbufspace.ssouhlal2005-08-081-2/+4
| | | | | | PR: kern/84318 Submitted by: ade MFC after: 3 days
* Use m_copypacket() which is an optimization of the common casethompsa2005-08-081-2/+2
| | | | | | | | | | | | m_copym(m, 0, M_COPYALL, how). This is required for strict alignment architectures where we align the IP header in the input path but m_copym() will create an unaligned copy in bridge_broadcast(). m_copypacket() preserves alignment of the first mbuf. Noticed by: Petri Simolin Approved by: mlaier (mentor) MFC after: 3 days
* Drop in a WITNESS_WARN into SYSCTL_IN to make sure that we arecsjp2005-08-081-0/+2
| | | | | | | | | not holding any non-sleep-able-locks locks when copyin is called. This gets executed un-conditionally since we have no function to wire the buffer in this direction. Pointed out by: truckman MFC after: 1 week
* - Use callout_init_mtx() to close a small race between callout_stop() andjhb2005-08-082-71/+25
| | | | | | | | | | | | | the timeout routine. - Fix locking in detach. - Add locking in shutdown. - Don't mess with the PCI command register in resume, the PCI bus driver already does this for us. - Add locking to the non-serial ifmedia routines. - Fix locking in ioctl. - Remove spls and support for 4.x. MFC after: 1 week
* Add portsnap to the base system. This is a secure, easy to use,cperciva2005-08-0816-1/+2358
| | | | | | | | | | | | | | | | | | | | | | | | | | fast, lightweight, and generally good way for users to keep their ports trees up to date. This is version 0.9.4 from the ports tree (sysutils/portsnap) with the following changes: 1. The experimental pipelined http code is enabled. No seatbelts in -CURRENT. (^_^) 2. The working directory has moved from /usr/local/portsnap to /var/db/portsnap (as discussed on -arch two days ago). 3. Portsnap now fetches a list of mirrors (distributed as DNS SRV records) and selects one randomly. This should help to avoid the uneven loading which plagues the cvsup mirror network. 4. The license is now 2-clause BSD instead of 3-clause BSD. 5. Various incidental changes to make portsnap fit into the base system's build mechanics. X-MFC-After: 6.0-RELEASE X-MFC-Before: 5.5-RELEASE X-MFC-To: RELENG_6, RELENG_5, ports discussed on: -arch and several other places "yes please" from: simon, remko, flz, Diane Bruce thinks this is a great idea: bsdimp Hopes he didn't forget any files: cperciva
* reorder a couple of cases of void __inline to __inline voidjulian2005-08-081-3/+3
| | | | | | | to silence warnings from compilig with -W Submitted by: sandvine inc MFC after: 1 week
* Move the Hitler quotes and some references to him to the "offensive" file.schweikh2005-08-082-78/+73
| | | | I did not bother to sort them all. If you have a script, feel free.
* Merge the dev_clone and dev_clone_cred event handlers into a singlerwatson2005-08-0818-40/+51
| | | | | | | | | | | | | 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
* Be case-insensitive when dealing with algorithm names.pjd2005-08-081-4/+5
| | | | | PR: kern/84659 Submitted by: Benjamin Lutz <benlutz@datacomm.ch>
* Add support for HP branded 2610SAps2005-08-081-0/+2
| | | | | MFC after: 3 days Approved by: scottl
* Ha! This is a very interesting bug.pjd2005-08-081-4/+6
| | | | | | | | | | | I copied strcasecmp() from userland to the kernel and it didn't worked! I started to debug the problem and I find out that this line: while (tolower(*us1) == tolower(*us2++)) { was adding _3_ bytes to 'us2' pointer. Am I loosing my minds here?!... No, in-kernel tolower() is a macro which uses its argument three times. Bad tolower(9), no cookie.
* Check to see if we wired the user-supplied buffers in SYSCTL_OUT, ifcsjp2005-08-081-1/+6
| | | | | | | | | | | | the buffer has not been wired and we are holding any non-sleep-able locks, drop a witness warning. If the buffer has not been wired, it is possible that the writing of the data can sleep, especially if the page is not in memory. This can result in a number of different locking issues, including dead locks. MFC after: 1 week Discussed with: rwatson Reviewed by: jhb
* Split crypto tx+rx key indices and add a key index -> node mapping table:sam2005-08-0810-157/+324
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Crypto changes: o change driver/net80211 key_alloc api to return tx+rx key indices; a driver can leave the rx key index set to IEEE80211_KEYIX_NONE or set it to be the same as the tx key index (the former disables use of the key index in building the keyix->node mapping table and is the default setup for naive drivers by null_key_alloc) o add cs_max_keyid to crypto state to specify the max h/w key index a driver will return; this is used to allocate the key index mapping table and to bounds check table loookups o while here introduce ieee80211_keyix (finally) for the type of a h/w key index o change crypto notifiers for rx failures to pass the rx key index up as appropriate (michael failure, replay, etc.) Node table changes: o optionally allocate a h/w key index to node mapping table for the station table using the max key index setting supplied by drivers (note the scan table does not get a map) o defer node table allocation to lateattach so the driver has a chance to set the max key id to size the key index map o while here also defer the aid bitmap allocation o add new ieee80211_find_rxnode_withkey api to find a sta/node entry on frame receive with an optional h/w key index to use in checking mapping table; also updates the map if it does a hash lookup and the found node has a rx key index set in the unicast key; note this work is separated from the old ieee80211_find_rxnode call so drivers do not need to be aware of the new mechanism o move some node table manipulation under the node table lock to close a race on node delete o add ieee80211_node_delucastkey to do the dirty work of deleting unicast key state for a node (deletes any key and handles key map references) Ath driver: o nuke private sc_keyixmap mechansim in favor of net80211 support o update key alloc api These changes close several race conditions for the ath driver operating in ap mode. Other drivers should see no change. Station mode operation for ath no longer uses the key index map but performance tests show no noticeable change and this will be fixed when the scan table is eliminated with the new scanning support. Tested by: Michal Mertl, avatar, others Reviewed by: avatar, others MFC after: 2 weeks
* While I find the Hitler quotes extremely questionable, I'm enoughschweikh2005-08-081-5/+5
| | | | of a pedant to properly spell the monster's first name.
* Add strcasecmp() and strncasecmp() to libkern and connect to the build.pjd2005-08-083-0/+72
|
* Remove stray commabrueffer2005-08-081-1/+1
|
* Include <term.h> before #undef'ing key_clear.stefanf2005-08-081-0/+2
|
* Insert a series of place-holder function pointers in mac_policy.h forrwatson2005-08-082-0/+50
| | | | | | | | | | | | | | | entry points that will be inserted over the life-time of the 6.x branch, including for: - New struct file labeling (void * already added to struct file), events, access control checks. - Additional struct mount access control checks, internalization/ externalization. - mac_check_cap() - System call enter/exit check and event. - Socket and vnode ioctl entry points. MFC after: 3 days
* Try best to keep a preempted thread at front of run queue, this seemsdavidxu2005-08-081-1/+9
| | | | | improved performance a bit for some workloads, but still seeing interactive lagging unless cpu idling race is fixed.
* Retire the last of the FreeBSD 4.x compat code from the mly driver.scottl2005-08-082-15/+1
|
* Retire the FreeBSD 4.x compat code and __FreeBSD_version checks from the aacscottl2005-08-082-65/+0
| | | | driver.
* Remove a bogus wordbrian2005-08-081-1/+1
|
* Complete the removal of __FreeBSD_version checks from the amr driver. Thescottl2005-08-085-114/+6
| | | | | driver had advanced enough over the years that direct sharing of code with FreeBSD 4.x was in no way possible anymore.
* Back-out previous commit - we need to skip logging socket when we start apjd2005-08-081-0/+3
| | | | | | | | jail and external syslogd is listening in jail's chroot. Pointed out by: csjp While here, skip also "logpriv" socket.
* Fix a few typos.stefanf2005-08-082-4/+4
|
* Don't forget to copy the sentinel into the `help' array. It's expected tostefanf2005-08-081-2/+2
| | | | | | | be there. Submitted by: Björn König PR: 82381
* use ieee80211_iterate_nodes to retrieve station data; the previoussam2005-08-081-45/+89
| | | | | | code walked the list w/o locking MFC after: 1 week
* Fix typo so QUEUE_MACRO_DEBUG works again.phk2005-08-081-1/+1
| | | | | PR: 84654 Submitted by: Antoine.Pelisse@xloling.org (apelisse@gmail.com)
* Cleanup beacon/listen interval handling:sam2005-08-0810-17/+32
| | | | | | | | | | | | | | | | | o separate configured beacon interval from listen interval; this avoids potential use of one value for the other (e.g. setting powersavesleep to 0 clobbers the beacon interval used in hostap or ibss mode) o bounds check the beacon interval received in probe response and beacon frames and drop frames with bogus settings; not clear if we should instead clamp the value as any alteration would result in mismatched sta+ap configuration and probably be more confusing (don't want to log to the console but perhaps ok with rate limiting) o while here up max beacon interval to reflect WiFi standard Noticed by: Martin <nakal@nurfuerspam.de> MFC after: 1 week
* describe m_alignsam2005-08-081-1/+7
|
* Remove a stale __FreeBSD_version check.scottl2005-08-071-5/+3
|
* The presence of a on __FreeBSD_version flagged some code that hasn't been inscottl2005-08-071-23/+4
| | | | the right spot since the FreeBSD 3.x days, if not earlier.
* Skip jails which are already running and inform why.pjd2005-08-071-0/+4
| | | | | | | | | | | We're checking for /var/run/jail_<name>.id file and if it exists, we don't start the jail. It should be also safe in case of reboot(8), because rc.d/cleanvar script is going to remove /var/run/jail_* files. It helps to avoid potential mess when the same jail is started twice, because of an administrator mistake (been there, done that). MFC after: 1 week
* Other changes to this driver preclude its use on 4.x, so remove 4.x compatimp2005-08-071-4/+0
| | | | code elsewhere in the driver.
* We don't need to skip /var/run/log socket, as syslogd is always startedpjd2005-08-071-2/+0
| | | | | after rc.d/cleanvar. And if we wanted to skip /var/run/log we still needed to skip /var/run/logpriv, which wasn't implemented.
* Allow to give more than one jail's name, eg.:pjd2005-08-071-2/+6
| | | | | | # /etc/rc.d/jail start www mail MFC after: 3 days
* When support for 2MB/4MB pages was added in revision 1.148 an error wasalc2005-08-072-2/+0
| | | | | | | | | made in pmap_protect(): The pmap's resident count should not be reduced unless mappings are removed. The errant change to the pmap's resident count could result in a later pmap_remove() failing to remove any mappings if the errant change has set the pmap's resident count to zero.
* Sync libedit with recent NetBSD developments. Including improvements to thestefanf2005-08-0739-1494/+2412
| | | | | | | vi-mode, removal of clause 3, cleanups and the export of the tokenization functions. Not included: config.h, filecomplete.{c,h}
* The libedit update made a const cast necessary.stefanf2005-08-071-1/+1
|
* Add some more info about jail startup and shutdown.brueffer2005-08-071-7/+17
| | | | | Submitted by: Jeremie Le Hen <jeremie@le-hen.org> MFC after: 3 days
* Remove cat-pages without corresponding man-pages.netchild2005-08-071-0/+22
|
* Add the recently removed old paper about pascal.netchild2005-08-071-0/+2
|
OpenPOWER on IntegriCloud