VirtualBox

Changeset 38471 in vbox for trunk/src/VBox/Additions/common


Ignore:
Timestamp:
Aug 16, 2011 11:50:02 AM (13 years ago)
Author:
vboxsync
Message:

PAM: Solaris build fixes, misc. bugfixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/common/pam/pam_vbox.cpp

    r38468 r38471  
    140140    int rc = VINF_SUCCESS;
    141141
    142     struct pam_message msg;
     142    pam_message msg;
    143143    msg.msg_style = iStyle;
     144#ifdef RT_OS_SOLARIS
     145    msg.msg = (char*)pszText;
     146#else
    144147    msg.msg = pszText;
    145 
    146     const struct pam_conv *conv;
     148#endif
     149
     150#ifdef RT_OS_SOLARIS
     151    pam_conv *conv = NULL;
     152    int pamrc = pam_get_item(hPAM, PAM_CONV, (void **)&conv);
     153#else
     154    const pam_conv *conv = NULL;
    147155    int pamrc = pam_get_item(hPAM, PAM_CONV, (const void **)&conv);
    148     if (pamrc == PAM_SUCCESS)
    149     {
    150         struct pam_response *resp;
    151         const struct pam_message *msg_p = &msg;
     156#endif
     157    if (   pamrc == PAM_SUCCESS
     158        && conv)
     159    {
     160        pam_response *resp = NULL;
     161#ifdef RT_OS_SOLARIS
     162        pam_message *msg_p = &msg;
     163#else
     164        const pam_message *msg_p = &msg;
     165#endif
     166        pam_vbox_log(hPAM, "Showing message \"%s\" (type %d)", pszText, iStyle);
     167
    152168        pamrc = conv->conv(1 /* One message only */, &msg_p, &resp, conv->appdata_ptr);
    153         if (pamrc == PAM_SUCCESS)
    154         {
    155             pam_vbox_log(hPAM, "Showing message (type %d): %s", msg, pszText);
     169        if (resp != NULL) /* If we use PAM_TEXT_INFO we never will get something back! */
     170        {
     171            if (resp->resp)
     172            {
     173                pam_vbox_log(hPAM, "Response to message \"%s\" was \"%s\"",
     174                             pszText, resp->resp);
     175                /** @todo Save response!  */
     176                free(resp->resp);
     177            }
    156178            free(resp);
    157179        }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette