Commit graph

4071 commits

Author SHA1 Message Date
cinap_lenrek c8ed49da60 xen: fix cross build 2014-12-15 01:43:31 +01:00
cinap_lenrek 07a776fad9 kernel: use new disk/mkfs -o option to get proper source filename list for bootfs.proto 2014-12-15 01:04:05 +01:00
cinap_lenrek 5c1803e1ad disk/mkfs: add -o flag to list source files 2014-12-15 00:52:22 +01:00
cinap_lenrek 2e94406e7f merge 2014-12-14 22:27:06 +01:00
cinap_lenrek 8d6171f1ae kernel: remove *.acid files in nuke target instead of $CONF.clean target 2014-12-14 22:25:15 +01:00
ftrvxmtrx 0dc1929379 png: fail on invalid bpc 2014-12-14 22:20:06 +01:00
cinap_lenrek 67bed722f2 kernel: get rid of /boot/boot parametrization
there is no use for "bootdisk" variable parametrization
of /boot/boot and no point for the boot section with its
boot methods in the kernel configuration anymore. so
mkboot and boot$CONF.out are gone.

move the rules for bootfs.paq creation in 9/boot/bootmkfile.
location of bootfs.proto is now in 9/boot/bootfs.proto.
our /boot/boot target is now just "boot".
2014-12-14 22:10:34 +01:00
cinap_lenrek 1d674abe9c xen: fix mtrr dummy functions 2014-12-14 21:58:02 +01:00
cinap_lenrek 035aacf6f5 bio: add Bfdopen() from plan9port 2014-12-14 20:21:42 +01:00
cinap_lenrek 4afb56f570 kernel: evaluate dependencies of bootfs.proto files for bootfs.paq
expand the list of files specified in bootfs.proto and use them
as dependencies to bootfs.paq rule. this way, bootfs.paq is
regenerated when the to be included files have been modified.
2014-12-14 00:00:59 +01:00
ftrvxmtrx 96525edaae various cmds: replace magic numbers with Kdel/Keof, etc 2014-12-13 21:58:49 +01:00
cinap_lenrek feb7702c9e kernel: correct dependency for printstub.$O instead of print.$O 2014-12-13 21:44:51 +01:00
mischief ff4daa7e93 stats: handle 'q' to close
a side effect of this is keys typed other than q/Del no longer get drawn on top of the window.
2014-12-13 11:28:16 -08:00
cinap_lenrek 25a9cc3adb pc, pc64: untangle embedded controller (ec) dependency from devarch 2014-12-13 06:23:23 +01:00
cinap_lenrek 6a3b9012d5 kernel: generate dummy bootscreeninit() function when building without vga device 2014-12-13 05:29:51 +01:00
cinap_lenrek 9be64bcb8d ndb/cs: fix spelling (thanks mischief) 2014-12-13 23:16:04 +01:00
cinap_lenrek f83dab12c6 acme/win: fix mistake
have to save partial reminder before null terminating current
event buffer :)
2014-12-12 21:18:31 +01:00
cinap_lenrek 6ddbe25d19 acme/win: remove old crap 2014-12-12 21:09:49 +01:00
cinap_lenrek 169db43ad9 merge 2014-12-12 21:07:44 +01:00
cinap_lenrek aac81cf070 acme/win: fix fswrite() not assuming iounit < EVENTSIZE 2014-12-12 21:06:16 +01:00
stanley lieber 00334c0407 fortunes: UX-wise (and generally speaking, for most common uses of a computer these days), Plan9 is, sadly, almost useless. 2014-12-11 14:45:51 -05:00
stanley lieber e14d624974 qmail: call mail instead of smtp with the wrong path 2014-12-11 14:45:16 -05:00
cinap_lenrek 651fa5bd50 cfs: change default mountpoint to /mnt/cfs and fix the manual (thanks mischief) 2014-12-11 20:38:04 +01:00
cinap_lenrek 854d028db9 acme: fix buffer overrun in xfidutfread() and xfidruneread(), cleanup
the utf8 buffers b1 where allocated from fbufalloc() which gives
us BUFSIZE bytes, but Xfid->count can be bigger than that. so just
emalloc() the requested number of bytes.

