From 1c3736e6d28ad7bad42b3b4a8fd6d124d08ec749 Mon Sep 17 00:00:00 2001 From: Ava Affine Date: Mon, 4 May 2026 20:29:35 +0000 Subject: [PATCH] WIP: request and connection machine Just need a simple request logging phase to wrap this up Signed-off-by: Ava Affine --- .clangd | 3 + .gitignore | 2 + Makefile | 13 +- README.md | 60 +- compile_commands.json | 4216 +------------------------------------ config | 16 +- muninn.c | 27 - muninn.h | 18 + muninn_core.c | 55 + muninn_daemon.c | 359 ++++ snippets/muninn-test.conf | 9 + snippets/test-muninn.sh | 20 + 12 files changed, 545 insertions(+), 4253 deletions(-) create mode 100644 .clangd delete mode 100644 muninn.c create mode 100644 muninn.h create mode 100644 muninn_core.c create mode 100644 muninn_daemon.c create mode 100644 snippets/muninn-test.conf create mode 100755 snippets/test-muninn.sh diff --git a/.clangd b/.clangd new file mode 100644 index 0000000..e8537f1 --- /dev/null +++ b/.clangd @@ -0,0 +1,3 @@ +CompileFlags: + Compiler: gcc + Add: ["-xc", "-std=c2x"] diff --git a/.gitignore b/.gitignore index 46febc8..818049d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ libmuninn.so libmuninn.dylib nginx/.cache +.cache +mun_pfx diff --git a/Makefile b/Makefile index e4ecb55..344b2f9 100644 --- a/Makefile +++ b/Makefile @@ -10,23 +10,22 @@ ifneq ($(MUNINN_NGINX_DEBUG),) MUNINN_NGINX_DEBUG="--with-debug" endif -CURDIR = $(.CURDIR) - -.PHONY: all clean build +.PHONY: all clean all: nginx/objs/nginx -nginx/objs/Makefile: +nginx/objs/Makefile: config Makefile + make clean cd $(NGINX_SOURCE_DIR) && \ ./auto/configure \ $(MUNINN_NGINX_DEBUG) \ --with-http_ssl_module \ --with-compat \ - --add-module=$(.CURDIR) + --add-module=$(shell pwd) -nginx/objs/nginx: nginx/objs/Makefile +nginx/objs/nginx: nginx/objs/Makefile muninn_core.c muninn_daemon.c muninn.h $(MUNIN_BEAR) make -C $(NGINX_SOURCE_DIR) clean: - make -C $(NGINX_SOURCE_DIR) clean + -make -C $(NGINX_SOURCE_DIR) clean diff --git a/README.md b/README.md index 4ad4e51..ecf9798 100644 --- a/README.md +++ b/README.md @@ -22,13 +22,65 @@ The loose plan to implement Muninn is as follows: 9. Muninn can identify as authoritatively owning a certain DN (and Peers abide). 10. Something other than logging is done for conflicts over who owns what DN -Currently Muninn is on phase 2. +Currently Muninn is working on phase 3. ## Building Muninn -simply run `make`. +Muninn is implemented as a statically linked NGINX Module. The output of the +provided build process is an NGINX binary that contains Muninn functionality. To +build Muninn simply run `make`. The resulting binary will be in the build tree +at `$(pwd)/nginx/objs/nginx`. ## Running Muninn -TODO +Muninn may be ran in any way which NGINX is currently run. See the configuration +section for more details. To add Muninn to an existing running NGINX simply +compile Muninn, copy the output binary over your NGINX executable, and follow +the existing NGINX binary upgrade process. ## Configuring Muninn -TODO +Muninn uses an NGINX global configuration block similar to the existing NGINX +HTTP module. To configure Muninn begin a standard NGINX configuration and open +a Muninn block: + +```nginx +error_log /dev/stdout info; +pid /tmp/munin_pid; +daemon off; + +events {} + +muninn { + +} +``` + +To serve DNS over UDP on port 53 add a `dns_listener` directive like below. +Currently Muninn only supports UDP, but plans to provide for TCP and DoH as +development progresses. + +```nginx +error_log /dev/stdout info; +pid /tmp/munin_pid; +daemon off; + +events {} + +muninn { + dns_listen 0.0.0.0:53; +} +``` + +The default Muninn DNS over UDP server provides for 1024 simultaneous +connections. To change this add the `dns_connection_pool_count` like so: + +```nginx +error_log /dev/stdout info; +pid /tmp/munin_pid; +daemon off; + +events {} + +muninn { + dns_listen 0.0.0.0:53; + dns_connection_pool_count 24; +} +``` diff --git a/compile_commands.json b/compile_commands.json index 8105a9c..8e51945 100644 --- a/compile_commands.json +++ b/compile_commands.json @@ -1,2308 +1,4 @@ [ - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/nginx.o", - "src/core/nginx.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/nginx.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/nginx.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_log.o", - "src/core/ngx_log.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_log.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_log.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_palloc.o", - "src/core/ngx_palloc.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_palloc.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_palloc.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_array.o", - "src/core/ngx_array.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_array.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_array.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_list.o", - "src/core/ngx_list.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_list.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_list.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_hash.o", - "src/core/ngx_hash.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_hash.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_hash.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_buf.o", - "src/core/ngx_buf.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_buf.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_buf.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_queue.o", - "src/core/ngx_queue.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_queue.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_queue.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_output_chain.o", - "src/core/ngx_output_chain.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_output_chain.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_output_chain.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_string.o", - "src/core/ngx_string.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_string.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_string.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_parse.o", - "src/core/ngx_parse.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_parse.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_parse.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_parse_time.o", - "src/core/ngx_parse_time.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_parse_time.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_parse_time.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_inet.o", - "src/core/ngx_inet.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_inet.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_inet.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_file.o", - "src/core/ngx_file.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_file.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_file.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_crc32.o", - "src/core/ngx_crc32.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_crc32.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_crc32.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_murmurhash.o", - "src/core/ngx_murmurhash.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_murmurhash.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_murmurhash.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_md5.o", - "src/core/ngx_md5.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_md5.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_md5.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_sha1.o", - "src/core/ngx_sha1.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_sha1.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_sha1.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_rbtree.o", - "src/core/ngx_rbtree.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_rbtree.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_rbtree.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_radix_tree.o", - "src/core/ngx_radix_tree.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_radix_tree.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_radix_tree.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_slab.o", - "src/core/ngx_slab.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_slab.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_slab.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_times.o", - "src/core/ngx_times.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_times.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_times.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_shmtx.o", - "src/core/ngx_shmtx.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_shmtx.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_shmtx.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_connection.o", - "src/core/ngx_connection.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_connection.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_connection.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_cycle.o", - "src/core/ngx_cycle.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_cycle.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_cycle.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_spinlock.o", - "src/core/ngx_spinlock.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_spinlock.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_spinlock.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_rwlock.o", - "src/core/ngx_rwlock.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_rwlock.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_rwlock.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_cpuinfo.o", - "src/core/ngx_cpuinfo.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_cpuinfo.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_cpuinfo.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_conf_file.o", - "src/core/ngx_conf_file.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_conf_file.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_conf_file.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_module.o", - "src/core/ngx_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_resolver.o", - "src/core/ngx_resolver.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_resolver.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_resolver.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_open_file_cache.o", - "src/core/ngx_open_file_cache.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_open_file_cache.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_open_file_cache.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_crypt.o", - "src/core/ngx_crypt.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_crypt.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_crypt.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_proxy_protocol.o", - "src/core/ngx_proxy_protocol.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_proxy_protocol.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_proxy_protocol.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_syslog.o", - "src/core/ngx_syslog.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_syslog.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_syslog.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event.o", - "src/event/ngx_event.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_timer.o", - "src/event/ngx_event_timer.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_timer.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_timer.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_posted.o", - "src/event/ngx_event_posted.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_posted.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_posted.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_accept.o", - "src/event/ngx_event_accept.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_accept.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_accept.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_udp.o", - "src/event/ngx_event_udp.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_udp.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_udp.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_connect.o", - "src/event/ngx_event_connect.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_connect.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_connect.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_pipe.o", - "src/event/ngx_event_pipe.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_pipe.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_pipe.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_time.o", - "src/os/unix/ngx_time.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_time.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_time.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_errno.o", - "src/os/unix/ngx_errno.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_errno.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_errno.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_alloc.o", - "src/os/unix/ngx_alloc.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_alloc.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_alloc.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_files.o", - "src/os/unix/ngx_files.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_files.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_files.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_socket.o", - "src/os/unix/ngx_socket.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_socket.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_socket.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_recv.o", - "src/os/unix/ngx_recv.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_recv.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_recv.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_readv_chain.o", - "src/os/unix/ngx_readv_chain.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_readv_chain.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_readv_chain.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_udp_recv.o", - "src/os/unix/ngx_udp_recv.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_udp_recv.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_udp_recv.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_send.o", - "src/os/unix/ngx_send.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_send.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_send.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_writev_chain.o", - "src/os/unix/ngx_writev_chain.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_writev_chain.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_writev_chain.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_udp_send.o", - "src/os/unix/ngx_udp_send.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_udp_send.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_udp_send.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_udp_sendmsg_chain.o", - "src/os/unix/ngx_udp_sendmsg_chain.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_udp_sendmsg_chain.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_udp_sendmsg_chain.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_channel.o", - "src/os/unix/ngx_channel.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_channel.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_channel.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_shmem.o", - "src/os/unix/ngx_shmem.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_shmem.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_shmem.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_process.o", - "src/os/unix/ngx_process.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_process.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_process.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_daemon.o", - "src/os/unix/ngx_daemon.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_daemon.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_daemon.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_setaffinity.o", - "src/os/unix/ngx_setaffinity.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_setaffinity.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_setaffinity.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_setproctitle.o", - "src/os/unix/ngx_setproctitle.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_setproctitle.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_setproctitle.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_posix_init.o", - "src/os/unix/ngx_posix_init.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_posix_init.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_posix_init.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_user.o", - "src/os/unix/ngx_user.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_user.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_user.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_dlopen.o", - "src/os/unix/ngx_dlopen.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_dlopen.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_dlopen.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_process_cycle.o", - "src/os/unix/ngx_process_cycle.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_process_cycle.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_process_cycle.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_linux_init.o", - "src/os/unix/ngx_linux_init.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_linux_init.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_linux_init.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/modules/ngx_epoll_module.o", - "src/event/modules/ngx_epoll_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/modules/ngx_epoll_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/modules/ngx_epoll_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/os/unix/ngx_linux_sendfile_chain.o", - "src/os/unix/ngx_linux_sendfile_chain.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/os/unix/ngx_linux_sendfile_chain.c", - "output": "/code/repositories/muninn/nginx/objs/src/os/unix/ngx_linux_sendfile_chain.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_bpf.o", - "src/core/ngx_bpf.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_bpf.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_bpf.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_openssl.o", - "src/event/ngx_event_openssl.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_openssl.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_openssl.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_openssl_cache.o", - "src/event/ngx_event_openssl_cache.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_openssl_cache.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_openssl_cache.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/event/ngx_event_openssl_stapling.o", - "src/event/ngx_event_openssl_stapling.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/event/ngx_event_openssl_stapling.c", - "output": "/code/repositories/muninn/nginx/objs/src/event/ngx_event_openssl_stapling.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/src/core/ngx_regex.o", - "src/core/ngx_regex.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/core/ngx_regex.c", - "output": "/code/repositories/muninn/nginx/objs/src/core/ngx_regex.o" - }, { "arguments": [ "/usr/bin/cc", @@ -2332,1915 +28,11 @@ "-I", "src/http/modules", "-o", - "objs/src/http/ngx_http.o", - "src/http/ngx_http.c" + "objs/addon/muninn/muninn_daemon.o", + "/code/repositories/muninn/muninn_daemon.c" ], "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_core_module.o", - "src/http/ngx_http_core_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_core_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_core_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_special_response.o", - "src/http/ngx_http_special_response.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_special_response.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_special_response.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_request.o", - "src/http/ngx_http_request.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_request.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_request.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_parse.o", - "src/http/ngx_http_parse.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_parse.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_parse.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_log_module.o", - "src/http/modules/ngx_http_log_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_log_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_log_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_request_body.o", - "src/http/ngx_http_request_body.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_request_body.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_request_body.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_variables.o", - "src/http/ngx_http_variables.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_variables.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_variables.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_script.o", - "src/http/ngx_http_script.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_script.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_script.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_upstream.o", - "src/http/ngx_http_upstream.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_upstream.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_upstream.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_upstream_round_robin.o", - "src/http/ngx_http_upstream_round_robin.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_upstream_round_robin.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_upstream_round_robin.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_file_cache.o", - "src/http/ngx_http_file_cache.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_file_cache.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_file_cache.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_write_filter_module.o", - "src/http/ngx_http_write_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_write_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_write_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_header_filter_module.o", - "src/http/ngx_http_header_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_header_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_header_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_chunked_filter_module.o", - "src/http/modules/ngx_http_chunked_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_chunked_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_chunked_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_range_filter_module.o", - "src/http/modules/ngx_http_range_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_range_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_range_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_gzip_filter_module.o", - "src/http/modules/ngx_http_gzip_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_gzip_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_gzip_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_postpone_filter_module.o", - "src/http/ngx_http_postpone_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_postpone_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_postpone_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_ssi_filter_module.o", - "src/http/modules/ngx_http_ssi_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_ssi_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_ssi_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_charset_filter_module.o", - "src/http/modules/ngx_http_charset_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_charset_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_charset_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_userid_filter_module.o", - "src/http/modules/ngx_http_userid_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_userid_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_userid_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_headers_filter_module.o", - "src/http/modules/ngx_http_headers_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_headers_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_headers_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/ngx_http_copy_filter_module.o", - "src/http/ngx_http_copy_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/ngx_http_copy_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/ngx_http_copy_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_not_modified_filter_module.o", - "src/http/modules/ngx_http_not_modified_filter_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_not_modified_filter_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_not_modified_filter_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_static_module.o", - "src/http/modules/ngx_http_static_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_static_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_static_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_autoindex_module.o", - "src/http/modules/ngx_http_autoindex_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_autoindex_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_autoindex_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_index_module.o", - "src/http/modules/ngx_http_index_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_index_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_index_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_mirror_module.o", - "src/http/modules/ngx_http_mirror_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_mirror_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_mirror_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_try_files_module.o", - "src/http/modules/ngx_http_try_files_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_try_files_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_try_files_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_auth_basic_module.o", - "src/http/modules/ngx_http_auth_basic_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_auth_basic_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_auth_basic_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_access_module.o", - "src/http/modules/ngx_http_access_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_access_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_access_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_limit_conn_module.o", - "src/http/modules/ngx_http_limit_conn_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_limit_conn_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_limit_conn_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_limit_req_module.o", - "src/http/modules/ngx_http_limit_req_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_limit_req_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_limit_req_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_geo_module.o", - "src/http/modules/ngx_http_geo_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_geo_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_geo_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_map_module.o", - "src/http/modules/ngx_http_map_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_map_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_map_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_split_clients_module.o", - "src/http/modules/ngx_http_split_clients_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_split_clients_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_split_clients_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_referer_module.o", - "src/http/modules/ngx_http_referer_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_referer_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_referer_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_rewrite_module.o", - "src/http/modules/ngx_http_rewrite_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_rewrite_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_rewrite_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_ssl_module.o", - "src/http/modules/ngx_http_ssl_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_ssl_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_ssl_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_proxy_module.o", - "src/http/modules/ngx_http_proxy_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_proxy_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_proxy_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_fastcgi_module.o", - "src/http/modules/ngx_http_fastcgi_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_fastcgi_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_fastcgi_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_uwsgi_module.o", - "src/http/modules/ngx_http_uwsgi_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_uwsgi_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_uwsgi_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_scgi_module.o", - "src/http/modules/ngx_http_scgi_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_scgi_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_scgi_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_memcached_module.o", - "src/http/modules/ngx_http_memcached_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_memcached_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_memcached_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_empty_gif_module.o", - "src/http/modules/ngx_http_empty_gif_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_empty_gif_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_empty_gif_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_browser_module.o", - "src/http/modules/ngx_http_browser_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_browser_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_browser_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_hash_module.o", - "src/http/modules/ngx_http_upstream_hash_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_hash_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_hash_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_ip_hash_module.o", - "src/http/modules/ngx_http_upstream_ip_hash_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_ip_hash_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_ip_hash_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_least_conn_module.o", - "src/http/modules/ngx_http_upstream_least_conn_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_least_conn_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_least_conn_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_random_module.o", - "src/http/modules/ngx_http_upstream_random_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_random_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_random_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_keepalive_module.o", - "src/http/modules/ngx_http_upstream_keepalive_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_keepalive_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_keepalive_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_zone_module.o", - "src/http/modules/ngx_http_upstream_zone_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_zone_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_zone_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-I", - "src/http", - "-I", - "src/http/modules", - "-o", - "objs/src/http/modules/ngx_http_upstream_sticky_module.o", - "src/http/modules/ngx_http_upstream_sticky_module.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/src/http/modules/ngx_http_upstream_sticky_module.c", - "output": "/code/repositories/muninn/nginx/objs/src/http/modules/ngx_http_upstream_sticky_module.o" - }, - { - "arguments": [ - "/usr/bin/cc", - "-c", - "-pipe", - "-O", - "-W", - "-Wall", - "-Wpointer-arith", - "-Wno-unused-parameter", - "-Werror", - "-g", - "-I", - "src/core", - "-I", - "src/event", - "-I", - "src/event/modules", - "-I", - "src/event/quic", - "-I", - "src/os/unix", - "-I", - "objs", - "-o", - "objs/ngx_modules.o", - "objs/ngx_modules.c" - ], - "directory": "/code/repositories/muninn/nginx", - "file": "/code/repositories/muninn/nginx/objs/ngx_modules.c", - "output": "/code/repositories/muninn/nginx/objs/ngx_modules.o" + "file": "/code/repositories/muninn/muninn_daemon.c", + "output": "/code/repositories/muninn/nginx/objs/addon/muninn/muninn_daemon.o" } ] diff --git a/config b/config index e6eb21a..7d5326c 100644 --- a/config +++ b/config @@ -1,5 +1,15 @@ -ngx_module_name=muninn -ngx_module_srcs="$ngx_addon_dir/muninn.c" -ngx_module_link=YES +ngx_module_type=CORE +ngx_module_name=ngx_muninn_core_module +ngx_module_srcs="$ngx_addon_dir/muninn_core.c" +ngx_module_link=ADDON . auto/module + +ngx_module_type=CORE +ngx_module_name=ngx_muninn_daemon_module +ngx_module_srcs="$ngx_addon_dir/muninn_daemon.c" +ngx_module_link=ADDON + +. auto/module + +ngx_addon_name="muninn" diff --git a/muninn.c b/muninn.c deleted file mode 100644 index 5e5d6ab..0000000 --- a/muninn.c +++ /dev/null @@ -1,27 +0,0 @@ -#include -#include - -static ngx_command_t ngx_muninn_commands[] = {}; - -static ngx_core_module_t ngx_muninn_module_ctx = { - ngx_string("muninn"), - NULL, // create conf - NULL // init conf -}; - -ngx_module_t ngx_muninn_core_module = { - NGX_MODULE_V1, - &ngx_muninn_module_ctx, /* module context */ - ngx_muninn_commands, /* module directives */ - NGX_CORE_MODULE, /* module type */ - NULL, /* init master */ - NULL, /* init module */ - NULL, /* init process */ - NULL, /* init thread */ - NULL, /* exit thread */ - NULL, /* exit process */ - NULL, /* exit master */ - NGX_MODULE_V1_PADDING -}; - - diff --git a/muninn.h b/muninn.h new file mode 100644 index 0000000..ace2964 --- /dev/null +++ b/muninn.h @@ -0,0 +1,18 @@ +#include +#include +#include + +#define NGX_MUNINN_MODULE 0x42000000 +#define NGX_MUNINN_CONF 0x00000086 + +#define MUN_DNS_LEGACY_UDP_SZ 512 +#define MUN_DEFAULT_CONN_POOL_SZ 1024 + + +typedef struct { + ngx_uint_t read_state, finalized; + ngx_chain_t *in, *out, *read_cur; + //ngx_pool_t *pool; use conn->pool; + //ngx_log_t *log; use conn->log; + ngx_connection_t *conn; +} mun_dns_request; diff --git a/muninn_core.c b/muninn_core.c new file mode 100644 index 0000000..90755f1 --- /dev/null +++ b/muninn_core.c @@ -0,0 +1,55 @@ +#include "muninn.h" + + +static char *mun_conf_server(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); +static void *mun_core_create_conf(ngx_cycle_t *cycle); + + +static ngx_command_t ngx_muninn_core_commands[] = { + { ngx_string("muninn"), + NGX_MAIN_CONF|NGX_CONF_BLOCK|NGX_CONF_NOARGS, + mun_conf_server, + 0, 0, NULL }, + + ngx_null_command +}; + +static ngx_core_module_t ngx_muninn_core_module_ctx = { + ngx_string("muninn_core"), + mun_core_create_conf, + NULL, +}; + +ngx_module_t ngx_muninn_core_module = { + NGX_MODULE_V1, + &ngx_muninn_core_module_ctx, + ngx_muninn_core_commands, + NGX_CORE_MODULE, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NGX_MODULE_V1_PADDING +}; + + +static void *mun_core_create_conf(ngx_cycle_t *cycle) { + ngx_int_t *conf; + if (!(conf = ngx_pcalloc(cycle->pool, sizeof(ngx_int_t)))) + return NULL; + + return conf; +} + +static char *mun_conf_server(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) { + if (!conf) return "no conf"; + if (**(ngx_int_t **) conf) return "duplicate block"; + + **(ngx_int_t **)conf = 1; + cf->module_type = NGX_MUNINN_MODULE; + cf->cmd_type = NGX_MUNINN_CONF; + return ngx_conf_parse(cf, NULL); +} diff --git a/muninn_daemon.c b/muninn_daemon.c new file mode 100644 index 0000000..84836ae --- /dev/null +++ b/muninn_daemon.c @@ -0,0 +1,359 @@ +#include "ngx_conf_file.h" +#ifdef __clang__ +#pragma clang diagnostic ignored "-Wdangling-else" +#else +#pragma GCC diagnostic ignored "-Wdangling-else" +#pragma GCC diagnostic ignored "-Wmultistatement-macros" +#endif + +#include "muninn.h" + +#include +#include + + +// Configuration functions +static char *mun_conf_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); +static char *mun_conf_connection_ct(ngx_conf_t *cf, ngx_command_t *c, void *v); + +// Connection lifecycle +static void mun_init_connection(ngx_connection_t *c); +static void mun_close_connection(ngx_connection_t *c); +static void mun_handle_conn_readable(ngx_event_t *ev); +static void mun_handle_conn_writeable(ngx_event_t *ev); + +// Request lifecycle functions +static ngx_int_t mun_log_request(mun_dns_request *r); + +// connection pool flag stored here +static ngx_int_t mun_daemon_dns_connection_pool_ct = MUN_DEFAULT_CONN_POOL_SZ; + + +// Module definitions +static ngx_command_t ngx_muninn_daemon_commands[] = { + { ngx_string("dns_listen"), + NGX_MUNINN_CONF|NGX_DIRECT_CONF|NGX_CONF_1MORE, + mun_conf_listen, + 0, 0, NULL }, + + { ngx_string("dns_connection_pool_count"), + NGX_MUNINN_CONF|NGX_DIRECT_CONF|NGX_CONF_1MORE, + mun_conf_connection_ct, + 0, 0, NULL }, + + ngx_null_command +}; + +static ngx_core_module_t ngx_muninn_daemon_module_ctx = { + ngx_string("muninn_daemon"), NULL, NULL +}; + +ngx_module_t ngx_muninn_daemon_module = { + NGX_MODULE_V1, + &ngx_muninn_daemon_module_ctx, + ngx_muninn_daemon_commands, + NGX_MUNINN_MODULE, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NGX_MODULE_V1_PADDING +}; + +// Muninn request handling state machine +static ngx_int_t (*mun_read_handler_list[])(mun_dns_request *) = { + mun_log_request, // test req state machine logging handler + // TODO: request parsing + // TODO: request logging + // TODO: request cache lookup + // TODO: request record(s) fetch + // TODO: request response generation + // TODO: error handling phase +}; + +/* ADJACENCY LIST + * This matrix defines the entire request processing state machine and changes + * All numbers in this list should correspond to mun_read_handler_list indexes + * The entries in this list are linked to their same index in the handler list + * + * Entries: + * { NGX_OK next handler - intended to indidicate phase is complete + * NGX_ERROR next handler - intended to trap error states + * NGX_BUSY next handler - intended to trap waiting state + * NGX_DECLINED next handler } intended to trap service refusal + * + * Other handler returns: + * NGX_DONE: this return code means a request is ready to be finalized + * nothing further will be returned. + * NGX_AGAIN: this return code causes same function to be called again. + * primarily used when more input needed than what is available. + * NGX_ABORT: this return code causes all further action to stop for request + * + * For more information, see how this is used in mun_handle_conn_readable + */ +static ngx_uint_t mun_read_handler_adjacency[][4] = { + {0, 0, 0, 0} +}; + + +static char *mun_conf_connection_ct( + ngx_conf_t *cf, + ngx_command_t *cmd, + void *conf +) { + ngx_int_t argc = cf->args->nelts; + ngx_str_t *argv = cf->args->elts; + ngx_int_t num; + + if (argc < 1) { + ngx_conf_log_error(NGX_LOG_ERR, cf, 0, + "dns_connection_pool_count requires at least one argument"); + return NGX_CONF_ERROR; + } + + if ((num = ngx_atoi(argv[1].data, argv[1].len)) == NGX_ERROR) { + ngx_conf_log_error(NGX_LOG_ERR, cf, 0, + "invalid integer passed to dns_connection_pool_count"); + return NGX_CONF_ERROR; + } + + if (num < 1) { + ngx_conf_log_error(NGX_LOG_ERR, cf, 0, + "dns_connection_pool_count must be set to at least 1"); + return NGX_CONF_ERROR; + } + + mun_daemon_dns_connection_pool_ct = num; + return NGX_CONF_OK; +} + +static char *mun_conf_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *in) { + ngx_url_t *u; + ngx_int_t argc; + ngx_str_t *argv; + ngx_listening_t *listening; + + argc = cf->args->nelts; + argv = cf->args->elts; + + if (argc < 1) { + ngx_conf_log_error(NGX_LOG_ERR, cf, 0, + "dns_listen needs at least one argument"); + return NGX_CONF_ERROR; + } + + if (!(u = ngx_pcalloc(cf->pool, sizeof(ngx_url_t)))) return NGX_CONF_ERROR; + + u->url = argv[1]; + u->listen = 1; + u->default_port = 53; + if (ngx_parse_url(cf->pool, u) != NGX_OK) { + if (u->err) { + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "%s in \"%V\" of the \"dns_listen\" directive", + u->err, &u->url); + } + + return NGX_CONF_ERROR; + } + + listening = ngx_create_listening(cf, (struct sockaddr *) &u->sockaddr, + u->socklen); + if (!listening) return NGX_CONF_ERROR; + + listening->addr_ntop = 1; + listening->pool_size = mun_daemon_dns_connection_pool_ct; + listening->handler = mun_init_connection; + listening->logp = cf->log; + listening->log.data = &listening->addr_text; + listening->log.handler = ngx_accept_log_error; + listening->sndbuf = 1; + listening->rcvbuf = 1; + listening->backlog = mun_daemon_dns_connection_pool_ct * 2; + listening->protocol = IPPROTO_UDP; + listening->type = SOCK_DGRAM; + + // listener added to cycle at creation + + return NGX_CONF_OK; +} + +static void mun_init_connection(ngx_connection_t *c) { + mun_dns_request *r; + + if (!(r = ngx_pcalloc(c->pool, sizeof(mun_dns_request)))) { + mun_close_connection(c); + return; + } + + c->data = r; + c->log->connection = c->number; + c->log_error = NGX_ERROR_INFO; + + c->read->handler = mun_handle_conn_readable; + c->write->handler = mun_handle_conn_writeable; + + if (c->read->ready) ngx_post_event(c->read, &ngx_posted_events) + + ngx_log_error(NGX_LOG_INFO, c->log, 0, "muninn: new request accepted"); +} + +static void mun_close_connection(ngx_connection_t *c) { + c->destroyed = 1; + ngx_close_connection(c); + ngx_destroy_pool(c->pool); +} + +static void mun_handle_conn_readable(ngx_event_t *ev) { + ngx_connection_t *c; + mun_dns_request *r; + ngx_chain_t *cur; + ngx_int_t ret, idx, space, filled; + + c = ev->data; + r = c->data; + ret = 0; + filled = 0; + + if (r && r->finalized) { + ngx_log_error(NGX_LOG_ERR, c->log, 0, + "muninn: read called for finalized request"); + return; + } + + if (ev->timedout) { + // TODO: handle timedout according to DNS proto + mun_close_connection(c); + return; + } + + if (!r->in) { + if (!(r->in = ngx_alloc_chain_link(c->pool))) { + ret = NGX_ERROR; + goto content; + } + + if (!(r->in->buf = ngx_create_temp_buf(c->pool, + MUN_DNS_LEGACY_UDP_SZ))) { + ret = NGX_ERROR; + goto content; + } + + cur = r->in; + cur->buf->last_buf = 1; + cur->next = NULL; + space = MUN_DNS_LEGACY_UDP_SZ; + + } else { + for (cur = r->in; cur && !cur->buf->last_buf; cur = cur->next) {} + if (!cur) { + ngx_log_error(NGX_LOG_ERR, r->conn->log, 0, + "muninn: failed to find next buffer to read into"); + } + space = cur->buf->end - cur->buf->last; + } + + if (!r->read_cur) { + r->read_cur = r->in; + } + + while (1) { + filled = c->recv(c, cur->buf->last, space); + if (c->read->error || c->read->eof) { + // TODO: log + ret = NGX_ERROR; + goto content; + } + + if (filled == space) { + cur->buf->last_buf = 0; + if (!(cur = (cur->next = ngx_alloc_chain_link(c->pool))) || + !(cur->buf = ngx_create_temp_buf(c->pool, + MUN_DNS_LEGACY_UDP_SZ)) || + !(space = MUN_DNS_LEGACY_UDP_SZ)) break; + + cur->next = NULL; + cur->buf->last_buf = 1; + continue; + } + + break; + } + + +content: + if (!ret) ret = mun_read_handler_list[r->read_state](r); + idx = mun_read_handler_adjacency[r->read_state][0 - ret]; + r->read_state = idx; + + switch (ret) { + case NGX_OK: + // we could still have read data to process in next stage + break; + + case NGX_ERROR: + case NGX_BUSY: + case NGX_DECLINED: + ngx_post_event(c->write, &ngx_posted_events); + /* fallthrough */ + case NGX_ABORT: + case NGX_AGAIN: + return; + + case NGX_DONE: + // TODO: perform request finalization + r->finalized = 1; + return; + } + + ngx_post_event(ev, &ngx_posted_events); +} + +static void mun_handle_conn_writeable(ngx_event_t *ev) { + ngx_chain_t *tmp; + ngx_connection_t *c; + mun_dns_request *r; + + c = ev->data; + r = c->data; + tmp = r->out; + + /* this event posted for one of two reasons: + * 1. mun_handle_request_read has reached end of request processing + * 2. socket newly available after incomplete write + */ + + // write wouldnt work here anyways. event will retrigger when ready + if (!ev->ready) return; + + if (!r->out) { + ngx_log_debug(NGX_LOG_ALERT, r->conn->log, 0, + "muninn: request processed but no output"); + return; + } + + r->out = c->send_chain(c, tmp, MUN_DNS_LEGACY_UDP_SZ); + for (/* tmp */; tmp != r->out; tmp = tmp->next) { + if (tmp->buf->pos == tmp->buf->last) ngx_free_chain(c->pool, tmp); + } + + // request lifecycle complete condition + if (!r->out) return mun_close_connection(c); + + // event will retrigger when write possible + if (!ev->ready) return; + + // more can be written but we want to yield to other events on task loop + ngx_post_event(ev, &ngx_posted_events); +} + + +static ngx_int_t mun_log_request(mun_dns_request *r) { + ngx_log_error(NGX_LOG_DEBUG, r->conn->log, 0, + "muninn: request state machine entered"); + + return NGX_DONE; +} diff --git a/snippets/muninn-test.conf b/snippets/muninn-test.conf new file mode 100644 index 0000000..fce5cc4 --- /dev/null +++ b/snippets/muninn-test.conf @@ -0,0 +1,9 @@ +error_log info; +pid /tmp/munin_pid; + +events {} + +muninn { + dns_connection_pool_count 5; + dns_listen 0.0.0.0:53; +} diff --git a/snippets/test-muninn.sh b/snippets/test-muninn.sh new file mode 100755 index 0000000..3cac7d3 --- /dev/null +++ b/snippets/test-muninn.sh @@ -0,0 +1,20 @@ +#!/bin/zsh + +set -ex +alias muninn="nginx/objs/nginx -p $(pwd)/mun_pfx -c muninn-test.conf" + +# step 1: build +make all -j24 + +# step 2: set up test pfx +mkdir -p $(pwd)/mun_pfx/logs/ +cp $(pwd)/snippets/muninn-test.conf mun_pfx/ + +# step 3: test configuration +muninn -T + +#step 4: test runtime +#muninn +#sleep 1 +#muninn -s quit +