blob: a9f6e9b4e605aae76eeeaa4fdfe57a5bed699e0e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
"login" and "su" have "auth sufficient pam_self.so" but a screen
locker is supposed to ask for password regardless.
pam_unix(8) requires root priveleges to access master.passwd(5),
so try authenticating via setuid helper first.
--- pam/hyprlock.orig 2024-03-01 23:49:44 UTC
+++ pam/hyprlock
@@ -1,5 +1,4 @@
-# PAM configuration file for hyprlock
-# the 'login' configuration file (see /etc/pam.d/login)
+# PAM configuration for hyprlock. Only uses auth facilities.
-auth include login
+auth include unix-selfauth
--- src/auth/Pam.cpp.orig 2025-02-22 22:56:54 UTC
+++ src/auth/Pam.cpp
@@ -64,11 +64,6 @@ CPam::CPam() {
static const auto PAMMODULE = g_pConfigManager->getValue<Hyprlang::STRING>("auth:pam:module");
m_sPamModule = *PAMMODULE;
- if (!std::filesystem::exists(std::filesystem::path("/etc/pam.d/") / m_sPamModule)) {
- Debug::log(ERR, R"(Pam module "/etc/pam.d/{}" does not exist! Falling back to "/etc/pam.d/su")", m_sPamModule);
- m_sPamModule = "su";
- }
-
m_sConversationState.waitForInput = [this]() { this->waitForInput(); };
}
|