the channel= plan9.ini parameter isnt needed anymore as we now
hop the channels to scan for beacons. the status is also indicated
with the link led :-)
handle all these flags on packet transmission like RTS for big
packets and sending data packets to the AP instead of broadcasting
everything.
properly setup bss hardware node table and filtering. now promisc
mode is only used when requested.
handle deauth message from ap.
increase node table to 32 entries.
Fix the behavior of exportfs -r.
Check the return of chdir(srv) to prevent exporting accidentally
the current working directory when the directory specified
with option -r doesn't exist.
Also fix at the same time the missing trailing \n in error
messages printed just before exits().
we gave wrong content-length in range requests. r->stop - r->start
is wrong because r->stop is the byte offset of the *last* byte, not
the *next* byte after the last.
Another band-aid fix to the usb mouse driver, to cope with a mouse which has
an interrupt endpoint number 3 but no number 1 or 2, and a report descriptor
more than 128 bytes long.
use the Srv.end callback for freeing the srv and closing the
file descriptor of a connection. this makes sure we wont free
the srv while there are still outstanding requests that would
access the srv when doing the respond() call.
we used to do getbuf() with nodata flag so it only worked when
we where lucky and got the same in memory block back. this
is uncritical once you have reamed the filesystem, its just
that sometimes ream would fail with "ream successfull, then
hjfs: fsinit: file ./hjfs not found".
in multithreaded programs, we have to wait until all outstanding
requests have been responded before closing down the srv.
dont make write errors sysfatal(), only print them. in case if
listensrv() is used we dont want to exit the process in respond()
called by some worker thread.
make sure Tversion is only handled when there are no outstanding
requests and make sure message size is sane.
on almost all machines, we get tons of these prints for pci busses that
are not physically there but are described in the ACPI namespace. the
reason that we enumerate these is because we do not enumerate _INI and _STA
methods to check if they are present. we just match the information with
the PCI devices we enumerated with our generic pci code. this works fine and
doesnt require aml code to poke arround in pci config space.
some controls are inverted. we reflect this by specifying
negative range in the volume table now and let genaudiovolread()
and genaudiovolwrite() do the conversion.
this makes sure tcp boot will have ther user /tmp's
the same way as from local cwfs. we used /srv/cwfs
to prevent a deadlock with 9660srv as a root filesystem
which has been fixed now.
we have to run the 9p service process in its own namespace
otherwise the attach filename might point onto the served
filesystem causing it to deadlock. this happens especially
if 9660srv is used as root filesystem. (cdboot)
set adc (recording) sample rate the same as playback for now.
make these separate entries later when we reintroduce in/out
attributes to volume controls.
access to non standard serial port COM3 at i/o port 0x200 causes
kernel panic on some machines (Toshiba Sattelite 1415-S115). also,
some machines have gameport at 0x200.
i readded uartisa to the pcf and pccpuf kernel configurations so
one can use plan9.ini to add non standard uarts like:
uart2=type=isa port=0x200 irq=5
instead of trying to make rio not change the window image too fast
and give the client some time to attach it (which turns out to be
impossible), we acknowledge that there is a race and just retry
the window reattach as long as the winname keeps changing in
gengetwindow().