summaryrefslogtreecommitdiff
path: root/sys/src/cmd/ndb/cs.c
AgeCommit message (Collapse)Author
2022-12-12ndb/dns, ndb/cs: post to /srv instead of #scinap_lenrek
2020-08-01pre-lib9p servers: fix incorrect Tversion handlingkvik
version(5) says: If the server does not understand the client's version string, it should respond with an Rversion message (not Rerror) with the version string the 7 characters ``unknown''. Pre-lib9p file servers -- all except cwfs(4) -- do return Rerror. lib9p(2) follows the above spec, although ignoring the next part concerning comparison after period-stripping. It assumes an Fcall.version starting with "9P" is correctly formed and returns the only supported version of the protocol, which seems alright. This patch brings pre-lib9p servers in accordance with the spec.
2020-05-02make bind(2) error handling consistentcinap_lenrek
The mount() and bind() syscalls return -1 on error, and the mountid sequence number on success. The manpage states that the mountid sequence number is a positive integer, but the kernels implementation currently uses a unsigned 32-bit integer and does not guarantee that the mountid will not become negative. Most code just cares about the error, so test for the -1 error value only.
2018-09-26libc: add procsetname()cinap_lenrek
2018-09-16libndb: make ndbipinfo() walk ipnet for all matching entries, concatenate ↵cinap_lenrek
and dedup result
2018-09-09ndb/cs: don't do dns lookups when all we got is loopback or link local addressescinap_lenrek
2018-07-10ndb/cs: add -6 flag for v6 only lookups and "ipv4" control message to toggle ↵cinap_lenrek
v4 lookups.
2018-06-01ndb/cs: make ipv6 only host practical by checking ip version on local interfacescinap_lenrek
avoid returning ip addresses that cannot be reached due to lack of a compatible ip address. this means when here is no ipv4 address configured, we wont return ipv4 addresses and would not query dns for an A record. likewise, when here is no ipv6 address configured then we wont query dns for an AAAA record. ipv6 lookups can still be disabled with the -4 flag just as before.
2018-05-16ndb/cs: prevent deadlock with ndb/cs by mounting /srv/dns *AFTER* /netcinap_lenrek
the dnsquery() library function should not start mouting /srv/dns on its own. this problem arrises only for ndb/cs as it is started before ndb/dns. the issue with mounting /srv/dns before /net is when ndb/cs attempts to read the list of interfaces, accessing /net/ipifc, which triggers a rpc to ndb/dns as it is ontop of the mount. this can yield a deadlock when ndb/dns blocks its 9p loop waiting for requests to complete on a refresh and the requests are stuck waiting for ndb/cs to translate a dial string for announce().
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-04-17ndb/cs: remove single-ip-address assumptionscinap_lenrek
2018-04-14ndb/cs: remove paranoia debug togglecinap_lenrek
2018-01-28ndb/cs: handle v4 only case for rudpcinap_lenrek
2017-10-04ndb/cs: icmp only supports version 4 addresses, icmpv6 only version 6 addressescinap_lenrek
2016-11-17cmd: remove a bit of unused stuffftrvxmtrx
2016-08-14ndb/cs: don't lookup AAAA records for IL, make sure translated address is ↵cinap_lenrek
IPv4 for IL, consistent use of nil vs. 0 for pointers
2016-07-24make error handling in 9p service loops consistentcinap_lenrek
when we get eof, stop the loop immidiately and do not rely on the read to eventually return an error. when convM2S() fails to decode the message, error out and stop the loop. there is no point in continuing.
2016-05-16ndb/cs: fix memory leak (charles forsyth)cinap_lenrek
2014-12-13ndb/cs: fix spelling (thanks mischief)cinap_lenrek
2014-10-29cs: fix linefeeds in syslog(), cleanupcinap_lenrek
2014-10-29cs: use /net/ether* instead /net/ether[0123], dont remove srv file with -n, ↵cinap_lenrek
dont write dns logfile
2013-06-16make filesystem handling of read9pmsg() consistentcinap_lenrek
2013-06-14ndb/cs, ndb/dns: ignore special commands from users different from the one ↵cinap_lenrek
we run the service owner this prevents users like "none" from toggling special options in ndb/dns and ndb/cs.
2012-08-26ndb/dns: fix netmkaddr() race, dnlock consistency, strcpy, cleanupscinap_lenrek
2012-07-29ndb/cs: limit number of slave procscinap_lenrek
2012-07-28ndb/cs/dns: make sure never to block the 9p loop when we run out of ↵cinap_lenrek
processes, fail the request instead
2012-05-03bring back il protocol supportcinap_lenrek
2012-04-28ndb/cs: add lookups for sshstanley lieber
2012-03-23ndb/cs: fix use after free caused by flush/clunk happening before dns lookup ↵cinap_lenrek
finishes
2012-03-16ndb: avoid double /net/ndbcinap_lenrek
2011-03-30Import sources from 2011-03-30 iso image - libTaru Karttunen
2011-03-30Import sources from 2011-03-30 iso imageTaru Karttunen