Fix compilation error without PAM

ulab-next
Guan-Zhong Huang 11 years ago
parent 059deae6f3
commit 6fd7deb510

@ -69,6 +69,11 @@ then
fi fi
fi fi
if test "x$enable_nopam" = "xyes"
then
AC_DEFINE([USE_NOPAM],1,[Disable PAM])
fi
AS_IF( [test "x$enable_freerdp1" = "xyes"] , [PKG_CHECK_MODULES(FREERDP, freerdp >= 1.0.0)] ) AS_IF( [test "x$enable_freerdp1" = "xyes"] , [PKG_CHECK_MODULES(FREERDP, freerdp >= 1.0.0)] )
# checking for libjpeg # checking for libjpeg

@ -14,6 +14,7 @@ AM_CFLAGS = \
$(EXTRA_DEFINES) $(EXTRA_DEFINES)
INCLUDES = \ INCLUDES = \
-I$(top_builddir) \
-I$(top_srcdir)/common \ -I$(top_srcdir)/common \
-I$(top_srcdir)/libxrdp -I$(top_srcdir)/libxrdp

@ -17,12 +17,15 @@
* *
* module manager * module manager
*/ */
#include <config_ac.h>
#define ACCESS #define ACCESS
#include "xrdp.h" #include "xrdp.h"
#include "log.h" #include "log.h"
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
#include "security/_pam_types.h" #include "security/_pam_types.h"
#endif #endif
#endif
/*****************************************************************************/ /*****************************************************************************/
struct xrdp_mm *APP_CC struct xrdp_mm *APP_CC
@ -1071,6 +1074,7 @@ xrdp_mm_sesman_data_in(struct trans *trans)
} }
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
/*********************************************************************/ /*********************************************************************/
/* return 0 on success */ /* return 0 on success */
int access_control(char *username, char *password, char *srv) int access_control(char *username, char *password, char *srv)
@ -1183,6 +1187,7 @@ int access_control(char *username, char *password, char *srv)
return rec; return rec;
} }
#endif #endif
#endif
/*****************************************************************************/ /*****************************************************************************/
/* This routine clears all states to make sure that our next login will be /* This routine clears all states to make sure that our next login will be
@ -1206,6 +1211,7 @@ void cleanup_states(struct xrdp_mm *self)
} }
} }
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
const char *getPAMError(const int pamError) const char *getPAMError(const int pamError)
{ {
switch(pamError){ switch(pamError){
@ -1333,6 +1339,7 @@ const char *getPAMAdditionalErrorInfo(const int pamError,struct xrdp_mm *self)
} }
#endif #endif
#endif
/*****************************************************************************/ /*****************************************************************************/
int APP_CC int APP_CC
xrdp_mm_connect(struct xrdp_mm *self) xrdp_mm_connect(struct xrdp_mm *self)
@ -1351,10 +1358,12 @@ xrdp_mm_connect(struct xrdp_mm *self)
char port[8]; char port[8];
char chansrvport[256]; char chansrvport[256];
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
int use_pam_auth = 0; int use_pam_auth = 0;
char pam_auth_sessionIP[256]; char pam_auth_sessionIP[256];
char pam_auth_password[256]; char pam_auth_password[256];
char pam_auth_username[256]; char pam_auth_username[256];
#endif
char username[256]; char username[256];
char password[256]; char password[256];
username[0] = 0; username[0] = 0;
@ -1390,6 +1399,7 @@ xrdp_mm_connect(struct xrdp_mm *self)
} }
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
else if (g_strcasecmp(name, "pamusername") == 0) else if (g_strcasecmp(name, "pamusername") == 0)
{ {
use_pam_auth = 1; use_pam_auth = 1;
@ -1403,6 +1413,7 @@ xrdp_mm_connect(struct xrdp_mm *self)
{ {
g_strncpy(pam_auth_password, value, 255); g_strncpy(pam_auth_password, value, 255);
} }
#endif
else if (g_strcasecmp(name, "password") == 0) else if (g_strcasecmp(name, "password") == 0)
{ {
g_strncpy(password, value, 255); g_strncpy(password, value, 255);
@ -1421,7 +1432,7 @@ xrdp_mm_connect(struct xrdp_mm *self)
} }
#ifdef ACCESS #ifdef ACCESS
#ifndef USE_NOPAM
if (use_pam_auth) if (use_pam_auth)
{ {
int reply; int reply;
@ -1464,7 +1475,7 @@ xrdp_mm_connect(struct xrdp_mm *self)
return rv; return rv;
} }
} }
#endif
#endif #endif
if (self->sesman_controlled) if (self->sesman_controlled)

Loading…
Cancel
Save