when converting from Runes to utf-8, we have to account for the
terminating '\0' byte snprint() places, so fix the maxrune number
calculation instead of using BUFSIZE+1 as buffer size.
2014-12-11 20:20:47 +01:00
cinap_lenrek 86e63c36ed kbmap: fix sprint() buffer overflow (thanks silasm)
A buffer can be overflowed in the init function of kbmap.c by using a filename of more than 112 characters.

sample output:
% cd /sys/lib/kbmap
% touch aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
% kbmap
kbmap 1974: suicide: sys: trap: fault write addr=0xa6a96510 pc=0x000011df
offending code is most likely the call to sprint in the init function of /sys/src/cmd/kbmap.c,
which in this case writes /sys/lib/kbmap/$file to a 128-bit buffer.
I'm willing to submit a patch for this myself along with a few minor improvements/fixes to kbmap
if I can figure out the nuances of doing so.

--silasm
2014-12-11 18:32:50 +01:00
cinap_lenrek ffa761beae plan9.ini(8): fix typo (thanks ftrvxmtrx) 2014-12-11 17:03:01 +01:00
cinap_lenrek 5ae58296a9 plan9.ini(8): etheryuk 2014-12-10 19:38:44 +01:00
cinap_lenrek ec495f37ec plan9.ini(8): document bcm and virtio ethernet and hda and ac97 audio. 2014-12-10 19:29:46 +01:00
cinap_lenrek 6357ff0e7b plan9.ini(8): remove factotumopts= (not implemented), add secstore=, clarify domain name use for fs= and auth= 2014-12-10 18:34:08 +01:00
cinap_lenrek aa2422b5eb bootrc: keep original address when ndb/dnsgetip fails and let dial complain 2014-12-10 18:02:41 +01:00
cinap_lenrek d4076731f1 bootrc: use "address" instead "ip" in wording netboot questions, as we domain names are allowed now. 2014-12-10 17:37:53 +01:00
cinap_lenrek b305ea4a3d merge 2014-12-10 03:24:21 +01:00
cinap_lenrek ba6cd37412 bootfs: remove disk/kfs fileserver, nobody uses it 2014-12-10 03:22:59 +01:00
cinap_lenrek 23b3407663 bootrc: add ndb/dnsgetip resolver to bootfs so domain names can be used for fs=, auth= and secstore= (thanks mischief) 2014-12-10 03:22:14 +01:00
cinap_lenrek d75f5a24ba bootrc: preserve #ec/fs (thanks _sl) 2014-12-10 03:16:36 +01:00
mischief 23d6c796cd ndb(8): document ndb/dnsgetip 2014-12-09 17:33:09 -08:00
cinap_lenrek 1985bebbdd dnsgetip: filter negative answers, remove -f flag, use dnsgetip logfile 2014-12-10 02:30:25 +01:00
mischief 230cee347f ndb: add dnsgetip program to resolve A and AAAA records during bootstrapping 2014-12-09 16:18:08 -08:00
cinap_lenrek 665f0c8e3e bootrc: handle multiple fs and auth addresses in netboot, always set auth= in /net/ndb 2014-12-10 00:30:07 +01:00
cinap_lenrek 17566b4dd3 bootrc: do not pass authserver with -a flag to factotum, handle multiple secstore addresses
factotum is started in bootrc before the network is setup
(as we need it to negotiate wpa key for wifi). once, the network
is setup, the bootstrap authservers are passed in /net/ndb,
which factotum reads when doing bootstrap authdial. it does
this only when no authserver was specified earlier! but we
want net.rc to select the proper bootstrap authserver...

