aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2025-12-29 15:08:08 +0700
committerShulhan <ms@kilabit.info>2025-12-29 15:08:08 +0700
commit76df394598f5953a2cba14ca0f95c4d9e52e9469 (patch)
tree3df469aeb67ab5320aa20bb3e12383663cc71f17
parent4654d45c96f86133bc0258d67c919dea7884fc46 (diff)
downloadhaminer-76df394598f5953a2cba14ca0f95c4d9e52e9469.tar.xz
all: add missing SPDX license to all files
Convert the old ".reuse/dep5" format to REUSE.toml format using "reuse convert-dep5" command. For generated files, add the ".license" file. Using "reuse annotate ..." it automatically add empty line after "SPDX-FileCopyrightText:", and it also put "SPDX-FileCopyrightText" above the "SPDX-License-Identifier". Now, this project is compliant with version 3.3 of the REUSE Specification.
-rw-r--r--.gitignore5
-rw-r--r--.reuse/dep516
-rw-r--r--Makefile5
-rw-r--r--README.md6
-rw-r--r--REUSE.toml22
-rw-r--r--_AUR/.SRCINFO.license3
-rw-r--r--_AUR/Makefile5
-rw-r--r--_AUR/PKGBUILD.license3
-rw-r--r--_bin/.gitignore4
-rw-r--r--_database/0001_http_log.sql4
-rw-r--r--_doc/CHANGELOG.adoc2
-rw-r--r--_ops/haminer-test/.gitignore4
-rw-r--r--_ops/haminer-test/mkosi.cache/.gitignore4
-rw-r--r--_ops/haminer-test/mkosi.conf4
-rw-r--r--_ops/haminer-test/mkosi.conf.d/archlinux.conf4
-rw-r--r--_ops/haminer-test/mkosi.extra/data/haminer/bin/.gitignore4
-rw-r--r--_ops/haminer-test/mkosi.extra/etc/haminer.conf4
-rw-r--r--_ops/haminer-test/mkosi.extra/etc/haproxy/haproxy.cfg4
-rw-r--r--_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.path4
-rw-r--r--_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.service5
-rw-r--r--_ops/haminer-test/mkosi.extra/etc/systemd/system/systemctl-restart@.service4
-rw-r--r--_ops/haminer-test/mkosi.extra/var/lib/postgres/data/pg_hba.conf4
-rw-r--r--_ops/haminer-test/mkosi.extra/var/lib/postgres/data/postgresql.conf4
-rwxr-xr-x_ops/haminer-test/mkosi.finalize.chroot3
-rw-r--r--_ops/haminer-test/mkosi.nspawn4
-rwxr-xr-x_ops/haminer-test/mkosi.prepare.chroot3
-rw-r--r--_ops/haminer-test/mkosi.skeleton/etc/pacman.conf4
-rw-r--r--_ops/haminer-test/mkosi.skeleton/etc/pacman.d/mirrorlist4
-rw-r--r--_wui/.gitignore4
-rw-r--r--_wui/index.ts4
-rw-r--r--_wui/tsconfig.json.license3
-rw-r--r--cmd/haminer/haminer.conf5
-rw-r--r--cmd/haminer/haminer.service5
-rw-r--r--cmd/haminer/main.go1
-rw-r--r--config.go1
-rw-r--r--config_forwarder.go1
-rw-r--r--config_test.go1
-rw-r--r--forwarder.go1
-rw-r--r--forwarder_influxd.go1
-rw-r--r--forwarder_postgresql.go1
-rw-r--r--forwarder_postgresql_test.go1
-rw-r--r--forwarder_questdb.go1
-rw-r--r--go.mod4
-rw-r--r--go.sum.license3
-rw-r--r--haminer.go1
-rw-r--r--haminer_test.go1
-rw-r--r--http_log.go1
-rw-r--r--http_log_test.go1
-rw-r--r--internal/cmd/gocheck/main.go3
-rw-r--r--internal/cmd/haminer-dummy-backend/main.go1
-rw-r--r--internal/cmd/memfs/main.go14
-rw-r--r--memfs_database.go18
-rw-r--r--memfs_wui.go48
-rw-r--r--tagpreprocessor.go1
-rw-r--r--tagpreprocessor_test.go1
-rw-r--r--testdata/.gitignore4
-rw-r--r--testdata/ParseUDPPacket_test.txt4
-rw-r--r--testdata/forwarderPostgresql_Forwards_test.txt4
-rw-r--r--testdata/haminer.conf4
59 files changed, 249 insertions, 36 deletions
diff --git a/.gitignore b/.gitignore
index 2535012..e1ef66b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
*.html
/_AUR/*.tar.zst
diff --git a/.reuse/dep5 b/.reuse/dep5
deleted file mode 100644
index 42b83d0..0000000
--- a/.reuse/dep5
+++ /dev/null
@@ -1,16 +0,0 @@
-Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: haminer
-Upstream-Contact: Shulhan <ms@kilabit.info>
-Source: https://git.sr.ht/~shulhan/haminer
-
-Files: _AUR/*
-Copyright: 2022 Shulhan <ms@kilabit.info>
-License: GPL-3.0-or-later
-
-Files: testdata/*
-Copyright: 2019 Shulhan <ms@kilabit.info>
-License: GPL-3.0-or-later
-
-Files: go.*
-Copyright: 2019 Shulhan <ms@kilabit.info>
-License: GPL-3.0-or-later
diff --git a/Makefile b/Makefile
index 64b5455..15ceadf 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
.PHONY: all lint serve-doc
all: build lint test
diff --git a/README.md b/README.md
index 8e403fa..7a27fa7 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,9 @@
+<!--
+SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+
+SPDX-License-Identifier: GPL-3.0-or-later
+-->
+
# haminer
`haminer` is a library and program to parse and forward HAProxy HTTP logs.
diff --git a/REUSE.toml b/REUSE.toml
new file mode 100644
index 0000000..05ead7d
--- /dev/null
+++ b/REUSE.toml
@@ -0,0 +1,22 @@
+version = 1
+SPDX-PackageName = "haminer"
+SPDX-PackageSupplier = "M. Shulhan <ms@kilabit.info>"
+SPDX-PackageDownloadLocation = "https://git.sr.ht/~shulhan/haminer"
+
+[[annotations]]
+path = "_AUR/**"
+precedence = "aggregate"
+SPDX-FileCopyrightText = "2022 M. Shulhan <ms@kilabit.info>"
+SPDX-License-Identifier = "GPL-3.0-or-later"
+
+[[annotations]]
+path = "testdata/**"
+precedence = "aggregate"
+SPDX-FileCopyrightText = "2019 M. Shulhan <ms@kilabit.info>"
+SPDX-License-Identifier = "GPL-3.0-or-later"
+
+[[annotations]]
+path = "go.**"
+precedence = "aggregate"
+SPDX-FileCopyrightText = "2019 M. Shulhan <ms@kilabit.info>"
+SPDX-License-Identifier = "GPL-3.0-or-later"
diff --git a/_AUR/.SRCINFO.license b/_AUR/.SRCINFO.license
new file mode 100644
index 0000000..dc54291
--- /dev/null
+++ b/_AUR/.SRCINFO.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2022 M. Shulhan <ms@kilabit.info>
+
+SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/_AUR/Makefile b/_AUR/Makefile
index 8def7c2..ed14d24 100644
--- a/_AUR/Makefile
+++ b/_AUR/Makefile
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2022 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2022 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
.PHONY: all release
diff --git a/_AUR/PKGBUILD.license b/_AUR/PKGBUILD.license
new file mode 100644
index 0000000..dc54291
--- /dev/null
+++ b/_AUR/PKGBUILD.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2022 M. Shulhan <ms@kilabit.info>
+
+SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/_bin/.gitignore b/_bin/.gitignore
index 120f485..fff9239 100644
--- a/_bin/.gitignore
+++ b/_bin/.gitignore
@@ -1,2 +1,6 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
*
!/.gitignore
diff --git a/_database/0001_http_log.sql b/_database/0001_http_log.sql
index 47da300..3fd89bd 100644
--- a/_database/0001_http_log.sql
+++ b/_database/0001_http_log.sql
@@ -1,3 +1,7 @@
+-- SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+--
+-- SPDX-License-Identifier: GPL-3.0-or-later
+
DROP TABLE IF EXISTS http_log CASCADE;
CREATE TABLE http_log (
diff --git a/_doc/CHANGELOG.adoc b/_doc/CHANGELOG.adoc
index 4325949..5421cef 100644
--- a/_doc/CHANGELOG.adoc
+++ b/_doc/CHANGELOG.adoc
@@ -1,5 +1,7 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
+
= CHANGELOG
:toc:
:sectanchors:
diff --git a/_ops/haminer-test/.gitignore b/_ops/haminer-test/.gitignore
index eff1b5c..e416401 100644
--- a/_ops/haminer-test/.gitignore
+++ b/_ops/haminer-test/.gitignore
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
/haminer-test
/haminer-test.nspawn
/haminer-test.tar
diff --git a/_ops/haminer-test/mkosi.cache/.gitignore b/_ops/haminer-test/mkosi.cache/.gitignore
index 120f485..fff9239 100644
--- a/_ops/haminer-test/mkosi.cache/.gitignore
+++ b/_ops/haminer-test/mkosi.cache/.gitignore
@@ -1,2 +1,6 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
*
!/.gitignore
diff --git a/_ops/haminer-test/mkosi.conf b/_ops/haminer-test/mkosi.conf
index 0da472a..71b2473 100644
--- a/_ops/haminer-test/mkosi.conf
+++ b/_ops/haminer-test/mkosi.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[Output]
Format=directory
Output=haminer-test
diff --git a/_ops/haminer-test/mkosi.conf.d/archlinux.conf b/_ops/haminer-test/mkosi.conf.d/archlinux.conf
index 6dcc2be..bc350fd 100644
--- a/_ops/haminer-test/mkosi.conf.d/archlinux.conf
+++ b/_ops/haminer-test/mkosi.conf.d/archlinux.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[Match]
Distribution=arch
diff --git a/_ops/haminer-test/mkosi.extra/data/haminer/bin/.gitignore b/_ops/haminer-test/mkosi.extra/data/haminer/bin/.gitignore
index 120f485..fff9239 100644
--- a/_ops/haminer-test/mkosi.extra/data/haminer/bin/.gitignore
+++ b/_ops/haminer-test/mkosi.extra/data/haminer/bin/.gitignore
@@ -1,2 +1,6 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
*
!/.gitignore
diff --git a/_ops/haminer-test/mkosi.extra/etc/haminer.conf b/_ops/haminer-test/mkosi.extra/etc/haminer.conf
index c7190d3..257a381 100644
--- a/_ops/haminer-test/mkosi.extra/etc/haminer.conf
+++ b/_ops/haminer-test/mkosi.extra/etc/haminer.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[haminer]
listen = 0.0.0.0:5140
wui_address = 127.0.0.1:15140
diff --git a/_ops/haminer-test/mkosi.extra/etc/haproxy/haproxy.cfg b/_ops/haminer-test/mkosi.extra/etc/haproxy/haproxy.cfg
index 1f3d2dd..807e642 100644
--- a/_ops/haminer-test/mkosi.extra/etc/haproxy/haproxy.cfg
+++ b/_ops/haminer-test/mkosi.extra/etc/haproxy/haproxy.cfg
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
global
maxconn 20000
log 127.0.0.1:5140 local0
diff --git a/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.path b/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.path
index 5261287..a8ab1bd 100644
--- a/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.path
+++ b/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.path
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[Unit]
Description="Watch haminer-dummy-backend"
diff --git a/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.service b/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.service
index 3f6e41a..320b0cb 100644
--- a/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.service
+++ b/_ops/haminer-test/mkosi.extra/etc/systemd/system/haminer-dummy-backend.service
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=haminer-dummy-backend
diff --git a/_ops/haminer-test/mkosi.extra/etc/systemd/system/systemctl-restart@.service b/_ops/haminer-test/mkosi.extra/etc/systemd/system/systemctl-restart@.service
index 800316e..def4687 100644
--- a/_ops/haminer-test/mkosi.extra/etc/systemd/system/systemctl-restart@.service
+++ b/_ops/haminer-test/mkosi.extra/etc/systemd/system/systemctl-restart@.service
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[Unit]
Description=systemctl-restart@%i
diff --git a/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/pg_hba.conf b/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/pg_hba.conf
index 5b2693e..d51df99 100644
--- a/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/pg_hba.conf
+++ b/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/pg_hba.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
# PostgreSQL Client Authentication Configuration File
# ===================================================
#
diff --git a/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/postgresql.conf b/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/postgresql.conf
index 7ae5d67..bb9cd75 100644
--- a/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/postgresql.conf
+++ b/_ops/haminer-test/mkosi.extra/var/lib/postgres/data/postgresql.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
# -----------------------------
# PostgreSQL configuration file
# -----------------------------
diff --git a/_ops/haminer-test/mkosi.finalize.chroot b/_ops/haminer-test/mkosi.finalize.chroot
index 200b78f..4293eeb 100755
--- a/_ops/haminer-test/mkosi.finalize.chroot
+++ b/_ops/haminer-test/mkosi.finalize.chroot
@@ -1,4 +1,7 @@
#!/bin/sh
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
chown postgres:postgres /var/lib/postgres/data/postgresql.conf
chown postgres:postgres /var/lib/postgres/data/pg_hba.conf
diff --git a/_ops/haminer-test/mkosi.nspawn b/_ops/haminer-test/mkosi.nspawn
index 2144a2b..ed4efe9 100644
--- a/_ops/haminer-test/mkosi.nspawn
+++ b/_ops/haminer-test/mkosi.nspawn
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[Network]
Private = yes
VirtualEthernet = yes
diff --git a/_ops/haminer-test/mkosi.prepare.chroot b/_ops/haminer-test/mkosi.prepare.chroot
index a4c04fd..d8c99bd 100755
--- a/_ops/haminer-test/mkosi.prepare.chroot
+++ b/_ops/haminer-test/mkosi.prepare.chroot
@@ -1,4 +1,7 @@
#!/bin/sh
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
rm -rf /var/lib/postgres/data
mkdir /var/lib/postgres/data
diff --git a/_ops/haminer-test/mkosi.skeleton/etc/pacman.conf b/_ops/haminer-test/mkosi.skeleton/etc/pacman.conf
index 5016129..ea6800d 100644
--- a/_ops/haminer-test/mkosi.skeleton/etc/pacman.conf
+++ b/_ops/haminer-test/mkosi.skeleton/etc/pacman.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
#
# /etc/pacman.conf
#
diff --git a/_ops/haminer-test/mkosi.skeleton/etc/pacman.d/mirrorlist b/_ops/haminer-test/mkosi.skeleton/etc/pacman.d/mirrorlist
index 7cb3cb9..35b28a7 100644
--- a/_ops/haminer-test/mkosi.skeleton/etc/pacman.d/mirrorlist
+++ b/_ops/haminer-test/mkosi.skeleton/etc/pacman.d/mirrorlist
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
##
## Arch Linux repository mirrorlist
## Generated on 2023-10-01
diff --git a/_wui/.gitignore b/_wui/.gitignore
index dcaffc0..1eb407d 100644
--- a/_wui/.gitignore
+++ b/_wui/.gitignore
@@ -1 +1,5 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
/*.js
diff --git a/_wui/index.ts b/_wui/index.ts
index 74fd18f..e128d11 100644
--- a/_wui/index.ts
+++ b/_wui/index.ts
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
class Haminer {
apiLogTail(id: string) {
var comp = document.getElementById(id);
diff --git a/_wui/tsconfig.json.license b/_wui/tsconfig.json.license
new file mode 100644
index 0000000..2cace0f
--- /dev/null
+++ b/_wui/tsconfig.json.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+
+SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/cmd/haminer/haminer.conf b/cmd/haminer/haminer.conf
index 0fe01cf..59a4e9f 100644
--- a/cmd/haminer/haminer.conf
+++ b/cmd/haminer/haminer.conf
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
[haminer]
##
diff --git a/cmd/haminer/haminer.service b/cmd/haminer/haminer.service
index dd1bcd7..58e038b 100644
--- a/cmd/haminer/haminer.service
+++ b/cmd/haminer/haminer.service
@@ -1,5 +1,6 @@
-## SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
-## SPDX-License-Identifier: GPL-3.0-or-later
+# SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=haminer
diff --git a/cmd/haminer/main.go b/cmd/haminer/main.go
index 3813093..ba2087e 100644
--- a/cmd/haminer/main.go
+++ b/cmd/haminer/main.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package main
diff --git a/config.go b/config.go
index 88b36e1..6824dd5 100644
--- a/config.go
+++ b/config.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/config_forwarder.go b/config_forwarder.go
index e49e0c6..6af452b 100644
--- a/config_forwarder.go
+++ b/config_forwarder.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/config_test.go b/config_test.go
index a54e18d..b7a3b72 100644
--- a/config_test.go
+++ b/config_test.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/forwarder.go b/forwarder.go
index b9b08b6..1c97abb 100644
--- a/forwarder.go
+++ b/forwarder.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/forwarder_influxd.go b/forwarder_influxd.go
index dc093e1..7ca978f 100644
--- a/forwarder_influxd.go
+++ b/forwarder_influxd.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/forwarder_postgresql.go b/forwarder_postgresql.go
index 9dbe957..ff669bc 100644
--- a/forwarder_postgresql.go
+++ b/forwarder_postgresql.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/forwarder_postgresql_test.go b/forwarder_postgresql_test.go
index 1ada5d7..2a8cfa3 100644
--- a/forwarder_postgresql_test.go
+++ b/forwarder_postgresql_test.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/forwarder_questdb.go b/forwarder_questdb.go
index 5903e1d..6b3927c 100644
--- a/forwarder_questdb.go
+++ b/forwarder_questdb.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2022 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/go.mod b/go.mod
index c078b95..92bf414 100644
--- a/go.mod
+++ b/go.mod
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
module git.sr.ht/~shulhan/haminer
go 1.24.0
diff --git a/go.sum.license b/go.sum.license
new file mode 100644
index 0000000..622bd74
--- /dev/null
+++ b/go.sum.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+
+SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/haminer.go b/haminer.go
index fca1458..e3d5df8 100644
--- a/haminer.go
+++ b/haminer.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/haminer_test.go b/haminer_test.go
index 39c4763..c6f1a39 100644
--- a/haminer_test.go
+++ b/haminer_test.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/http_log.go b/http_log.go
index 12a9f0e..97158f1 100644
--- a/http_log.go
+++ b/http_log.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/http_log_test.go b/http_log_test.go
index 157ff71..a0ee712 100644
--- a/http_log_test.go
+++ b/http_log_test.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2018 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/internal/cmd/gocheck/main.go b/internal/cmd/gocheck/main.go
index 112c08a..956e790 100644
--- a/internal/cmd/gocheck/main.go
+++ b/internal/cmd/gocheck/main.go
@@ -1,5 +1,6 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
// Program gocheck implement go static analysis using [Analyzer] that are not
// included in the default go vet.
diff --git a/internal/cmd/haminer-dummy-backend/main.go b/internal/cmd/haminer-dummy-backend/main.go
index 5c6517e..1fd39ef 100644
--- a/internal/cmd/haminer-dummy-backend/main.go
+++ b/internal/cmd/haminer-dummy-backend/main.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2024 Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package main
diff --git a/internal/cmd/memfs/main.go b/internal/cmd/memfs/main.go
index 341fd98..fe69c78 100644
--- a/internal/cmd/memfs/main.go
+++ b/internal/cmd/memfs/main.go
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
package main
import (
@@ -18,6 +22,11 @@ func embedDatabase() {
PackageName: `haminer`,
VarName: `memfsDatabase`,
GoFileName: `memfs_database.go`,
+ CommentHeader: `// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+`,
},
Root: `_database`,
Includes: []string{
@@ -47,6 +56,11 @@ func embedWui() {
PackageName: `haminer`,
VarName: `memfsWUI`,
GoFileName: `memfs_wui.go`,
+ CommentHeader: `// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+`,
},
Root: `_wui`,
Includes: []string{
diff --git a/memfs_database.go b/memfs_database.go
index b90042c..01567b7 100644
--- a/memfs_database.go
+++ b/memfs_database.go
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
// Code generated by git.sr.ht/~shulhan/pakakeh.go/lib/memfs DO NOT EDIT.
package haminer
@@ -14,7 +18,7 @@ func generate__database() *memfs.Node {
GenFuncName: "generate__database",
}
node.SetMode(0o20000000755)
- node.SetModTimeUnix(1736274272, 847475033)
+ node.SetModTimeUnix(1725733352, 648363905)
node.SetName("/")
node.SetSize(0)
node.AddChild(_memfsDatabase_getNode(memfsDatabase, "/0001_http_log.sql", generate__database_0001_http_log_sql))
@@ -27,12 +31,12 @@ func generate__database_0001_http_log_sql() *memfs.Node {
Path: "/0001_http_log.sql",
ContentType: "application/sql",
GenFuncName: "generate__database_0001_http_log_sql",
- Content: []byte("\x44\x52\x4F\x50\x20\x54\x41\x42\x4C\x45\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x20\x43\x41\x53\x43\x41\x44\x45\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x54\x41\x42\x4C\x45\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x20\x28\x0A\x20\x20\x72\x65\x71\x75\x65\x73\x74\x5F\x64\x61\x74\x65\x20\x20\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x20\x57\x49\x54\x48\x20\x54\x49\x4D\x45\x20\x5A\x4F\x4E\x45\x0A\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x69\x70\x20\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x66\x72\x6F\x6E\x74\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x6E\x61\x6D\x65\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x68\x74\x74\x70\x5F\x70\x72\x6F\x74\x6F\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x6D\x65\x74\x68\x6F\x64\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x75\x72\x6C\x20\x20\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x71\x75\x65\x72\x79\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x68\x65\x61\x64\x65\x72\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x65\x61\x64\x65\x72\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x63\x6F\x6F\x6B\x69\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x63\x6F\x6F\x6B\x69\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x74\x65\x72\x6D\x69\x6E\x61\x74\x69\x6F\x6E\x5F\x73\x74\x61\x74\x65\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x62\x79\x74\x65\x73\x5F\x72\x65\x61\x64\x20\x20\x20\x20\x42\x49\x47\x49\x4E\x54\x0A\x0A\x2C\x20\x73\x74\x61\x74\x75\x73\x5F\x63\x6F\x64\x65\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x70\x6F\x72\x74\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x77\x61\x69\x74\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x63\x6F\x6E\x6E\x65\x63\x74\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x61\x6C\x6C\x20\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x61\x63\x74\x69\x76\x65\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x66\x72\x6F\x6E\x74\x65\x6E\x64\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x62\x61\x63\x6B\x65\x6E\x64\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x73\x65\x72\x76\x65\x72\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x72\x65\x74\x72\x69\x65\x73\x20\x20\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x71\x75\x65\x75\x65\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x71\x75\x65\x75\x65\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x29\x3B\x0A\x0A\x44\x52\x4F\x50\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x69\x64\x78\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x69\x64\x78\x20\x4F\x4E\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x28\x0A\x20\x20\x72\x65\x71\x75\x65\x73\x74\x5F\x64\x61\x74\x65\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x69\x70\x0A\x2C\x20\x66\x72\x6F\x6E\x74\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x68\x74\x74\x70\x5F\x70\x72\x6F\x74\x6F\x0A\x2C\x20\x68\x74\x74\x70\x5F\x6D\x65\x74\x68\x6F\x64\x0A\x2C\x20\x68\x74\x74\x70\x5F\x75\x72\x6C\x0A\x2C\x20\x74\x65\x72\x6D\x69\x6E\x61\x74\x69\x6F\x6E\x5F\x73\x74\x61\x74\x65\x0A\x2C\x20\x73\x74\x61\x74\x75\x73\x5F\x63\x6F\x64\x65\x0A\x29\x3B\x0A\x0A\x44\x52\x4F\x50\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x74\x69\x6D\x65\x5F\x69\x64\x78\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x74\x69\x6D\x65\x5F\x69\x64\x78\x20\x4F\x4E\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x28\x0A\x20\x20\x74\x69\x6D\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x77\x61\x69\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x63\x6F\x6E\x6E\x65\x63\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x61\x6C\x6C\x0A\x29\x3B\x0A"),
+ Content: []byte("\x2D\x2D\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x34\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2D\x2D\x0A\x2D\x2D\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x0A\x44\x52\x4F\x50\x20\x54\x41\x42\x4C\x45\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x20\x43\x41\x53\x43\x41\x44\x45\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x54\x41\x42\x4C\x45\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x20\x28\x0A\x20\x20\x72\x65\x71\x75\x65\x73\x74\x5F\x64\x61\x74\x65\x20\x20\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x20\x57\x49\x54\x48\x20\x54\x49\x4D\x45\x20\x5A\x4F\x4E\x45\x0A\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x69\x70\x20\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x66\x72\x6F\x6E\x74\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x6E\x61\x6D\x65\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x68\x74\x74\x70\x5F\x70\x72\x6F\x74\x6F\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x6D\x65\x74\x68\x6F\x64\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x75\x72\x6C\x20\x20\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x74\x74\x70\x5F\x71\x75\x65\x72\x79\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x68\x65\x61\x64\x65\x72\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x68\x65\x61\x64\x65\x72\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x63\x6F\x6F\x6B\x69\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x63\x6F\x6F\x6B\x69\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x20\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x2C\x20\x74\x65\x72\x6D\x69\x6E\x61\x74\x69\x6F\x6E\x5F\x73\x74\x61\x74\x65\x20\x56\x41\x52\x43\x48\x41\x52\x0A\x0A\x2C\x20\x62\x79\x74\x65\x73\x5F\x72\x65\x61\x64\x20\x20\x20\x20\x42\x49\x47\x49\x4E\x54\x0A\x0A\x2C\x20\x73\x74\x61\x74\x75\x73\x5F\x63\x6F\x64\x65\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x70\x6F\x72\x74\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x77\x61\x69\x74\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x63\x6F\x6E\x6E\x65\x63\x74\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x61\x6C\x6C\x20\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x61\x63\x74\x69\x76\x65\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x66\x72\x6F\x6E\x74\x65\x6E\x64\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x62\x61\x63\x6B\x65\x6E\x64\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x63\x6F\x6E\x6E\x5F\x73\x65\x72\x76\x65\x72\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x72\x65\x74\x72\x69\x65\x73\x20\x20\x20\x20\x20\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x71\x75\x65\x75\x65\x20\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x71\x75\x65\x75\x65\x20\x49\x4E\x54\x45\x47\x45\x52\x0A\x29\x3B\x0A\x0A\x44\x52\x4F\x50\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x69\x64\x78\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x69\x64\x78\x20\x4F\x4E\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x28\x0A\x20\x20\x72\x65\x71\x75\x65\x73\x74\x5F\x64\x61\x74\x65\x0A\x2C\x20\x63\x6C\x69\x65\x6E\x74\x5F\x69\x70\x0A\x2C\x20\x66\x72\x6F\x6E\x74\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x62\x61\x63\x6B\x65\x6E\x64\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x73\x65\x72\x76\x65\x72\x5F\x6E\x61\x6D\x65\x0A\x2C\x20\x68\x74\x74\x70\x5F\x70\x72\x6F\x74\x6F\x0A\x2C\x20\x68\x74\x74\x70\x5F\x6D\x65\x74\x68\x6F\x64\x0A\x2C\x20\x68\x74\x74\x70\x5F\x75\x72\x6C\x0A\x2C\x20\x74\x65\x72\x6D\x69\x6E\x61\x74\x69\x6F\x6E\x5F\x73\x74\x61\x74\x65\x0A\x2C\x20\x73\x74\x61\x74\x75\x73\x5F\x63\x6F\x64\x65\x0A\x29\x3B\x0A\x0A\x44\x52\x4F\x50\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x74\x69\x6D\x65\x5F\x69\x64\x78\x3B\x0A\x0A\x43\x52\x45\x41\x54\x45\x20\x49\x4E\x44\x45\x58\x20\x49\x46\x20\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x5F\x74\x69\x6D\x65\x5F\x69\x64\x78\x20\x4F\x4E\x20\x68\x74\x74\x70\x5F\x6C\x6F\x67\x28\x0A\x20\x20\x74\x69\x6D\x65\x5F\x72\x65\x71\x75\x65\x73\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x77\x61\x69\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x63\x6F\x6E\x6E\x65\x63\x74\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x0A\x2C\x20\x74\x69\x6D\x65\x5F\x61\x6C\x6C\x0A\x29\x3B\x0A"),
}
node.SetMode(0o644)
- node.SetModTimeUnix(1736274272, 847475033)
+ node.SetModTimeUnix(1766994142, 55045808)
node.SetName("0001_http_log.sql")
- node.SetSize(1216)
+ node.SetSize(1326)
return node
}
@@ -58,7 +62,11 @@ func init() {
Excludes: []string{
},
Embed: memfs.EmbedOptions{
- CommentHeader: ``,
+ CommentHeader: `// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+`,
PackageName: "haminer",
VarName: "memfsDatabase",
GoFileName: "memfs_database.go",
diff --git a/memfs_wui.go b/memfs_wui.go
index 97218d0..caf8b6f 100644
--- a/memfs_wui.go
+++ b/memfs_wui.go
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
// Code generated by git.sr.ht/~shulhan/pakakeh.go/lib/memfs DO NOT EDIT.
package haminer
@@ -14,9 +18,41 @@ func generate__wui() *memfs.Node {
GenFuncName: "generate__wui",
}
node.SetMode(0o20000000755)
- node.SetModTimeUnix(1736274272, 854141700)
+ node.SetModTimeUnix(1766992573, 296296996)
node.SetName("/")
node.SetSize(0)
+ node.AddChild(_memfsWUI_getNode(memfsWUI, "/index.html", generate__wui_index_html))
+ node.AddChild(_memfsWUI_getNode(memfsWUI, "/index.js", generate__wui_index_js))
+ return node
+}
+
+func generate__wui_index_html() *memfs.Node {
+ var node = &memfs.Node{
+ SysPath: "_wui/index.html",
+ Path: "/index.html",
+ ContentType: "text/html; charset=utf-8",
+ GenFuncName: "generate__wui_index_html",
+ Content: []byte("\x3C\x68\x74\x6D\x6C\x20\x6C\x61\x6E\x67\x3D\x22\x65\x6E\x22\x3E\x0A\x0A\x3C\x68\x65\x61\x64\x3E\x0A\x20\x20\x20\x20\x3C\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3D\x22\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73\x22\x3E\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E\x0A\x3C\x2F\x68\x65\x61\x64\x3E\x0A\x0A\x3C\x62\x6F\x64\x79\x3E\x0A\x20\x20\x20\x20\x54\x65\x73\x74\x2E\x0A\x20\x20\x20\x20\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x6C\x6F\x67\x2D\x74\x61\x69\x6C\x22\x3E\x0A\x20\x20\x20\x20\x3C\x2F\x64\x69\x76\x3E\x0A\x0A\x20\x20\x20\x20\x3C\x73\x63\x72\x69\x70\x74\x3E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x6D\x69\x6E\x65\x72\x2E\x61\x70\x69\x4C\x6F\x67\x54\x61\x69\x6C\x28\x22\x6C\x6F\x67\x2D\x74\x61\x69\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E\x0A\x3C\x2F\x62\x6F\x64\x79\x3E\x0A\x0A\x3C\x2F\x68\x74\x6D\x6C\x3E\x0A"),
+ }
+ node.SetMode(0o644)
+ node.SetModTimeUnix(1710708775, 925427055)
+ node.SetName("index.html")
+ node.SetSize(209)
+ return node
+}
+
+func generate__wui_index_js() *memfs.Node {
+ var node = &memfs.Node{
+ SysPath: "_wui/index.js",
+ Path: "/index.js",
+ ContentType: "text/javascript; charset=utf-8",
+ GenFuncName: "generate__wui_index_js",
+ Content: []byte("\x76\x61\x72\x20\x48\x61\x6D\x69\x6E\x65\x72\x20\x3D\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x20\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x48\x61\x6D\x69\x6E\x65\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x48\x61\x6D\x69\x6E\x65\x72\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x61\x70\x69\x4C\x6F\x67\x54\x61\x69\x6C\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x28\x69\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6D\x70\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x76\x74\x53\x6F\x75\x72\x63\x65\x20\x3D\x20\x6E\x65\x77\x20\x45\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65\x28\x22\x2F\x61\x70\x69\x2F\x6C\x6F\x67\x2F\x74\x61\x69\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x74\x53\x6F\x75\x72\x63\x65\x2E\x6F\x6E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x4C\x6F\x67\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x22\x2E\x63\x6F\x6E\x63\x61\x74\x28\x65\x76\x65\x6E\x74\x2E\x64\x61\x74\x61\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4C\x6F\x67\x2E\x74\x65\x78\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x65\x76\x65\x6E\x74\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6D\x70\x2E\x70\x72\x65\x70\x65\x6E\x64\x28\x65\x6C\x4C\x6F\x67\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x48\x61\x6D\x69\x6E\x65\x72\x3B\x0A\x7D\x28\x29\x29\x3B\x0A\x76\x61\x72\x20\x68\x61\x6D\x69\x6E\x65\x72\x20\x3D\x20\x6E\x65\x77\x20\x48\x61\x6D\x69\x6E\x65\x72\x28\x29\x3B\x0A"),
+ }
+ node.SetMode(0o644)
+ node.SetModTimeUnix(1710709901, 923580725)
+ node.SetName("index.js")
+ node.SetSize(533)
return node
}
@@ -42,7 +78,11 @@ func init() {
Excludes: []string{
},
Embed: memfs.EmbedOptions{
- CommentHeader: ``,
+ CommentHeader: `// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+`,
PackageName: "haminer",
VarName: "memfsWUI",
GoFileName: "memfs_wui.go",
@@ -52,6 +92,10 @@ func init() {
}
memfsWUI.PathNodes.Set("/",
_memfsWUI_getNode(memfsWUI, "/", generate__wui))
+ memfsWUI.PathNodes.Set("/index.html",
+ _memfsWUI_getNode(memfsWUI, "/index.html", generate__wui_index_html))
+ memfsWUI.PathNodes.Set("/index.js",
+ _memfsWUI_getNode(memfsWUI, "/index.js", generate__wui_index_js))
memfsWUI.Root = memfsWUI.PathNodes.Get("/")
diff --git a/tagpreprocessor.go b/tagpreprocessor.go
index 178c2ce..e6d1d38 100644
--- a/tagpreprocessor.go
+++ b/tagpreprocessor.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/tagpreprocessor_test.go b/tagpreprocessor_test.go
index 6e5ff2b..95100fd 100644
--- a/tagpreprocessor_test.go
+++ b/tagpreprocessor_test.go
@@ -1,4 +1,5 @@
// SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+//
// SPDX-License-Identifier: GPL-3.0-or-later
package haminer
diff --git a/testdata/.gitignore b/testdata/.gitignore
index bf50733..c54d13e 100644
--- a/testdata/.gitignore
+++ b/testdata/.gitignore
@@ -1 +1,5 @@
+# SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
/notexist.conf
diff --git a/testdata/ParseUDPPacket_test.txt b/testdata/ParseUDPPacket_test.txt
index d108277..977f0d3 100644
--- a/testdata/ParseUDPPacket_test.txt
+++ b/testdata/ParseUDPPacket_test.txt
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
Test data for ParseUDPPacket.
>>> http_log_0000
diff --git a/testdata/forwarderPostgresql_Forwards_test.txt b/testdata/forwarderPostgresql_Forwards_test.txt
index b936661..4c610f9 100644
--- a/testdata/forwarderPostgresql_Forwards_test.txt
+++ b/testdata/forwarderPostgresql_Forwards_test.txt
@@ -1,3 +1,7 @@
+// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info>
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+
Test data for forwarding with Postgresql.
>>> http_log.json
diff --git a/testdata/haminer.conf b/testdata/haminer.conf
index 1968bd2..b49ae8b 100644
--- a/testdata/haminer.conf
+++ b/testdata/haminer.conf
@@ -1,3 +1,7 @@
+# SPDX-FileCopyrightText: 2019 M. Shulhan <ms@kilabit.info>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
[haminer]
listen = 0.0.0.0:8080
accept_backend = a