Changeset 124 for branches/samba-3.0/source/smbd/password.c
- Timestamp:
- Mar 12, 2008, 9:08:18 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/smbd/password.c
r118 r124 92 92 if (vuser == NULL) 93 93 return; 94 94 95 95 SAFE_FREE(vuser->homedir); 96 96 SAFE_FREE(vuser->unix_homedir); 97 97 SAFE_FREE(vuser->logon_script); 98 98 99 if (vuser->auth_ntlmssp_state) { 100 auth_ntlmssp_end(&vuser->auth_ntlmssp_state); 101 } 102 99 103 session_yield(vuser); 100 104 SAFE_FREE(vuser->session_keystr); … … 112 116 SAFE_FREE(vuser->groups); 113 117 TALLOC_FREE(vuser->nt_user_token); 118 119 SAFE_FREE(vuser); 120 num_validated_vuids--; 121 } 122 123 void invalidate_intermediate_vuid(uint16 vuid) 124 { 125 user_struct *vuser = get_partial_auth_user_struct(vuid); 126 127 if (vuser == NULL) 128 return; 129 130 if (vuser->auth_ntlmssp_state) { 131 auth_ntlmssp_end(&vuser->auth_ntlmssp_state); 132 } 133 134 DLIST_REMOVE(validated_users, vuser); 114 135 115 136 SAFE_FREE(vuser); … … 164 185 if (num_validated_vuids >= 0xFFFF-VUID_OFFSET) { 165 186 data_blob_free(&session_key); 187 TALLOC_FREE(server_info); 166 188 return UID_FIELD_INVALID; 167 189 } … … 170 192 DEBUG(0,("Failed to malloc users struct!\n")); 171 193 data_blob_free(&session_key); 194 TALLOC_FREE(server_info); 172 195 return UID_FIELD_INVALID; 173 196 } … … 176 199 177 200 /* Allocate a free vuid. Yes this is a linear search... :-) */ 178 while( get_valid_user_struct(next_vuid) != NULL ) { 201 while( (get_valid_user_struct(next_vuid) != NULL) 202 || (get_partial_auth_user_struct(next_vuid) != NULL) ) { 179 203 next_vuid++; 180 204 /* Check for vuid wrap. */
Note:
See TracChangeset
for help on using the changeset viewer.