summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-05-05libmp: add awk-generated testsaiju
2018-05-05mpdiv: get signs right...aiju
2018-05-05mp: more testsaiju
2018-05-04mpmagadd: oops...aiju
2018-05-04mpmagadd: force output sign +1 alwaysaiju
2018-05-04mpdiv: fix sign bugaiju
2018-05-04pc: add $ operatoraiju
2018-05-04libmp: add new testsaiju
2018-05-03mplogic: don't drop carry outaiju
2018-05-03pc(1): always allocate at least one mpdigit (itomp assumes this)aiju
2018-05-03mergecinap_lenrek
2018-05-03libplumb: fix old leak introduced in 18b8ed1a5ea3mischief
2018-05-02games/mines: chain new CLists in splitknown correctlyaiju
2018-05-02games/mines -g: elements taken from list should be -2, not -1aiju
2018-05-01mergecinap_lenrek
2018-05-01ip/ipconfig: populate /net/ndb from v6 router advertisements, configure ↵cinap_lenrek
multiple addresses in ndbconfig() we now update /net/ndb with the following information gathered from router advertisements (rfc6106 and plan9 specific options): - recursive dns servers (option 25, ndb: dns=) - dns search list (option 31, ndb: dnsdomain=) - plan9 fileserver (option 250, ndb: fs=) - plan9 authserver (option 251, ndb: auth=) note the plan9 specific options can be disabled with the -G flag. for ndbconfig (-N flag), we now collect all ip addresses in ndb belonging to the devices mac address and configue them all. v6 addresses are getting added when a link local address exists or the -6 flag has been specified to automatically configure one. move the dhcp code in its own dhcp.c file and make symbols static that are not used across modules.
2018-05-01ndb/cs: fix crash in ndbredorder due to ndbnew() not maintaining the ->line ringcinap_lenrek
we have to maintain the ->line chain for ndbreorder() to work, so add a little helper: ndbline() which replicates the ->entry chain and links the last tuple to the first; makeing the whole list into a single line.
2018-05-01libplumb: allow attributes larger than 4096, set some malloc tagsmischief
2018-04-28ndb/csquery: insert \n between read chunkscinap_lenrek
2018-04-28ip/ppp: remove old structcinap_lenrek
2018-04-28libndb: cleanupcinap_lenrek
2018-04-26mpdiv: fix dividing 0 by a small power of twoaiju
2018-04-24mergecinap_lenrek
2018-04-24devip: improve arp and ndp codecinap_lenrek
there appears to be confusion about the refresh flag of arpenter(). when we get an arp reply, it makes more sense to just refresh waiting/existing entries instead creating a new one as we do not know if we are going to communicate with the remote host in the future. when we see an arp request for ourselfs however, we want to always enter the senders address into the arp cache as it is likely the sender attempts to communicate with us and with the arp entry, we can reply immidiately. reject senders from multicast/broadcast mac addresses. thats just silly. we can get rid of the multicast/broadcast ip checks in ethermedium and do it in arpenter() instead, checking the route type for the target to see if its a non unicast target. enforce strict separation of interface's arp entries by passing a rlock'd ifc explicitely to arpenter, which we compare against the route target interface. this makes sure arp/ndp replies only affect entries for the receiving interface. handle neighbor solicitation retransmission in nbsendsol() only. that is, both ethermedium and the rxmitproc just call nbsendsol() which maintains the timers and counters and handles the rotation on the re-transmission chain.
2018-04-24forp: fix ternary operatoraiju
2018-04-24libsat, forp: fix va_list hack on amd64aiju
2018-04-22devip: fix ipv6 icmp unreachable handling, fix retransmit, fix ifc locking, ↵cinap_lenrek
remove tentative check
2018-04-22devip: cleanup ipmux.ccinap_lenrek
2018-04-22devip: increment in counter *AFTER* acquiering the ifc lock or loopbackmediumcinap_lenrek
2018-04-22devip: cleanup rudp.ccinap_lenrek
2018-04-22devip: cleanup tcp.ccinap_lenrek
2018-04-22devip: cleanup udp.ccinap_lenrek
2018-04-22devip: various icmp stuffcinap_lenrek
no need to rlock ifc in targetttype() as we are called from icmpiput6(), which the ifc rlocked. for icmpadvise, the lport, destination *AND* source have to match. a connection gets a packet when the packets destination matches the source *OR* the packets source matches the destination.
2018-04-22devip: verify ifcid on routehint check, check Route.ref for free'd routescinap_lenrek
v4lookup() and v6lookup() do not acquire the routelock, so it is possible to hit routes that are on the freelist. to detect these, we set ref to 0 and check for this case, avoiding overriding the ifc. re-evaluate routes when the ifcid on the route hint doesnt match.
2018-04-19devip: add "reflect" ctl message, fix memory leaks in icmpv6, fix source ↵cinap_lenrek
address for icmpttlexceeded, cleanup
2018-04-19ip/ipconfig: always refresh ndb/cs and ndb/dns when adding or removing ip ↵cinap_lenrek
addresses
2018-04-19ndb/dnsquery, ndb/csquery: handle long linescinap_lenrek
2018-04-17fix parseip() error handling in ipconfig, ppp, tftpfs and dnscinap_lenrek
2018-04-17ndb/dns: remove single-ip-address assuptionscinap_lenrek
2018-04-17ndb/cs: remove single-ip-address assumptionscinap_lenrek
2018-04-15ip/ipconfig: use unique ip/ipmask/ipgw values close to match for ndbconfigcinap_lenrek
2018-04-14ndb/cs: remove paranoia debug togglecinap_lenrek
2018-04-14libc: allow /net/cs to specify local address for dial()cinap_lenrek
2018-04-12add missing ethermii.h dependencies. patch from cinap_lenrekkremlin
2018-04-12cpurc: remove obsolete device binds, run diskparts after $sysname is known. ↵cinap_lenrek
remove /env/boottime. document.
2018-04-11ip/ipconfig: setup per local address default routescinap_lenrek
2018-04-11devip: make v4 ifc broadcast and multicast routes specific to addresscinap_lenrek
this allows one to access the same network via multiple interfaces, the local address then determines which interface is used.
2018-04-10ip/gping: icmpv6 supportcinap_lenrek
2018-04-10devip: properly initialize the connection ignoreadvice and tos flagscinap_lenrek
2018-04-10ip/traceroute: icmpv6 supportcinap_lenrek