the $secstore variable takes precedence over $auth. as
there is no connection server yet, we have to select the set
of servers here and pass them to secstore with -s flag.
note that this will work if multiple addresses where
specified.
2014-12-09 22:26:30 +01:00
cinap_lenrek f9d379974a factotum: accept multiple bootstrap auth servers in /net/ndb and -a arguments
we might have to deal with multiple bootstrap auth server
ip addresses (ipv4 and ipv6) in the future, so deal with them.
2014-12-09 22:07:37 +01:00
cinap_lenrek ee6936365f secstore: allow multiple server addresses in $secstore and multiple -s arguments
on bootstrap, we might have to deal with multiple auth server ip
addresses (ipv4 and ipv6), so deal with it.
2014-12-09 21:53:07 +01:00
mischief 98645db9ab devsegment: fix segmentcreate function signature 2014-12-08 23:16:22 -08:00
cinap_lenrek 8ec06b6fc6 merge 2014-12-09 03:25:52 +01:00
cinap_lenrek a0bb446d75 ethervirtio: fix queue notifications and interrupt flags, avoid useless notifications
bug: Rnointerrupt was used on Vqueue.used.flags instead of
Vqueue.avail.flags.

introduce vqnotify() function that notifies the device
about available ring advancement.

avoid queue notifications there that can be slow by
checking Unonotify flag in Vqueue.used.flags.

keep track of the number of notifications in the queue.
2014-12-09 03:23:53 +01:00
cinap_lenrek 469a10f1d9 hgwebfs: add fake add_handler method for HTTPRangeHandler()
provide a add_handler() so code trying to add
byterange.HTTPRangeHandler will succeed. webfs
does handle "206 Partial Content" already.
2014-12-09 23:11:05 +01:00
mischief ee2d30984f ip/ipconfig: treat /32 mask as /0
some dhcp servers send a mask of 255.255.255.255 to indicate the gateway is directly routeable.

thanks to david du colombier for this patch.
2014-12-08 17:27:40 -08:00
cinap_lenrek c217da0b5b ethervirtio: feature negotiation, allow setting mac address, dont read isr from ifstatus, avoid indirection
- properly negotiate Fctrlrx feature bit for promisc and multicast.
- allow setting mac address with ea= option from plan9.ini
- dont read the isr register from ifstats() as it has the side effect of reseting isr status
- embedd the Vqueue array in the Ctlr structure avoiding indirection
- add a interrupt counter Vqueue.nintr for statistical purposes
- only read network status register if the feature has been negotiated
- change name to "virtio" as "ethervirtio" is kind of redundant
2014-12-08 19:19:53 +01:00
cinap_lenrek 501e69d010 ndb/dns: ignore terminating authoritative flag for no-answer when more nameservers are provided
continue recursing when we get empty but non-negative answer
from a (claimed) authoritative nameserer that provides more
nameservers.

this fixes wordpress dns:

63766.3: sending to 192.0.80.93/ns1.wordpress.com bossypally.files.wordpress.com ip
63766: rcvd OK from 192.0.80.93 (authoritative)
	Q:    bossypally.files.wordpress.com ip
	Auth: files.wordpress.com              5 min           ns   	mdns1.wordpress.com
	      files.wordpress.com              5 min           ns   	mdns2.wordpress.com
	      files.wordpress.com              5 min           ns   	mdns3.wordpress.com
	      files.wordpress.com              5 min           ns   	mdns4.wordpress.com
	      files.wordpress.com              5 min           ns   	mdns5.wordpress.com
	Hint: mdns1.wordpress.com              4 hr            ip   	192.0.75.7
	      mdns2.wordpress.com              4 hr            ip   	198.181.117.7
	      mdns3.wordpress.com              4 hr            ip   	198.181.116.7
	      mdns4.wordpress.com              4 hr            ip   	198.181.118.7
	      mdns5.wordpress.com              4 hr            ip   	192.0.74.7


63766.4: sending to 192.0.75.7/mdns1.wordpress.com bossypally.files.wordpress.com ip
63766: rcvd OK from 192.0.75.7 (authoritative)
	Q:    bossypally.files.wordpress.com ip
	Ans:  bossypally.files.wordpress.com   5 min           ip   	192.0.72.2
	      bossypally.files.wordpress.com   5 min           ip   	192.0.72.3
----------------------------
answer bossypally.files.wordpress.com   5 min           ip   	192.0.72.2
answer bossypally.files.wordpress.com   5 min           ip   	192.0.72.3
----------------------------

note the authoritative flag in the first response from ns1.wordpress.com that
would otherwise terminate the search.
2014-12-08 01:26:07 +01:00
cinap_lenrek 887d02274d ethervirtio: fix missing */ 2014-12-07 18:20:47 +01:00