(file) Return to PAMAuth.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Executor

Diff for /pegasus/src/Executor/PAMAuth.h between version 1.9 and 1.9.4.1

version 1.9, 2009/12/15 10:52:33 version 1.9.4.1, 2013/07/20 18:32:37
Line 195 
Line 195 
  
 typedef struct CimserveraResponseStruct typedef struct CimserveraResponseStruct
 { {
     /* '0' means authentication successful. '-1' means authentication failed. */      /* '-1' means authentication failed / something went wrong in the
               communication
         '>=0'  means PAM return code. */
     int status;     int status;
 } }
 CimserveraResponse; CimserveraResponse;
Line 254 
Line 256 
             break;             break;
         }         }
  
         /* Check status. */          /* Store status. */
  
         if (response.status != 0)          status = response.status;
         {  
             status = -1;  
         }  
     }     }
     while (0);     while (0);
  
Line 403 
Line 402 
     PAMData data;     PAMData data;
     struct pam_conv pconv;     struct pam_conv pconv;
     pam_handle_t* handle;     pam_handle_t* handle;
       int pam_rc;
  
     data.password = password;     data.password = password;
     pconv.conv = PAMAuthenticateCallback;     pconv.conv = PAMAuthenticateCallback;
     pconv.appdata_ptr = &data;     pconv.appdata_ptr = &data;
  
       /* commented out statement in place to allow triggering a Http 500 Error */
       /* intentionally for testing purposes */
       /* return PAM_SERVICE_ERR; */
  
     if (pam_start(PAM_CONFIG_FILE, username, &pconv, &handle) != PAM_SUCCESS)      pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &handle);
         return -1;  
  
     if (pam_authenticate(handle, 0) != PAM_SUCCESS)      if (pam_rc != PAM_SUCCESS)
     {     {
         pam_end(handle, 0);          return pam_rc;
         return -1;  
     }     }
  
     if (pam_acct_mgmt(handle, 0) != PAM_SUCCESS)      pam_rc = pam_authenticate(handle, 0);
       if (pam_rc != PAM_SUCCESS)
     {     {
         pam_end(handle, 0);         pam_end(handle, 0);
         return -1;          return pam_rc;
     }     }
  
     pam_end(handle, 0);      pam_rc = pam_acct_mgmt(handle, 0);
  
     return 0;      pam_end(handle, 0);
       return pam_rc;
 } }
  
 /* /*
Line 444 
Line 447 
     PAMData data;     PAMData data;
     struct pam_conv pconv;     struct pam_conv pconv;
     pam_handle_t* phandle;     pam_handle_t* phandle;
       int pam_rc;
  
     pconv.conv = PAMValidateUserCallback;     pconv.conv = PAMValidateUserCallback;
     pconv.appdata_ptr = &data;     pconv.appdata_ptr = &data;
  
     if (pam_start(PAM_CONFIG_FILE, username, &pconv, &phandle) != PAM_SUCCESS)      pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &phandle);
         return -1;      if (pam_rc != PAM_SUCCESS)
   
     if (pam_acct_mgmt(phandle, 0) != PAM_SUCCESS)  
     {     {
         pam_end(phandle, 0);          return pam_rc;
         return -1;  
     }     }
  
     pam_end(phandle, 0);      pam_rc = pam_acct_mgmt(phandle, 0);
  
     return 0;      pam_end(phandle, 0);
       return pam_rc;
 } }
  
 /* /*


Legend:
Removed from v.1.9  
changed lines
  Added in v.1.9.4.1

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2