Home | History | Annotate | Download | only in keystore

Lines Matching full:entry

53     Entry new_entry(auth_token, clock_function_());
56 LOG_W("Auth token table filled up; replacing oldest entry", 0);
111 entries_, [&](Entry& e) { return e.token()->challenge == op_handle && !e.completed(); });
127 Entry* newest_match = NULL;
128 for (auto& entry : entries_)
129 if (entry.SatisfiesAuth(sids, auth_type) && entry.is_newer_than(newest_match))
130 newest_match = &entry;
153 void AuthTokenTable::RemoveEntriesSupersededBy(const Entry& entry) {
154 entries_.erase(remove_if(entries_, [&](Entry& e) { return entry.Supersedes(e); }),
162 bool AuthTokenTable::IsSupersededBySomeEntry(const Entry& entry) {
164 [&](Entry& e) { return e.Supersedes(entry); });
168 auto found = find_if(entries_, [&](Entry& e) { return e.token()->challenge == op_handle; });
179 AuthTokenTable::Entry::Entry(const hw_auth_token_t* token, time_t current_time)
184 uint32_t AuthTokenTable::Entry::timestamp_host_order() const {
188 hw_authenticator_type_t AuthTokenTable::Entry::authenticator_type() const {
194 bool AuthTokenTable::Entry::SatisfiesAuth(const std::vector<uint64_t>& sids,
203 void AuthTokenTable::Entry::UpdateLastUse(time_t time) {
207 bool AuthTokenTable::Entry::Supersedes(const Entry& entry) const {
208 if (!entry.completed())
211 return (token_->user_id == entry.token_->user_id &&
212 token_->authenticator_type == entry.token_->authenticator_type &&
213 token_->authenticator_type == entry.token_->authenticator_type &&
214 timestamp_host_order() > entry.timestamp_host_order());