Commits
- Commit:
f19045181ed6c21f7161a48e014de2b76e839646
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
CHANGES for 0.118
- Commit:
8180d9b1ef7b97e0adfbcee6809c3512d98da79f
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix gotwebd regress failure introduced with querystring changes
A folder parameter addressing the root directory is expected to be
an empty string rather than "/".
- Commit:
dcb89595705170326a44de80a246452329cfc0a1
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
block gotwebd requests with paths that point outside the repository directory
ok op@
- Commit:
c3d3a336ffa1b625a5ddcff77bd6aaec86638279
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
remove unused resp_event variable from gotwebd struct request
- Commit:
36d3c1c96e7b8b6fdea980ffe64d0db701b7cfa0
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
remove now unused 'gotweb_cur' variable from gotwebd
- Commit:
265417ecb5a6f3f5290b36df22f5d7a296d7140e
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
rename GOTWEBD_PROC_SERVER back to GOTWEBD_PROC_SOCKETS
- Commit:
4096c2540f2371868e0001dc52113cdb89639c28
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix process ID passed in gotwebd fcgi send_parsed_params() and abort_request()
- Commit:
da64fca0d1dd094bdc5e399298ffbcb3f935d11d
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
remove the now unused "server_cnt" gotwebd variable
- Commit:
cf4650e179df57c8f7e985b49948138547765af7
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
move reyk's urldecode() copyright along
- Commit:
76f358240c8195fe9fd8fd5b788418f7474fdcf3
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
httpd will always expect an FCGI end record from us, so send it always
- Commit:
41a0f38597a4de668df95175a864a02c1093dc3a
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
clamp qs->index_page to the correct range, we want a positive int
- Commit:
adaf63907ce7d1b5dc45b6b7405087879332247f
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
move parsing of gotwebd querystrings into the pledge("stdio") process
Fields of the querystring structure become fixed-sized buffers for
easy passing over imsg. This means we can no longer check pointers
in this structure for NULL. Instead we have to check for empty strings.
ok op@
- Commit:
f17dbdbfb4e1e00cf8a8371add4a43caafc8516e
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
remove some debug logging I added to gotwebd and forgot to remove
- Commit:
4fb828fbc1f23ea9aeee2a1b2d369aef96cb27b3
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
dispatch new requests to the least-busy gotwebd worker
Instead of distributing requests across workers in a round-robin fashion
keep track of how many requests a given worker has queued and send new
requests to the worker which has the least amount of work queued for it.
This makes gotwebd much more responsive than stupid round-robin, even
though the new strategy is still not optimal because different types of
requests carry different cost. E.g. blaming a file is usually heavier than
listing trees. But it might be good enough, for now. Let's try and see.
ok op@
- Commit:
19545591fb064b03b85f23b7a8bf64061fa82b68
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
run just one gotwebd process which listens on sockets
The listen statement is a global configuration setting and it does not
make sense to have more than one process listening. Run just one process
which listens and is now again called "sockets", having been renamed
from "sockets" to "server" some time ago.
There is no good reason to run more than one "server" since server-specific
settings from gotwebd.conf are selected based on the SERVER_NAME sent in
the FastCGI request. This selection is handled by the gotweb.c process.
ok op@
- Commit:
b12e0fe80f3f1d8051f7f6cb6708d3a65c163d05
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
use consistent mdoc markup for unix domain sockets in gotwebd.conf.5
- Commit:
5b971887f718b1d124236e851d4bde751213b4b4
- From:
- Omar Polo <op@omarpolo.com>
- Date:
sockets_launch: simplify listen() handling
* clean up the SOCKS_BACKLOG versus SOMAXCONN usage
* factor out just one listen() call
* slightly improve the logging by showing the socket "name" too.
ok stsp@
- Commit:
28ad1c18bb74647f37660ec576b5d8e7e6386955
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make gotsysd-managed repositories readable for the _gotd group
This allows making the repositories readable by other user accounts,
such as _gotwebd, by adding those users to the _gotd group.
- Commit:
8195cfa1795a5f4163bdaec158df17eb06b16ed0
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
enable sftp/scp support in the sshd_config file generated by gotsysd
- Commit:
4389a9e5b05416eb17c5030b700a7d52faea2485
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make commit notifications only show the part of history unique to the branch
When a new branch is created, show all commits added on the branch relative
to the HEAD branch, instead of showing just the tip commit.
When branch history is changed with got send -f or git push -f, limit
history traversal to a common ancestor with the HEAD branch, instead
of walking the entire history until a root commit is found.
Stacked branches will still show some extra history until they hit HEAD.
This can be improved later.
ok op@
- Commit:
37f7dbf5f09ff1eb1e37d380b32533e876325ef2
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
move gotwebd fcgi record parsing into a dedicated process under pledge "stdio"
ok op@
- Commit:
6f4eae69642d0a78da926cf32b3639e883f5fe09
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
set gotwebd pledges according to address families of listening sockets
We were implicitly relying on "inet" to provide "unix". Be more specific.
ok op@
- Commit:
bb32659f4666bd508118a9e15238bb69471b3b14
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix parallel processing of requests in gotwebd
Run just one server process per server declared in gotwebd.conf, instead
of running additional server processes based on the "prefork" setting.
The extra servers weren't actually used since they would all wake up
together, only one of them would manage to accept a connection, and the
others would fail wtth EWOULDBLOCK go back to sleep instead of handling
other connections.
Having a single listening process dispatch request across gotweb processes
in a round-robin fashion actually allows requests to be processed in parallel
as intended. We currently use a round-robin scheme which can still cause
some requests to wait for a busy worker. This will be improved later.
The "prefork" setting now only controls the number of gotweb workers
which will be started.
ok op@
- Commit:
6a5431286b29f74a150aed3c2cb14c6744401e11
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
plug memory leaks which are making gotwebd regress tests fail
- Commit:
0f01ac5d813fe34a941ee33dbb19dba78ddbe966
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
make 'tog diff' show the repository name in names of patches written to /tmp
ok op@