added the PAM's module stub.
authorLoïc Collignon <loic.collignon@iot.bzh>
Mon, 26 Jun 2017 14:39:43 +0000 (16:39 +0200)
committerLoïc Collignon <loic.collignon@iot.bzh>
Mon, 26 Jun 2017 14:39:43 +0000 (16:39 +0200)
Change-Id: Idc8470327d9eac2bad534cdfd4b58e8dc6e5ba6e
Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
pam/CMakeLists.txt
pam/agl-identity-usbstick-pam.c [new file with mode: 0644]

index 3953704..5d2de63 100644 (file)
@@ -1 +1,11 @@
-add_library(agl-identity-usbstick-pam SHARED )
\ No newline at end of file
+
+# Add PAM dependency
+# FIXME: Require PAM, but it's seems there is no find_package.
+set(PAM_INCLUDE_DIR "/usr/include/")
+set(PAM_LIB "/lib64/libpam.so.0")
+include_directories(${PAM_INCLUDE_DIR})
+
+# Add the target
+add_library(agl-identity-usbstick-pam SHARED agl-identity-usbstick-pam.c)
+target_link_libraries(agl-identity-usbstick-pam ${PAM_LIB})
+set_property(TARGET agl-identity-usbstick-pam PROPERTY POSITION_IDENPENDENT_CODE ON)
diff --git a/pam/agl-identity-usbstick-pam.c b/pam/agl-identity-usbstick-pam.c
new file mode 100644 (file)
index 0000000..74b3051
--- /dev/null
@@ -0,0 +1,36 @@
+#define PAM_SM_AUTH
+#define PAM_SM_ACCOUNT
+#define PAM_SM_SESSION
+#define PAM_SM_PASSWORD
+#include <security/pam_modules.h>
+
+PAM_EXTERN int pam_sm_authenticate(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+
+PAM_EXTERN int pam_sm_setcred(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+
+PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+
+PAM_EXTERN int pam_sm_open_session(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+
+PAM_EXTERN int pam_sm_close_session(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+
+PAM_EXTERN int pam_sm_chauthtok(pam_handle_t* pamh, int flags, int argc, const char** argv)
+{
+       return PAM_SUCCESS;
+}
+