We should use pam property - this works on both LinuxPAM and OpenPAM diff -ur openvpn-2.0.7.orig/plugin/auth-pam/Makefile openvpn-2.0.7/plugin/auth-pam/Makefile --- openvpn-2.0.7.orig/plugin/auth-pam/Makefile 2005-11-02 18:02:49 +0000 +++ openvpn-2.0.7/plugin/auth-pam/Makefile 2006-10-11 12:05:55 +0100 @@ -4,7 +4,7 @@ # If PAM modules are not linked against libpam.so, set DLOPEN_PAM to 1. This # must be done on SUSE 9.1, at least. -DLOPEN_PAM=1 +DLOPEN_PAM=0 ifeq ($(DLOPEN_PAM),1) LIBPAM=-ldl diff -ur openvpn-2.0.7.orig/plugin/auth-pam/pamdl.c openvpn-2.0.7/plugin/auth-pam/pamdl.c --- openvpn-2.0.7.orig/plugin/auth-pam/pamdl.c 2005-11-02 18:02:49 +0000 +++ openvpn-2.0.7/plugin/auth-pam/pamdl.c 2006-10-11 12:04:48 +0100 @@ -10,7 +10,6 @@ #include #include #include -#include #include "pamdl.h" @@ -74,7 +73,7 @@ return real_pam_set_item(pamh, item_type, item); } -int pam_get_item(const pam_handle_t *pamh, int item_type, const void **item) +int pam_get_item(pam_handle_t *pamh, int item_type, const void **item) { int (*real_pam_get_item)(const pam_handle_t *, int, const void **); RESOLVE_PAM_FUNCTION(pam_get_item, int,