diff options
author | akalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-17 12:14:50 +0000 |
---|---|---|
committer | akalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-17 12:14:50 +0000 |
commit | b9d3d0028bbef6846b017c3ce8514f012921f65f (patch) | |
tree | 1667a362918c39ab52c25c9acb63a68751329630 /crypto/keychain_mac.cc | |
parent | 236790f7ae982eb6dda025960964a88d4fc538f8 (diff) | |
download | chromium_src-b9d3d0028bbef6846b017c3ce8514f012921f65f.zip chromium_src-b9d3d0028bbef6846b017c3ce8514f012921f65f.tar.gz chromium_src-b9d3d0028bbef6846b017c3ce8514f012921f65f.tar.bz2 |
Move *keychain_mac* files to crypto/
This is in preparation for moving password_manager/encryptor* to
crypto/.
This also fixes an ODR violation; mock_keychain_mac.cc was being
compiled in two targets which are linked together.
BUG=118564
TEST=
Review URL: http://codereview.chromium.org/9699112
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127358 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'crypto/keychain_mac.cc')
-rw-r--r-- | crypto/keychain_mac.cc | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/crypto/keychain_mac.cc b/crypto/keychain_mac.cc new file mode 100644 index 0000000..4d5715b --- /dev/null +++ b/crypto/keychain_mac.cc @@ -0,0 +1,129 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "crypto/keychain_mac.h" + +namespace crypto { + +MacKeychain::MacKeychain() {} + +MacKeychain::~MacKeychain() {} + +OSStatus MacKeychain::ItemCopyAttributesAndData( + SecKeychainItemRef itemRef, + SecKeychainAttributeInfo* info, + SecItemClass* itemClass, + SecKeychainAttributeList** attrList, + UInt32* length, + void** outData) const { + return SecKeychainItemCopyAttributesAndData(itemRef, info, itemClass, + attrList, length, outData); +} + +OSStatus MacKeychain::ItemModifyAttributesAndData( + SecKeychainItemRef itemRef, + const SecKeychainAttributeList* attrList, + UInt32 length, + const void* data) const { + return SecKeychainItemModifyAttributesAndData(itemRef, attrList, length, + data); +} + +OSStatus MacKeychain::ItemFreeAttributesAndData( + SecKeychainAttributeList* attrList, + void* data) const { + return SecKeychainItemFreeAttributesAndData(attrList, data); +} + +OSStatus MacKeychain::ItemDelete(SecKeychainItemRef itemRef) const { + return SecKeychainItemDelete(itemRef); +} + +OSStatus MacKeychain::SearchCreateFromAttributes( + CFTypeRef keychainOrArray, + SecItemClass itemClass, + const SecKeychainAttributeList* attrList, + SecKeychainSearchRef* searchRef) const { + return SecKeychainSearchCreateFromAttributes(keychainOrArray, itemClass, + attrList, searchRef); +} + +OSStatus MacKeychain::SearchCopyNext(SecKeychainSearchRef searchRef, + SecKeychainItemRef* itemRef) const { + return SecKeychainSearchCopyNext(searchRef, itemRef); +} + +OSStatus MacKeychain::AddInternetPassword( + SecKeychainRef keychain, + UInt32 serverNameLength, + const char* serverName, + UInt32 securityDomainLength, + const char* securityDomain, + UInt32 accountNameLength, + const char* accountName, + UInt32 pathLength, + const char* path, + UInt16 port, + SecProtocolType protocol, + SecAuthenticationType authenticationType, + UInt32 passwordLength, + const void* passwordData, + SecKeychainItemRef* itemRef) const { + return SecKeychainAddInternetPassword(keychain, + serverNameLength, serverName, + securityDomainLength, securityDomain, + accountNameLength, accountName, + pathLength, path, + port, protocol, authenticationType, + passwordLength, passwordData, + itemRef); +} + +OSStatus MacKeychain::FindGenericPassword(CFTypeRef keychainOrArray, + UInt32 serviceNameLength, + const char* serviceName, + UInt32 accountNameLength, + const char* accountName, + UInt32* passwordLength, + void** passwordData, + SecKeychainItemRef* itemRef) const { + return SecKeychainFindGenericPassword(keychainOrArray, + serviceNameLength, + serviceName, + accountNameLength, + accountName, + passwordLength, + passwordData, + itemRef); +} + +OSStatus MacKeychain::ItemFreeContent(SecKeychainAttributeList* attrList, + void* data) const { + return SecKeychainItemFreeContent(attrList, data); +} + +OSStatus MacKeychain::AddGenericPassword(SecKeychainRef keychain, + UInt32 serviceNameLength, + const char* serviceName, + UInt32 accountNameLength, + const char* accountName, + UInt32 passwordLength, + const void* passwordData, + SecKeychainItemRef* itemRef) const { + return SecKeychainAddGenericPassword(keychain, + serviceNameLength, + serviceName, + accountNameLength, + accountName, + passwordLength, + passwordData, + itemRef); +} + +void MacKeychain::Free(CFTypeRef ref) const { + if (ref) + CFRelease(ref); +} + +} // namespace crypto |