Commits
- Commit:
58cdb97ce8d303a379c3c164bdfa61cb1524600f
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: send a UNIQUE temp fd
main_compose_sockets() has the 'feature' of implicitly dup(2)'ing
the passed file descriptior. But it's not what we need for the
temp fds, since those needs to be unique per-children.
debugged with stsp@
- Commit:
4056db6342e0499ecd1cd53b959f9a46eea64358
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: don't chdir to / before spawning the child processes
allows to run gotwebd from the got checkout again.
- Commit:
ba5f8ecfda4faf3a01c519d51f2dab5a762c26a9
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: move log_init() even earlier. I can't read...
- Commit:
9ec8edf7c3ed58660d5ce984a55bbafbd9a23fb9
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: define constant instead of using the magic number 3
suggested by stsp@
- Commit:
b2ce80908e83c8a29aab68c76588a41813f13a74
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: make main_compose_sockets() close the fd on error
concern raised by stsp@
- Commit:
26678adde25a1fb7fa3e4b78c82a888cc3b767e4
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: get rid of proc.[ch]
proc.c really shines when there's a network of different types of
processes, potentially with a various number of instances each,
that needs to exchange messages. Gotwebd instead has a much simpler
design, and using proc.c causes more overhead (/headaches) than it
solves.
So, this attempts to provide the same functionalities but with a
much simpler implementation that fits gotwebd better.
ok stsp@
- Commit:
03e70dd4d41906645718ee5b780d7e948404f292
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: improve gotwebd_assign_querystring()
This prevents the issues that we just hit with forgetting to remove
PREVID: instead of relying on the enum value to yield the size of
a table, use nitems(). Also, quit as soon as the matching key was
found, no need to iterate further.
ok stsp@
- Commit:
abe89edb698f9d165b74d1fe146b13fade5b52bd
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
allow gotd repo read/write processes to max out data-size resource limits
Proccessing large pack files can easily result in out-of-memory errors
if the datasize limit is too conservative.
- Commit:
296611672d3a242111a160c45afb7ac81a01b326
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: garbage-collect PREVID, removed long time ago
This leftover kept QSELEM__MAX bigger than the querystring_keys[]
table and causes gotweb_assign_querystring to go out of bounds.
Spotted on alpine (thanks to -portable.)
- Commit:
5abbba2d467df0d641100b74fbe24428fbb1c2c6
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: move log_init() call a bit earlier
Otherwise the log_warnx() call in the -D case logs to syslog.
- Commit:
0c64c2f8032e7c3de8b5b3ca5c5bd9047b89b17c
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: clean up sockets_create_socket a bit
Instead of hardcoding the flags, keep ai_{family,socktype,protocol}
from the getaddrinfo() call and apply them here.
ok stsp@
- Commit:
cdfd248aa718819d40d0bf972b7efbb2eabd31c9
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotadmin: get rid of got_sockaddr.[ch] usage
It was added due to gotwebd weird structure sockaddr_storage handling.
Instead, save the size reported by getaddrinfo() and not reach into
the struct sockaddr_storage at all (except for extracting the port
number for diagnostics purposes.)
sockets_conf_new_socket_fcgi() gets an hardcoded ipproto to zero
(which is the only value it can get in practice, and keeps for the
moment the hardcoded SOCK_STREAM. It'll be cleaned in a follow-up.
ok stsp@
- Commit:
b8b20b3c52fa4f90a1ac5b20e7d8a24fae8d9e27
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: improve error message in get_addrs(); noticed by stsp@
- Commit:
89cfaaa7b56bbfa063ed42929ced2ab244443f62
- From:
- Omar Polo <op@omarpolo.com>
- Date:
gotwebd: make get_addrs() take the service name directly
This changes how we handle the port number: bubbles up the local
portstr added in previous commit and lets getaddrinfo() deals with
port numbers and services name. getservice() can be gc.
While here add the missing free() in parse.y.
ok stsp@
- Commit:
dfd77022fc31b33c39f1e800698a2d43644666fa
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix typo in previous