diff --git a/acme/account.go b/acme/account.go
index 82c087fe15e0677c883ccc02dcfafd6316566dc8..925ab293f0e7fa7c40d4232b666352ecaeaa57aa 100644
--- a/acme/account.go
+++ b/acme/account.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package acme
import (
diff --git a/acme/acme.go b/acme/acme.go
index 769001921be56718925a5ea5cc293a9bba3324a5..a0eafddc800d9d1f0e6590c5e37b0575ed393b88 100644
--- a/acme/acme.go
+++ b/acme/acme.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package acme provides automatic access to certificates from Let's Encrypt and any other ACME-based CA
// The code here is largely coiped from https://github.com/go-acme/lego/tree/master/cmd
// This package is intended to provide basic functionality for obtaining and renewing certificates
diff --git a/cmd/acme.go b/cmd/acme.go
index de071390c914af3172cd70f7874bf8f2e2433bd3..104b7c270f1c0d080b7285c1eff3b16cf7795bc1 100644
--- a/cmd/acme.go
+++ b/cmd/acme.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/awscontainer.go b/cmd/awscontainer.go
index d12e9158e224ddc6d6e45cc59685e8eb81f2ec03..c6f342312f57ce8b157b7ff520996652c2d853fd 100644
--- a/cmd/awscontainer.go
+++ b/cmd/awscontainer.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build awscontainer
// +build awscontainer
diff --git a/cmd/awscontainer_disabled.go b/cmd/awscontainer_disabled.go
index b40fce6b4025fd20ff0b5df419303ada967f9d08..ebbd6ec05aa4288022a711458fb7ab36cae5e327 100644
--- a/cmd/awscontainer_disabled.go
+++ b/cmd/awscontainer_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !awscontainer
// +build !awscontainer
diff --git a/cmd/gen.go b/cmd/gen.go
index 083e39c62945aa10de3c7d63293ec9eea5285724..a18256afa0d418c14b4e09e045922cba0ae8d6d5 100644
--- a/cmd/gen.go
+++ b/cmd/gen.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import "github.com/spf13/cobra"
diff --git a/cmd/gencompletion.go b/cmd/gencompletion.go
index 5205e2ad7100cf56fcae4ae521fedd6c88946cf0..5e252af974ccc9cf0eda4228abafd927ab86011f 100644
--- a/cmd/gencompletion.go
+++ b/cmd/gencompletion.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/genman.go b/cmd/genman.go
index e9d94593d8080dc9ade76f9cb50819812a17c569..b171c3ff5a7768c4d8600a5bede6fffbc730e949 100644
--- a/cmd/genman.go
+++ b/cmd/genman.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/initprovider.go b/cmd/initprovider.go
index 27876d1f87cb143d818a998bc5eb300a2e427488..2984f631bd1510d9fd01c5e3cf728001fc4baa47 100644
--- a/cmd/initprovider.go
+++ b/cmd/initprovider.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/install_windows.go b/cmd/install_windows.go
index 04f2ec68083d1dfa302b8e6beb9441305c9ae7a4..42f666f370be49e6aa7e8934b2e3bf4fff51e74e 100644
--- a/cmd/install_windows.go
+++ b/cmd/install_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/portable.go b/cmd/portable.go
index 8ad308bec4785bd1540f0e7086b72443b932a569..0697455c60b4d77779f80689b3f42a8d0ed7342e 100644
--- a/cmd/portable.go
+++ b/cmd/portable.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !noportable
// +build !noportable
diff --git a/cmd/portable_disabled.go b/cmd/portable_disabled.go
index f9d9aa5585a4e1474ed8c8f5a491cb0cb970e5c0..90263b6b30a59351cf4b28e388d1dbd1883a7060 100644
--- a/cmd/portable_disabled.go
+++ b/cmd/portable_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build noportable
// +build noportable
diff --git a/cmd/reload_windows.go b/cmd/reload_windows.go
index 0b98ac4e2e97668edacd69038c6f79f548bd26f7..d2d9c9bae09b1de3353acbf3f2e985733f8182f0 100644
--- a/cmd/reload_windows.go
+++ b/cmd/reload_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/resetprovider.go b/cmd/resetprovider.go
index 437db6e769f36f20c31db5d0312a43611ee1835f..eb48e6c668a522f32fa412f47829875827471e9d 100644
--- a/cmd/resetprovider.go
+++ b/cmd/resetprovider.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/revertprovider.go b/cmd/revertprovider.go
index 1934d1b1daf6ae59f997a91c1bc05d34c51240e3..758ffa03fbf9ad87382b3a2c351c2c734f847fbf 100644
--- a/cmd/revertprovider.go
+++ b/cmd/revertprovider.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/root.go b/cmd/root.go
index 573c96ea6bdea9b5768c39c3180a8da7aa1115a2..47c82081a6cd66d1a19e775f45b249912eb24287 100644
--- a/cmd/root.go
+++ b/cmd/root.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package cmd provides Command Line Interface support
package cmd
diff --git a/cmd/rotatelogs_windows.go b/cmd/rotatelogs_windows.go
index 8dcabdea221f9d2e0bf4e76df2b9152102dbda68..a3edc214583eb116c32a41e23546705c2e2c258a 100644
--- a/cmd/rotatelogs_windows.go
+++ b/cmd/rotatelogs_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/serve.go b/cmd/serve.go
index fdc6a732d2ce64db999115699076cb37d1ac48d5..4b3d2b7d92df694219daebd45dee981a3e2d4955 100644
--- a/cmd/serve.go
+++ b/cmd/serve.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/service_windows.go b/cmd/service_windows.go
index 706d9fb1b3807ba0aaf532056244c05b24c1b178..221e92a32234dbb6395526cebb70cf198a9a3b05 100644
--- a/cmd/service_windows.go
+++ b/cmd/service_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/smtptest.go b/cmd/smtptest.go
index a3a714e981d84d693e7e16e18961e8b1b4be04c8..71d7df526f2fe250852106776576b369b37fbf9f 100644
--- a/cmd/smtptest.go
+++ b/cmd/smtptest.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/start_windows.go b/cmd/start_windows.go
index de074ce0c28bdd47d6f2761893c267222363c5fe..4c3bc463b2165efd0c4cfcd7cc7eee3ebb6d0f69 100644
--- a/cmd/start_windows.go
+++ b/cmd/start_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/startsubsys.go b/cmd/startsubsys.go
index 8659fe95f4e731c915032eb49b413a217385b1ea..80af00e6dcec09615349eae55154d17bee756bc6 100644
--- a/cmd/startsubsys.go
+++ b/cmd/startsubsys.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/status_windows.go b/cmd/status_windows.go
index d431e2b65935f185ec179fd2cb42308489e48d99..00ca3a86f82c9326661f6ff7bfd8b6a72c35258f 100644
--- a/cmd/status_windows.go
+++ b/cmd/status_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/stop_windows.go b/cmd/stop_windows.go
index 656aa076887db9963b1cc1ad4e51ff6654164966..fcab2db509f433cdd2f75079cde838980ea88720 100644
--- a/cmd/stop_windows.go
+++ b/cmd/stop_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/cmd/uninstall_windows.go b/cmd/uninstall_windows.go
index 6f467d70379c134aacb955694a1caddfd4ad9026..f57899b6c133b3d4913fd45ec4bae375cbe61d2f 100644
--- a/cmd/uninstall_windows.go
+++ b/cmd/uninstall_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package cmd
import (
diff --git a/command/command.go b/command/command.go
index 42db839de2d3473a9627301e7de7a8f2480e8895..73927b9c6c84e3bce9c60cd6b48dcdb5ea9fa6cb 100644
--- a/command/command.go
+++ b/command/command.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package command
import (
diff --git a/command/command_test.go b/command/command_test.go
index 47e89ec76bd81fa1d4d408246ef74f70f1d10a5a..7f0a5838b5f25410b415f039b8145b7ec2861b20 100644
--- a/command/command_test.go
+++ b/command/command_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package command
import (
diff --git a/common/actions.go b/common/actions.go
index c06dbf0a509bd24313166891f67efc1f5299b92d..59cb0dee2bea360ebe4547b0367deb394cc84a11 100644
--- a/common/actions.go
+++ b/common/actions.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/actions_test.go b/common/actions_test.go
index 95dc337aca8fc941b3e70fec41e507c39e97e561..d9d4c186512dcdf7a80e4fe7243ccd374e6b823c 100644
--- a/common/actions_test.go
+++ b/common/actions_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/clientsmap.go b/common/clientsmap.go
index e768fec617d157f5f77839723ce875725ed983e3..f2375060fcf0af2f97ca0bee61616f448cc0f570 100644
--- a/common/clientsmap.go
+++ b/common/clientsmap.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/clientsmap_test.go b/common/clientsmap_test.go
index fa851984e620ac16aaa2db257219f34a9c3697cf..854c81fa39910fc85abdff47d8a3c0a4301acfdb 100644
--- a/common/clientsmap_test.go
+++ b/common/clientsmap_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/common.go b/common/common.go
index c3df955dc82a47622aa565975664de8bea19b3ff..c865db4e6527ff0e3f0b7388e0055330aaf2b666 100644
--- a/common/common.go
+++ b/common/common.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package common defines code shared among file transfer packages and protocols
package common
diff --git a/common/common_test.go b/common/common_test.go
index 2270e76099f89bf44415f9396afc070d871e0d21..b391884963d7ac25c19d64ebeba1d7f732245bec 100644
--- a/common/common_test.go
+++ b/common/common_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/connection.go b/common/connection.go
index b81677145c78d4adfaa85b6ef67edd06369af559..e55d825c5f02173a3bafb12fc30b6c880eaf37b0 100644
--- a/common/connection.go
+++ b/common/connection.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/connection_test.go b/common/connection_test.go
index 7b3761ec8ea0f7e99b7b7cab66dd618d35268681..04f106c20dc97066e1d4d528b3ed3a7306528f2b 100644
--- a/common/connection_test.go
+++ b/common/connection_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/dataretention.go b/common/dataretention.go
index 9457b1b25ab6dc2d47c2b7b98c384337d7683879..9592936109b378ebe3262e84bd013e4c75c2459e 100644
--- a/common/dataretention.go
+++ b/common/dataretention.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/dataretention_test.go b/common/dataretention_test.go
index 433c264189f36d3d8da07b39ab456cd27a0b84d4..73a02f968046cbde51ad266bc292c47a3cd6bab8 100644
--- a/common/dataretention_test.go
+++ b/common/dataretention_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/defender.go b/common/defender.go
index 3b02df55d4eb59e9e2060f5bb94ce61fc1de877c..04755d46ac8146613ad7761835065ff3996786ae 100644
--- a/common/defender.go
+++ b/common/defender.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/defender_test.go b/common/defender_test.go
index e8dba744cbc0947afe0d265f563aae830f304fb4..5c31c0ea82f3ed3297d1846bc4050a853cb3ed01 100644
--- a/common/defender_test.go
+++ b/common/defender_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/defenderdb.go b/common/defenderdb.go
index 838d7e8738d077a14566ec15d273c69b06fce42a..c9bcdecf79e17d549e0b73c22803a7b68b1f4ce9 100644
--- a/common/defenderdb.go
+++ b/common/defenderdb.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/defenderdb_test.go b/common/defenderdb_test.go
index f7bf9e64e62ab206b6d2648e9d2f48438b480573..93e4b109fd9b50c3d3754b047f2b84debc6143a7 100644
--- a/common/defenderdb_test.go
+++ b/common/defenderdb_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/defendermem.go b/common/defendermem.go
index d639f713f737d84d0db6979f2dccecbedf8ac0d8..50569eb086381bb545bf2a99e4da3acbb31bef64 100644
--- a/common/defendermem.go
+++ b/common/defendermem.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/httpauth.go b/common/httpauth.go
index f03fc5f8d83c5469cc3750dd86601be825c929df..c3acb251ed00915a0a0d252492bdf6df48958460 100644
--- a/common/httpauth.go
+++ b/common/httpauth.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/httpauth_test.go b/common/httpauth_test.go
index 63c4995ac9ce33f25cd8e046048c09bd1c0bde82..c9bff886ca25496c97fd26a80c25aa1ea7a95be1 100644
--- a/common/httpauth_test.go
+++ b/common/httpauth_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/protocol_test.go b/common/protocol_test.go
index 0b368679c201adea41043fe9d34db93fddd48222..b63dd93a41cca92760b696dfe4dc2a95601f5031 100644
--- a/common/protocol_test.go
+++ b/common/protocol_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common_test
import (
diff --git a/common/ratelimiter.go b/common/ratelimiter.go
index bdaac675572a5814caced040e29a7302ac1b8115..db7e06e501dd8036fe1ca23ee222c506e50f5d71 100644
--- a/common/ratelimiter.go
+++ b/common/ratelimiter.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/ratelimiter_test.go b/common/ratelimiter_test.go
index 82b029eb0917b0a94bbf06ab5dfc412ace13c581..d13bdd37cb5ca4a50afd02c2629ebee9a9f7faad 100644
--- a/common/ratelimiter_test.go
+++ b/common/ratelimiter_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/tlsutils.go b/common/tlsutils.go
index f12147b442c91eb3a8de65205ea605fabafdcc82..b5bc320ba8f6cabc8d8d07e4851f218880032e9f 100644
--- a/common/tlsutils.go
+++ b/common/tlsutils.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/tlsutils_test.go b/common/tlsutils_test.go
index 66c412c83e6b35df5e0cc65cfec4a08d702d2fd5..99dc08c61bea67fa0ef912697d4bed9e9faeba22 100644
--- a/common/tlsutils_test.go
+++ b/common/tlsutils_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/transfer.go b/common/transfer.go
index d7b467551c776d92ea0e2e47414953017b5d5d20..ed47f06441284b47562692b8f928f1e42327b769 100644
--- a/common/transfer.go
+++ b/common/transfer.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/transfer_test.go b/common/transfer_test.go
index 5964b205c4baaee626ee6ef54b64caa0c2d9ab75..660379fc987e86f26bf390765ec307a91083d358 100644
--- a/common/transfer_test.go
+++ b/common/transfer_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/transferschecker.go b/common/transferschecker.go
index 2e47eb61ec6875dfc3624f9c4739971a961c0466..e797272fcd31e9612ae3d159b153b6edfa08dfe1 100644
--- a/common/transferschecker.go
+++ b/common/transferschecker.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/common/transferschecker_test.go b/common/transferschecker_test.go
index 0a9aae79e65d4f278f5bd29f73b7106412f61734..2b66c745be74d020ec9a7accde3636523cb7d188 100644
--- a/common/transferschecker_test.go
+++ b/common/transferschecker_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package common
import (
diff --git a/config/config.go b/config/config.go
index 822f70f1f090f72a24982340e9f29f0eca0bd096..eeba56feef6bfb3ccf50da832273a8224f4b0f14 100644
--- a/config/config.go
+++ b/config/config.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package config manages the configuration
package config
diff --git a/config/config_linux.go b/config/config_linux.go
index 7b84f4c9a6a7eceed64007c1ac443fef7a19e725..23ee2512d817e065f73c5945e183e165e622285e 100644
--- a/config/config_linux.go
+++ b/config/config_linux.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build linux
// +build linux
diff --git a/config/config_nolinux.go b/config/config_nolinux.go
index 448b211498dc4b82536d4b432384107187b9ec7b..0c8fa7cd5e8caa6bc00e0b5ed1a2ae40d3d82c7f 100644
--- a/config/config_nolinux.go
+++ b/config/config_nolinux.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !linux
// +build !linux
diff --git a/config/config_test.go b/config/config_test.go
index 254532ec8882e50609bfbaef733fe233da014dcc..5d6211e366f8756a7ea52e5df5062f3de05eafc4 100644
--- a/config/config_test.go
+++ b/config/config_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package config_test
import (
diff --git a/dataprovider/actions.go b/dataprovider/actions.go
index 319cf0adfe0ea7173b33b86b598b015becae39ca..3517812ed0bf832e30b7d15d70ee3fbb68860686 100644
--- a/dataprovider/actions.go
+++ b/dataprovider/actions.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/admin.go b/dataprovider/admin.go
index c239486ad76afcf9ae0c05df3f5dff814d67da8b..77b628e0061017b7d2e6b0caf3566e5ee6029293 100644
--- a/dataprovider/admin.go
+++ b/dataprovider/admin.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/apikey.go b/dataprovider/apikey.go
index 468dd479356854aba81f90b7631e5dfee9e3ed4b..a2d50a03a1314a9115ebdfb06ba04bddacb1c2af 100644
--- a/dataprovider/apikey.go
+++ b/dataprovider/apikey.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/bolt.go b/dataprovider/bolt.go
index 7a1cfa01376a67fdfb8458807c352929f6c5ee78..a63b110bf6e7a4e7209a246ba49b9a668e6571ef 100644
--- a/dataprovider/bolt.go
+++ b/dataprovider/bolt.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !nobolt
// +build !nobolt
diff --git a/dataprovider/bolt_disabled.go b/dataprovider/bolt_disabled.go
index 43cef58967225778e1fb9405c4095a4e99023f9e..cfbc80d067fab769c68d2d8fd838c10d5485108e 100644
--- a/dataprovider/bolt_disabled.go
+++ b/dataprovider/bolt_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build nobolt
// +build nobolt
diff --git a/dataprovider/cachedpassword.go b/dataprovider/cachedpassword.go
index 049a3575f855c86c4bbdee5cccb23959f4f4a2d3..e05b534b1bc6b749a96afef6d94f52db77eb78ca 100644
--- a/dataprovider/cachedpassword.go
+++ b/dataprovider/cachedpassword.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/cacheduser.go b/dataprovider/cacheduser.go
index eb084e8649892162e4df5fda6914bb0c50e19030..d532cb114658312013585cd37fd0c11b2ac038b4 100644
--- a/dataprovider/cacheduser.go
+++ b/dataprovider/cacheduser.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/dataprovider.go b/dataprovider/dataprovider.go
index 3a6363b6d43d5cf47e26bab5b2b5efef1bcc4599..b216799617af01c619112dc821294798f3ddfa52 100644
--- a/dataprovider/dataprovider.go
+++ b/dataprovider/dataprovider.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package dataprovider provides data access.
// It abstracts different data providers and exposes a common API.
package dataprovider
diff --git a/dataprovider/eventrule.go b/dataprovider/eventrule.go
index 92c7ba86491d60663617c58c2df220caa2ad6245..a3e34d93f637521d2687a3d96238fbc7d8b6b1a8 100644
--- a/dataprovider/eventrule.go
+++ b/dataprovider/eventrule.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/eventruleutil.go b/dataprovider/eventruleutil.go
index 362d6a03e69ed33bbb682fdb8bb3e7713ce3e7f4..c838fe1812cc8f67853fc3974abf68ced643e17a 100644
--- a/dataprovider/eventruleutil.go
+++ b/dataprovider/eventruleutil.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/group.go b/dataprovider/group.go
index 20223fb87f4abfba516d1307f948336ef8231c18..ee593a01a8365badf41569a42188dc5983e09810 100644
--- a/dataprovider/group.go
+++ b/dataprovider/group.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/memory.go b/dataprovider/memory.go
index 106f681754cee34661eeea6b82c0f198ca0cb3cd..2f4aa4bbda4e5f9995dab079fe960c6778b29bd1 100644
--- a/dataprovider/memory.go
+++ b/dataprovider/memory.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/mysql.go b/dataprovider/mysql.go
index cac48d252856c6ccf50b82a62cdc4e16ae6d6c93..97af58763b90c71107ee6dadbc28bd34df251eda 100644
--- a/dataprovider/mysql.go
+++ b/dataprovider/mysql.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !nomysql
// +build !nomysql
diff --git a/dataprovider/mysql_disabled.go b/dataprovider/mysql_disabled.go
index 1de5ef95ba86296a1dbf2d8165a74fe1cc83346e..ff4c34c8a12008fe208f7711de37643565c01627 100644
--- a/dataprovider/mysql_disabled.go
+++ b/dataprovider/mysql_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build nomysql
// +build nomysql
diff --git a/dataprovider/pgsql.go b/dataprovider/pgsql.go
index 9eb03b51c9be339d883f25ce136190c85e197374..f56bf605b43ccb62ff5ad99a8e1e813385f1aeda 100644
--- a/dataprovider/pgsql.go
+++ b/dataprovider/pgsql.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !nopgsql
// +build !nopgsql
diff --git a/dataprovider/pgsql_disabled.go b/dataprovider/pgsql_disabled.go
index ba5b26d6f838d9a963eedf59d0239105908ed7c9..573f19bbaae753dd2390d7a04a83d5c9a5bb938d 100644
--- a/dataprovider/pgsql_disabled.go
+++ b/dataprovider/pgsql_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build nopgsql
// +build nopgsql
diff --git a/dataprovider/quota.go b/dataprovider/quota.go
index 569ff6444f86202252aa0fa80301a53b4329e622..615891fffebb72a5f5aa85cd6d822441b10094ec 100644
--- a/dataprovider/quota.go
+++ b/dataprovider/quota.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/quotaupdater.go b/dataprovider/quotaupdater.go
index 9190e63d8d0958c05ed5055013c1372546538123..954210bc1b70723a4226e490015b2a23fb148f67 100644
--- a/dataprovider/quotaupdater.go
+++ b/dataprovider/quotaupdater.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/scheduler.go b/dataprovider/scheduler.go
index ca7455d29d134b993b12fd74e1135281e6d307e0..d34287c68924f7e928b0142116e55922fba0bb31 100644
--- a/dataprovider/scheduler.go
+++ b/dataprovider/scheduler.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/session.go b/dataprovider/session.go
index 05da098493cad00a558b5a75a6531b810ba4e666..22d78edde8615a598235ab300423e23d602a1a68 100644
--- a/dataprovider/session.go
+++ b/dataprovider/session.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/share.go b/dataprovider/share.go
index 8589cb42cf2394a48aa1422586fabd7fcc84d11e..e069945828d408ae5658391958d32d5600f1f70d 100644
--- a/dataprovider/share.go
+++ b/dataprovider/share.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/sqlcommon.go b/dataprovider/sqlcommon.go
index b52f1106d5f4b89f77c4e8cc537baf8e8c28e5b3..5c6d0de2d6dfe5b7a5d71f6540da810e1417b752 100644
--- a/dataprovider/sqlcommon.go
+++ b/dataprovider/sqlcommon.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/sqlite.go b/dataprovider/sqlite.go
index 1ec0b0218505c69f2aeacfe51b6d72f19ed8ddd0..de12d3c0666b77e49f32499dcec09146d741d159 100644
--- a/dataprovider/sqlite.go
+++ b/dataprovider/sqlite.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !nosqlite
// +build !nosqlite
diff --git a/dataprovider/sqlite_disabled.go b/dataprovider/sqlite_disabled.go
index 559a74bd82b5157ad5e25c6893f7f79cffcbb80d..9e78a09fbfb0d9f8d566f1d0e77b77a73048d6f2 100644
--- a/dataprovider/sqlite_disabled.go
+++ b/dataprovider/sqlite_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build nosqlite
// +build nosqlite
diff --git a/dataprovider/sqlqueries.go b/dataprovider/sqlqueries.go
index b0ada08351267e45998086b56f858a2f6d371e6a..a595142f4bc2ee68f3a19c4f8ecec9cad431596a 100644
--- a/dataprovider/sqlqueries.go
+++ b/dataprovider/sqlqueries.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/dataprovider/user.go b/dataprovider/user.go
index f0b117a7c27a06e7c2c2875e337f1ed38ea976b9..50ed8b7516a102e075590a3afa52620d9615cc58 100644
--- a/dataprovider/user.go
+++ b/dataprovider/user.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package dataprovider
import (
diff --git a/ftpd/cryptfs_test.go b/ftpd/cryptfs_test.go
index 105d6d3b8540d4be67d46838fee4407c6b3c5f7a..14591a6d7ecf4e7009d78dac6955ee6955e4f902 100644
--- a/ftpd/cryptfs_test.go
+++ b/ftpd/cryptfs_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd_test
import (
diff --git a/ftpd/ftpd.go b/ftpd/ftpd.go
index e133f0ed03100ebbf149322a1b63b55f246212c5..77f5aadbc2e56795696cf6a6cf8cde34500eec59 100644
--- a/ftpd/ftpd.go
+++ b/ftpd/ftpd.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package ftpd implements the FTP protocol
package ftpd
diff --git a/ftpd/ftpd_test.go b/ftpd/ftpd_test.go
index 7bfe44d901622e59af0cec7b03fdfb4760739717..faa9f511c5b42278755bb060479ff7ef5d6c9e0d 100644
--- a/ftpd/ftpd_test.go
+++ b/ftpd/ftpd_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd_test
import (
diff --git a/ftpd/handler.go b/ftpd/handler.go
index 91efd4648cd9a74369ff60b01746ff13e0c59269..969e6b9ae0a0cf41c0d9c54c49c31ff6112f4766 100644
--- a/ftpd/handler.go
+++ b/ftpd/handler.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd
import (
diff --git a/ftpd/internal_test.go b/ftpd/internal_test.go
index 3a06d25e8ed435eeaca9e97980aaea9a4e196e05..0c18b7f578cfad6dc0626b504cc5fa017dc4a803 100644
--- a/ftpd/internal_test.go
+++ b/ftpd/internal_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd
import (
diff --git a/ftpd/server.go b/ftpd/server.go
index 5e9716ae0ac10ea82f654feb7e6006d53ef28abb..9c2f839b43276f6a7ca7e7aaf40fe4cee51ed275 100644
--- a/ftpd/server.go
+++ b/ftpd/server.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd
import (
diff --git a/ftpd/transfer.go b/ftpd/transfer.go
index 5cd2e1d27ed1168a54a75d7b677c8f6550a1dfd5..ab2737f3f33faa396107f09546a1604cf752815a 100644
--- a/ftpd/transfer.go
+++ b/ftpd/transfer.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package ftpd
import (
diff --git a/go.mod b/go.mod
index 863558a3b07837702642feb9fc42d6ee13b79ffe..b4df027f5b56c53567c1f55765b4b0cd27944e04 100644
--- a/go.mod
+++ b/go.mod
@@ -66,7 +66,7 @@ require (
go.uber.org/automaxprocs v1.5.1
gocloud.dev v0.25.0
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d
- golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e
+ golang.org/x/net v0.0.0-20220708220712-1185a9018129
golang.org/x/oauth2 v0.0.0-20220630143837-2104d58473e0
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8
golang.org/x/time v0.0.0-20220609170525-579cf78fd858
@@ -168,5 +168,5 @@ replace (
github.com/jlaffaye/ftp => github.com/drakkan/ftp v0.0.0-20201114075148-9b9adce499a9
github.com/pkg/sftp => github.com/drakkan/sftp v0.0.0-20220716075551-51a5aa4e044d
golang.org/x/crypto => github.com/drakkan/crypto v0.0.0-20220624105932-71c5dfcef1e8
- golang.org/x/net => github.com/drakkan/net v0.0.0-20220628171916-78de6a2a21b0
+ golang.org/x/net => github.com/drakkan/net v0.0.0-20220717180040-c9045f6f4c55
)
diff --git a/go.sum b/go.sum
index 3b61b6de56bdcd098c471f3f39eee1591f862083..a04a99dea648b91e0ae603791f9c733f3275b23a 100644
--- a/go.sum
+++ b/go.sum
@@ -262,8 +262,8 @@ github.com/drakkan/crypto v0.0.0-20220624105932-71c5dfcef1e8 h1:feWyZw3d2AjzdhIA
github.com/drakkan/crypto v0.0.0-20220624105932-71c5dfcef1e8/go.mod h1:SiM6ypd8Xu1xldObYtbDztuUU7xUzMnUULfphXFZmro=
github.com/drakkan/ftp v0.0.0-20201114075148-9b9adce499a9 h1:LPH1dEblAOO/LoG7yHPMtBLXhQmjaga91/DDjWk9jWA=
github.com/drakkan/ftp v0.0.0-20201114075148-9b9adce499a9/go.mod h1:2lmrmq866uF2tnje75wQHzmPXhmSWUt7Gyx2vgK1RCU=
-github.com/drakkan/net v0.0.0-20220628171916-78de6a2a21b0 h1:VL3ucjcGkcuAEflNvFbNYHOTdAqgYOMRJBBRy7nQ/E4=
-github.com/drakkan/net v0.0.0-20220628171916-78de6a2a21b0/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
+github.com/drakkan/net v0.0.0-20220717180040-c9045f6f4c55 h1:Eu6VxyVnBwI7T0t6OqZvAb5Y8HOQNNtT0iGcmWqw1hg=
+github.com/drakkan/net v0.0.0-20220717180040-c9045f6f4c55/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
github.com/drakkan/sftp v0.0.0-20220716075551-51a5aa4e044d h1:kNk/KRhszPJASp7WvjagNW254aKK643Lu8/fr4/ukiM=
github.com/drakkan/sftp v0.0.0-20220716075551-51a5aa4e044d/go.mod h1:wHDZ0IZX6JcBYRK1TH9bcVq8G7TLpVHYIGJRFnmPfxg=
github.com/eikenb/pipeat v0.0.0-20210730190139-06b3e6902001 h1:/ZshrfQzayqRSBDodmp3rhNCHJCff+utvgBuWRbiqu4=
diff --git a/httpclient/httpclient.go b/httpclient/httpclient.go
index f4c60173373e4751bae576bd6fb7efd72af626d6..8618693ec249e5af0df7976eadbe298d3921c33d 100644
--- a/httpclient/httpclient.go
+++ b/httpclient/httpclient.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpclient
import (
diff --git a/httpd/api_admin.go b/httpd/api_admin.go
index 1df4beaf1cda700f86450387b6ab481dff831321..d4768212c3dc7df589d9653a6fc83238d4a17108 100644
--- a/httpd/api_admin.go
+++ b/httpd/api_admin.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_defender.go b/httpd/api_defender.go
index 83fe7e673b276d53ef8b501f8ce34bef49cba5d9..7667a271e3ab060f9b790661f14fdc03c0497c57 100644
--- a/httpd/api_defender.go
+++ b/httpd/api_defender.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_eventrule.go b/httpd/api_eventrule.go
index 94c0f9cf3131a5c3319e3f107043c6fa6a69a986..8c5beedc57d9d732c81adfc6f2b4a3e5613b9fcb 100644
--- a/httpd/api_eventrule.go
+++ b/httpd/api_eventrule.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_events.go b/httpd/api_events.go
index 0320b041043283b3ef4df35c0234c77961af353d..851393ea24b0b5b9d8a415814e60019b9a43e784 100644
--- a/httpd/api_events.go
+++ b/httpd/api_events.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_folder.go b/httpd/api_folder.go
index 70ddb1bcea07bbf238e9233634ea3dba56ad5c45..b8ed45894e20c103408623232295e8998d5a0de8 100644
--- a/httpd/api_folder.go
+++ b/httpd/api_folder.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_group.go b/httpd/api_group.go
index 0e8d0938007b50a34a607a91415e79c77434c07e..4ac78db2273eb34c96d5bab1787fad1212a9439a 100644
--- a/httpd/api_group.go
+++ b/httpd/api_group.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_http_user.go b/httpd/api_http_user.go
index 4b061ec5a2910cd336d9814a45b7a90718ecb843..2d1a487293c163700a59864b84c0ce4164fffa29 100644
--- a/httpd/api_http_user.go
+++ b/httpd/api_http_user.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_keys.go b/httpd/api_keys.go
index cead8ac5fc37bf3a71b2d79776bb6e2b993cdbf1..9c6a9f5fc7ccbfee47074c85f79c47c8beef4332 100644
--- a/httpd/api_keys.go
+++ b/httpd/api_keys.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_maintenance.go b/httpd/api_maintenance.go
index f78de5a10a5f419f8138c2c7c5006c0ad29bddce..94ae31e718090114cc513769a981f88ab647fd45 100644
--- a/httpd/api_maintenance.go
+++ b/httpd/api_maintenance.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_metadata.go b/httpd/api_metadata.go
index 92fa617357c2368538321c49f2454cc1b07b3dd7..5ddbc9791a1e57e62182780cbd243e37e1f56762 100644
--- a/httpd/api_metadata.go
+++ b/httpd/api_metadata.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_mfa.go b/httpd/api_mfa.go
index ac74999115727e63760692e4eb15620b09705a86..4ac1fb60aa2925731cdef38cfe327a0997e96242 100644
--- a/httpd/api_mfa.go
+++ b/httpd/api_mfa.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_quota.go b/httpd/api_quota.go
index 6c34989e1864efa44096481ca6c0423539cc0870..e8e9723e9ac308bc04a88f61cff505d4241b9c99 100644
--- a/httpd/api_quota.go
+++ b/httpd/api_quota.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_retention.go b/httpd/api_retention.go
index 729b2361dd94de7bdb1c6bd0836db750ba8d8d9b..78f1ca32d4351ce4704c146f5549d1b2eea50457 100644
--- a/httpd/api_retention.go
+++ b/httpd/api_retention.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_shares.go b/httpd/api_shares.go
index 3b8ff27b31f41441b61d238721be8fe4bc8c7c6d..810f4aa51e6f31a4058172365348dae28bc2db65 100644
--- a/httpd/api_shares.go
+++ b/httpd/api_shares.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_user.go b/httpd/api_user.go
index 7b3bbf41ec93528605d39515283bcae213674455..79a1bacf4e6c72944f0be36d71e63162b139fcfd 100644
--- a/httpd/api_user.go
+++ b/httpd/api_user.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/api_utils.go b/httpd/api_utils.go
index 2537f3df31f197359683c9e8c782cc82d7c682fd..e7945431a19f67f71c2891c4c104711a0702ac99 100644
--- a/httpd/api_utils.go
+++ b/httpd/api_utils.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/auth_utils.go b/httpd/auth_utils.go
index 1636efc484792c074f111b37ad367ffdcbe1ac1c..e1fcfce6aef0ae06beed3bf5d1295d3e08a50d83 100644
--- a/httpd/auth_utils.go
+++ b/httpd/auth_utils.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/file.go b/httpd/file.go
index 8178016b1871fb922627a2a3176892f12822f0bf..1aeb8d6907c2ec66598bdbe83e4dededa2962dcf 100644
--- a/httpd/file.go
+++ b/httpd/file.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/flash.go b/httpd/flash.go
index d17e670547968e6ed8abfff7ddf7a34191b6bc69..0ce79b029a5dbec7020044adc96149e898da9336 100644
--- a/httpd/flash.go
+++ b/httpd/flash.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/flash_test.go b/httpd/flash_test.go
index 81297564bb86b088b219d1d651be18609b1609ac..375dee93cf970a711ac09bdf5073a21ba95de1f8 100644
--- a/httpd/flash_test.go
+++ b/httpd/flash_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/handler.go b/httpd/handler.go
index 1ada4a2ef485b3c20c29c31c05c3e617fccd342e..1ed5a4981a74cd9a41d6a5139c6e7deb098576b3 100644
--- a/httpd/handler.go
+++ b/httpd/handler.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/httpd.go b/httpd/httpd.go
index 0287abd5ce7d04cf4610a86d3b53476cf65195b0..1ec6b4bffe9ca671843ff788f6dd319dfec75ebc 100644
--- a/httpd/httpd.go
+++ b/httpd/httpd.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package httpd implements REST API and Web interface for SFTPGo.
// The OpenAPI 3 schema for the exposed API can be found inside the source tree:
// https://github.com/drakkan/sftpgo/blob/main/openapi/openapi.yaml
diff --git a/httpd/httpd_test.go b/httpd/httpd_test.go
index 462781642582d84268bb047a8d6a5a4053e5f93c..eac4b6f0b80cb6fc6381f6316f7cd4c68f713566 100644
--- a/httpd/httpd_test.go
+++ b/httpd/httpd_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd_test
import (
diff --git a/httpd/internal_test.go b/httpd/internal_test.go
index 4a1d0e394d360f40708a1384681e5bb6b72e9c01..da7b9c59693882c7986f5bb7cbe3b5df93542d79 100644
--- a/httpd/internal_test.go
+++ b/httpd/internal_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/middleware.go b/httpd/middleware.go
index f74b92aa4cd5f59407fd553a3452c4a35f51e9ed..d920ee7bb6259bd06566d40d4741dbd38c93415c 100644
--- a/httpd/middleware.go
+++ b/httpd/middleware.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/oidc.go b/httpd/oidc.go
index 6bf506b7f7569964567e162087ae8827deea445d..b40576d9864212e6afa98c0d6f6ee570cda85340 100644
--- a/httpd/oidc.go
+++ b/httpd/oidc.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/oidc_test.go b/httpd/oidc_test.go
index b1787fd0cb722a1ecb26bcfe494d2a64cf250978..337e750b51008de9adf204ce0a2954098bcc5ce2 100644
--- a/httpd/oidc_test.go
+++ b/httpd/oidc_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/oidcmanager.go b/httpd/oidcmanager.go
index 7148d6f38b1411744b5a75963c6a5df23e75e53a..0b71dd33fcb8e5a2ffe5221bb9d2ed8d7b8113b1 100644
--- a/httpd/oidcmanager.go
+++ b/httpd/oidcmanager.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/resetcode.go b/httpd/resetcode.go
index d91edaa1ad0810aac015402161283c5e3a7869d7..271c17312b14a9b053c66d77d710e8ac4b552920 100644
--- a/httpd/resetcode.go
+++ b/httpd/resetcode.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/server.go b/httpd/server.go
index 228d3ad961b1a858c254b438744b40ebeea1f5a7..1c483e5bfcdc5e061a2dc945eda0c100f0a43758 100644
--- a/httpd/server.go
+++ b/httpd/server.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/web.go b/httpd/web.go
index 67785ddf1ae8e73638710d2d14ce9063fb7589da..9dd9a53c9ddff077599a0363a5354059bfbdb584 100644
--- a/httpd/web.go
+++ b/httpd/web.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/webadmin.go b/httpd/webadmin.go
index 5881016515900a796e5b05a97b91c637f52a4c8e..b9f2eec7ed040871eb9dc36f1eff10c4839e4f14 100644
--- a/httpd/webadmin.go
+++ b/httpd/webadmin.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpd/webclient.go b/httpd/webclient.go
index dd5f6b14472816db1abedddb74780893bfb15c83..d2e9095c185ac585e8b62cf279a8e6105c97e844 100644
--- a/httpd/webclient.go
+++ b/httpd/webclient.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpd
import (
diff --git a/httpdtest/httpdtest.go b/httpdtest/httpdtest.go
index 2725059b516cfed296f3ae41df4ac4d4a5c13da8..5ad98c5986a6f4fdcb43d85b4d5ce508871a5ed7 100644
--- a/httpdtest/httpdtest.go
+++ b/httpdtest/httpdtest.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package httpdtest provides utilities for testing the exposed REST API.
package httpdtest
diff --git a/httpdtest/httpfsimpl.go b/httpdtest/httpfsimpl.go
index 2e697a718e9f1fcb9e6bd50114eae4d5bb417a1e..14f02a332e88d0775ef349467a15248136deb46a 100644
--- a/httpdtest/httpfsimpl.go
+++ b/httpdtest/httpfsimpl.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package httpdtest
import (
diff --git a/kms/basesecret.go b/kms/basesecret.go
index 5608f7ec9c1eca9003450a379b5519446526519f..f57f63c487e40b4d88f7d867cf4cd9fe77c85740 100644
--- a/kms/basesecret.go
+++ b/kms/basesecret.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package kms
import (
diff --git a/kms/builtin.go b/kms/builtin.go
index 4a2eaafdf12a9e3e631ab24815c601d6e236b4ed..2cdd2f6b77f5eb0efbf2f2653488f6652fad6978 100644
--- a/kms/builtin.go
+++ b/kms/builtin.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package kms
import (
diff --git a/kms/kms.go b/kms/kms.go
index 9cfd123fece5b6e8c79644b6c11ba6d52549e6d4..2a9b85c6b5762d5c2db0fd28b02f5a6149a07a10 100644
--- a/kms/kms.go
+++ b/kms/kms.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package kms provides Key Management Services support
package kms
diff --git a/kms/local.go b/kms/local.go
index 85cf2f09ab63203483c36ab4c422177eba930cb5..b714776edc553c0104b1b6fdb8dfa5a3ae4326df 100644
--- a/kms/local.go
+++ b/kms/local.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package kms
import (
diff --git a/logger/hclog.go b/logger/hclog.go
index ef615edb5f80385ec54eab440a4ec34f51f1e813..e52a8c4324c9d819a5196a0a1fef111c24a44dfb 100644
--- a/logger/hclog.go
+++ b/logger/hclog.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package logger
import (
diff --git a/logger/journald.go b/logger/journald.go
index e7319b3e6d275bb1713f243ba124fb1a226b21f8..32a040859af8d2959ea1b52af0a5d16497dc3331 100644
--- a/logger/journald.go
+++ b/logger/journald.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build linux
// +build linux
diff --git a/logger/journald_nolinux.go b/logger/journald_nolinux.go
index d421798c583756c31fe25b152204f0d4d00cd891..d8a68d84eef32e6ade4e28463c9ea31eb9c08779 100644
--- a/logger/journald_nolinux.go
+++ b/logger/journald_nolinux.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !linux
// +build !linux
diff --git a/logger/lego.go b/logger/lego.go
index ac1230ecc45daa62ab8f4b21cb74cca822bfe086..748ecb0dd910fdc0d20e2c3562c3b228f96e9463 100644
--- a/logger/lego.go
+++ b/logger/lego.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package logger
import "fmt"
diff --git a/logger/logger.go b/logger/logger.go
index 7f19e0c09284217060f33509c2bccae1f8088aed..6344e03a0a7fe00e3663a2e278f31ac12e066a1d 100644
--- a/logger/logger.go
+++ b/logger/logger.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package logger provides logging capabilities.
// It is a wrapper around zerolog for logging and lumberjack for log rotation.
// Logs are written to the specified log file.
diff --git a/logger/request_logger.go b/logger/request_logger.go
index c78788f1d627401d6c5a04669fe63611e4b42c5b..0cf50399fea1e7d7dacb356ea08c8bd3572a87ee 100644
--- a/logger/request_logger.go
+++ b/logger/request_logger.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package logger
import (
diff --git a/logger/sync_wrapper.go b/logger/sync_wrapper.go
index c3737604d6ad3a8c4027f2b84371c9da8615773c..0151afb0d34a1c7821c14cd50ec2fbca09a89c80 100644
--- a/logger/sync_wrapper.go
+++ b/logger/sync_wrapper.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package logger
import (
diff --git a/main.go b/main.go
index 4bdac6e5639f2e6707404d629e5f2935651f9d93..db686e2bdc2ad9c28373dc917f31efb454bbd377 100644
--- a/main.go
+++ b/main.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Fully featured and highly configurable SFTP server with optional
// FTP/S and WebDAV support.
// For more details about features, installation, configuration and usage
diff --git a/metric/metric.go b/metric/metric.go
index 936c4d6601ef30a6c85fff1b280356aa2d62e4c7..221699e0156227dce96ff911aebd280f9007458a 100644
--- a/metric/metric.go
+++ b/metric/metric.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !nometrics
// +build !nometrics
diff --git a/metric/metric_disabled.go b/metric/metric_disabled.go
index 678e67b3afd94b002c505bee67316384a278b498..f139e9564a2f44b1f2dd0aa29e32b5fd3343f3ad 100644
--- a/metric/metric_disabled.go
+++ b/metric/metric_disabled.go
@@ -17,7 +17,7 @@ func init() {
func AddMetricsEndpoint(metricsPath string, handler chi.Router) {}
// TransferCompleted updates metrics after an upload or a download
-func TransferCompleted(bytesSent, bytesReceived int64, transferKind int, err error) {}
+func TransferCompleted(bytesSent, bytesReceived int64, transferKind int, err error, isSFTPFs bool) {}
// S3TransferCompleted updates metrics after an S3 upload or a download
func S3TransferCompleted(bytes int64, transferKind int, err error) {}
@@ -49,6 +49,9 @@ func GCSDeleteObjectCompleted(err error) {}
// GCSHeadBucketCompleted updates metrics after a GCS head bucket request terminates
func GCSHeadBucketCompleted(err error) {}
+// HTTPFsTransferCompleted updates metrics after an HTTPFs upload or a download
+func HTTPFsTransferCompleted(bytes int64, transferKind int, err error) {}
+
// SSHCommandCompleted update metrics after an SSH command terminates
func SSHCommandCompleted(err error) {}
diff --git a/mfa/mfa.go b/mfa/mfa.go
index 0bd8950659d86bd18de4e2916db3a7671e37fa5c..4e82d9e494ab2b2d9cca94393f81193a832f83d7 100644
--- a/mfa/mfa.go
+++ b/mfa/mfa.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package mfa provides supports for Multi-Factor authentication modules
package mfa
diff --git a/mfa/mfa_test.go b/mfa/mfa_test.go
index 66b66cd17cf29f11e5f51b531ac3255c5d3e7b36..78507269d3b68471ca653e7acb9b1089379a94ff 100644
--- a/mfa/mfa_test.go
+++ b/mfa/mfa_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package mfa
import (
diff --git a/mfa/totp.go b/mfa/totp.go
index ff33a47aae5ef9942f56e9089fb6afcab4f93be7..62b9325408eed45571b1b120bf57d05f0a32d3e7 100644
--- a/mfa/totp.go
+++ b/mfa/totp.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package mfa
import (
diff --git a/openapi/httpfs.yaml b/openapi/httpfs.yaml
index 8626a712c360fdb1ccbd564ca97b9a97c83c1dfb..f2e34ee9d2163418e1703fd4d56848dba5d5f590 100644
--- a/openapi/httpfs.yaml
+++ b/openapi/httpfs.yaml
@@ -7,6 +7,9 @@ info:
SFTPGo can use custom storage backend implementations compliant with the API defined here.
HTTPFs is a work in progress and makes no API stability promises.
version: 0.1.0
+ license:
+ name: AGPL-3.0-only
+ url: 'https://www.gnu.org/licenses/agpl-3.0.en.html'
servers:
- url: /v1
security:
diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml
index 3006f9e6d4f74752d27f323624053f1391488a46..65d71cc64f4764cfda22ae92794ad0be6e643644 100644
--- a/openapi/openapi.yaml
+++ b/openapi/openapi.yaml
@@ -32,7 +32,7 @@ info:
name: API support
url: 'https://github.com/drakkan/sftpgo'
license:
- name: AGPLv3
+ name: AGPL-3.0-only
url: 'https://www.gnu.org/licenses/agpl-3.0.en.html'
servers:
- url: /api/v2
diff --git a/plugin/auth.go b/plugin/auth.go
index 53935bd3286b552fb71cff3a6c778d10b8317e1e..f0e676c9cdfd794a3a4ac42a2bcaa97b59c05188 100644
--- a/plugin/auth.go
+++ b/plugin/auth.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/ipfilter.go b/plugin/ipfilter.go
index 8524059c8075d19f63623bb320921faebe681990..1def39c306f4019e361052b529e9a4b634bd0c81 100644
--- a/plugin/ipfilter.go
+++ b/plugin/ipfilter.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/kms.go b/plugin/kms.go
index 5fe96a6b0f1d9571bbfeb071dd8ab9ba4c36b0f1..cb3073c5fefab80baec8e114143b6728b9f7df6e 100644
--- a/plugin/kms.go
+++ b/plugin/kms.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/metadata.go b/plugin/metadata.go
index 65c27f2d029eb0b3d71b55948233dbb4975f4ebd..74f164edb40f1778bde4b15a2ce9d50e05564d44 100644
--- a/plugin/metadata.go
+++ b/plugin/metadata.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/notifier.go b/plugin/notifier.go
index cd23d2fae439475c12be87b44842a0ca2c03a080..e8760901a481cdbfeb6547ab90f447f2081c0582 100644
--- a/plugin/notifier.go
+++ b/plugin/notifier.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/plugin.go b/plugin/plugin.go
index 3acd226a270b0e58a28dc13c413dcedda5eb22c2..9741b25a9998e24ee393ca9aa64d1e4933804d7a 100644
--- a/plugin/plugin.go
+++ b/plugin/plugin.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package plugin provides support for the SFTPGo plugin system
package plugin
diff --git a/plugin/searcher.go b/plugin/searcher.go
index fa820ec20768f97431e280b7d8cac8d51916541f..e4e1d26ef75dff8d0cc3a16bca0157603373eb03 100644
--- a/plugin/searcher.go
+++ b/plugin/searcher.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/plugin/util.go b/plugin/util.go
index ba96270afe78b9e8c6d8b62505ac64f0372656c4..e3b692e1eeb34fbac758d8ba57aab5747a5b59f3 100644
--- a/plugin/util.go
+++ b/plugin/util.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package plugin
import (
diff --git a/service/awscontainer.go b/service/awscontainer.go
index 240404cdf4adf84c02fefd9492cd5a92f29e0eb4..3047a4722ee6c73164458a08c53f061c5b4052e2 100644
--- a/service/awscontainer.go
+++ b/service/awscontainer.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build awscontainer
// +build awscontainer
diff --git a/service/awscontainer_disabled.go b/service/awscontainer_disabled.go
index 0bd48d34194031341fa4c5dc3aee4b17da5e2c4f..d57d362af6b3eaa64fb3b7746139bc58fdd26b8e 100644
--- a/service/awscontainer_disabled.go
+++ b/service/awscontainer_disabled.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !awscontainer
// +build !awscontainer
diff --git a/service/service.go b/service/service.go
index 6bc4a733e0c91fa22aec5d58697bf8a8e344ee79..b0696088af7b5ba93ad852cda0d244f4261480da 100644
--- a/service/service.go
+++ b/service/service.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package service allows to start and stop the SFTPGo service
package service
diff --git a/service/service_portable.go b/service/service_portable.go
index 0391b7228633cf9da34c08af44b75d8da7b9551d..411782c1bbb05d8835288e1852660998a95dc785 100644
--- a/service/service_portable.go
+++ b/service/service_portable.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !noportable
// +build !noportable
diff --git a/service/service_windows.go b/service/service_windows.go
index 0d00be73ed126fe31faa0f17dec6eff61cfefd76..3f706954395ca8af4ccdf7f77087399fd8f19477 100644
--- a/service/service_windows.go
+++ b/service/service_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package service
import (
diff --git a/service/signals_unix.go b/service/signals_unix.go
index 22a244809f8e8ec6f6a27e2121174065e234f60e..756f33086a2050f8140c98bceac35474db1aaf57 100644
--- a/service/signals_unix.go
+++ b/service/signals_unix.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !windows
// +build !windows
diff --git a/service/signals_windows.go b/service/signals_windows.go
index 23b7cbdfc63c7d2e7783ca93b08b5493f46ff691..caabf1eb10ac91b83683483437840ce65b0a9558 100644
--- a/service/signals_windows.go
+++ b/service/signals_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package service
import (
diff --git a/sftpd/cmd_unix.go b/sftpd/cmd_unix.go
index 5a02e05c6095a6db2cd2231a3860e23ed7553f38..475eaa2a3dbc814be6c0dffe55fe2657ed98d9f1 100644
--- a/sftpd/cmd_unix.go
+++ b/sftpd/cmd_unix.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !windows
// +build !windows
diff --git a/sftpd/cmd_windows.go b/sftpd/cmd_windows.go
index c9250db25d873f41a4cd5a7f0bffb9ba86642797..9385d589bf7a1462ae268cbd9b09d6dc63acd845 100644
--- a/sftpd/cmd_windows.go
+++ b/sftpd/cmd_windows.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/cryptfs_test.go b/sftpd/cryptfs_test.go
index 8c14d1c1e5fe7339b41b5687ed995019e8c6cf13..e0238fc03b4524a7cf778ec5743996b314fea55c 100644
--- a/sftpd/cryptfs_test.go
+++ b/sftpd/cryptfs_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd_test
import (
diff --git a/sftpd/handler.go b/sftpd/handler.go
index 610ea4ea13b9827c17555b6d93ea7ec628169e6c..6cdc3dc9695d4f6404b777dac6c8a7a7c68273cb 100644
--- a/sftpd/handler.go
+++ b/sftpd/handler.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/httpfs_test.go b/sftpd/httpfs_test.go
index 8e85044c4db9d327100843c8b10d379920d18518..5c41698b5474200c9a49ccf291cda04d530f3d42 100644
--- a/sftpd/httpfs_test.go
+++ b/sftpd/httpfs_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd_test
import (
diff --git a/sftpd/internal_test.go b/sftpd/internal_test.go
index f5680bf70d667edf000e81853a851a503901b725..3bdb6b6c21de25bce8f6ff9c8dffe4a1c165a8fc 100644
--- a/sftpd/internal_test.go
+++ b/sftpd/internal_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/internal_unix_test.go b/sftpd/internal_unix_test.go
index 2fbcb20e05771da54cc72629879aeeb19499a2b3..4ef26419a80a016845cd20a17c3d1bb845b1e68c 100644
--- a/sftpd/internal_unix_test.go
+++ b/sftpd/internal_unix_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
//go:build !windows
// +build !windows
diff --git a/sftpd/lister.go b/sftpd/lister.go
index 5ec491d6b2c9c5462aea0c1bbdc2f025a8890a63..7690bd61720fb64a44c62074f97c5a4a9f1eeea1 100644
--- a/sftpd/lister.go
+++ b/sftpd/lister.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/middleware.go b/sftpd/middleware.go
index 20cab5d1a9aa0a21a351c560798a6e98e084d42d..6b54e0b697085bd6265357957d60509499f1161c 100644
--- a/sftpd/middleware.go
+++ b/sftpd/middleware.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/middleware_test.go b/sftpd/middleware_test.go
index e285beba6af9c7f6b3506e52b8593bb0b45ffdba..e89805688c823f0490d06fe75f6c34f75598819f 100644
--- a/sftpd/middleware_test.go
+++ b/sftpd/middleware_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/scp.go b/sftpd/scp.go
index 3e7332338c1c77e38b2a5f1b886f4ccd5159509d..c33b8a7aadf8d4df8f4d09be4da21e9ab13b4ddb 100644
--- a/sftpd/scp.go
+++ b/sftpd/scp.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/server.go b/sftpd/server.go
index c2f0f80f25de1e0d70c5019d4f819096563d23fb..86dde3469d683266d97ca295222b48c6e3b393ad 100644
--- a/sftpd/server.go
+++ b/sftpd/server.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/sftpd.go b/sftpd/sftpd.go
index a1a43450c797503a1e9acf6a1b684ddcd338439b..157a4b4458c67ee516cca53c8866c24cbd82591a 100644
--- a/sftpd/sftpd.go
+++ b/sftpd/sftpd.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package sftpd implements the SSH File Transfer Protocol as described in https://tools.ietf.org/html/draft-ietf-secsh-filexfer-02.
// It uses pkg/sftp library:
// https://github.com/pkg/sftp
diff --git a/sftpd/sftpd_test.go b/sftpd/sftpd_test.go
index 9e7ea0fb33c64e8e0aabca9b1e529ca37fc7bc50..f01d6fa98a46444c41571173113f9385ed58fd01 100644
--- a/sftpd/sftpd_test.go
+++ b/sftpd/sftpd_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd_test
import (
diff --git a/sftpd/ssh_cmd.go b/sftpd/ssh_cmd.go
index 467587f982e05952bad34c93c9f9d893650218d5..5ded511aba8bc9220af423ab9ccdda28cc45e602 100644
--- a/sftpd/ssh_cmd.go
+++ b/sftpd/ssh_cmd.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/subsystem.go b/sftpd/subsystem.go
index 744c93015b37f4be570f78de207e69c667a16dc9..e76e5e032603e7b221757f102642072cdd8504ad 100644
--- a/sftpd/subsystem.go
+++ b/sftpd/subsystem.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/sftpd/transfer.go b/sftpd/transfer.go
index cd381adbf804e590e24d8d058225d2460720aa77..cef4d5bdedd673e8489773036967d4a3622d8fd3 100644
--- a/sftpd/transfer.go
+++ b/sftpd/transfer.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package sftpd
import (
diff --git a/smtp/smtp.go b/smtp/smtp.go
index 0b90128cd0d0ec32e7076e1df08cb52d2e5f4ff8..9593dbe70a7497312e7318768420e3c9f1adb109 100644
--- a/smtp/smtp.go
+++ b/smtp/smtp.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package smtp provides supports for sending emails
package smtp
diff --git a/telemetry/router.go b/telemetry/router.go
index b5835ae017371571d221d49af90771870a4e1f28..d1e49440e75db2df06cbcdb683ebbac5490fd37c 100644
--- a/telemetry/router.go
+++ b/telemetry/router.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package telemetry
import (
diff --git a/telemetry/telemetry.go b/telemetry/telemetry.go
index dec93ec4473786f11facb5e73ea8cda0f3ea1039..fd5cda2d3cd6f1b7e2df102283dcff10b2763d07 100644
--- a/telemetry/telemetry.go
+++ b/telemetry/telemetry.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
// Package telemetry provides telemetry information for SFTPGo, such as:
// - health information (for health checks)
// - metrics
diff --git a/telemetry/telemetry_test.go b/telemetry/telemetry_test.go
index cda542b18ec29983c3bf38fb094c86fd3f8b30c4..3fa71c40f31e96cedf26c334010209e6708fd399 100644
--- a/telemetry/telemetry_test.go
+++ b/telemetry/telemetry_test.go
@@ -1,3 +1,17 @@
+// Copyright (C) 2019-2022 Nicola Murino
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published
+// by the Free Software Foundation, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
package telemetry
import (
diff --git a/templates/common/forgot-password.html b/templates/common/forgot-password.html
index 740dcb10b7fac713af93148a0bcc8a746ff23b71..e41cdd0e950d95bd5699f29af86739dd9515f35b 100644
--- a/templates/common/forgot-password.html
+++ b/templates/common/forgot-password.html
@@ -1,3 +1,18 @@
+
diff --git a/templates/common/reset-password.html b/templates/common/reset-password.html
index f08f4c757f57dcad4a46b855a52ab994f18fb4ca..dfc2698c97d261955c8695a7f61305af0fd97bdb 100644
--- a/templates/common/reset-password.html
+++ b/templates/common/reset-password.html
@@ -1,3 +1,18 @@
+
diff --git a/templates/email/reset-password.html b/templates/email/reset-password.html
index 79a458fc8a67570ae731510a450403f007f57eae..da8caa6287c9dfb9ff709c1a0a76a8efef261aea 100644
--- a/templates/email/reset-password.html
+++ b/templates/email/reset-password.html
@@ -1,3 +1,18 @@
+
Hello there!
Your SFTPGo email verification code is "{{.Code}}", this code is valid for 10 minutes.
diff --git a/templates/email/retention-check-report.html b/templates/email/retention-check-report.html
index d4bdde2d0554097dc35c5d6380e7f6cc261ee0b5..a0aa5b68f7c3785f7eecae70cde348b09bf9bdd0 100644
--- a/templates/email/retention-check-report.html
+++ b/templates/email/retention-check-report.html
@@ -1,3 +1,18 @@
+
Retention check report for user "{{.Username}}"
Status: {{.Status}}
diff --git a/templates/webadmin/admin.html b/templates/webadmin/admin.html
index 71d633883e83b1d902fcfa4b709b9ed38b0d25ae..dc4c992ae251d0cf572774e42601a3b7cc0d1e74 100644
--- a/templates/webadmin/admin.html
+++ b/templates/webadmin/admin.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/admins.html b/templates/webadmin/admins.html
index 7e53ba0f2c5d8d7e868f0a8b47a65f907ae0357b..bcc9faa4035a40e34af78d27d65047461147b405 100644
--- a/templates/webadmin/admins.html
+++ b/templates/webadmin/admins.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/adminsetup.html b/templates/webadmin/adminsetup.html
index a143d5aa4f1640c75a600b330238c32ec9566595..d88ddd4128ff0819ad83a236e3246091c98a7442 100644
--- a/templates/webadmin/adminsetup.html
+++ b/templates/webadmin/adminsetup.html
@@ -1,3 +1,18 @@
+
diff --git a/templates/webadmin/base.html b/templates/webadmin/base.html
index ae95278bfd492667bf745ff7cf6f47a266f83a09..59319913ccaf7cf31cfb3f15fa5d18ab85fcc6e6 100644
--- a/templates/webadmin/base.html
+++ b/templates/webadmin/base.html
@@ -1,3 +1,18 @@
+
{{define "base"}}
diff --git a/templates/webadmin/baselogin.html b/templates/webadmin/baselogin.html
index 46bebf28145b59b127aa043c075f477cde448fae..8c766ccc03d40df6cececfa3e6c629f8dc0150a6 100644
--- a/templates/webadmin/baselogin.html
+++ b/templates/webadmin/baselogin.html
@@ -1,3 +1,18 @@
+
{{define "baselogin"}}
diff --git a/templates/webadmin/changepassword.html b/templates/webadmin/changepassword.html
index fe87f53a77a7207ef99edc291bc8ec4284b041a8..930163b39039655ee7224e8636642c93e21cd324 100644
--- a/templates/webadmin/changepassword.html
+++ b/templates/webadmin/changepassword.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/connections.html b/templates/webadmin/connections.html
index 0b1f0b990734e0b7f41d1962ad80e7a986229cd6..9775b1284654f6586508303c87edb79f42307f97 100644
--- a/templates/webadmin/connections.html
+++ b/templates/webadmin/connections.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/defender.html b/templates/webadmin/defender.html
index dae02e3faac0d022fd7d1769303252c87b453156..a7e4ccb7d344b351f124af6dcb820b14c7585df3 100644
--- a/templates/webadmin/defender.html
+++ b/templates/webadmin/defender.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/eventaction.html b/templates/webadmin/eventaction.html
index 2bd9989ed91872cf9b5dbcc1ae8a1abf5655163d..560a1934a0cf58737f9a15c3dc918889b8b13aa0 100644
--- a/templates/webadmin/eventaction.html
+++ b/templates/webadmin/eventaction.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/eventactions.html b/templates/webadmin/eventactions.html
index 0b17148bf3c63668f4cce3cf429c21997031af81..7c0f7640c5acea4dd9d2a45f2133b5037f8873d0 100644
--- a/templates/webadmin/eventactions.html
+++ b/templates/webadmin/eventactions.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/eventrule.html b/templates/webadmin/eventrule.html
index 7ff80ed2ab7353a7b3e935eb0bf9a477411cb7a9..8a614c361960e2670831b5e18e19eb8b7ab98d1d 100644
--- a/templates/webadmin/eventrule.html
+++ b/templates/webadmin/eventrule.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/eventrules.html b/templates/webadmin/eventrules.html
index 5496c60d053cf3dfaf072de6a5f238d07eef7a90..586428c9feaec893c79f825a11a1e4fcdd2f0106 100644
--- a/templates/webadmin/eventrules.html
+++ b/templates/webadmin/eventrules.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/folder.html b/templates/webadmin/folder.html
index 9707b1bf3248d7ecdbb09eed9d7944cbb0c87761..f77e978bf4f265d04df4d2a58c5cd2865530a85d 100644
--- a/templates/webadmin/folder.html
+++ b/templates/webadmin/folder.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/folders.html b/templates/webadmin/folders.html
index c6a7d63a511294180d1d2915a45942478ef86d6c..11ff3bc4ec4cf25f72d68eab52c6be7461a63163 100644
--- a/templates/webadmin/folders.html
+++ b/templates/webadmin/folders.html
@@ -1,3 +1,18 @@
+
{{template "base" .}}
{{define "title"}}{{.Title}}{{end}}
diff --git a/templates/webadmin/fsconfig.html b/templates/webadmin/fsconfig.html
index 6ec66f485e2b4c29c95e8122e152be77946a99cf..eefa3ab17ea0598f731cafd559b731cf4d0de77f 100644
--- a/templates/webadmin/fsconfig.html
+++ b/templates/webadmin/fsconfig.html
@@ -1,3 +1,18 @@
+
{{define "fshtml"}}