Changeset 740 for vendor/current/nsswitch/pam_winbind.c
- Timestamp:
- Nov 14, 2012, 12:59:34 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/nsswitch/pam_winbind.c
r414 r740 157 157 { 158 158 if (!initialized) { 159 bindtextdomain(MODULE_NAME, dyn_LOCALEDIR);159 bindtextdomain(MODULE_NAME, LOCALEDIR); 160 160 initialized = 1; 161 161 } … … 1078 1078 int sid_list_buffer_size) 1079 1079 { 1080 const char* sid_string = NULL; 1081 char *sid_str = NULL; 1080 char sid_string[WBC_SID_STRING_BUFLEN]; 1082 1081 1083 1082 /* lookup name? */ 1084 1083 if (IS_SID_STRING(name)) { 1085 s id_string = name;1084 strlcpy(sid_string, name, sizeof(sid_string)); 1086 1085 } else { 1087 1086 wbcErr wbc_status; … … 1099 1098 } 1100 1099 1101 wbc_status = wbcSidToString(&sid, &sid_str); 1102 if (!WBC_ERROR_IS_OK(wbc_status)) { 1103 return false; 1104 } 1105 1106 sid_string = sid_str; 1100 wbcSidToStringBuf(&sid, sid_string, sizeof(sid_string)); 1107 1101 } 1108 1102 1109 1103 if (!safe_append_string(sid_list_buffer, sid_string, 1110 1104 sid_list_buffer_size)) { 1111 wbcFreeMemory(sid_str);1112 1105 return false; 1113 1106 } 1114 1115 wbcFreeMemory(sid_str);1116 1107 return true; 1117 1108 } … … 1145 1136 1146 1137 search_location = name_list; 1147 while ((comma = str str(search_location, ",")) != NULL) {1138 while ((comma = strchr(search_location, ',')) != NULL) { 1148 1139 current_name = strndup(search_location, 1149 1140 comma - search_location); … … 1200 1191 */ 1201 1192 len = strlen(sid_list_buffer); 1202 if (len) { 1203 if (sid_list_buffer[len - 1] == ',') { 1204 sid_list_buffer[len - 1] = '\0'; 1205 } 1193 if ((len != 0) && (sid_list_buffer[len - 1] == ',')) { 1194 sid_list_buffer[len - 1] = '\0'; 1206 1195 } 1207 1196 } … … 1435 1424 const struct wbcAuthErrorInfo *e, 1436 1425 const char *nt_status_string, 1437 int *pam_err or)1426 int *pam_err) 1438 1427 { 1439 1428 const char *ntstatus = NULL; 1440 1429 const char *error_string = NULL; 1441 1430 1442 if (!e || !pam_err or) {1431 if (!e || !pam_err) { 1443 1432 return false; 1444 1433 } … … 1454 1443 if (error_string) { 1455 1444 _make_remark(ctx, PAM_ERROR_MSG, error_string); 1456 *pam_err or= e->pam_error;1445 *pam_err = e->pam_error; 1457 1446 return true; 1458 1447 } 1459 1448 1460 1449 if (e->display_string) { 1461 _make_remark(ctx, PAM_ERROR_MSG, e->display_string);1462 *pam_err or= e->pam_error;1450 _make_remark(ctx, PAM_ERROR_MSG, _(e->display_string)); 1451 *pam_err = e->pam_error; 1463 1452 return true; 1464 1453 } 1465 1454 1466 1455 _make_remark(ctx, PAM_ERROR_MSG, nt_status_string); 1467 *pam_err or= e->pam_error;1456 *pam_err = e->pam_error; 1468 1457 1469 1458 return true; … … 1902 1891 1903 1892 done: 1904 if (logon.blobs) { 1905 wbcFreeMemory(logon.blobs); 1906 } 1893 wbcFreeMemory(logon.blobs); 1907 1894 if (info && info->blobs && !p_info) { 1908 1895 wbcFreeMemory(info->blobs); … … 2001 1988 case -1: 2002 1989 break; 2003 case WBC_PWD_CHANGE_ REJECT_OTHER:1990 case WBC_PWD_CHANGE_NO_ERROR: 2004 1991 if ((min_pwd_age > 0) && 2005 1992 (pwd_last_set + min_pwd_age > time(NULL))) { … … 2008 1995 } 2009 1996 break; 2010 case WBC_PWD_CHANGE_ REJECT_TOO_SHORT:1997 case WBC_PWD_CHANGE_PASSWORD_TOO_SHORT: 2011 1998 PAM_WB_REMARK_DIRECT(ctx, 2012 1999 "NT_STATUS_PWD_TOO_SHORT"); 2013 2000 break; 2014 case WBC_PWD_CHANGE_ REJECT_IN_HISTORY:2001 case WBC_PWD_CHANGE_PWD_IN_HISTORY: 2015 2002 PAM_WB_REMARK_DIRECT(ctx, 2016 2003 "NT_STATUS_PWD_HISTORY_CONFLICT"); 2017 2004 break; 2018 case WBC_PWD_CHANGE_ REJECT_COMPLEXITY:2005 case WBC_PWD_CHANGE_NOT_COMPLEX: 2019 2006 _make_remark(ctx, PAM_ERROR_MSG, 2020 2007 _("Password does not meet " … … 2425 2412 struct wbcDomainSid sid; 2426 2413 enum wbcSidType type; 2427 char *domain ;2414 char *domain = NULL; 2428 2415 char *name; 2429 2416 char *p;
Note:
See TracChangeset
for help on using the changeset viewer.