summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2023-05-03diff: fix suicide if binary files don't diffJacob Moody
2023-05-03/sys/doc/nssec.ms: small grammar fixes (ok'd by moody)sl
2023-05-01usbxhci: add some robustness checkscinap_lenrek
Add some checks in the interrupt handler to ensure that the slot and ring referred to by the event have been initialized. Also add a check in ctlrcmd() just in case we mess up the recovery and someone issues a ctlrcmd() after a failed xhciinit().
2023-05-01dossrv: better error handling and sanity checking in dosfs()cinap_lenrek
check error for devread() and do some sanity checking on the constants and dont leak the Dosbpb when error.
2023-05-01usbxhci: fix command ring wrap crashcinap_lenrek
When a ring wraps around, we need to program a wrap around td with the base address. To get the base, we need to call Ctlr.dmaaddr() and we used the slot->ctlr pointer to get to it. But the command ring has no slot associated to it so we would crash as soon as we tried to submit more than 256 controller commands. The solution is to put a ctlr pointer into the Ring structure, which also allows us to simplify resetring() and waittd() as they now can get the controller implicitely thru the ring pointer.
2023-04-30mouse(2): fix typosIgor Böhm
2023-04-30dossrv: Implement support for != 512 sector and track sizescinap_lenrek
The iotrack buffer layer always assumed 512 byte sector size and 9 sectors per track. To support 4K sector size fats, make the iotrack code deal with it. Instead of the fixed size Track structure, we just allocate the pointers and buffers dynamically, and move the sector size and tack size in the Xfs structure. Tracks can still be reused between differnet file-systems after a purgetrack(). The initial fat header has to be read with devread() instead of getsect() to determine the sector/track size of the file-system.
2023-04-09DP 1.2 on igfx; EDID wrapping; VGA display connectionsRomano
This patch more fully implements the training patterns for DP 1.2 per the spec, which then allows more monitors to successfully train and therefore connect. In my case it was an LG 34UM68-P. Secondly, this fixes EDID shifting to work with a wider range of values, notably ones which wrap. Lastly, a small correction in vesa.c as to which bits are used to determine available connections.
2023-04-28/sys/doc: "Namespaces as Security Domains"Jacob Moody
2023-04-25ktrans: correct 'exit' text (thanks Keegan)Jacob Moody
終了 is more appropriate then 出口 in this context.
2023-04-24etherwpi: accept pci device id 4222 (thanks oliver simmons)cinap_lenrek
2023-04-24portmkfile: cleanup dependencies for wifi.$O and etheriwl.$Ocinap_lenrek
2023-04-24imx8: provide PCIWINDOW constant, use PCIWADDR() for MSI_TARGET_ADDRcinap_lenrek
2023-04-24sdnvme: remove unused mptr argument to qcmd()cinap_lenrek
2023-04-24imx8: add vpu clocks and irq indices, correct a typo (no functional change)Sigrid Solveig Haflínudóttir
2023-04-222c(1), 2l(1), tl: add thumb to the list. fix thechar: '5' → 't'rodri
2023-04-19imx8: make etheriwl work on MNT Reform, move it to port/ (thanks cinap); ↵Sigrid Solveig Haflínudóttir
tested with 6205
2023-04-19auth/ssh2rsa: convert Unix ssh private keys to Plan 9 format.Jacob Moody
2023-04-18bio: abort on invalid stateOri Bernstein
2023-04-17git/send: correctly delete branches with no local mirrorOri Bernstein
2023-04-17gs: patch CVE-2023-28879Jacob Moody
https://offsec.almond.consulting/ghostscript-cve-2023-28879.html https://git.ghostscript.com/?p=ghostpdl.git;h=37ed5022cecd584de868933b5b60da2e995b3179
2023-04-16aux/listen: log the real error when announce() failscinap_lenrek
2023-04-15ip: generalize Rproxy route handling, allowing non point-to-point arp proxycinap_lenrek
Generalize the arp proxy code, so one can create specific routes for ip ranges that we want to arp proxy for, not just for point-to-point interface routes. as we have source specific routes, this also gives some control over which requester we will reply to. one example for this is a vps where we booked another ip address on the ethernet, that we want to route into a vpn tunnel. the new ip is in subnet of the public ethernet interface, so all we now need todo is add a route for that ip into the vpn tunnel and set the proxy flag "y", and we will respond to arp for that ip on the public ethernet interface.
2023-04-13segment(3): Fix typoJesse Rosenstock
hostower => hostowner, introduced in 99ed9623b5.
2023-04-12nusb/usbd: only fetch first 8 bytes of device descriptor for getmaxpkt() ↵cinap_lenrek
(thanks k0ga) The first usb transaction we run on a device is reading the device descriptor, but todo this we need to know the maximum packet size on the control endpoint. But the packet size itself is stored in the device descriptor which needs to be read over the control endpoint. We used to fetch up to 64 bytes of device descriptor, and if that fails assume some default values. But this seems to cause errors down the line for some devices like k0gas usb keyboard. The new way is to read *ONLY* the first 8 bytes (that contain the bMaxPktSize0 field) and fetch the full device descriptor later once we have set the correct packet size.
2023-04-10crop(1), memdraw(2): writememimage doesn't always write compressed imagesrodri
2023-04-08kernel: Clear secrets on rebootcinap_lenrek
The idea is that when we reboot, we zero out memory written by processes that have the private flag set (such as factotum and keyfs), and also clear the secrmem pool, which contains TLS keys and the state of the random number generator. This is so the newly booted kernel or firmware will not find these secret keys in memory.
2023-04-08libc: Add poolreset() functioncinap_lenrek
This is intended for the secrmem pool in the kernel, but could also be used for temporary pools to recover the memory used by the arenas.
2023-04-06awk: getline: do not access unitialized data on EOFJacob Moody
echo 'a' | awk 'BEGIN { getline l; getline l; print (s=substr(l,1,10)) " len=" length(s) }' https://github.com/onetrueawk/awk/commit/1debe1993fc852545a9215621d884be27f08a223
2023-04-06awk: dont leak memory on extra format argumentsJacob Moody
awk 'BEGIN { while(++i <= 100000) { mem = "ps | grep awk"; printf("%d", 1+2, 3+4, 5+6, 7+8, 9+0) > "/dev/null"; if(i % 10000 == 0) system(mem) }}' https://github.com/onetrueawk/awk/commit/821c502359855d0c43be8e9b08f037ecb543d310
2023-04-02file: identify qcow imagesJacob Moody
2023-04-01diff: barf with explanation on binary diffs/mergesOri Bernstein
2023-04-01qcowfs(8)Jacob Moody
2023-03-30ip/httpd: fix duplicate array entry (thanks khayyam@cock.li)Alex Musolino
2023-03-30removing tos from fpimipsadventuresin9
2023-03-30removing tos from fpimipsadventuresin9
2023-03-30srv(3): improve the example (thanks mcf)Ori Bernstein
2023-03-29srv(3): provide /srv/clone exampleJacob Moody
2023-03-29libc: runecomp: move generated files to explicit regen ruleJacob Moody
While a previous commit attempted to address the issues of a ; cd /sys/src/ && mk nuke && mk install it seems that any kind of automatic detection for when to rebuild will blow up in someones face. I am moving this to an explicit virtual rule, the generated files are expected to be there.
2023-03-28truetypefs: fall back instead of crashing when could not get a glyphSigrid Solveig Haflínudóttir
2023-03-27tcs: add nfc and nfd output formatsJacob Moody
2023-03-26runecomp(2): clarify audience and historyJacob Moody
2023-03-26ascii(1), utf(6): /lib/unicode → /lib/ucd/UnicodeData.txtJacob Moody
2023-03-26libc: runecomp: commit generated data filesJacob Moody
While mkfiles will properly build them, if a user does ; cd /sys/src && mk nuke && mk install without libc there, you will not be able to build mkrunetype.c in order to generate these data files. Let's not make this more complicated.
2023-03-26upas/runq: revert b55b1f31e139271852c3581924ddc92a10f54883Ori Bernstein
this change broke the fix from 49d7ca8d92e5667f3e5ece4c6acbc1064701e2f8
2023-03-26libc: remove dangling runetype.cJacob Moody
2023-03-26runecomp(2)Jacob Moody
2023-03-26cpp: allow qid version change for #pragma onceJacob Moody
2023-03-25upas/runq: we don't care about the waitmsg, use waitpidOri Bernstein
2023-03-25cpp: correct #pragma once uniqueness checkJacob Moody