Annotation of truecrypt/volume/volumepasswordcache.cpp, revision 1.1.1.1

1.1       root        1: /*
                      2:  Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
                      3: 
                      4:  Governed by the TrueCrypt License 2.4 the full text of which is contained
                      5:  in the file License.txt included in TrueCrypt binary and source code
                      6:  distribution packages.
                      7: */
                      8: 
                      9: #include "VolumePasswordCache.h"
                     10: 
                     11: namespace TrueCrypt
                     12: {
                     13:        CachedPasswordList VolumePasswordCache::GetPasswords ()
                     14:        {
                     15:                CachedPasswordList passwords;
                     16: 
                     17:                foreach_ref (const VolumePassword &password, CachedPasswords)
                     18:                        passwords.push_back (make_shared <VolumePassword> (VolumePassword (password)));
                     19: 
                     20:                return passwords;
                     21:        }
                     22: 
                     23:        void VolumePasswordCache::Store (const VolumePassword &newPassword)
                     24:        {
                     25:                CachedPasswordList::iterator iter = CachedPasswords.begin();
                     26:                foreach_ref (const VolumePassword &password, CachedPasswords)
                     27:                {
                     28:                        if (newPassword == password)
                     29:                        {
                     30:                                CachedPasswords.erase (iter);
                     31:                                break;
                     32:                        }
                     33:                        iter++;
                     34:                }
                     35: 
                     36:                CachedPasswords.push_front (make_shared <VolumePassword> (VolumePassword (newPassword)));
                     37: 
                     38:                if (CachedPasswords.size() > Capacity)
                     39:                        CachedPasswords.pop_back();
                     40:        }
                     41: 
                     42:        CachedPasswordList VolumePasswordCache::CachedPasswords;
                     43: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.