chiark / gitweb /
Ian Jackson [Fri, 19 Aug 2022 19:19:17 +0000 (20:19 +0100)]
prefork-interp: fixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 19 Aug 2022 19:19:09 +0000 (20:19 +0100)]
prefork-interp: Perl: new approach
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 19 Aug 2022 19:04:49 +0000 (20:04 +0100)]
prefork-interp: wip socketry etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 19 Aug 2022 19:02:57 +0000 (20:02 +0100)]
cprogs: Move nonblock() to common.[co]
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 19 Aug 2022 18:59:03 +0000 (19:59 +0100)]
prefork-interp: wip, socket watch, etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 18 Aug 2022 18:46:30 +0000 (19:46 +0100)]
prefork-interp: make fake pair later
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 18 Aug 2022 18:46:13 +0000 (19:46 +0100)]
prefork-interp: watcher plan
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 18 Aug 2022 18:46:07 +0000 (19:46 +0100)]
prefork-interp: wip found
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 20:21:44 +0000 (21:21 +0100)]
prefork-interp: C: new length approach
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 20:21:30 +0000 (21:21 +0100)]
prefork-interp: Perl: new protocol, wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 20:20:46 +0000 (21:20 +0100)]
Revert "prefork-interp: Protocol work"
This reverts commit
6ef8d3dd7e4490db0ce5c753e6b8c94c16fc2035.
Some of this is a bad idea. Notably, changing the arg/env format is
just makework.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 19:10:44 +0000 (20:10 +0100)]
prefork-interp: Protocol work
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 17:50:41 +0000 (18:50 +0100)]
prefork-interp: Rename read_greeting (from protocol_greeting)
This is clearer.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 17:49:42 +0000 (18:49 +0100)]
prefork-interp: make call_sock into a global
This is much less typing.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 17:49:34 +0000 (18:49 +0100)]
prefork-interp: make sockaddr_sun static
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 17:43:25 +0000 (18:43 +0100)]
prefork-interp: New protocol
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 17:34:50 +0000 (18:34 +0100)]
prefork-interp: New protocol: C: more negotiation-ness etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:41:39 +0000 (17:41 +0100)]
prefork-interp: Break out forked_monitor
prep for new protocol.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:37:59 +0000 (17:37 +0100)]
prefork-interp: Fix a fail_log
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:37:43 +0000 (17:37 +0100)]
prefork-interp: Logging directability
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:37:28 +0000 (17:37 +0100)]
prefork-interp: New protocol: change env var
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:22:15 +0000 (17:22 +0100)]
prefork-interp: New protocol: C: Do not env-pass saves
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:13:39 +0000 (17:13 +0100)]
prefork-interp: New protocol: C: Do exchange even for setup run
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:09:11 +0000 (17:09 +0100)]
prefork-interp: Have protocol_exchange return an error message
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:07:27 +0000 (17:07 +0100)]
prefork-interp: Move call to call_sock_from_fd (nfc)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 16:03:57 +0000 (17:03 +0100)]
prefork-interp: break out protocol_exchange (nfc)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 15:55:04 +0000 (16:55 +0100)]
prefork-interp: fix a comment char
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 15:53:46 +0000 (16:53 +0100)]
prefork-interp: document -U
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 15:50:10 +0000 (16:50 +0100)]
prefork-interp: require -U (for future-proofing)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 15 Aug 2022 15:35:25 +0000 (16:35 +0100)]
prefork: add a magic number to prefork-interp
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 14 Aug 2022 17:53:40 +0000 (18:53 +0100)]
prefork: new plan - make fa-monitor like the normal monitor
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 14 Aug 2022 17:49:27 +0000 (18:49 +0100)]
prefork: fix some syntax in formal comment
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 14 Aug 2022 17:48:40 +0000 (18:48 +0100)]
prefork: shorten an fd description to fit better
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 14 Aug 2022 16:05:00 +0000 (17:05 +0100)]
prefork: fix missing import
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 23:52:00 +0000 (00:52 +0100)]
prefork: consistently use -1 for "don't print errno"
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 23:39:15 +0000 (00:39 +0100)]
prefork-interp: improve protocol exchange error handling
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 23:38:50 +0000 (00:38 +0100)]
prefork-interp: fixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 21:33:12 +0000 (22:33 +0100)]
prefork-interp: Except fd 2 from call_fds closing
For the first run, stderr is the inherited fd
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 21:03:10 +0000 (22:03 +0100)]
prefork-interp: replace fail with fail_log
This was quite confusing. But, this is called where we may not have a
useful parent stderr.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 20:40:15 +0000 (21:40 +0100)]
prefork-interp: increase check interval quite a bit
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 20:28:13 +0000 (21:28 +0100)]
prefork-interp: fix namespace (NULL was being strange)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 20:22:23 +0000 (21:22 +0100)]
prefork-interp: fixes and tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 19:49:17 +0000 (20:49 +0100)]
prefork-interp: fixes and tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 19:36:31 +0000 (20:36 +0100)]
prefork-interp: fixes and tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 19:32:49 +0000 (20:32 +0100)]
prefork-interp: fixes and tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 19:06:23 +0000 (20:06 +0100)]
prefork-interp: fixes and tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 18:23:34 +0000 (19:23 +0100)]
prefork-interp: fix non-script-arg case
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 18:10:17 +0000 (19:10 +0100)]
prefork-interp: wip testing
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 18:09:35 +0000 (19:09 +0100)]
prefork-interp: wip testing
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 17:23:11 +0000 (18:23 +0100)]
prefork-interp: enable build
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 17:55:34 +0000 (18:55 +0100)]
prefork-interp: gitignore
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 17:53:55 +0000 (18:53 +0100)]
prefork-interp: Add missing symbols
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 17:53:44 +0000 (18:53 +0100)]
prefork-interp: Fix an uninitialised variable
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 19:00:34 +0000 (20:00 +0100)]
prefork-interp: wip compile
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 18:34:22 +0000 (19:34 +0100)]
prefork-interp: wip use stdio
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 17:31:56 +0000 (18:31 +0100)]
prefork-interp: wip compile
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 17:27:11 +0000 (18:27 +0100)]
prefork-interp: wip compile
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 17:23:38 +0000 (18:23 +0100)]
prefork-interp: wip compile
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 17:23:20 +0000 (18:23 +0100)]
common.h: Add some more decls (useful for prefork-interp)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 15:42:26 +0000 (16:42 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:31:28 +0000 (13:31 +0100)]
prefork-interp: wip args
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:20:04 +0000 (13:20 +0100)]
prefork: Insist on script (separately) with combined options
cgi-fcgi-interp always insists on this anyway, but prefork-interp
won't and ought to check this.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:17:04 +0000 (13:17 +0100)]
prefork: Provide PREFORK_CMDINFOS
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:14:40 +0000 (13:14 +0100)]
prefork: Make socket finding etc. stuff static
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:12:18 +0000 (13:12 +0100)]
prefork: Move garbage handling back cgi-fcgi-interp
prefork-interp wants to do this differently.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:04:50 +0000 (13:04 +0100)]
prefork: Allow script not to be set
Do the check in cgi-fcgi-interp. prefork-interp is going to want this
to be optional.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 12:03:46 +0000 (13:03 +0100)]
prefork: Have process_opts not return script, just set a global
This is going to be more convenient.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 11:51:47 +0000 (12:51 +0100)]
prefork: Have process_opts update argv and not take argc
This will let us do further option processing after process_opts.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 11:44:47 +0000 (12:44 +0100)]
prefork: Remove a wrong check
This is just not true at all. Perhaps it was to check for malloc
failure? Anyway, split_argv comes from split_argv and shbang_opts
never sets it to zero.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 11:38:00 +0000 (12:38 +0100)]
prefork-interp: define what our invocation looks like
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 11:35:52 +0000 (12:35 +0100)]
cgi-fcgi-interp: Write down the usages
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 11:34:22 +0000 (12:34 +0100)]
prefork: Move STAGE2_VAR back to cgi-fcgi-interp
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 17 Jul 2022 10:17:45 +0000 (11:17 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 15 Jul 2022 21:29:42 +0000 (22:29 +0100)]
cgi-fcgi-interp: prefork: Make name variable
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 15 Jul 2022 21:13:29 +0000 (22:13 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 18:04:49 +0000 (19:04 +0100)]
prefork-interp: temporary symlink for testing
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Tue, 12 Jul 2022 19:07:25 +0000 (20:07 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Tue, 12 Jul 2022 19:07:20 +0000 (20:07 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 14:00:07 +0000 (15:00 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 13:59:43 +0000 (14:59 +0100)]
prefork: split off lock_path etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 13:19:52 +0000 (14:19 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 11:38:25 +0000 (12:38 +0100)]
prefork-interp: wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 11:38:19 +0000 (12:38 +0100)]
cprogs: add FILLZERO
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 09:54:59 +0000 (10:54 +0100)]
Break much of cgi-fcgi-interp.c out into prefork.[ch]
We are going to want to reuse most of this for prefork-interp.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 9 Jul 2022 09:08:57 +0000 (10:08 +0100)]
cgi-fcgi-interp: Drop a spurious duplicate comment
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 21 Aug 2022 20:20:39 +0000 (21:20 +0100)]
Merge remote-tracking branch 'dgit/dgit/sid'
Incorporate NMU
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 11 Aug 2022 17:55:51 +0000 (18:55 +0100)]
really: Fix a preprocessor #endif
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 10:53:56 +0000 (11:53 +0100)]
expire-iso8601: Fix "insufficiently dense" message
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 10:30:29 +0000 (11:30 +0100)]
expire-iso8601: provide --rename-only
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 10:23:07 +0000 (11:23 +0100)]
expire-iso8601: tidy docs and exit status
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 00:20:31 +0000 (01:20 +0100)]
expire-iso8601: clean up old .rm
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 00:20:17 +0000 (01:20 +0100)]
expire-iso8601: break out do_rm and rename to .rm
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 00:13:21 +0000 (01:13 +0100)]
expire-iso8601: add missing $ to filename regexp
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 20 Aug 2020 00:06:19 +0000 (01:06 +0100)]
expire-iso8601: report and implement oldest first
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 23:59:46 +0000 (00:59 +0100)]
expire-iso8601: compensate for insufficient density
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 23:58:33 +0000 (00:58 +0100)]
expire-iso8601: break out $use->()
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 23:57:31 +0000 (00:57 +0100)]
expire-iso8601: Set $|=1 to clarify output order
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 23:43:09 +0000 (00:43 +0100)]
expire-iso8601: include #0 too
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 21:49:11 +0000 (22:49 +0100)]
Revert "expire-iso8601: Use date(1)"
It's not faster.
With DateTime::Format::Strptime, whole program runtime on my
test case:
real 0m1.371s
user 0m1.254s
sys 0m0.117s
With date(1):
real 0m5.408s
user 0m1.834s
sys 0m3.683s
This reverts commit
2d3da03e893d0c59e236224f049215fab8e81e8e.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 19 Aug 2020 21:47:56 +0000 (22:47 +0100)]
expire-iso8601: Use date(1)
-davenant:~> time perl -e 'use DateTime::Format::Strptime;'
real 0m1.269s
user 0m1.175s
sys 0m0.093s
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>