diff --git a/.gitattributesdb b/.gitattributesdb
index 36c3582..5d38a61 100644
--- a/.gitattributesdb
+++ b/.gitattributesdb
@@ -5,12 +5,12 @@ LmdpdGhvb2tzL2dpdGF0dHJpYnV0ZXNkYg== 1757608819 1757608819 root:root 0755 - -
LmdpdGhvb2tzL3Bvc3QtY2hlY2tvdXQ= 1757519106 1757519106 root:root 0755 - -
LmdpdGhvb2tzL3Bvc3QtbWVyZ2U= 1757519106 1757519106 root:root 0755 - -
LmdpdGhvb2tzL3ByZS1jb21taXQ= 1757519106 1757519106 root:root 0755 - -
-LmdpdGlnbm9yZQ== 1758124916 1757593248 root:root 0644 - -
+LmdpdGlnbm9yZQ== 1758288513 1757593248 root:root 0644 - -
LmdpdG1vZHVsZXM= 1757607701 1757607701 root:root 0644 - -
-ZXRjLy5naXRpZ25vcmU= 1758218823 1757611781 root:root 0644 - -
+ZXRjLy5naXRpZ25vcmU= 1758642133 1757611781 root:root 0644 - -
ZXRjL2FwYWNoZTIvLmdpdGlnbm9yZQ== 1757775950 1757775932 root:root 0644 - -
-ZXRjL2FwYWNoZTIvaHR0cGQuY29uZg== 1758045891 1757785514 root:root 0644 - -
-ZXRjL2FwYWNoZTIvc2l0ZXMuZC9jb3JlLnNsYWNrd2FyZS51ay5uZXQuY29uZg== 1758045929 1757785113 root:root 0644 - -
+ZXRjL2FwYWNoZTIvaHR0cGQuY29uZg== 1758837649 1757785514 root:root 0644 - -
+ZXRjL2FwYWNoZTIvc2l0ZXMuZC9jb3JlLnNsYWNrd2FyZS51ay5uZXQuY29uZg== 1758817141 1757785113 root:root 0644 - -
ZXRjL2NvbmYuZC8uZ2l0aWdub3Jl 1758050750 1757609410 root:root 0644 - -
ZXRjL2NvbmYuZC9ib290bWlzYw== 1757591865 1757591865 root:root 0644 - -
ZXRjL2NvbmYuZC9ub2RlLWV4cG9ydGVy 1757592526 1757592526 root:root 0644 - -
@@ -18,9 +18,10 @@ ZXRjL2NvbmYuZC9zYW1iYQ== 1757592912 1757592912 root:root 0644 - -
ZXRjL2NvbmYuZC9zc2hk 1757593051 1757593051 root:root 0644 - -
ZXRjL2NvbmYuZC90ZXJyYWZvcm0taHR0cC1iYWNrZW5k 1757771663 1757595391 root:root 0644 - -
ZXRjL2Nyb250YWJzL3Jvb3Q= 1757593504 1757593504 root:root 0600 - -
+ZXRjL2RlZmF1bHQvcm90YXRlLWxvZ3Mtc3ltbGlua3M= 1758555243 1758552192 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvLmdpdGlnbm9yZQ== 1758038054 1758038054 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvYWNjb3VudHMvLmdpdGlnbm9yZQ== 1757873230 1757873230 root:root 0644 - -
-ZXRjL2RlaHlkcmF0ZWQvYWNjb3VudHMvYUhSMGNITTZMeTloWTIxbExYWXdNaTVoY0drdWJHVjBjMlZ1WTNKNWNIUXViM0puTDJScGNtVmpkRzl5ZVFvLnRhci5ncGc= 1757873275 1757873275 root:root 0644 - -
+ZXRjL2RlaHlkcmF0ZWQvYWNjb3VudHMvYUhSMGNITTZMeTloWTIxbExYWXdNaTVoY0drdWJHVjBjMlZ1WTNKNWNIUXViM0puTDJScGNtVmpkRzl5ZVFvLnRhci5ncGc= 1761052714 1757873275 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvYXJjaGl2ZS8uZ2l0aWdub3Jl 1757874259 1757873451 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvY2VydHMvLmdpdGlnbm9yZQ== 1757874303 1757873537 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvY29uZmln 1758044465 1757862077 root:root 0644 - -
@@ -28,9 +29,13 @@ ZXRjL2RlaHlkcmF0ZWQvZG9tYWlucw== 1757862328 1757862077 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvZG9tYWlucy5kL19leGFtcGxlXw== 1757863238 1757862077 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvZG9tYWlucy5kL2NvcmUuc2xhY2t3YXJlLnVrLm5ldA== 1757863250 1757863250 root:root 0644 - -
ZXRjL2RlaHlkcmF0ZWQvaG9va3MvZGVmYXVsdA== 1758045829 1757862077 root:root 0755 - -
+ZXRjL2Z1c2lvbmRpcmVjdG9yeS9mdXNpb25kaXJlY3RvcnkuY29uZg== 1760207207 1760207207 root:root 0644 - -
ZXRjL2dyb3Vw 1757873802 1757869538 root:root 0644 - -
ZXRjL2hvc3RuYW1l 1757594311 1757594311 root:root 0644 - -
ZXRjL2hvc3Rz 1757594362 1757594362 root:root 0644 - -
+ZXRjL2luaXQuZC8uZ2l0aWdub3Jl 1758555849 1758555812 root:root 0644 - -
+ZXRjL2luaXQuZC9zYW1iYQ== 1758645132 1748355660 root:root 0755 - -
+ZXRjL2luaXQuZC90ZXJyYWZvcm0taHR0cC1iYWNrZW5k 1757772166 1757770736 root:root 0755 - -
ZXRjL2lwdGFibGVzL3J1bGVzLXNhdmU= 1757789154 1757789154 root:root 0600 - -
ZXRjL2lwdGFibGVzL3J1bGVzNi1zYXZl 1757789154 1757789154 root:root 0600 - -
ZXRjL2tyYjUuY29uZg== 1758214709 1583171707 root:root 0644 - -
@@ -39,17 +44,76 @@ ZXRjL2xvY2FsLmQvcHVzaG92ZXItYWxlcnQuc3RhcnQ= 1758225142 1758225089 root:root 075
ZXRjL2xvY2FsLmQvcHVzaG92ZXItYWxlcnQuc3RvcA== 1758225254 1758225155 root:root 0755 - -
ZXRjL2xvY2FsLmQvdGVycmFmb3JtLWh0dHAtYmFja2VuZC5zdGFydA== 1757595926 1757595926 root:root 0755 - -
ZXRjL21zbXRwLmFsaWFzZXM= 1758035451 1758035451 root:root 0644 - -
-ZXRjL21zbXRwcmMuZ3Bn 1758049424 1758049424 root:root 0644 - -
+ZXRjL21zbXRwcmMuZ3Bn 1761052674 1758049424 root:root 0644 - -
ZXRjL25ldHdvcmsvLmdpdGlnbm9yZQ== 1757596572 1757596572 root:root 0644 - -
-ZXRjL25ldHdvcmsvaW50ZXJmYWNlcw== 1757759982 1757596330 root:root 0644 - -
-ZXRjL3Bhc3N3ZA== 1757873724 1757869538 root:root 0644 - -
+ZXRjL25ldHdvcmsvaW50ZXJmYWNlcw== 1758915694 1757596330 root:root 0644 - -
+ZXRjL29wZW5sZGFwL2xkYXAuY29uZg== 1758374529 1730112559 root:root 0644 - -
+ZXRjL29wZW5sZGFwL3NjaGVtYS9jb3JlLWZkLWNvbmYuc2NoZW1h 1759848180 1759848180 root:root 0644 - -
+ZXRjL29wZW5sZGFwL3NjaGVtYS9jb3JlLWZkLnNjaGVtYQ== 1759848180 1759848180 root:root 0644 - -
+ZXRjL29wZW5sZGFwL3NjaGVtYS9sZGFwbnMuc2NoZW1h 1759848180 1759848180 root:root 0644 - -
+ZXRjL29wZW5sZGFwL3NjaGVtYS9yZmMyMzA3YmlzLnNjaGVtYQ== 1759835660 1759835660 root:root 0644 - -
+ZXRjL29wZW5sZGFwL3NjaGVtYS90ZW1wbGF0ZS1mZC5zY2hlbWE= 1759848180 1759848180 root:root 0644 - -
+ZXRjL3Bhc3N3ZA== 1761056398 1761056398 root:root 0644 - -
ZXRjL3BlcmlvZGljL2RhaWx5LzAtcm90YXRlLWxvZ3Mtc3ltbGlua3M= 1758222266 1758222266 root:root 0777 - -
ZXRjL3BlcmlvZGljL2RhaWx5LzEwLWRlaHlkcmF0ZWQ= 1757708520 1757708520 root:root 0777 - -
ZXRjL3BlcmlvZGljL2RhaWx5LzUtdXBkYXRlLXBhY2thZ2VzLWxpc3Q= 1757708520 1757708520 root:root 0777 - -
ZXRjL3BlcmlvZGljL2RhaWx5Lzctd2Fybi1naXQtc3RhdHVz 1757708520 1757708520 root:root 0777 - -
-ZXRjL3BrZ2xpc3Q= 1758211839 1757609913 root:root 0644 - -
+ZXRjL3BlcmlvZGljL3dlZWtseS85LWNsZWFuLXBocA== 1758294154 1758289390 root:root 0755 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9iY21hdGguaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9iejIuaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9jdXJsLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9nZC5pbmk= 1758756479 1758756479 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9nZXR0ZXh0LmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9nbXAuaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9pY29udi5pbmk= 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9pbWFwLmluaQ== 1758756479 1758756479 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9pbnRsLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9sZGFwLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9tYnN0cmluZy5pbmk= 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9vcGNhY2hlLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9vcGVuc3NsLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9wb3NpeC5pbmk= 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9zZXNzaW9uLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9zaW1wbGV4bWwuaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9zb2RpdW0uaW5p 1758756479 1758756479 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF9zcWxpdGUzLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF94bWwuaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMF96aXAuaW5p 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC8wMV9waGFyLmluaQ== 1754432591 1754432591 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9iY21hdGguaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9jdXJsLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9kYmEuaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9leGlmLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9mZmkuaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9nZC5pbmk= 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9pY29udi5pbmk= 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9pbWFwLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9pbnRsLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9sZGFwLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9tYnN0cmluZw== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9teXNxbGkuaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9teXNxbG5kLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9vZGJjLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9vcGNhY2hlLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9vcGVuc3NsLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9wZG8uaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9wZG9fbXlzcWwuaW5p 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9wZ3NxbC5pbmk= 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9waGFyLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9zZXNzaW9uLmluaQ== 1760206689 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9zb2FwLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9zcWxpdGUzLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV9zeXN2c2htLmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC85OV90aWR5LmluaQ== 1758566165 1758566165 root:root 0644 - -
+ZXRjL3BocDgzL2NvbmYuZC9pbWFnaWNrLmluaQ== 1755096904 1755096904 root:root 0644 - -
+ZXRjL3BocDgzL3BocC1mcG0uY29uZg== 1758566251 1758566184 root:root 0644 - -
+ZXRjL3BocDgzL3BocC1mcG0uZC93d3cuY29uZg== 1758566277 1758566199 root:root 0644 - -
+ZXRjL3BocDgzL3BocC5pbmk= 1759845481 1758566175 root:root 0644 - -
+ZXRjL3BrZ2xpc3Q= 1761696000 1757609913 root:root 0644 - -
+ZXRjL3BsYS9jb25maWcucGhwLmdwZw== 1761052640 1758539944 root:root 0644 - -
ZXRjL3B1c2hvdmVyLWNsaWVudC9kZWZhdWx0 1758224985 1758224590 root:root 0600 - -
ZXRjL3Jlc29sdi5jb25m 1757611605 1757611605 root:root 0644 - -
+ZXRjL3JzeXNsb2cuY29uZg== 1757785113 1757785113 root:root 0644 - -
ZXRjL3J1bmxldmVscy9ib290Ly5naXRpZ25vcmU= 1757769666 1757598667 root:root 0644 - -
ZXRjL3J1bmxldmVscy9ib290L3JzeXNsb2c= 1757708520 1757708520 root:root 0777 - -
ZXRjL3J1bmxldmVscy9kZWZhdWx0Ly5naXRpZ25vcmU= 1757598703 1757598703 root:root 0644 - -
@@ -58,26 +122,28 @@ ZXRjL3J1bmxldmVscy9kZWZhdWx0L2lwNnRhYmxlcw== 1757770233 1757770233 root:root 077
ZXRjL3J1bmxldmVscy9kZWZhdWx0L2lwdGFibGVz 1757770222 1757770222 root:root 0777 - -
ZXRjL3J1bmxldmVscy9kZWZhdWx0L25vZGUtZXhwb3J0ZXI= 1757708520 1757708520 root:root 0777 - -
ZXRjL3J1bmxldmVscy9kZWZhdWx0L3BocC1mcG04Mw== 1757708520 1757708520 root:root 0777 - -
-ZXRjL3J1bmxldmVscy9kZWZhdWx0L3NhbWJh 1757708520 1757708520 root:root 0777 - -
+ZXRjL3J1bmxldmVscy9kZWZhdWx0L3NhbWJh 1758837930 1758837930 root:root 0777 - -
ZXRjL3J1bmxldmVscy9kZWZhdWx0L3NzaGQ= 1757708520 1757708520 root:root 0777 - -
ZXRjL3J1bmxldmVscy9kZWZhdWx0L3RlcnJhZm9ybS1odHRwLWJhY2tlbmQ= 1757772274 1757772274 root:root 0777 - -
ZXRjL3J1bmxldmVscy9zaHV0ZG93bi9pcDZ0YWJsZXM= 1757770292 1757770292 root:root 0777 - -
ZXRjL3J1bmxldmVscy9zaHV0ZG93bi9pcHRhYmxlcw== 1757770284 1757770284 root:root 0777 - -
ZXRjL3J1bmxldmVscy9zaHV0ZG93bi9zYW1iYQ== 1757708520 1757708520 root:root 0777 - -
-ZXRjL3NhbWJhL3NtYi5jb25m 1758215678 1758208516 root:root 0644 - -
+ZXRjL3NhbWJhL3NtYi5jb25m 1758656295 1758208516 root:root 0644 - -
ZXRjL3NhbWJhL3NtYnVzZXJz 1758121825 1758121586 root:root 0644 - -
-ZXRjL3NoYWRvdy5ncGc= 1757599010 1757599010 root:root 0644 - -
+ZXRjL3NoYWRvdy5ncGc= 1761052608 1757599010 root:root 0644 - -
ZXRjL3NzaC8uZ2l0aWdub3Jl 1757606957 1757606957 root:root 0644 - -
ZXRjL3NzaC9zc2hfY29uZmln 1757606630 1757606630 root:root 0644 - -
ZXRjL3NzaC9zc2hkX2NvbmZpZw== 1758202229 1757606896 root:root 0644 - -
ZXRjL3NzaGd1YXJkLmNvbmY= 1758050700 1758050700 root:root 0644 - -
ZXRjL3NzaGd1YXJkLndoaXRlbGlzdA== 1758050235 1758050235 root:root 0644 - -
+ZXRjL3NzbC9jZXJ0cy9jYS5jZXJ0 1758642260 1758642260 root:root 0777 - -
+ZXRjL3NzbC9jZXJ0cy9mZC5jZXJ0 1758642260 1758642260 root:root 0777 - -
ZXRjL3N1ZG9lcnMuZC9kZWZhdWx0cw== 1757599359 1757599359 root:root 0640 - -
ZXRjL3N1ZG9lcnMuZC9yb290LWFjY2Vzcw== 1757600157 1757600157 root:root 0640 - -
aG9tZS8uZ2l0aWdub3Jl 1757762052 1757762052 root:root 0644 - -
aG9tZS9zeXNhZG1pbi8uYmFzaF9sb2dvdXQ= 1757582867 1757582867 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8uYmFzaF9wcm9maWxl 1757861225 1757584711 sysadmin:users 0644 - -
-aG9tZS9zeXNhZG1pbi8uYmFzaHJj 1757861322 1757586493 sysadmin:users 0644 - -
+aG9tZS9zeXNhZG1pbi8uYmFzaHJj 1758887092 1757586493 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8uZ2l0Y29uZmln 1757582738 1757582738 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8uZ2l0aWdub3Jl 1757600312 1757600312 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8ubG9jYWwvc2hhcmUvbmFuby8uZ2l0aWdub3Jl 1757586210 1757586210 sysadmin:users 0644 - -
@@ -85,7 +151,7 @@ aG9tZS9zeXNhZG1pbi8ubmFub3Jj 1757585756 1757585756 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8uc3NoLy5naXRpZ25vcmU= 1757593349 1757593349 sysadmin:users 0644 - -
aG9tZS9zeXNhZG1pbi8uc3NoL2F1dGhvcml6ZWRfa2V5cw== 1757763178 1757587611 sysadmin:users 0644 - -
b3B0L3NiaW4vY3JvbmpvYi1kZWh5ZHJhdGVk 1758033093 1757531685 root:root 0755 - -
-b3B0L3NiaW4vY3JvbmpvYi1yb3RhdGUtbG9ncy1zeW1saW5rcw== 1758224324 1758224324 root:root 0755 - -
+b3B0L3NiaW4vY3JvbmpvYi1yb3RhdGUtbG9ncy1zeW1saW5rcw== 1758555302 1758224324 root:root 0755 - -
b3B0L3NiaW4vY3JvbmpvYi11cGRhdGUtcGFja2FnZXMtbGlzdA== 1757531121 1757531121 root:root 0755 - -
b3B0L3NiaW4vY3JvbmpvYi13YXJuLWdpdC1zdGF0dXM= 1758221607 1757591137 root:root 0755 - -
b3B0L3NiaW4vZGVoeWRyYXRlZA== 1757531557 1757531557 root:root 0755 - -
@@ -93,19 +159,21 @@ b3B0L3NiaW4vcHVzaG92ZXItY2xpZW50 1758224526 1758224526 root:root 0755 - -
b3B0L3NiaW4vdGVycmFmb3JtLWh0dHAtYmFja2VuZA== 1757590543 1757590543 root:root 0755 - -
cm9vdC8uYmFzaF9sb2dvdXQ= 1757582867 1757582867 root:root 0644 - -
cm9vdC8uYmFzaF9wcm9maWxl 1757584711 1757584711 root:root 0644 - -
-cm9vdC8uYmFzaHJj 1757861289 1757586493 root:root 0644 - -
+cm9vdC8uYmFzaHJj 1758887027 1757586493 root:root 0644 - -
cm9vdC8uZ2l0Y29uZmln 1757582738 1757582738 root:root 0644 - -
-cm9vdC8uZ2l0aWdub3Jl 1757600312 1757600312 root:root 0644 - -
+cm9vdC8uZ2l0aWdub3Jl 1761758092 1757600312 root:root 0644 - -
cm9vdC8ubG9jYWwvc2hhcmUvbmFuby8uZ2l0aWdub3Jl 1757586210 1757586210 root:root 0644 - -
cm9vdC8ubmFub3Jj 1757585756 1757585756 root:root 0644 - -
cm9vdC8uc3NoLy5naXRpZ25vcmU= 1757593349 1757593349 root:root 0644 - -
cm9vdC8uc3NoL2F1dGhvcml6ZWRfa2V5cw== 1757587611 1757587611 root:root 0644 - -
-c3J2L2RlaHlkcmF0ZWQvLmdpdGtlZXBkaXI= 1757776960 1757776960 root:root 0644 - -
+cm9vdC9jbGVhbi1mZA== 1758994151 1758992264 root:root 0755 - -
+dmFyLy5naXRpZ25vcmU= 1758288612 1758288560 root:root 0644 - -
+dmFyL2xpYi8uZ2l0aWdub3Jl 1758288797 1758288764 root:root 0644 - -
ZXRjL2RvYXMuY29uZg== 1728635393 1728635393 root:root 0640 - -
ZXRjL2RvYXMuZA== 1757595612 1757595612 root:root 0750 - -
-ZXRjL3NoYWRvdw== 1757873748 1757869538 root:shadow 0640 - -
-ZXRjL3NoYWRvdy0= 1757761290 1757702629 root:shadow 0640 - -
+ZXRjL3NoYWRvdw== 1761056398 1761056398 root:shadow 0640 - -
+ZXRjL3NoYWRvdy0= 1761056356 1761056356 root:shadow 0640 - -
ZXRjL3N1ZG9lcnM= 1753553353 1753553353 root:root 0440 - -
ZXRjL3N1ZG9lcnMuZC9kZWZhdWx0cw== 1757599359 1757599359 root:root 0640 - -
ZXRjL3N1ZG9lcnMuZC9yb290LWFjY2Vzcw== 1757600157 1757600157 root:root 0640 - -
-aG9tZS9zeXNhZG1pbg== 1757861322 1757761412 sysadmin:users 0711 - -
+aG9tZS9zeXNhZG1pbg== 1758887092 1757761412 sysadmin:users 0711 - -
diff --git a/.gitignore b/.gitignore
index e4b9028..0324337 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,4 +15,3 @@
/sys/
/tmp/
/usr/
-/var/
diff --git a/etc/.gitignore b/etc/.gitignore
index 9927d65..6eaf268 100644
--- a/etc/.gitignore
+++ b/etc/.gitignore
@@ -10,7 +10,6 @@
/ethertypes
/fstab
/group-
-/init.d/
/inittab
/inputrc
/issue
@@ -43,7 +42,6 @@
/shadow
/shadow-
/shells
-/ssl/
/ssl1.1/
/sudo.conf
/sudo_logsrvd.conf
diff --git a/etc/apache2/httpd.conf b/etc/apache2/httpd.conf
index 86d9c6f..ed7bf31 100644
--- a/etc/apache2/httpd.conf
+++ b/etc/apache2/httpd.conf
@@ -38,6 +38,9 @@ LoadModule authn_file_module /usr/lib/apache2/mod_authn_file.so
LoadModule authz_core_module /usr/lib/apache2/mod_authz_core.so
LoadModule authz_user_module /usr/lib/apache2/mod_authz_user.so
+# Custom headers.
+LoadModule headers_module /usr/lib/apache2/mod_headers.so
+
# Proxying.
#
# LoadModule proxy_module /usr/lib/apache2/mod_proxy.so
@@ -66,7 +69,7 @@ ServerSignature Email
ServerTokens Major
User apache
Group apache
-DefaultRuntimeDir /run/apache2
+DefaultRuntimeDir /run
Mutex pthread
ScriptSock cgid.sock
@@ -119,6 +122,16 @@ BrowserMatch "MSIE [2-5]" nokeepalive downgrade-1.0 force-response-1.0
+# PHP.
+
+ DirectoryIndex index.php index.phtml
+
+
+ SetHandler proxy:unix:/run/php-fpm83/php-fpm.sock|fcgi://localhost/
+
+
+
+
# Filters and Handlers.
AddOutputFilter INCLUDES .shtml .html
@@ -177,7 +190,7 @@ Alias /.well-known/acme-challenge/ /srv/dehydrated/
Require all granted
-
+
Options Includes MultiViews SymLinksIfOwnerMatch
AllowOverride AuthConfig FileInfo Indexes Limit
@@ -195,18 +208,10 @@ Alias /.well-known/acme-challenge/ /srv/dehydrated/
SSLOptions +StdEnvVars
-
-
- DirectoryIndex index.php index.phtml
-
-
- SetHandler proxy:unix:/run/php-fpm83/php-fpm.sock|fcgi://localhost/
-
-
-
+
Options ExecCGI Includes MultiViews SymLinksIfOwnerMatch
AllowOverride AuthConfig FileInfo Limit
diff --git a/etc/apache2/sites.d/core.slackware.uk.net.conf b/etc/apache2/sites.d/core.slackware.uk.net.conf
index 7c46493..2b9c4a0 100644
--- a/etc/apache2/sites.d/core.slackware.uk.net.conf
+++ b/etc/apache2/sites.d/core.slackware.uk.net.conf
@@ -1,3 +1,17 @@
+
+ Options FollowSymlinks
+ AllowOverride None
+ Require all granted
+
+
+
+ # include /etc/fusiondirectory/fusiondirectory.secrets
+
+ AllowOverride None
+ Require all granted
+ AddType application/wasm .wasm
+
+
ServerName core.slackware.uk.net
@@ -9,9 +23,10 @@
-
+
ServerName core.slackware.uk.net
+ SSLEngine On
SSLCertificateFile /etc/certificates/core.slackware.uk.net_cert.pem
SSLCertificateKeyFile /etc/certificates/core.slackware.uk.net_key.pem
SSLCertificateChainFile /etc/certificates/core.slackware.uk.net_chain.pem
@@ -22,5 +37,8 @@
ScriptAlias /cgi-bin/ /data/sites/core.slackware.uk.net/cgi-bin/
DocumentRoot /data/sites/core.slackware.uk.net/html
+
+ Alias /fd /srv/fusiondirectory/html
+ Alias /pla /srv/pla
diff --git a/etc/default/rotate-logs-symlinks b/etc/default/rotate-logs-symlinks
new file mode 100644
index 0000000..2312951
--- /dev/null
+++ b/etc/default/rotate-logs-symlinks
@@ -0,0 +1 @@
+CREATE_DIRS['core.slackware.uk.net']="fusiondirectory samba"
diff --git a/etc/dehydrated/accounts/aHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2RpcmVjdG9yeQo.tar.gpg b/etc/dehydrated/accounts/aHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2RpcmVjdG9yeQo.tar.gpg
index 5baf3d9..983eedd 100644
Binary files a/etc/dehydrated/accounts/aHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2RpcmVjdG9yeQo.tar.gpg and b/etc/dehydrated/accounts/aHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2RpcmVjdG9yeQo.tar.gpg differ
diff --git a/etc/fusiondirectory/fusiondirectory.conf b/etc/fusiondirectory/fusiondirectory.conf
new file mode 100644
index 0000000..ca86517
--- /dev/null
+++ b/etc/fusiondirectory/fusiondirectory.conf
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/etc/init.d/.gitignore b/etc/init.d/.gitignore
new file mode 100644
index 0000000..f3bc12c
--- /dev/null
+++ b/etc/init.d/.gitignore
@@ -0,0 +1,4 @@
+/*
+!/.gitignore
+!/samba
+!/terraform-http-backend
diff --git a/etc/init.d/samba b/etc/init.d/samba
new file mode 100755
index 0000000..8c701f2
--- /dev/null
+++ b/etc/init.d/samba
@@ -0,0 +1,90 @@
+#!/sbin/openrc-run
+
+extra_started_commands="reload"
+piddir=${piddir:-"/run/samba"}
+
+DAEMON=${RC_SVCNAME#samba.}
+if [ "$DAEMON" != "$RC_SVCNAME" ]; then
+ daemon_list=$DAEMON
+fi
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory "$piddir"
+}
+
+start_samba() {
+ start-stop-daemon --start --quiet --exec /usr/sbin/samba -- \
+ ${samba_options:-"-D"}
+}
+
+stop_samba() {
+ start-stop-daemon --stop --quiet --pidfile "$piddir"/samba.pid
+}
+
+start_smbd() {
+ start-stop-daemon --start --quiet --exec /usr/sbin/smbd -- \
+ ${smbd_options:-"-D"}
+}
+
+stop_smbd() {
+ start-stop-daemon --stop --quiet --pidfile "$piddir"/smbd.pid
+}
+
+start_nmbd() {
+ start-stop-daemon --start --quiet --exec /usr/sbin/nmbd -- \
+ ${nmbd_options:-"-D"}
+}
+
+stop_nmbd() {
+ start-stop-daemon --stop --quiet --pidfile "$piddir"/nmbd.pid
+}
+
+start_winbindd() {
+ start-stop-daemon --start --quiet --exec /usr/sbin/winbindd -- \
+ ${winbindd_options:-"-D"}
+}
+
+stop_winbindd() {
+ start-stop-daemon --stop --quiet --pidfile "$piddir"/winbindd.pid
+}
+
+
+start_bgqd() {
+ start-stop-daemon --start --quiet --exec /usr/lib/samba/samba-bgqd -- \
+ ${bgqd_options:-"-D"}
+}
+
+stop_bgqd() {
+ start-stop-daemon --stop --quiet --pidfile "$piddir"/samba-bgqd.pid
+}
+
+start() {
+ for i in $daemon_list; do
+ ebegin "Starting $i"
+ start_$i
+ eend $?
+ done
+}
+
+stop() {
+ for i in $daemon_list; do
+ ebegin "Stopping $i"
+ stop_$i
+ eend $?
+ done
+}
+
+reload() {
+ for i in $daemon_list; do
+ ebegin "Reloading $i"
+ # bgqd binary is called samba-bgqd
+ busybox killall -HUP ${i/bgqd/samba-bgqd}
+ eend $?
+ done
+}
+
diff --git a/etc/init.d/terraform-http-backend b/etc/init.d/terraform-http-backend
new file mode 100755
index 0000000..c43d8a2
--- /dev/null
+++ b/etc/init.d/terraform-http-backend
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+
+depend() {
+ need net
+ after firewall
+}
+
+start() {
+ ebegin "Starting terraform-http-backend"
+ source /etc/conf.d/terraform-http-backend || eend 1
+ su "$TF_USER" -c "/opt/sbin/terraform-http-backend &" || eend 1
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping terraform-http-backend"
+ busybox killall -TERM terraform-http-backend
+ eend $?
+}
diff --git a/etc/msmtprc.gpg b/etc/msmtprc.gpg
index e2100ee..8f86af5 100644
Binary files a/etc/msmtprc.gpg and b/etc/msmtprc.gpg differ
diff --git a/etc/network/interfaces b/etc/network/interfaces
index e6c1cfb..454ff20 100644
--- a/etc/network/interfaces
+++ b/etc/network/interfaces
@@ -2,13 +2,13 @@ auto eth0
iface eth0 inet static
address 5.101.171.215/28
gateway 5.101.171.209
- mtu 9000
+ mtu 1500
iface eth0 inet6 static
address 2a01:a500:2981:1::d7/64
gateway 2a01:a500:2981:1:ff:ff:ff:ff
- mtu 9000
+ mtu 1500
auto eth1
iface eth1 inet static
address 10.254.0.215/24
- mtu 9000
+ mtu 1500
diff --git a/etc/openldap/ldap.conf b/etc/openldap/ldap.conf
new file mode 100644
index 0000000..b46f0f5
--- /dev/null
+++ b/etc/openldap/ldap.conf
@@ -0,0 +1,10 @@
+# LDAP Defaults
+
+URI ldap://core.slackware.uk.net
+BASE dc=slackware,dc=uk,dc=net
+VERSION 3
+
+TLS_CACERT /etc/certificates/LetsEncrypt-CompleteCertificateStore.pem
+TLS_CERT /etc/certificates/core.slackware.uk.net_cert.pem
+TLS_KEY /etc/certificates/core.slackware.uk.net_key.pem
+TLS_PROTOCOL_MIN 3.3
diff --git a/etc/openldap/schema/core-fd-conf.schema b/etc/openldap/schema/core-fd-conf.schema
new file mode 100644
index 0000000..6ef5dbd
--- /dev/null
+++ b/etc/openldap/schema/core-fd-conf.schema
@@ -0,0 +1,732 @@
+##
+## fusiondirectory-conf.schema - Needed by FusionDirectory for its configuration
+##
+
+#~ ldapTLS="true"
+
+# Attributes
+
+# Schema setup
+
+attributetype ( 1.3.6.1.4.1.38414.8.10.2 NAME 'fdSchemaCheck'
+ DESC 'FusionDirectory - Schema check'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+# Look n feel
+
+attributetype ( 1.3.6.1.4.1.38414.8.11.1 NAME 'fdLanguage'
+ DESC 'FusionDirectory - language'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.11.2 NAME 'fdTheme'
+ DESC 'FusionDirectory - theme'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.11.3 NAME 'fdTimezone'
+ DESC 'FusionDirectory - timezone'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+# People and group storage
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.1 NAME 'fdAccountPrimaryAttribute'
+ DESC 'FusionDirectory - attribute that should be used in user dn'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.3 NAME 'fdNextIdHook'
+ DESC 'FusionDirectory - A script to be called for finding the next free id for users or groups'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.6 NAME 'fdStrictNamingRules'
+ DESC 'FusionDirectory - Strict naming rules'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.7 NAME 'fdMinId'
+ DESC 'FusionDirectory - minimum user id'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.8 NAME 'fdUidNumberBase'
+ DESC 'FusionDirectory - uid number base'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.9 NAME 'fdGidNumberBase'
+ DESC 'FusionDirectory - gid number base'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.10 NAME 'fdUserRDN'
+ DESC 'FusionDirectory - User RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.11 NAME 'fdGroupRDN'
+ DESC 'FusionDirectory - Group RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.12 NAME 'fdIdAllocationMethod'
+ DESC 'FusionDirectory - id allocation method traditional/pool'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.13 NAME 'fdGidNumberPoolMin'
+ DESC 'FusionDirectory - pool gid number min'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.14 NAME 'fdUidNumberPoolMin'
+ DESC 'FusionDirectory - pool uid number min'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.15 NAME 'fdGidNumberPoolMax'
+ DESC 'FusionDirectory - pool gid number max'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.16 NAME 'fdUidNumberPoolMax'
+ DESC 'FusionDirectory - pool uid number max'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.17 NAME 'fdAclRoleRDN'
+ DESC 'FusionDirectory - ACL role RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.18 NAME 'fdCnPattern'
+ DESC 'FusionDirectory - Common Name pattern'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.19 NAME 'fdRestrictRoleMembers'
+ DESC 'FusionDirectory - Restrict role members to users from the same LDAP branch'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.20 NAME 'fdSplitPostalAddress'
+ DESC 'FusionDirectory - Expose street, postOfficeBox and postalCode fields instead of postalAddress'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.21 NAME 'fdPostalAddressPattern'
+ DESC 'FusionDirectory - When using separate address fields, you can use a pattern to fill postalAddress field'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.22 NAME 'fdMaxAvatarSize'
+ DESC 'FusionDirectory - Maximum user picture width and height in pixels'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.12.23 NAME 'fdGivenNameRequired'
+ DESC 'FusionDirectory - Whether givenName field is required on users'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+# Password
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.1 NAME 'fdPasswordDefaultHash'
+ DESC 'FusionDirectory - Password default hash'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.2 NAME 'fdPasswordMinLength'
+ DESC 'FusionDirectory - Password min length'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.3 NAME 'fdPasswordMinDiffer'
+ DESC 'FusionDirectory - password min differ'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.5 NAME 'fdHandleExpiredAccounts'
+ DESC 'FusionDirectory - Handle expired accounts'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.6 NAME 'fdSaslRealm'
+ DESC 'FusionDirectory - SASL Realm'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.7 NAME 'fdSaslExop'
+ DESC 'FusionDirectory - SASL Exop'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.8 NAME 'fdForcePasswordDefaultHash'
+ DESC 'FusionDirectory - Force password default hash'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.13.9 NAME 'fdPasswordAllowedHashes'
+ DESC 'FusionDirectory - Allowed password hashes'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+# Core settings
+
+attributetype ( 1.3.6.1.4.1.38414.8.14.2 NAME 'fdListSummary'
+ DESC 'FusionDirectory - Show list summary'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.14.4 NAME 'fdModificationDetectionAttribute'
+ DESC 'FusionDirectory - Modification detection attribute'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.14.6 NAME 'fdLogging'
+ DESC 'FusionDirectory - Logging'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.14.7 NAME 'fdLdapSizeLimit'
+ DESC 'FusionDirectory - LDAP size limit'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.14.8 NAME 'fdWildcardForeignKeys'
+ DESC 'FusionDirectory - Weither or not to enable wildcard searches for foreign keys on dn'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+# Login and session
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.1 NAME 'fdLoginAttribute'
+ DESC 'FusionDirectory attribute that will be used for login'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.2 NAME 'fdForceSSL'
+ DESC 'FusionDirectory - Force SSL'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.3 NAME 'fdWarnSSL'
+ DESC 'FusionDirectory - Warn user when SSL is not used'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.4 NAME 'fdStoreFilterSettings'
+ DESC 'FusionDirectory - Store filter settings'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.5 NAME 'fdSessionLifeTime'
+ DESC 'FusionDirectory - Session life time in seconds'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.6 NAME 'fdHttpAuthActivated'
+ DESC 'FusionDirectory - HTTP Basic Auth activation'
+ OBSOLETE
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.7 NAME 'fdHttpHeaderAuthActivated'
+ DESC 'FusionDirectory - HTTP Header Auth activation'
+ OBSOLETE
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.8 NAME 'fdHttpHeaderAuthHeaderName'
+ DESC 'FusionDirectory - HTTP Header Auth - Header name'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.15.9 NAME 'fdLoginMethod'
+ DESC 'FusionDirectory - Active login method'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+# Debugging
+
+attributetype ( 1.3.6.1.4.1.38414.8.16.1 NAME 'fdDisplayErrors'
+ DESC 'FusionDirectory - Weither or not to display errors'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.16.2 NAME 'fdLdapMaxQueryTime'
+ DESC 'FusionDirectory - Maximum LDAP query time'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.16.3 NAME 'fdLdapStats'
+ DESC 'FusionDirectory - Weither or not to activate ldap stats'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.16.4 NAME 'fdDebugLevel'
+ DESC 'FusionDirectory - Debug level'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.16.5 NAME 'fdDebugLogging'
+ DESC 'FusionDirectory - Debug logging'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+# Snapshots
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.1 NAME 'fdEnableSnapshots'
+ DESC 'FusionDirectory - Weither or not to enable snapshots'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.2 NAME 'fdSnapshotBase'
+ DESC 'FusionDirectory - Snaphost base'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.3 NAME 'fdEnableAutomaticSnapshots'
+ DESC 'FusionDirectory - Weither or not to enable snapshots'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.4 NAME 'fdSnapshotMinRetention'
+ DESC 'Minimum number of snapshots to be kept in store'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.5 NAME 'fdSnapshotRetentionDays'
+ DESC 'Number of days a snapshot should be kept'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.17.6 NAME 'fdSnapshotSourceData'
+ DESC 'Possible Origin / Source of data received '
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+ SINGLE-VALUE)
+
+# Miscellaneous
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.2 NAME 'fdTabHook'
+ DESC 'FusionDirectory - tab hook'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.3 NAME 'fdShells'
+ DESC 'FusionDirectory - available shells'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.4 NAME 'fusionConfigMd5'
+ DESC 'FusionDirectory - md5sum of class.cache'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.5 NAME 'fdDisplayHookOutput'
+ DESC 'FusionDirectory - display hook execution output to the user'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.6 NAME 'fdAclTabOnObjects'
+ DESC 'FusionDirectory - Should acl tabs be shown on all objects'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.7 NAME 'fdDepartmentCategories'
+ DESC 'FusionDirectory - available categories for departments'
+ EQUALITY caseExactMatch
+ SUBSTR caseExactSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.8 NAME 'fdDefaultShell'
+ DESC 'FusionDirectory - default shell'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.9 NAME 'fdPluginsMenuBlacklist'
+ DESC 'FusionDirectory - Blacklist as groupdn|plugin or roledn|plugin'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.10 NAME 'fdManagementConfig'
+ DESC 'FusionDirectory - Configuration for management classes'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.11 NAME 'fdManagementUserConfig'
+ DESC 'FusionDirectory - Per user configuration for management classes'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.12 NAME 'fdAclTargetFilterLimit'
+ DESC 'Fusion Directory - Size limit for LDAP filter on ACL targets'
+ EQUALITY integerMatch
+ ORDERING integerOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.18.13 NAME 'fdIncrementalModifierStates'
+ DESC 'FusionDirectory - States of the incremental modifier intances, with keys value and date, encoded as JSON'
+ EQUALITY caseExactMatch
+ SUBSTR caseExactSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+# Plugins
+
+attributetype ( 1.3.6.1.4.1.38414.8.19.1 NAME 'fdOGroupRDN'
+ DESC 'FusionDirectory - OGroup RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.19.2 NAME 'fdForceSaslPasswordAsk'
+ DESC 'FusionDirectory - Force password ask for SASL users'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.19.3 NAME 'fdOGroupDefaultUser'
+ DESC 'FusionDirectory - Create a default user in ou=restricted for object groups'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+# SSL
+
+attributetype ( 1.3.6.1.4.1.38414.8.20.1 NAME 'fdSslCaCertPath'
+ DESC 'FusionDirectory - CA certificate path'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.20.2 NAME 'fdSslKeyPath'
+ DESC 'FusionDirectory - SSL key path'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.20.3 NAME 'fdSslCertPath'
+ DESC 'FusionDirectory - SSL certificate path'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+# CAS
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.1 NAME 'fdCasActivated'
+ DESC 'FusionDirectory - CAS activation'
+ OBSOLETE
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.2 NAME 'fdCasServerCaCertPath'
+ DESC 'FusionDirectory - CAS server CA certificate path'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.3 NAME 'fdCasHost'
+ DESC 'FusionDirectory - CAS host'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.4 NAME 'fdCasPort'
+ DESC 'FusionDirectory - CAS port'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.5 NAME 'fdCasContext'
+ DESC 'FusionDirectory - CAS context'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.6 NAME 'fdCasVerbose'
+ DESC 'FusionDirectory - CAS verbose flag'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.7 NAME 'fdCasLibraryBool'
+ DESC 'FusionDirectory - CAS boolean to activate CAS library >= 1.6'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.21.8 NAME 'fdCasClientServiceName'
+ DESC 'FusionDirectory - CAS client service name'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+# FusionDirectory Tokens
+
+attributetype ( 1.3.6.1.4.1.38414.8.22.1 NAME 'fdTokenRDN'
+ DESC 'FusionDirectory - Branch where FusionDirectory Tokens are stored'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.22.2 NAME 'fdOrchestratorTokenRDN'
+ DESC 'FusionDirectory - Branch where FusionDirectory Orchestrator Tokens are stored'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.8.22.3 NAME 'fdRecoveryTokenRDN'
+ DESC 'FusionDirectory - Branch where FusionDirectory Recovery Tokens are stored'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+# merged from dashboard-fd.schema - Needed by Fusion Directory for dashboard options
+
+attributetype ( 1.3.6.1.4.1.38414.27.1.1 NAME 'fdDashboardPrefix'
+ DESC 'FusionDirectory - Dashboard computer name prefix'
+ OBSOLETE
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)
+
+attributetype ( 1.3.6.1.4.1.38414.27.1.2 NAME 'fdDashboardNumberOfDigit'
+ DESC 'FusionDirectory - Dashboard number of digits after prefixes in computer names'
+ OBSOLETE
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.27.1.3 NAME 'fdDashboardExpiredAccountsDays'
+ DESC 'FusionDirectory - Dashboard number of days before expiration to be shown in board user tab'
+ OBSOLETE
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+# merged from recovery-fd.schema - Needed by Fusion Directory for password recovery options
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.1 NAME 'fdPasswordRecoveryActivated'
+ DESC 'Fusion Directory - Password recovery enabled/disabled'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.2 NAME 'fdPasswordRecoveryEmail'
+ DESC 'Fusion Directory - Password recovery sender email'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.3 NAME 'fdPasswordRecoveryMailSubject'
+ DESC 'Fusion Directory - Password recovery first email subject'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.4 NAME 'fdPasswordRecoveryMailBody'
+ DESC 'Fusion Directory - Password recovery first email body'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.5 NAME 'fdPasswordRecoveryMail2Subject'
+ DESC 'Fusion Directory - Password recovery second email subject'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.6 NAME 'fdPasswordRecoveryMail2Body'
+ DESC 'Fusion Directory - Password recovery second email body'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.7 NAME 'fdPasswordRecoveryValidity'
+ DESC 'Fusion Directory - Password recovery link validity in minutes'
+ EQUALITY integerMatch
+ ORDERING integerOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.8 NAME 'fdPasswordRecoverySalt'
+ DESC 'Fusion Directory - Password recovery token salt'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.9 NAME 'fdPasswordRecoveryUseAlternate'
+ DESC 'Fusion Directory - Allow/disallow the use of alternate addresses for password recovery'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.8.110.10 NAME 'fdPasswordRecoveryLoginAttribute'
+ DESC 'Fusion Directory - Password recovery login attribute (usually uid)'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+
+# Object Class
+objectclass ( 1.3.6.1.4.1.38414.8.2.1 NAME 'fusionDirectoryConf'
+ DESC 'FusionDirectory configuration'
+ SUP top STRUCTURAL
+ MUST ( cn )
+ MAY (
+ fusionConfigMd5 $
+ fdSchemaCheck $
+ fdLanguage $ fdTheme $ fdTimezone $
+ fdAccountPrimaryAttribute $ fdNextIdHook $
+ fdStrictNamingRules $ fdMinId $ fdUidNumberBase $
+ fdGidNumberBase $ fdUserRDN $ fdGroupRDN $ fdIdAllocationMethod $
+ fdGidNumberPoolMin $ fdUidNumberPoolMin $ fdGidNumberPoolMax $ fdUidNumberPoolMax $
+ fdAclRoleRDN $ fdCnPattern $ fdRestrictRoleMembers $
+ fdSplitPostalAddress $ fdPostalAddressPattern $ fdMaxAvatarSize $ fdGivenNameRequired $
+ fdPasswordDefaultHash $ fdPasswordMinLength $ fdPasswordMinDiffer $
+ fdHandleExpiredAccounts $ fdSaslRealm $ fdSaslExop $
+ fdForcePasswordDefaultHash $ fdPasswordAllowedHashes $
+ fdListSummary $
+ fdModificationDetectionAttribute $ fdLogging $ fdLdapSizeLimit $ fdWildcardForeignKeys $
+ fdLoginAttribute $ fdForceSSL $ fdWarnSSL $ fdStoreFilterSettings $ fdSessionLifeTime $
+ fdHttpAuthActivated $ fdHttpHeaderAuthActivated $ fdHttpHeaderAuthHeaderName $
+ fdDisplayErrors $ fdLdapMaxQueryTime $ fdLdapStats $ fdDebugLevel $ fdDebugLogging $
+ fdEnableSnapshots $ fdSnapshotBase $
+ fdTabHook $ fdShells $ fdDefaultShell $ fdDisplayHookOutput $
+ fdPluginsMenuBlacklist $ fdManagementConfig $ fdManagementUserConfig $
+ fdAclTabOnObjects $ fdDepartmentCategories $ fdAclTargetFilterLimit $
+ fdIncrementalModifierStates $
+ fdSslCaCertPath $ fdSslKeyPath $ fdSslCertPath $ fdSnapshotRetentionDays $ fdSnapshotSourceData $
+ fdCasActivated $ fdCasServerCaCertPath $ fdCasHost $ fdCasPort $ fdCasContext $ fdCasVerbose $
+ fdLoginMethod $ fdCasLibraryBool $ fdCasClientServiceName $ fdEnableAutomaticSnapshots $ fdSnapshotMinRetention $
+ fdTokenRDN $ fdOrchestratorTokenRDN $ fdRecoveryTokenRDN
+ ) )
+
+objectclass ( 1.3.6.1.4.1.38414.8.2.2 NAME 'fusionDirectoryPluginsConf'
+ DESC 'FusionDirectory plugins configuration'
+ SUP top AUXILIARY
+ MUST ( cn )
+ MAY ( fdOGroupRDN $ fdForceSaslPasswordAsk $ fdOGroupDefaultUser ) )
+
+objectclass ( 1.3.6.1.4.1.38414.8.2.3 NAME 'fdPasswordRecoveryConf'
+ DESC 'FusionDirectory password recovery configuration'
+ SUP top AUXILIARY
+ MUST ( cn )
+ MAY (
+ fdPasswordRecoveryActivated $ fdPasswordRecoveryEmail $
+ fdPasswordRecoveryMailSubject $ fdPasswordRecoveryMailBody $
+ fdPasswordRecoveryMail2Subject $ fdPasswordRecoveryMail2Body $
+ fdPasswordRecoveryValidity $ fdPasswordRecoverySalt $
+ fdPasswordRecoveryUseAlternate $ fdPasswordRecoveryLoginAttribute
+ ) )
+
+# Dashboard Object Class
+objectclass ( 1.3.6.1.4.1.38414.27.2.1 NAME 'fdDashboardPluginConf'
+ DESC 'FusionDirectory dashboard plugin configuration'
+ SUP top AUXILIARY
+ MUST ( cn )
+ MAY ( fdDashboardPrefix $ fdDashboardNumberOfDigit $ fdDashboardExpiredAccountsDays) )
diff --git a/etc/openldap/schema/core-fd.schema b/etc/openldap/schema/core-fd.schema
new file mode 100644
index 0000000..b73b535
--- /dev/null
+++ b/etc/openldap/schema/core-fd.schema
@@ -0,0 +1,580 @@
+##
+## core-fd.schema - Needed by FusionDirectory for its basic functionalities
+##
+
+# Last OID used for attributes : 1.3.6.1.4.1.38414.62.1.77 04/08/25 #
+# Last OID used for objectClass : 1.3.6.1.4.1.38414.62.2.11 29/01/24 #
+
+##### Attributes from gosa ######
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.30 NAME 'gosaGroupObjects'
+ DESC 'GOsa - List of all object types that are in a gosaGroupOfNames'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.34 NAME 'gosaAclTemplate'
+ DESC 'GOsa - ACL entries for ACL roles'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.35 NAME 'gosaAclEntry'
+ DESC 'GOsa - ACL entries'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.37 NAME 'gosaSnapshotTimestamp'
+ DESC 'GOsa - Unix timestamp of snapshot'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.38 NAME 'gosaSnapshotDN'
+ DESC 'GOsa - Original DN of saved object in snapshot'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.10098.1.1.12.39 NAME 'gosaSnapshotData'
+ DESC 'GOsa - Original data of saved object in snapshot'
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 SINGLE-VALUE)
+
+##### Attributes from FusionDirectory #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.1 NAME 'fdUserDn'
+ DESC 'FusionDirectory - DN of a user'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.2 NAME 'fdObjectDn'
+ DESC 'FusionDirectory - DN of an object'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.3 NAME 'fdLockTimestamp'
+ DESC 'FusionDirectory - Lock token timestamp'
+ EQUALITY generalizedTimeMatch
+ ORDERING generalizedTimeOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.4 NAME 'fdSnapshotObjectType'
+ DESC 'FusionDirectory - object type of the snapshotted object'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.51 NAME 'fdSnapshotDataSource'
+ DESC 'FusionDirectory - snapshot data origin / source'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.68 NAME 'fdSnapshotHash'
+ DESC 'FusionDirectory - hash of the current snapShot allowing diff verification with MD5'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+##### Subscriptions Attributes ######
+
+attributetype ( 1.3.6.1.4.1.38414.62.11.1 NAME 'fdSubscriptionStartDate'
+ DESC 'FusionDirectory - Subscription Starting Date'
+ EQUALITY generalizedTimeMatch
+ ORDERING generalizedTimeOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.11.2 NAME 'fdSubscriptionEndDate'
+ DESC 'FusionDirectory - Subscription End Date'
+ EQUALITY generalizedTimeMatch
+ ORDERING generalizedTimeOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.11.3 NAME 'fdSubscriptionType'
+ DESC 'FusionDirectory - Subscription type'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.11.4 NAME 'fdSubscriptionContractId'
+ DESC 'FusionDirectory - Subscription contract ID'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.11.5 NAME 'fdSubscriptionName'
+ DESC 'FusionDirectory - Subscription client name'
+ SUP name )
+
+### Mail Template Attributes ###
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.5 NAME 'fdMailTemplateBody'
+ DESC 'FusionDirectory - template mail field'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.6 NAME 'fdMailTemplateRDN'
+ DESC 'FusionDirectory - template Mail RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.7 NAME 'fdMailTemplateSignature'
+ DESC 'FusionDirectory - template mail field'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.8 NAME 'fdMailAttachmentsContent'
+ DESC 'FusionDirectory - attachment data in bin format'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.9 NAME 'fdMailTemplateReadReceipt'
+ DESC 'FusionDirectory - template mail field'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.10 NAME 'fdMailTemplateSubject'
+ DESC 'FusionDirectory - template mail field'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+##### Tasks Attributes #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.11 NAME 'fdTasksMailObject'
+ DESC 'Fusion Directory - Tasks for mail template objects'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.12 NAME 'fdTasksScheduleDate'
+ DESC 'Scheduling of the Task - required processed date'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.13 NAME 'fdTasksMailUsers'
+ DESC 'Fusion Directory - Tasks Mail Users Recipient'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.14 NAME 'fdTasksStatus'
+ DESC 'Fusion Directory - Task Status'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.15 NAME 'fdTasksEndDate'
+ DESC 'Fusion Directory - Task End Date'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.57 NAME 'fdTasksLastExec'
+ DESC 'Fusion Directory - Time when tasks was last activated'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.77 NAME 'fdTasksNextExec'
+ DESC 'Fusion Directory - Time when tasks will be executed next'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.58 NAME 'fdTasksLastActivation'
+ DESC 'Fusion Directory - Time when tasks was last activated'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.16 NAME 'fdTasksCreationDate'
+ DESC 'Fusion Directory - Task Start Date'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.17 NAME 'fdTasksEmailsFromDN'
+ DESC 'Fusion Directory - Emails derived from DN'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.18 NAME 'fdTasksEmailSender'
+ DESC 'Fusion Directory - Emails derived from DN'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.55 NAME 'fdTasksEmailBCC'
+ DESC 'Fusion Directory - Emails derived from DN'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.19 NAME 'fdTasksMailType'
+ DESC 'Fusion Directory - Type of Mail attribute required'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+##### Tasks Granular #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.20 NAME 'fdTasksGranularStatus'
+ DESC 'Fusion Directory - Task Status'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.21 NAME 'fdTasksGranularSchedule'
+ DESC 'Scheduling of the Task - required processed date'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.22 NAME 'fdTasksGranularMaster'
+ DESC 'Fusion Directory - Tasks Master objects'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.23 NAME 'fdTasksGranularType'
+ DESC 'Fusion Directory - Tasks Type'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.24 NAME 'fdTasksGranularMail'
+ DESC 'Fusion Directory - Emails recipients if object mail'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.25 NAME 'fdTasksGranularMailFrom'
+ DESC 'Fusion Directory - Emails sender if object mail'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.56 NAME 'fdTasksGranularMailBCC'
+ DESC 'Fusion Directory - Emails sender if object mail'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.26 NAME 'fdTasksGranularRef'
+ DESC 'Fusion Directory - Reference towards a CN (E.g Mail Template)'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.69 NAME 'fdTasksGranularHelper'
+ DESC 'Fusion Directory - Reference towards a potential helper value from main task (case of reminder)'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.74 NAME 'fdTasksGranularCreationDate'
+ DESC 'Fusion Directory - Task Granular Creation Date'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.75 NAME 'fdTasksGranularLastExec'
+ DESC 'Fusion Directory - Time when granular tasks was last executed'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.76 NAME 'fdTasksGranularNextExec'
+ DESC 'Fusion Directory - Time when granular tasks will be executed next'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+## Any tasks requiring to store DN (Such as lifeCycle). ##
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.67 NAME 'fdTasksGranularDN'
+ DESC 'Fusion Directory - DN of the targeted user'
+ EQUALITY caseExactMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+
+##### Tasks Conf #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.27 NAME 'fdTasksRDN'
+ DESC 'FusionDirectory - Tasks RDN'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.28 NAME 'fdTasksConfLastExecTime'
+ DESC 'Store time of last mail tasks success - secure spam interval'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.29 NAME 'fdTasksConfMaxEmails'
+ DESC 'FusionDirectory maximum emails to be processed by Orchestrator - secure spam'
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.30 NAME 'fdTasksConfIntervalEmails'
+ DESC 'FusionDirectory maximum emails to be processed by Orchestrator - secure spam'
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
+
+##### Plugin Manager #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.31 NAME 'fdPluginManagerInfoAuthors'
+ DESC 'FusionDirectory - Plugin authors attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.32 NAME 'fdPluginManagerInfoVersion'
+ DESC 'FusionDirectory - Plugin Version attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.33 NAME 'fdPluginManagerSupportHomeUrl'
+ DESC 'FusionDirectory - Plugin Support page url attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.34 NAME 'fdPluginManagerSupportTicketUrl'
+ DESC 'FusionDirectory - Plugin Suuport ticket url attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.35 NAME 'fdPluginManagerSupportDiscussionUrl'
+ DESC 'FusionDirectory - Pluging discussion url attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.36 NAME 'fdPluginManagerSupportSchemaUrl'
+ DESC 'FusionDirectory - Plugin schema url attribute needed if necessary'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.37 NAME 'fdPluginManagerReqFdVersion'
+ DESC 'FusionDirectory - Plugin Fusiondirectory Version requirement attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.38 NAME 'fdPluginManagerReqPhpVersion'
+ DESC 'FusionDirectory - Plugin PHP Version requirement attribute'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.39 NAME 'fdPluginManagerContentPhpClass'
+ DESC 'FusionDirectory - Plugin Manager : list on php class provided'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.40 NAME 'fdPluginManagerContentLdapObject'
+ DESC 'FusionDirectory - Plugin Manager : list on Ldap Object needed'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.41 NAME 'fdPluginManagerContentLdapAttributes'
+ DESC 'FusionDirectory - Plugin Manager : list on Ldap attributes needed'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.42 NAME 'fdPluginManagerInfoStatus'
+ DESC 'FusionDirectory - Plugin Manager : status of plugin : Dev / stable / dontuse '
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.43 NAME 'fdPluginManagerSupportDownloadUrl'
+ DESC 'FusionDirectory - Plugin direct download url '
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.44 NAME 'fdPluginManagerInfoTags'
+ DESC 'FusionDirectory - Plugin Tag for identity plugins goals'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.45 NAME 'fdPluginManagerInfoLogoUrl'
+ DESC 'FusionDirectory - Plugin Logo url '
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.46 NAME 'fdPluginManagerInfoScreenshotUrl'
+ DESC 'FusionDirectory - Plugin Screenshot Url '
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.47 NAME 'fdPluginManagerInfoLicence'
+ DESC 'FusionDirectory - Plugin Licence'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.48 NAME 'fdPluginManagerInfoOrigin'
+ DESC 'FusionDirectory - Plugin Origin'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.49 NAME 'fdPluginManagerSupportProvider'
+ DESC 'FusionDirectory - Plugin Support Provider'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.50 NAME 'fdPluginManagerSupportContractUrl'
+ DESC 'FusionDirectory - Plugin Support Contract url'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+##### Tasks Granular Part 2 #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.52 NAME 'fdTasksRepeatable'
+ DESC 'Allow a given task to be repeatable'
+ EQUALITY booleanMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.7')
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.53 NAME 'fdTasksUpdatable'
+ DESC 'Allow a given task to be updatable'
+ EQUALITY booleanMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.7')
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.54 NAME 'fdTasksRepeatableSchedule'
+ DESC 'Set the repetition of the tasks via a set attribute'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15')
+
+##### Token management attributes #####
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.70 NAME 'fdTokenUserDN'
+ DESC 'The DN user linked to the token'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.71 NAME 'fdTokenType'
+ DESC 'The token type eg reminder, recovery'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.72 NAME 'fdToken'
+ DESC 'The token'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+attributetype ( 1.3.6.1.4.1.38414.62.1.73 NAME 'fdTokenTimestamp'
+ DESC 'Timestamp for the validation of the token'
+ EQUALITY caseIgnoreMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
+
+##### Classes #####
+
+### old gosa ObjectClass ###
+
+objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.4 NAME 'gosaDepartment' SUP top AUXILIARY
+ DESC 'GOsa - Class to mark Departments for GOsa'
+ MUST ( ou $ description )
+ MAY ( manager $ co $ labeledURI ) )
+
+objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.12 NAME 'gosaGroupOfNames'
+ DESC 'GOsa - Adds the gosaGroupObjects field to groupOfNames'
+ SUP top AUXILIARY
+ MUST ( cn $ gosaGroupObjects ) MAY ( member $ description ) )
+
+objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.17 NAME 'gosaRole'
+ DESC 'GOsa - ACL container to define ACL roles'
+ SUP top STRUCTURAL
+ MUST ( gosaAclTemplate $ cn )
+ MAY ( description ) )
+
+objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.18 NAME 'gosaAcl'
+ DESC 'GOsa - ACL container to define single ACLs'
+ SUP top AUXILIARY
+ MUST ( gosaAclEntry ))
+
+objectclass ( 1.3.6.1.4.1.10098.1.2.1.19.19 NAME 'gosaSnapshotObject'
+ DESC 'GOsa - Container object for undo and snapshot data'
+ SUP top STRUCTURAL
+ MUST ( gosaSnapshotTimestamp $ gosaSnapshotDN $ gosaSnapshotData $ fdSnapshotDataSource )
+ MAY ( fdSnapshotObjectType $ description $ fdSnapshotHash) )
+
+### New FusionDirectory Objectclass ###
+
+objectclass ( 1.3.6.1.4.1.38414.62.2.1 NAME 'fdLockEntry' SUP top STRUCTURAL
+ DESC 'FusionDirectory - Class for FD locking'
+ MUST ( fdUserDn $ fdObjectDn $ cn $ fdLockTimestamp ))
+
+### Subscription Related Object Class ###
+
+objectclass ( 1.3.6.1.4.1.38414.62.2.2 NAME 'fdSubscriptionInformation' SUP top STRUCTURAL
+ DESC 'FusionDirectory - Information about current subscription'
+ MUST ( cn )
+ MAY ( uid $ fdSubscriptionStartDate $ fdSubscriptionEndDate $ fdSubscriptionType $ fdSubscriptionContractId $ fdSubscriptionName ))
+
+### Plugin manager Related Object Class ###
+
+objectclass (1.3.6.1.4.1.38414.62.2.3 NAME 'fdPluginManager'
+ DESC 'FusionDirectory - Plugins Manager ObjectClass'
+ MUST ( cn $ description $ fdPluginManagerInfoAuthors $ fdPluginManagerInfoVersion $ fdPluginManagerInfoStatus $ fdPluginManagerInfoLicence $ fdPluginManagerInfoOrigin $ fdPluginManagerSupportHomeUrl $ fdPluginManagerReqFdVersion $ fdPluginManagerReqPhpVersion $ fdPluginManagerSupportProvider )
+ MAY ( fdPluginManagerInfoScreenshotUrl $ fdPluginManagerInfoLogoUrl $ fdPluginManagerInfoTags $ fdPluginManagerSupportTicketUrl $ fdPluginManagerSupportDiscussionUrl $ fdPluginManagerSupportSchemaUrl $ fdPluginManagerSupportDownloadUrl $ fdPluginManagerContentPhpClass $ fdPluginManagerContentLdapObject $ fdPluginManagerContentLdapAttributes $ fdPluginManagerSupportContractUrl ))
+
+### Mail Template Related Object Class ###
+
+objectclass (1.3.6.1.4.1.38414.62.2.4 NAME 'fdMailTemplate'
+ DESC 'FusionDirectory - template mail object'
+ SUP top STRUCTURAL
+ MUST ( cn $ fdMailTemplateBody $ fdMailTemplateSubject )
+ MAY ( fdMailTemplateSignature $ fdMailTemplateReadReceipt))
+
+objectclass (1.3.6.1.4.1.38414.62.2.10 NAME 'fdMailAttachments'
+ DESC 'FusionDirectory - mail template attachments'
+ MUST ( cn $ fdMailAttachmentsContent ))
+
+objectclass ( 1.3.6.1.4.1.38414.62.2.5 NAME 'fdMailTemplateConf'
+ DESC 'FusionDirectory Mail Template Configuration'
+ SUP top AUXILIARY
+ MUST ( cn )
+ MAY ( fdMailTemplateRDN ) )
+
+### Tasks Related Object Class ###
+
+objectclass (1.3.6.1.4.1.38414.62.2.6 NAME 'fdTasks'
+ DESC 'FusionDirectory - Tasks objects'
+ MUST ( cn $ fdTasksStatus $ fdTasksCreationDate )
+ MAY ( fdTasksScheduleDate $ fdTasksEndDate $ fdTasksRepeatableSchedule $ fdTasksUpdatable $ fdTasksRepeatable
+ $ fdTasksLastActivation $ fdTasksLastExec $ fdTasksNextExec $ description))
+
+objectclass (1.3.6.1.4.1.38414.62.2.7 NAME 'fdTasksMail'
+ DESC 'FusionDirectory - Tasks objects Mail'
+ SUP top AUXILIARY
+ MUST ( fdTasksMailObject $ fdTasksEmailSender )
+ MAY ( fdTasksMailUsers $ fdTasksEmailsFromDN $ fdTasksMailType $ fdTasksEmailBCC ) )
+
+objectclass (1.3.6.1.4.1.38414.62.2.8 NAME 'fdTasksGranular'
+ DESC 'FusionDirectory - Tasks granular objects'
+ MUST ( fdTasksGranularMaster $ cn $ fdTasksGranularType $ fdTasksGranularSchedule $ fdTasksGranularStatus $ fdTasksGranularCreationDate )
+ MAY (fdTasksGranularMailBCC $ fdTasksGranularDN $ fdTasksGranularRef $ fdTasksGranularMail $ fdTasksGranularMailFrom $ fdTasksGranularHelper $ fdTasksGranularLastExec $ fdTasksGranularNextExec))
+
+objectclass (1.3.6.1.4.1.38414.62.2.9 NAME 'fdTasksConf'
+ DESC 'FusionDirectory - Tasks objects Configuration'
+ SUP top AUXILIARY
+ MUST ( cn )
+ MAY ( fdTasksRDN $ fdTasksConfLastExecTime $ fdTasksConfMaxEmails $ fdTasksConfIntervalEmails))
+
+### token objectclass ###
+
+objectclass ( 1.3.6.1.4.1.38414.62.2.11 NAME 'fdTokenEntry'
+ SUP top STRUCTURAL
+ DESC 'FusionDirectory - Class for token storage'
+ MUST ( cn $ fdTokenUserDN $ fdTokenType $ fdToken $ fdTokenTimestamp ))
diff --git a/etc/openldap/schema/ldapns.schema b/etc/openldap/schema/ldapns.schema
new file mode 100644
index 0000000..21ae00c
--- /dev/null
+++ b/etc/openldap/schema/ldapns.schema
@@ -0,0 +1,23 @@
+# $Id: ldapns.schema,v 1.3 2003/05/29 12:57:29 lukeh Exp $
+
+# LDAP Name Service Additional Schema
+
+# http://www.iana.org/assignments/gssapi-service-names
+
+attributetype ( 1.3.6.1.4.1.5322.17.2.1 NAME 'authorizedService'
+ DESC 'IANA GSS-API authorized service name'
+ EQUALITY caseIgnoreMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
+
+objectclass ( 1.3.6.1.4.1.5322.17.1.1 NAME 'authorizedServiceObject'
+ DESC 'Auxiliary object class for adding authorizedService attribute'
+ SUP top
+ AUXILIARY
+ MAY authorizedService )
+
+objectclass ( 1.3.6.1.4.1.5322.17.1.2 NAME 'hostObject'
+ DESC 'Auxiliary object class for adding host attribute'
+ SUP top
+ AUXILIARY
+ MAY host )
+
diff --git a/etc/openldap/schema/rfc2307bis.schema b/etc/openldap/schema/rfc2307bis.schema
new file mode 100644
index 0000000..db34365
--- /dev/null
+++ b/etc/openldap/schema/rfc2307bis.schema
@@ -0,0 +1,288 @@
+# builtin
+#
+#attributetype ( 1.3.6.1.1.1.1.0 NAME 'uidNumber'
+# DESC 'An integer uniquely identifying a user in an administrative domain'
+# EQUALITY integerMatch
+# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+# SINGLE-VALUE )
+
+# builtin
+#
+#attributetype ( 1.3.6.1.1.1.1.1 NAME 'gidNumber'
+# DESC 'An integer uniquely identifying a group in an
+# administrative domain'
+# EQUALITY integerMatch
+# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+# SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.2 NAME 'gecos'
+ DESC 'The GECOS field; the common name'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.3 NAME 'homeDirectory'
+ DESC 'The absolute path to the home directory'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.4 NAME 'loginShell'
+ DESC 'The path to the login shell'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.5 NAME 'shadowLastChange'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.6 NAME 'shadowMin'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.7 NAME 'shadowMax'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.8 NAME 'shadowWarning'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.9 NAME 'shadowInactive'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.10 NAME 'shadowExpire'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.11 NAME 'shadowFlag'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.13 NAME 'memberNisNetgroup'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.14 NAME 'nisNetgroupTriple'
+ DESC 'Netgroup triple'
+ EQUALITY caseIgnoreIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.15 NAME 'ipServicePort'
+ DESC 'Service port number'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.16 NAME 'ipServiceProtocol'
+ DESC 'Service protocol name'
+ SUP name )
+
+attributetype ( 1.3.6.1.1.1.1.17 NAME 'ipProtocolNumber'
+ DESC 'IP protocol number'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.18 NAME 'oncRpcNumber'
+ DESC 'ONC RPC number'
+ EQUALITY integerMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
+ SINGLE-VALUE )
+attributetype ( 1.3.6.1.1.1.1.19 NAME 'ipHostNumber'
+ DESC 'IPv4 addresses as a dotted decimal omitting leading
+ zeros or IPv6 addresses as defined in RFC2373'
+ SUP name )
+
+attributetype ( 1.3.6.1.1.1.1.20 NAME 'ipNetworkNumber'
+ DESC 'IP network as a dotted decimal, eg. 192.168,
+ omitting leading zeros'
+ SUP name
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.21 NAME 'ipNetmaskNumber'
+ DESC 'IP netmask as a dotted decimal, eg. 255.255.255.0,
+ omitting leading zeros'
+ EQUALITY caseIgnoreIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.22 NAME 'macAddress'
+ DESC 'MAC address in maximal, colon separated hex
+ notation, eg. 00:00:92:90:ee:e2'
+ EQUALITY caseIgnoreIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.23 NAME 'bootParameter'
+ DESC 'rpc.bootparamd parameter'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.24 NAME 'bootFile'
+ DESC 'Boot image name'
+ EQUALITY caseExactIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.1.1.1.26 NAME 'nisMapName'
+ DESC 'Name of a A generic NIS map'
+ SUP name )
+
+attributetype ( 1.3.6.1.1.1.1.27 NAME 'nisMapEntry'
+ DESC 'A generic NIS entry'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
+ SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.28 NAME 'nisPublicKey'
+ DESC 'NIS public key'
+ EQUALITY octetStringMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.29 NAME 'nisSecretKey'
+ DESC 'NIS secret key'
+ EQUALITY octetStringMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.30 NAME 'nisDomain'
+ DESC 'NIS domain'
+ EQUALITY caseIgnoreIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26)
+
+attributetype ( 1.3.6.1.1.1.1.31 NAME 'automountMapName'
+ DESC 'automount Map Name'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.32 NAME 'automountKey'
+ DESC 'Automount Key value'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+
+attributetype ( 1.3.6.1.1.1.1.33 NAME 'automountInformation'
+ DESC 'Automount information'
+ EQUALITY caseExactIA5Match
+ SUBSTR caseExactIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+
+objectclass ( 1.3.6.1.1.1.2.0 NAME 'posixAccount' SUP top AUXILIARY
+ DESC 'Abstraction of an account with POSIX attributes'
+ MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
+ MAY ( userPassword $ loginShell $ gecos $
+ description ) )
+
+objectclass ( 1.3.6.1.1.1.2.1 NAME 'shadowAccount' SUP top AUXILIARY
+ DESC 'Additional attributes for shadow passwords'
+ MUST uid
+ MAY ( userPassword $ description $
+ shadowLastChange $ shadowMin $ shadowMax $
+ shadowWarning $ shadowInactive $
+ shadowExpire $ shadowFlag ) )
+
+objectclass ( 1.3.6.1.1.1.2.2 NAME 'posixGroup' SUP top AUXILIARY
+ DESC 'Abstraction of a group of accounts'
+ MUST gidNumber
+ MAY ( userPassword $ memberUid $
+ description ) )
+
+objectclass ( 1.3.6.1.1.1.2.3 NAME 'ipService' SUP top STRUCTURAL
+ DESC 'Abstraction an Internet Protocol service.
+ Maps an IP port and protocol (such as tcp or udp)
+ to one or more names; the distinguished value of
+ the cn attribute denotes the services canonical
+ name'
+ MUST ( cn $ ipServicePort $ ipServiceProtocol )
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.4 NAME 'ipProtocol' SUP top STRUCTURAL
+ DESC 'Abstraction of an IP protocol. Maps a protocol number
+ to one or more names. The distinguished value of the cn
+ attribute denotes the protocols canonical name'
+ MUST ( cn $ ipProtocolNumber )
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.5 NAME 'oncRpc' SUP top STRUCTURAL
+ DESC 'Abstraction of an Open Network Computing (ONC)
+ [RFC1057] Remote Procedure Call (RPC) binding.
+ This class maps an ONC RPC number to a name.
+ The distinguished value of the cn attribute denotes
+ the RPC services canonical name'
+ MUST ( cn $ oncRpcNumber )
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.6 NAME 'ipHost' SUP top AUXILIARY
+ DESC 'Abstraction of a host, an IP device. The distinguished
+ value of the cn attribute denotes the hosts canonical
+ name. Device SHOULD be used as a structural class'
+ MUST ( cn $ ipHostNumber )
+ MAY ( userPassword $ l $ description $ manager ) )
+
+objectclass ( 1.3.6.1.1.1.2.7 NAME 'ipNetwork' SUP top STRUCTURAL
+ DESC 'Abstraction of a network. The distinguished value of
+ the cn attribute denotes the networks canonical name'
+ MUST ipNetworkNumber
+ MAY ( cn $ ipNetmaskNumber $ l $ description $ manager ) )
+
+objectclass ( 1.3.6.1.1.1.2.8 NAME 'nisNetgroup' SUP top STRUCTURAL
+ DESC 'Abstraction of a netgroup. May refer to other netgroups'
+ MUST cn
+ MAY ( nisNetgroupTriple $ memberNisNetgroup $ description ) )
+
+objectclass ( 1.3.6.1.1.1.2.9 NAME 'nisMap' SUP top STRUCTURAL
+ DESC 'A generic abstraction of a NIS map'
+ MUST nisMapName
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.10 NAME 'nisObject' SUP top STRUCTURAL
+ DESC 'An entry in a NIS map'
+ MUST ( cn $ nisMapEntry $ nisMapName )
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.11 NAME 'ieee802Device' SUP top AUXILIARY
+ DESC 'A device with a MAC address; device SHOULD be
+ used as a structural class'
+ MAY macAddress )
+
+objectclass ( 1.3.6.1.1.1.2.12 NAME 'bootableDevice' SUP top AUXILIARY
+ DESC 'A device with boot parameters; device SHOULD be
+ used as a structural class'
+ MAY ( bootFile $ bootParameter ) )
+
+objectclass ( 1.3.6.1.1.1.2.14 NAME 'nisKeyObject' SUP top AUXILIARY
+ DESC 'An object with a public and secret key'
+ MUST ( cn $ nisPublicKey $ nisSecretKey )
+ MAY ( uidNumber $ description ) )
+
+objectclass ( 1.3.6.1.1.1.2.15 NAME 'nisDomainObject' SUP top AUXILIARY
+ DESC 'Associates a NIS domain with a naming context'
+ MUST nisDomain )
+
+objectclass ( 1.3.6.1.1.1.2.16 NAME 'automountMap' SUP top STRUCTURAL
+ MUST ( automountMapName )
+ MAY description )
+
+objectclass ( 1.3.6.1.1.1.2.17 NAME 'automount' SUP top STRUCTURAL
+ DESC 'Automount information'
+ MUST ( automountKey $ automountInformation )
+ MAY description )
+## namedObject is needed for groups without members
+objectclass ( 1.3.6.1.4.1.5322.13.1.1 NAME 'namedObject' SUP top
+ STRUCTURAL MAY cn )
+
diff --git a/etc/openldap/schema/template-fd.schema b/etc/openldap/schema/template-fd.schema
new file mode 100644
index 0000000..a90ca87
--- /dev/null
+++ b/etc/openldap/schema/template-fd.schema
@@ -0,0 +1,16 @@
+##
+## template-fd.schema - Needed by Fusion Directory for managing templates
+##
+
+# Attributes
+attributetype ( 1.3.6.1.4.1.38414.38.1.1 NAME 'fdTemplateField'
+ DESC 'FusionDirectory - template field'
+ EQUALITY octetStringMatch
+ SUBSTR caseIgnoreSubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40)
+
+# Objectclasses
+objectclass (1.3.6.1.4.1.38414.38.2.1 NAME 'fdTemplate'
+ DESC 'FusionDirectory - template object'
+ MUST ( cn )
+ MAY ( fdTemplateField ) )
diff --git a/etc/periodic/weekly/9-clean-php b/etc/periodic/weekly/9-clean-php
new file mode 100755
index 0000000..dd0cd5d
--- /dev/null
+++ b/etc/periodic/weekly/9-clean-php
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+find /var/lib/php/sessions -mmin +1440 -type f -print0 | xargs -0 rm -f
+find /var/lib/php/uploads -mmin +1440 -type f -print0 | xargs -0 rm -f
diff --git a/etc/php83/conf.d/00_bcmath.ini b/etc/php83/conf.d/00_bcmath.ini
new file mode 100644
index 0000000..6813a0b
--- /dev/null
+++ b/etc/php83/conf.d/00_bcmath.ini
@@ -0,0 +1 @@
+extension=bcmath
diff --git a/etc/php83/conf.d/00_bz2.ini b/etc/php83/conf.d/00_bz2.ini
new file mode 100644
index 0000000..d0b5b0f
--- /dev/null
+++ b/etc/php83/conf.d/00_bz2.ini
@@ -0,0 +1 @@
+extension=bz2
diff --git a/etc/php83/conf.d/00_curl.ini b/etc/php83/conf.d/00_curl.ini
new file mode 100644
index 0000000..89fa13d
--- /dev/null
+++ b/etc/php83/conf.d/00_curl.ini
@@ -0,0 +1 @@
+extension=curl
diff --git a/etc/php83/conf.d/00_gd.ini b/etc/php83/conf.d/00_gd.ini
new file mode 100644
index 0000000..bb35ed0
--- /dev/null
+++ b/etc/php83/conf.d/00_gd.ini
@@ -0,0 +1 @@
+extension=gd
diff --git a/etc/php83/conf.d/00_gettext.ini b/etc/php83/conf.d/00_gettext.ini
new file mode 100644
index 0000000..549944c
--- /dev/null
+++ b/etc/php83/conf.d/00_gettext.ini
@@ -0,0 +1 @@
+extension=gettext
diff --git a/etc/php83/conf.d/00_gmp.ini b/etc/php83/conf.d/00_gmp.ini
new file mode 100644
index 0000000..1b2be41
--- /dev/null
+++ b/etc/php83/conf.d/00_gmp.ini
@@ -0,0 +1 @@
+extension=gmp
diff --git a/etc/php83/conf.d/00_iconv.ini b/etc/php83/conf.d/00_iconv.ini
new file mode 100644
index 0000000..4711441
--- /dev/null
+++ b/etc/php83/conf.d/00_iconv.ini
@@ -0,0 +1 @@
+extension=iconv
diff --git a/etc/php83/conf.d/00_imap.ini b/etc/php83/conf.d/00_imap.ini
new file mode 100644
index 0000000..d026b09
--- /dev/null
+++ b/etc/php83/conf.d/00_imap.ini
@@ -0,0 +1 @@
+extension=imap
diff --git a/etc/php83/conf.d/00_intl.ini b/etc/php83/conf.d/00_intl.ini
new file mode 100644
index 0000000..63f20e8
--- /dev/null
+++ b/etc/php83/conf.d/00_intl.ini
@@ -0,0 +1 @@
+extension=intl
diff --git a/etc/php83/conf.d/00_ldap.ini b/etc/php83/conf.d/00_ldap.ini
new file mode 100644
index 0000000..5d67d7d
--- /dev/null
+++ b/etc/php83/conf.d/00_ldap.ini
@@ -0,0 +1 @@
+extension=ldap
diff --git a/etc/php83/conf.d/00_mbstring.ini b/etc/php83/conf.d/00_mbstring.ini
new file mode 100644
index 0000000..0e3a392
--- /dev/null
+++ b/etc/php83/conf.d/00_mbstring.ini
@@ -0,0 +1 @@
+extension=mbstring
diff --git a/etc/php83/conf.d/00_opcache.ini b/etc/php83/conf.d/00_opcache.ini
new file mode 100644
index 0000000..592cb59
--- /dev/null
+++ b/etc/php83/conf.d/00_opcache.ini
@@ -0,0 +1 @@
+zend_extension=opcache
diff --git a/etc/php83/conf.d/00_openssl.ini b/etc/php83/conf.d/00_openssl.ini
new file mode 100644
index 0000000..355624b
--- /dev/null
+++ b/etc/php83/conf.d/00_openssl.ini
@@ -0,0 +1 @@
+extension=openssl
diff --git a/etc/php83/conf.d/00_posix.ini b/etc/php83/conf.d/00_posix.ini
new file mode 100644
index 0000000..e58281c
--- /dev/null
+++ b/etc/php83/conf.d/00_posix.ini
@@ -0,0 +1 @@
+extension=posix
diff --git a/etc/php83/conf.d/00_session.ini b/etc/php83/conf.d/00_session.ini
new file mode 100644
index 0000000..7482518
--- /dev/null
+++ b/etc/php83/conf.d/00_session.ini
@@ -0,0 +1 @@
+extension=session
diff --git a/etc/php83/conf.d/00_simplexml.ini b/etc/php83/conf.d/00_simplexml.ini
new file mode 100644
index 0000000..c88c0ae
--- /dev/null
+++ b/etc/php83/conf.d/00_simplexml.ini
@@ -0,0 +1 @@
+extension=simplexml
diff --git a/etc/php83/conf.d/00_sodium.ini b/etc/php83/conf.d/00_sodium.ini
new file mode 100644
index 0000000..2932bf4
--- /dev/null
+++ b/etc/php83/conf.d/00_sodium.ini
@@ -0,0 +1 @@
+extension=sodium
diff --git a/etc/php83/conf.d/00_sqlite3.ini b/etc/php83/conf.d/00_sqlite3.ini
new file mode 100644
index 0000000..7ee602b
--- /dev/null
+++ b/etc/php83/conf.d/00_sqlite3.ini
@@ -0,0 +1 @@
+extension=sqlite3
diff --git a/etc/php83/conf.d/00_xml.ini b/etc/php83/conf.d/00_xml.ini
new file mode 100644
index 0000000..971783d
--- /dev/null
+++ b/etc/php83/conf.d/00_xml.ini
@@ -0,0 +1 @@
+extension=xml
diff --git a/etc/php83/conf.d/00_zip.ini b/etc/php83/conf.d/00_zip.ini
new file mode 100644
index 0000000..08a7894
--- /dev/null
+++ b/etc/php83/conf.d/00_zip.ini
@@ -0,0 +1 @@
+extension=zip
diff --git a/etc/php83/conf.d/01_phar.ini b/etc/php83/conf.d/01_phar.ini
new file mode 100644
index 0000000..c535cef
--- /dev/null
+++ b/etc/php83/conf.d/01_phar.ini
@@ -0,0 +1 @@
+extension=phar
diff --git a/etc/php83/conf.d/99_bcmath.ini b/etc/php83/conf.d/99_bcmath.ini
new file mode 100644
index 0000000..0e9b8b5
--- /dev/null
+++ b/etc/php83/conf.d/99_bcmath.ini
@@ -0,0 +1,4 @@
+[bcmath]
+; Number of decimal digits for all bcmath functions.
+; http://php.net/bcmath.scale
+bcmath.scale = 0
diff --git a/etc/php83/conf.d/99_curl.ini b/etc/php83/conf.d/99_curl.ini
new file mode 100644
index 0000000..16b978e
--- /dev/null
+++ b/etc/php83/conf.d/99_curl.ini
@@ -0,0 +1,4 @@
+[curl]
+; A default value for the CURLOPT_CAINFO option. This is required to be an
+; absolute path.
+;curl.cainfo =
diff --git a/etc/php83/conf.d/99_dba.ini b/etc/php83/conf.d/99_dba.ini
new file mode 100644
index 0000000..e5bc8bf
--- /dev/null
+++ b/etc/php83/conf.d/99_dba.ini
@@ -0,0 +1,2 @@
+[dba]
+;dba.default_handler=
diff --git a/etc/php83/conf.d/99_exif.ini b/etc/php83/conf.d/99_exif.ini
new file mode 100644
index 0000000..b31c0ce
--- /dev/null
+++ b/etc/php83/conf.d/99_exif.ini
@@ -0,0 +1,23 @@
+[exif]
+; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS.
+; With mbstring support this will automatically be converted into the encoding
+; given by corresponding encode setting. When empty mbstring.internal_encoding
+; is used. For the decode settings you can distinguish between motorola and
+; intel byte order. A decode setting cannot be empty.
+; http://php.net/exif.encode-unicode
+;exif.encode_unicode = ISO-8859-15
+
+; http://php.net/exif.decode-unicode-motorola
+;exif.decode_unicode_motorola = UCS-2BE
+
+; http://php.net/exif.decode-unicode-intel
+;exif.decode_unicode_intel = UCS-2LE
+
+; http://php.net/exif.encode-jis
+;exif.encode_jis =
+
+; http://php.net/exif.decode-jis-motorola
+;exif.decode_jis_motorola = JIS
+
+; http://php.net/exif.decode-jis-intel
+;exif.decode_jis_intel = JIS
diff --git a/etc/php83/conf.d/99_ffi.ini b/etc/php83/conf.d/99_ffi.ini
new file mode 100644
index 0000000..2066c5d
--- /dev/null
+++ b/etc/php83/conf.d/99_ffi.ini
@@ -0,0 +1,9 @@
+[ffi]
+; FFI API restriction. Possible values:
+; "preload" - enabled in CLI scripts and preloaded files (default)
+; "false" - always disabled
+; "true" - always enabled
+;ffi.enable=preload
+
+; List of headers files to preload, wildcard patterns allowed.
+;ffi.preload=
diff --git a/etc/php83/conf.d/99_gd.ini b/etc/php83/conf.d/99_gd.ini
new file mode 100644
index 0000000..9da3c78
--- /dev/null
+++ b/etc/php83/conf.d/99_gd.ini
@@ -0,0 +1,6 @@
+[gd]
+; Tell the jpeg decode to ignore warnings and try to create
+; a gd image. The warning will then be displayed as notices
+; disabled by default
+; http://php.net/gd.jpeg-ignore-warning
+;gd.jpeg_ignore_warning = 1
diff --git a/etc/php83/conf.d/99_iconv.ini b/etc/php83/conf.d/99_iconv.ini
new file mode 100644
index 0000000..14bcfd5
--- /dev/null
+++ b/etc/php83/conf.d/99_iconv.ini
@@ -0,0 +1,17 @@
+[iconv]
+; Use of this INI entry is deprecated, use global input_encoding instead.
+; If empty, default_charset or input_encoding or iconv.input_encoding is used.
+; The precedence is: default_charset < input_encoding < iconv.input_encoding
+;iconv.input_encoding =
+
+; Use of this INI entry is deprecated, use global internal_encoding instead.
+; If empty, default_charset or internal_encoding or iconv.internal_encoding is used.
+; The precedence is: default_charset < internal_encoding < iconv.internal_encoding
+;iconv.internal_encoding =
+
+; Use of this INI entry is deprecated, use global output_encoding instead.
+; If empty, default_charset or output_encoding or iconv.output_encoding is used.
+; The precedence is: default_charset < output_encoding < iconv.output_encoding
+; To use an output encoding conversion, iconv's output handler must be set
+; otherwise output encoding conversion cannot be performed.
+;iconv.output_encoding =
diff --git a/etc/php83/conf.d/99_imap.ini b/etc/php83/conf.d/99_imap.ini
new file mode 100644
index 0000000..060b23c
--- /dev/null
+++ b/etc/php83/conf.d/99_imap.ini
@@ -0,0 +1,6 @@
+[imap]
+; rsh/ssh logins are disabled by default. Use this INI entry if you want to
+; enable them. Note that the IMAP library does not filter mailbox names before
+; passing them to rsh/ssh command, thus passing untrusted data to this function
+; with rsh/ssh enabled is insecure.
+;imap.enable_insecure_rsh=0
diff --git a/etc/php83/conf.d/99_intl.ini b/etc/php83/conf.d/99_intl.ini
new file mode 100644
index 0000000..c36c85c
--- /dev/null
+++ b/etc/php83/conf.d/99_intl.ini
@@ -0,0 +1,7 @@
+[intl]
+;intl.default_locale =
+; This directive allows you to produce PHP errors when some error
+; happens within intl functions. The value is the level of the error produced.
+; Default is 0, which does not produce any errors.
+;intl.error_level = E_WARNING
+;intl.use_exceptions = 0
diff --git a/etc/php83/conf.d/99_ldap.ini b/etc/php83/conf.d/99_ldap.ini
new file mode 100644
index 0000000..941d8b2
--- /dev/null
+++ b/etc/php83/conf.d/99_ldap.ini
@@ -0,0 +1,3 @@
+[ldap]
+; Sets the maximum number of open links or -1 for unlimited.
+ldap.max_links = -1
diff --git a/etc/php83/conf.d/99_mbstring b/etc/php83/conf.d/99_mbstring
new file mode 100644
index 0000000..a5dbc73
--- /dev/null
+++ b/etc/php83/conf.d/99_mbstring
@@ -0,0 +1,78 @@
+[mbstring]
+; language for internal character representation.
+; This affects mb_send_mail() and mbstring.detect_order.
+; http://php.net/mbstring.language
+;mbstring.language = Japanese
+
+; Use of this INI entry is deprecated, use global internal_encoding instead.
+; internal/script encoding.
+; Some encoding cannot work as internal encoding. (e.g. SJIS, BIG5, ISO-2022-*)
+; If empty, default_charset or internal_encoding or iconv.internal_encoding is used.
+; The precedence is: default_charset < internal_encoding < iconv.internal_encoding
+;mbstring.internal_encoding =
+
+; Use of this INI entry is deprecated, use global input_encoding instead.
+; http input encoding.
+; mbstring.encoding_translation = On is needed to use this setting.
+; If empty, default_charset or input_encoding or mbstring.input is used.
+; The precedence is: default_charset < input_encoding < mbstring.http_input
+; http://php.net/mbstring.http-input
+;mbstring.http_input =
+
+; Use of this INI entry is deprecated, use global output_encoding instead.
+; http output encoding.
+; mb_output_handler must be registered as output buffer to function.
+; If empty, default_charset or output_encoding or mbstring.http_output is used.
+; The precedence is: default_charset < output_encoding < mbstring.http_output
+; To use an output encoding conversion, mbstring's output handler must be set
+; otherwise output encoding conversion cannot be performed.
+; http://php.net/mbstring.http-output
+;mbstring.http_output =
+
+; enable automatic encoding translation according to
+; mbstring.internal_encoding setting. Input chars are
+; converted to internal encoding by setting this to On.
+; Note: Do _not_ use automatic encoding translation for
+; portable libs/applications.
+; http://php.net/mbstring.encoding-translation
+;mbstring.encoding_translation = Off
+
+; automatic encoding detection order.
+; "auto" detect order is changed according to mbstring.language
+; http://php.net/mbstring.detect-order
+;mbstring.detect_order = auto
+
+; substitute_character used when character cannot be converted
+; one from another
+; http://php.net/mbstring.substitute-character
+;mbstring.substitute_character = none
+
+; overload(replace) single byte functions by mbstring functions.
+; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
+; etc. Possible values are 0,1,2,4 or combination of them.
+; For example, 7 for overload everything.
+; 0: No overload
+; 1: Overload mail() function
+; 2: Overload str*() functions
+; 4: Overload ereg*() functions
+; http://php.net/mbstring.func-overload
+mbstring.func_overload = 0
+
+; enable strict encoding detection.
+; Default: Off
+;mbstring.strict_detection = On
+
+; This directive specifies the regex pattern of content types for which mb_output_handler()
+; is activated.
+; Default: mbstring.http_output_conv_mimetype=^(text/|application/xhtml\+xml)
+;mbstring.http_output_conv_mimetype=
+
+; This directive specifies maximum stack depth for mbstring regular expressions. It is similar
+; to the pcre.recursion_limit for PCRE.
+; Default: 100000
+;mbstring.regex_stack_limit=100000
+
+; This directive specifies maximum retry count for mbstring regular expressions. It is similar
+; to the pcre.backtrack_limit for PCRE.
+; Default: 1000000
+;mbstring.regex_retry_limit=1000000
diff --git a/etc/php83/conf.d/99_mysqli.ini b/etc/php83/conf.d/99_mysqli.ini
new file mode 100644
index 0000000..a6c2571
--- /dev/null
+++ b/etc/php83/conf.d/99_mysqli.ini
@@ -0,0 +1,48 @@
+[MySQLi]
+
+; Maximum number of persistent links. -1 means no limit.
+; http://php.net/mysqli.max-persistent
+mysqli.max_persistent = -1
+
+; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
+; http://php.net/mysqli.allow_local_infile
+;mysqli.allow_local_infile = On
+
+; Allow or prevent persistent links.
+; http://php.net/mysqli.allow-persistent
+mysqli.allow_persistent = On
+
+; Maximum number of links. -1 means no limit.
+; http://php.net/mysqli.max-links
+mysqli.max_links = -1
+
+; Default port number for mysqli_connect(). If unset, mysqli_connect() will use
+; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
+; compile-time value defined MYSQL_PORT (in that order). Win32 will only look
+; at MYSQL_PORT.
+; http://php.net/mysqli.default-port
+mysqli.default_port = 3306
+
+; Default socket name for local MySQL connects. If empty, uses the built-in
+; MySQL defaults.
+; http://php.net/mysqli.default-socket
+mysqli.default_socket =
+
+; Default host for mysqli_connect() (doesn't apply in safe mode).
+; http://php.net/mysqli.default-host
+mysqli.default_host =
+
+; Default user for mysqli_connect() (doesn't apply in safe mode).
+; http://php.net/mysqli.default-user
+mysqli.default_user =
+
+; Default password for mysqli_connect() (doesn't apply in safe mode).
+; Note that this is generally a *bad* idea to store passwords in this file.
+; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw")
+; and reveal this password! And of course, any users with read access to this
+; file will be able to reveal the password as well.
+; http://php.net/mysqli.default-pw
+mysqli.default_pw =
+
+; Allow or prevent reconnect
+mysqli.reconnect = Off
diff --git a/etc/php83/conf.d/99_mysqlnd.ini b/etc/php83/conf.d/99_mysqlnd.ini
new file mode 100644
index 0000000..8d8978d
--- /dev/null
+++ b/etc/php83/conf.d/99_mysqlnd.ini
@@ -0,0 +1,33 @@
+[mysqlnd]
+; Enable / Disable collection of general statistics by mysqlnd which can be
+; used to tune and monitor MySQL operations.
+mysqlnd.collect_statistics = On
+
+; Enable / Disable collection of memory usage statistics by mysqlnd which can be
+; used to tune and monitor MySQL operations.
+mysqlnd.collect_memory_statistics = Off
+
+; Records communication from all extensions using mysqlnd to the specified log
+; file.
+; http://php.net/mysqlnd.debug
+;mysqlnd.debug =
+
+; Defines which queries will be logged.
+;mysqlnd.log_mask = 0
+
+; Default size of the mysqlnd memory pool, which is used by result sets.
+;mysqlnd.mempool_default_size = 16000
+
+; Size of a pre-allocated buffer used when sending commands to MySQL in bytes.
+;mysqlnd.net_cmd_buffer_size = 2048
+
+; Size of a pre-allocated buffer used for reading data sent by the server in
+; bytes.
+;mysqlnd.net_read_buffer_size = 32768
+
+; Timeout for network requests in seconds.
+;mysqlnd.net_read_timeout = 31536000
+
+; SHA-256 Authentication Plugin related. File with the MySQL server public RSA
+; key.
+;mysqlnd.sha256_server_public_key =
diff --git a/etc/php83/conf.d/99_odbc.ini b/etc/php83/conf.d/99_odbc.ini
new file mode 100644
index 0000000..13d3635
--- /dev/null
+++ b/etc/php83/conf.d/99_odbc.ini
@@ -0,0 +1,40 @@
+[ODBC]
+; http://php.net/odbc.default-db
+;odbc.default_db = Not yet implemented
+
+; http://php.net/odbc.default-user
+;odbc.default_user = Not yet implemented
+
+; http://php.net/odbc.default-pw
+;odbc.default_pw = Not yet implemented
+
+; Controls the ODBC cursor model.
+; Default: SQL_CURSOR_STATIC (default).
+;odbc.default_cursortype
+
+; Allow or prevent persistent links.
+; http://php.net/odbc.allow-persistent
+odbc.allow_persistent = On
+
+; Check that a connection is still valid before reuse.
+; http://php.net/odbc.check-persistent
+odbc.check_persistent = On
+
+; Maximum number of persistent links. -1 means no limit.
+; http://php.net/odbc.max-persistent
+odbc.max_persistent = -1
+
+; Maximum number of links (persistent + non-persistent). -1 means no limit.
+; http://php.net/odbc.max-links
+odbc.max_links = -1
+
+; Handling of LONG fields. Returns number of bytes to variables. 0 means
+; passthru.
+; http://php.net/odbc.defaultlrl
+odbc.defaultlrl = 4096
+
+; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char.
+; See the documentation on odbc_binmode and odbc_longreadlen for an explanation
+; of odbc.defaultlrl and odbc.defaultbinmode
+; http://php.net/odbc.defaultbinmode
+odbc.defaultbinmode = 1
diff --git a/etc/php83/conf.d/99_opcache.ini b/etc/php83/conf.d/99_opcache.ini
new file mode 100644
index 0000000..3beda00
--- /dev/null
+++ b/etc/php83/conf.d/99_opcache.ini
@@ -0,0 +1,148 @@
+[opcache]
+; Determines if Zend OPCache is enabled
+opcache.enable=1
+
+; Determines if Zend OPCache is enabled for the CLI version of PHP
+opcache.enable_cli=0
+
+; The OPcache shared memory storage size.
+opcache.memory_consumption=64
+
+; The amount of memory for interned strings in Mbytes.
+;opcache.interned_strings_buffer=8
+
+; The maximum number of keys (scripts) in the OPcache hash table.
+; Only numbers between 200 and 1000000 are allowed.
+opcache.max_accelerated_files=1000
+
+; The maximum percentage of "wasted" memory until a restart is scheduled.
+;opcache.max_wasted_percentage=5
+
+; When this directive is enabled, the OPcache appends the current working
+; directory to the script key, thus eliminating possible collisions between
+; files with the same name (basename). Disabling the directive improves
+; performance, but may break existing applications.
+opcache.use_cwd=1
+
+; When disabled, you must reset the OPcache manually or restart the
+; webserver for changes to the filesystem to take effect.
+;opcache.validate_timestamps=1
+
+; How often (in seconds) to check file timestamps for changes to the shared
+; memory storage allocation. ("1" means validate once per second, but only
+; once per request. "0" means always validate)
+;opcache.revalidate_freq=2
+
+; Enables or disables file search in include_path optimization
+;opcache.revalidate_path=0
+
+; If disabled, all PHPDoc comments are dropped from the code to reduce the
+; size of the optimized code.
+opcache.save_comments=0
+
+; Allow file existence override (file_exists, etc.) performance feature.
+;opcache.enable_file_override=0
+
+; A bitmask, where each bit enables or disables the appropriate OPcache
+; passes
+;opcache.optimization_level=0x7FFFBFFF
+
+;opcache.dups_fix=0
+
+; The location of the OPcache blacklist file (wildcards allowed).
+; Each OPcache blacklist file is a text file that holds the names of files
+; that should not be accelerated. The file format is to add each filename
+; to a new line. The filename may be a full path or just a file prefix
+; (i.e., /var/www/x blacklists all the files and directories in /var/www
+; that start with 'x'). Line starting with a ; are ignored (comments).
+;opcache.blacklist_filename=
+
+; Allows exclusion of large files from being cached. By default all files
+; are cached.
+;opcache.max_file_size=0
+
+; Check the cache checksum each N requests.
+; The default value of "0" means that the checks are disabled.
+;opcache.consistency_checks=0
+
+; How long to wait (in seconds) for a scheduled restart to begin if the cache
+; is not being accessed.
+;opcache.force_restart_timeout=180
+
+; OPcache error_log file name. Empty string assumes "stderr".
+;opcache.error_log=
+
+; All OPcache errors go to the Web server log.
+; By default, only fatal errors (level 0) or errors (level 1) are logged.
+; You can also enable warnings (level 2), info messages (level 3) or
+; debug messages (level 4).
+;opcache.log_verbosity_level=1
+
+; Preferred Shared Memory back-end. Leave empty and let the system decide.
+;opcache.preferred_memory_model=
+
+; Protect the shared memory from unexpected writing during script execution.
+; Useful for internal debugging only.
+;opcache.protect_memory=0
+
+; Allows calling OPcache API functions only from PHP scripts which path is
+; started from specified string. The default "" means no restriction
+;opcache.restrict_api=
+
+; Mapping base of shared memory segments (for Windows only). All the PHP
+; processes have to map shared memory into the same address space. This
+; directive allows to manually fix the "Unable to reattach to base address"
+; errors.
+;opcache.mmap_base=
+
+; Facilitates multiple OPcache instances per user (for Windows only). All PHP
+; processes with the same cache ID and user share an OPcache instance.
+;opcache.cache_id=
+
+; Enables and sets the second level cache directory.
+; It should improve performance when SHM memory is full, at server restart or
+; SHM reset. The default "" disables file based caching.
+;opcache.file_cache=
+
+; Enables or disables opcode caching in shared memory.
+;opcache.file_cache_only=0
+
+; Enables or disables checksum validation when script loaded from file cache.
+;opcache.file_cache_consistency_checks=1
+
+; Implies opcache.file_cache_only=1 for a certain process that failed to
+; reattach to the shared memory (for Windows only). Explicitly enabled file
+; cache is required.
+;opcache.file_cache_fallback=1
+
+; Enables or disables copying of PHP code (text segment) into HUGE PAGES.
+; This should improve performance, but requires appropriate OS configuration.
+;opcache.huge_code_pages=1
+
+; Validate cached file permissions.
+;opcache.validate_permission=0
+
+; Prevent name collisions in chroot'ed environment.
+;opcache.validate_root=0
+
+; If specified, it produces opcode dumps for debugging different stages of
+; optimizations.
+;opcache.opt_debug_level=0
+
+; Specifies a PHP script that is going to be compiled and executed at server
+; start-up.
+; http://php.net/opcache.preload
+;opcache.preload=
+
+; Preloading code as root is not allowed for security reasons. This directive
+; facilitates to let the preloading to be run as another user.
+; http://php.net/opcache.preload_user
+;opcache.preload_user=
+
+; Prevents caching files that are less than this number of seconds old. It
+; protects from caching of incompletely updated files. In case all file updates
+; on your site are atomic, you may increase performance by setting it to "0".
+;opcache.file_update_protection=2
+
+; Absolute path used to store shared lockfiles (for *nix only).
+;opcache.lockfile_path=/tmp
diff --git a/etc/php83/conf.d/99_openssl.ini b/etc/php83/conf.d/99_openssl.ini
new file mode 100644
index 0000000..ba95cd7
--- /dev/null
+++ b/etc/php83/conf.d/99_openssl.ini
@@ -0,0 +1,17 @@
+[openssl]
+; The location of a Certificate Authority (CA) file on the local filesystem
+; to use when verifying the identity of SSL/TLS peers. Most users should
+; not specify a value for this directive as PHP will attempt to use the
+; OS-managed cert stores in its absence. If specified, this value may still
+; be overridden on a per-stream basis via the "cafile" SSL stream context
+; option.
+;openssl.cafile=
+
+; If openssl.cafile is not specified or if the CA file is not found, the
+; directory pointed to by openssl.capath is searched for a suitable
+; certificate. This value must be a correctly hashed certificate directory.
+; Most users should not specify a value for this directive as PHP will
+; attempt to use the OS-managed cert stores in its absence. If specified,
+; this value may still be overridden on a per-stream basis via the "capath"
+; SSL stream context option.
+;openssl.capath=
diff --git a/etc/php83/conf.d/99_pdo.ini b/etc/php83/conf.d/99_pdo.ini
new file mode 100644
index 0000000..1e03675
--- /dev/null
+++ b/etc/php83/conf.d/99_pdo.ini
@@ -0,0 +1,6 @@
+[Pdo]
+; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off"
+; http://php.net/pdo-odbc.connection-pooling
+;pdo_odbc.connection_pooling=strict
+
+;pdo_odbc.db2_instance_name
diff --git a/etc/php83/conf.d/99_pdo_mysql.ini b/etc/php83/conf.d/99_pdo_mysql.ini
new file mode 100644
index 0000000..1598241
--- /dev/null
+++ b/etc/php83/conf.d/99_pdo_mysql.ini
@@ -0,0 +1,4 @@
+[Pdo_mysql]
+; Default socket name for local MySQL connects. If empty, uses the built-in
+; MySQL defaults.
+;pdo_mysql.default_socket=
diff --git a/etc/php83/conf.d/99_pgsql.ini b/etc/php83/conf.d/99_pgsql.ini
new file mode 100644
index 0000000..0b17fb5
--- /dev/null
+++ b/etc/php83/conf.d/99_pgsql.ini
@@ -0,0 +1,27 @@
+[PostgreSQL]
+; Allow or prevent persistent links.
+; http://php.net/pgsql.allow-persistent
+pgsql.allow_persistent = On
+
+; Detect broken persistent links always with pg_pconnect().
+; Auto reset feature requires a little overheads.
+; http://php.net/pgsql.auto-reset-persistent
+pgsql.auto_reset_persistent = Off
+
+; Maximum number of persistent links. -1 means no limit.
+; http://php.net/pgsql.max-persistent
+pgsql.max_persistent = -1
+
+; Maximum number of links (persistent+non persistent). -1 means no limit.
+; http://php.net/pgsql.max-links
+pgsql.max_links = -1
+
+; Ignore PostgreSQL backends Notice message or not.
+; Notice message logging require a little overheads.
+; http://php.net/pgsql.ignore-notice
+pgsql.ignore_notice = 0
+
+; Log PostgreSQL backends Notice message or not.
+; Unless pgsql.ignore_notice=0, module cannot log notice message.
+; http://php.net/pgsql.log-notice
+pgsql.log_notice = 0
diff --git a/etc/php83/conf.d/99_phar.ini b/etc/php83/conf.d/99_phar.ini
new file mode 100644
index 0000000..e3fc161
--- /dev/null
+++ b/etc/php83/conf.d/99_phar.ini
@@ -0,0 +1,8 @@
+[Phar]
+; http://php.net/phar.readonly
+;phar.readonly = On
+
+; http://php.net/phar.require-hash
+;phar.require_hash = On
+
+;phar.cache_list =
diff --git a/etc/php83/conf.d/99_session.ini b/etc/php83/conf.d/99_session.ini
new file mode 100644
index 0000000..214fac5
--- /dev/null
+++ b/etc/php83/conf.d/99_session.ini
@@ -0,0 +1,269 @@
+[Session]
+; Handler used to store/retrieve data.
+; http://php.net/session.save-handler
+session.save_handler = files
+
+; Argument passed to save_handler. In the case of files, this is the path
+; where data files are stored. Note: Windows users have to change this
+; variable in order to use PHP's session functions.
+;
+; The path can be defined as:
+;
+; session.save_path = "N;/path"
+;
+; where N is an integer. Instead of storing all the session files in
+; /path, what this will do is use subdirectories N-levels deep, and
+; store the session data in those directories. This is useful if
+; your OS has problems with many files in one directory, and is
+; a more efficient layout for servers that handle many sessions.
+;
+; NOTE 1: PHP will not create this directory structure automatically.
+; You can use the script in the ext/session dir for that purpose.
+; NOTE 2: See the section on garbage collection below if you choose to
+; use subdirectories for session storage
+;
+; The file storage module creates files using mode 600 by default.
+; You can change that by using
+;
+; session.save_path = "N;MODE;/path"
+;
+; where MODE is the octal representation of the mode. Note that this
+; does not overwrite the process's umask.
+; http://php.net/session.save-path
+session.save_path = "/var/lib/php/sessions"
+
+; Name of the session (used as cookie name).
+; http://php.net/session.name
+session.name = PHP_SESSION_ID
+
+; Initialize session on request startup.
+; http://php.net/session.auto-start
+;session.auto_start = 0
+
+; Handler used to serialize data. php is the standard serializer of PHP.
+; http://php.net/session.serialize-handler
+session.serialize_handler = php_serialize
+
+; Defines the probability that the 'garbage collection' process is started on every
+; session initialization. The probability is calculated by using gc_probability/gc_divisor,
+; e.g. 1/100 means there is a 1% chance that the GC process starts on each request.
+; Default Value: 1
+; Development Value: 1
+; Production Value: 1
+; http://php.net/session.gc-probability
+;session.gc_probability = 1
+
+; Defines the probability that the 'garbage collection' process is started on every
+; session initialization. The probability is calculated by using gc_probability/gc_divisor,
+; e.g. 1/100 means there is a 1% chance that the GC process starts on each request.
+; For high volume production servers, using a value of 1000 is a more efficient approach.
+; Default Value: 100
+; Development Value: 1000
+; Production Value: 1000
+; http://php.net/session.gc-divisor
+;session.gc_divisor = 1000
+
+; After this number of seconds, stored data will be seen as 'garbage' and
+; cleaned up by the garbage collection process.
+; http://php.net/session.gc-maxlifetime
+session.gc_maxlifetime = 86400
+
+; NOTE: If you are using the subdirectory option for storing session files
+; (see session.save_path above), then garbage collection does *not*
+; happen automatically. You will need to do your own garbage
+; collection through a shell script, cron entry, or some other method.
+; For example, the following script is the equivalent of setting
+; session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
+; find /path/to/sessions -cmin +24 -type f | xargs rm
+
+; Check HTTP Referer to invalidate externally stored URLs containing ids.
+; HTTP_REFERER has to contain this substring for the session to be
+; considered as valid.
+; http://php.net/session.referer-check
+;session.referer_check =
+
+; Gives a path to an external resource (file) which will be used as an
+; additional entropy source in the session id creation process.
+;session.entropy_file string = /dev/urandom
+
+; Whether to use strict session mode.
+; Strict session mode does not accept an uninitialized session ID, and
+; regenerates the session ID if the browser sends an uninitialized session ID.
+; Strict mode protects applications from session fixation via a session adoption
+; vulnerability. It is disabled by default for maximum compatibility, but
+; enabling it is encouraged.
+; https://wiki.php.net/rfc/strict_sessions
+;session.use_strict_mode = 0
+
+; Whether to use cookies.
+; http://php.net/session.use-cookies
+; session.use_cookies = 1
+
+; This option forces PHP to fetch and use a cookie for storing and maintaining
+; the session id. We encourage this operation as it's very helpful in combating
+; session hijacking when not specifying and managing your own session id. It is
+; not the be-all and end-all of session hijacking defense, but it's a good start.
+; http://php.net/session.use-only-cookies
+;session.use_only_cookies = 1
+
+; Lifetime in seconds of cookie or, if 0, until browser is restarted.
+; http://php.net/session.cookie-lifetime
+;session.cookie_lifetime = 0
+
+; The path for which the cookie is valid.
+; http://php.net/session.cookie-path
+;session.cookie_path = /
+
+; The domain for which the cookie is valid.
+; http://php.net/session.cookie-domain
+;session.cookie_domain =
+
+; http://php.net/session.cookie-secure
+; session.cookie_secure = On
+
+; Whether or not to add the httpOnly flag to the cookie, which makes it
+; inaccessible to browser scripting languages such as JavaScript.
+; http://php.net/session.cookie-httponly
+session.cookie_httponly = Off
+
+; Add SameSite attribute to cookie to help mitigate Cross-Site Request Forgery (CSRF/XSRF)
+; Current valid values are "Strict", "Lax" or "None". When using "None",
+; make sure to include the quotes, as `none` is interpreted like `false` in ini files.
+; https://tools.ietf.org/html/draft-west-first-party-cookies-07
+; session.cookie_samesite =
+
+; Set to {nocache,private,public,} to determine HTTP caching aspects
+; or leave this empty to avoid sending anti-caching headers.
+; http://php.net/session.cache-limiter
+;session.cache_limiter = nocache
+
+; Document expires after n minutes.
+; http://php.net/session.cache-expire
+;session.cache_expire = 180
+
+; trans sid support is disabled by default.
+; Use of trans sid may risk your users' security.
+; Use this option with caution.
+; - User may send URL contains active session ID
+; to other person via. email/irc/etc.
+; - URL that contains active session ID may be stored
+; in publicly accessible computer.
+; - User may access your site with the same session ID
+; always using URL stored in browser's history or bookmarks.
+; http://php.net/session.use-trans-sid
+;session.use_trans_sid = 0
+
+; The URL rewriter will look for URLs in a defined set of HTML tags.
+;