aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/AccountAdminEntry.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/Endpoints/UsersEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/Helpers/LocalNetworkProtectedEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/Model/User.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/Model/UserContext.cs25
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Admin/Model/UserStore.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/AccountValidations.cs25
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/EmailSystemConfig.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegRequestMessage.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationEntryPoint.cs25
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevocationContext.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedToken.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/AccountValidations.cs25
-rw-r--r--VNLib.Plugins.Essentials.Accounts/AccountsEntryPoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/KeepAliveEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/LoginEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/LogoutEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/MFAEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/PasswordResetEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Endpoints/ProfileEndpoint.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/FidoAuthenticatorSelection.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/FidoRegClientData.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/FidoRegistrationMessage.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/MFAConfig.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/MFAType.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/MFAUpgrade.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/MFA/UserMFAExtensions.cs26
-rw-r--r--VNLib.Plugins.Essentials.Accounts/Validators/LoginMessageValidation.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/Model/Route.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/Model/RouteStore.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/Model/RoutingContext.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/PageRouterEntry.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/RouteComparer.cs26
-rw-r--r--VNLib.Plugins.Essentials.Content.Routing/Router.cs26
36 files changed, 896 insertions, 36 deletions
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/AccountAdminEntry.cs b/VNLib.Plugins.Essentials.Accounts.Admin/AccountAdminEntry.cs
index 008307c..cd1978e 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/AccountAdminEntry.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/AccountAdminEntry.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: AccountAdminEntry.cs
+*
+* AccountAdminEntry.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Text.Json;
using System.Runtime.CompilerServices;
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/Endpoints/UsersEndpoint.cs b/VNLib.Plugins.Essentials.Accounts.Admin/Endpoints/UsersEndpoint.cs
index 9f29a29..dd5a0d0 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/Endpoints/UsersEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/Endpoints/UsersEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: UsersEndpoint.cs
+*
+* UsersEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using System.Net;
using System.Text.Json;
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/Helpers/LocalNetworkProtectedEndpoint.cs b/VNLib.Plugins.Essentials.Accounts.Admin/Helpers/LocalNetworkProtectedEndpoint.cs
index 3812337..356a9e8 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/Helpers/LocalNetworkProtectedEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/Helpers/LocalNetworkProtectedEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: LocalNetworkProtectedEndpoint.cs
+*
+* LocalNetworkProtectedEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using VNLib.Utils;
using VNLib.Plugins.Essentials.Endpoints;
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/Model/User.cs b/VNLib.Plugins.Essentials.Accounts.Admin/Model/User.cs
index 866cff1..2844c61 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/Model/User.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/Model/User.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: User.cs
+*
+* User.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.ComponentModel.DataAnnotations.Schema;
using VNLib.Plugins.Extensions.Data;
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserContext.cs b/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserContext.cs
index 6409b7d..e3f679f 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserContext.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserContext.cs
@@ -1,4 +1,27 @@
-
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: UserContext.cs
+*
+* UserContext.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
using Microsoft.EntityFrameworkCore;
using VNLib.Plugins.Extensions.Data;
diff --git a/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserStore.cs b/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserStore.cs
index b3e5c23..6325eeb 100644
--- a/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserStore.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Admin/Model/UserStore.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Admin
+* File: UserStore.cs
+*
+* UserStore.cs is part of VNLib.Plugins.Essentials.Accounts.Admin which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Admin 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Admin. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/AccountValidations.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/AccountValidations.cs
index 839bc27..d56d993 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/AccountValidations.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/AccountValidations.cs
@@ -1,4 +1,27 @@
-
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: AccountValidations.cs
+*
+* AccountValidations.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
using FluentValidation;
using VNLib.Plugins.Essentials.Accounts.Registration.Endpoints;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/EmailSystemConfig.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/EmailSystemConfig.cs
index a0333c0..54551fb 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/EmailSystemConfig.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/EmailSystemConfig.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: EmailSystemConfig.cs
+*
+* EmailSystemConfig.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Text;
using System.Text.Json;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegRequestMessage.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegRequestMessage.cs
index a151a86..40a155e 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegRequestMessage.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegRequestMessage.cs
@@ -1,4 +1,28 @@
-using System.Text.Json.Serialization;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RegRequestMessage.cs
+*
+* RegRequestMessage.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Text.Json.Serialization;
namespace VNLib.Plugins.Essentials.Accounts.Registration.Endpoints
{
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs
index 2551fbb..7340509 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RegistrationEntpoint.cs
+*
+* RegistrationEntpoint.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationEntryPoint.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationEntryPoint.cs
index 000c9bd..2e253a8 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationEntryPoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationEntryPoint.cs
@@ -1,4 +1,27 @@
-
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RegistrationEntryPoint.cs
+*
+* RegistrationEntryPoint.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
using VNLib.Utils.Logging;
using VNLib.Plugins.Extensions.Loading;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevocationContext.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevocationContext.cs
index 71921c2..5b906a0 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevocationContext.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevocationContext.cs
@@ -1,4 +1,28 @@
-using Microsoft.EntityFrameworkCore;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RevocationContext.cs
+*
+* RevocationContext.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using Microsoft.EntityFrameworkCore;
using VNLib.Plugins.Extensions.Data;
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedToken.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedToken.cs
index ac0fc9a..c0dc247 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedToken.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedToken.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RevokedToken.cs
+*
+* RevokedToken.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.ComponentModel.DataAnnotations;
namespace VNLib.Plugins.Essentials.Accounts.Registration.TokenRevocation
diff --git a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs
index ccc7b37..e9b3e1c 100644
--- a/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs
+++ b/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs
@@ -1,4 +1,28 @@
-using System.Collections;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts.Registration
+* File: RevokedTokenStore.cs
+*
+* RevokedTokenStore.cs is part of VNLib.Plugins.Essentials.Accounts.Registration which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts.Registration 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts.Registration. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Collections;
using Microsoft.EntityFrameworkCore;
diff --git a/VNLib.Plugins.Essentials.Accounts/AccountValidations.cs b/VNLib.Plugins.Essentials.Accounts/AccountValidations.cs
index 2c1243c..3037b27 100644
--- a/VNLib.Plugins.Essentials.Accounts/AccountValidations.cs
+++ b/VNLib.Plugins.Essentials.Accounts/AccountValidations.cs
@@ -1,4 +1,27 @@
-
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: AccountValidations.cs
+*
+* AccountValidations.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
using FluentValidation;
using VNLib.Plugins.Extensions.Validation;
diff --git a/VNLib.Plugins.Essentials.Accounts/AccountsEntryPoint.cs b/VNLib.Plugins.Essentials.Accounts/AccountsEntryPoint.cs
index 6e0f338..df8aa69 100644
--- a/VNLib.Plugins.Essentials.Accounts/AccountsEntryPoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/AccountsEntryPoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: AccountsEntryPoint.cs
+*
+* AccountsEntryPoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/KeepAliveEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/KeepAliveEndpoint.cs
index eec1a33..b8c8bb7 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/KeepAliveEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/KeepAliveEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: KeepAliveEndpoint.cs
+*
+* KeepAliveEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/LoginEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/LoginEndpoint.cs
index 0518454..3a097c9 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/LoginEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/LoginEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: LoginEndpoint.cs
+*
+* LoginEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/LogoutEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/LogoutEndpoint.cs
index c52eef5..8004807 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/LogoutEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/LogoutEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: LogoutEndpoint.cs
+*
+* LogoutEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/MFAEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/MFAEndpoint.cs
index be6aee3..9b25715 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/MFAEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/MFAEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: MFAEndpoint.cs
+*
+* MFAEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/PasswordResetEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/PasswordResetEndpoint.cs
index 81bba51..7f88cb7 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/PasswordResetEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/PasswordResetEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: PasswordResetEndpoint.cs
+*
+* PasswordResetEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
diff --git a/VNLib.Plugins.Essentials.Accounts/Endpoints/ProfileEndpoint.cs b/VNLib.Plugins.Essentials.Accounts/Endpoints/ProfileEndpoint.cs
index c0d86b6..c6f30fd 100644
--- a/VNLib.Plugins.Essentials.Accounts/Endpoints/ProfileEndpoint.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Endpoints/ProfileEndpoint.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: ProfileEndpoint.cs
+*
+* ProfileEndpoint.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/FidoAuthenticatorSelection.cs b/VNLib.Plugins.Essentials.Accounts/MFA/FidoAuthenticatorSelection.cs
index 7e97fc7..39ed6ae 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/FidoAuthenticatorSelection.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/FidoAuthenticatorSelection.cs
@@ -1,4 +1,28 @@
-using System.Text.Json.Serialization;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: FidoAuthenticatorSelection.cs
+*
+* FidoAuthenticatorSelection.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Text.Json.Serialization;
#nullable enable
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegClientData.cs b/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegClientData.cs
index bc05d04..ed43f72 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegClientData.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegClientData.cs
@@ -1,4 +1,28 @@
-using System.Text.Json.Serialization;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: FidoRegClientData.cs
+*
+* FidoRegClientData.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Text.Json.Serialization;
#nullable enable
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegistrationMessage.cs b/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegistrationMessage.cs
index 670eccc..e7f8f38 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegistrationMessage.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/FidoRegistrationMessage.cs
@@ -1,4 +1,28 @@
-using System.Text.Json.Serialization;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: FidoRegistrationMessage.cs
+*
+* FidoRegistrationMessage.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Text.Json.Serialization;
#nullable enable
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/MFAConfig.cs b/VNLib.Plugins.Essentials.Accounts/MFA/MFAConfig.cs
index 8d1c2c1..a818b8c 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/MFAConfig.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/MFAConfig.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: MFAConfig.cs
+*
+* MFAConfig.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using System.Text.Json;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/MFAType.cs b/VNLib.Plugins.Essentials.Accounts/MFA/MFAType.cs
index 31714a3..1a05db9 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/MFAType.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/MFAType.cs
@@ -1,4 +1,28 @@
-namespace VNLib.Plugins.Essentials.Accounts.MFA
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: MFAType.cs
+*
+* MFAType.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+namespace VNLib.Plugins.Essentials.Accounts.MFA
{
public enum MFAType
{
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/MFAUpgrade.cs b/VNLib.Plugins.Essentials.Accounts/MFA/MFAUpgrade.cs
index d18671e..5f7658f 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/MFAUpgrade.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/MFAUpgrade.cs
@@ -1,4 +1,28 @@
-using System.Text.Json.Serialization;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: MFAUpgrade.cs
+*
+* MFAUpgrade.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Text.Json.Serialization;
#nullable enable
diff --git a/VNLib.Plugins.Essentials.Accounts/MFA/UserMFAExtensions.cs b/VNLib.Plugins.Essentials.Accounts/MFA/UserMFAExtensions.cs
index d719788..564258b 100644
--- a/VNLib.Plugins.Essentials.Accounts/MFA/UserMFAExtensions.cs
+++ b/VNLib.Plugins.Essentials.Accounts/MFA/UserMFAExtensions.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: UserMFAExtensions.cs
+*
+* UserMFAExtensions.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using System.Text.Json;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Accounts/Validators/LoginMessageValidation.cs b/VNLib.Plugins.Essentials.Accounts/Validators/LoginMessageValidation.cs
index 879dd42..869a273 100644
--- a/VNLib.Plugins.Essentials.Accounts/Validators/LoginMessageValidation.cs
+++ b/VNLib.Plugins.Essentials.Accounts/Validators/LoginMessageValidation.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Accounts
+* File: LoginMessageValidation.cs
+*
+* LoginMessageValidation.cs is part of VNLib.Plugins.Essentials.Accounts which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Accounts is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Accounts 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Accounts. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using FluentValidation;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/Model/Route.cs b/VNLib.Plugins.Essentials.Content.Routing/Model/Route.cs
index 9af42f1..c822471 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/Model/Route.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/Model/Route.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: Route.cs
+*
+* Route.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/Model/RouteStore.cs b/VNLib.Plugins.Essentials.Content.Routing/Model/RouteStore.cs
index 8650f30..c19fe1a 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/Model/RouteStore.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/Model/RouteStore.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: RouteStore.cs
+*
+* RouteStore.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using Microsoft.EntityFrameworkCore;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/Model/RoutingContext.cs b/VNLib.Plugins.Essentials.Content.Routing/Model/RoutingContext.cs
index da62342..b5f73ad 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/Model/RoutingContext.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/Model/RoutingContext.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: RoutingContext.cs
+*
+* RoutingContext.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using Microsoft.EntityFrameworkCore;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/PageRouterEntry.cs b/VNLib.Plugins.Essentials.Content.Routing/PageRouterEntry.cs
index d89b0e0..4cb6a04 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/PageRouterEntry.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/PageRouterEntry.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: PageRouterEntry.cs
+*
+* PageRouterEntry.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Threading.Tasks;
using System.Collections.Generic;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/RouteComparer.cs b/VNLib.Plugins.Essentials.Content.Routing/RouteComparer.cs
index ed455f5..e6aed36 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/RouteComparer.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/RouteComparer.cs
@@ -1,4 +1,28 @@
-using System.Collections.Generic;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: RouteComparer.cs
+*
+* RouteComparer.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System.Collections.Generic;
using VNLib.Plugins.Essentials.Content.Routing.Model;
diff --git a/VNLib.Plugins.Essentials.Content.Routing/Router.cs b/VNLib.Plugins.Essentials.Content.Routing/Router.cs
index 7c67f4f..700c9f1 100644
--- a/VNLib.Plugins.Essentials.Content.Routing/Router.cs
+++ b/VNLib.Plugins.Essentials.Content.Routing/Router.cs
@@ -1,4 +1,28 @@
-using System;
+/*
+* Copyright (c) 2022 Vaughn Nugent
+*
+* Library: VNLib
+* Package: VNLib.Plugins.Essentials.Content.Routing
+* File: Router.cs
+*
+* Router.cs is part of VNLib.Plugins.Essentials.Content.Routing which is part of the larger
+* VNLib collection of libraries and utilities.
+*
+* VNLib.Plugins.Essentials.Content.Routing is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 2 of the License,
+* or (at your option) any later version.
+*
+* VNLib.Plugins.Essentials.Content.Routing 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
+* General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with VNLib.Plugins.Essentials.Content.Routing. If not, see http://www.gnu.org/licenses/.
+*/
+
+using System;
using System.Linq;
using System.Buffers;
using System.Threading;