/ SecurityTool / macOS / keychain_find.h
keychain_find.h
 1  /*
 2   * Copyright (c) 2003-2010 Apple Inc. All Rights Reserved.
 3   *
 4   * @APPLE_LICENSE_HEADER_START@
 5   * 
 6   * This file contains Original Code and/or Modifications of Original Code
 7   * as defined in and that are subject to the Apple Public Source License
 8   * Version 2.0 (the 'License'). You may not use this file except in
 9   * compliance with the License. Please obtain a copy of the License at
10   * http://www.opensource.apple.com/apsl/ and read it before using this
11   * file.
12   * 
13   * The Original Code and all software distributed under the License are
14   * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15   * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16   * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17   * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18   * Please see the License for the specific language governing rights and
19   * limitations under the License.
20   * 
21   * @APPLE_LICENSE_HEADER_END@
22   *
23   * keychain_find.h
24   */
25  
26  #ifndef _KEYCHAIN_FINDINTERNETPASSWORD_H_
27  #define _KEYCHAIN_FINDINTERNETPASSWORD_H_  1
28  
29  #include <Security/SecBase.h>
30  #include <Security/SecKeychain.h>
31  
32  #ifdef __cplusplus
33  extern "C" {
34  #endif
35  
36  extern SecKeychainItemRef find_first_generic_password(
37  							CFTypeRef keychainOrArray,
38  							FourCharCode itemCreator,
39  							FourCharCode itemType,
40  							const char *kind,
41  							const char *value,
42  							const char *comment,
43  							const char *label,
44  							const char *serviceName,
45  							const char *accountName);
46  
47  extern SecKeychainItemRef find_first_internet_password(
48  							CFTypeRef keychainOrArray,
49  							FourCharCode itemCreator,
50  							FourCharCode itemType,
51  							const char *kind,
52  							const char *comment,
53  							const char *label,
54  							const char *serverName,
55  							const char *securityDomain,
56  							const char *accountName,
57  							const char *path,
58  							UInt16 port,
59  							SecProtocolType protocol,
60  							SecAuthenticationType authenticationType);
61  
62  extern SecKeychainItemRef find_unique_certificate(
63  							CFTypeRef keychainOrArray,
64  							const char *name,
65  							const char *hash);
66  
67  extern int keychain_find_internet_password(int argc, char * const *argv);
68  
69  extern int keychain_delete_internet_password(int argc, char * const *argv);
70  
71  extern int keychain_find_generic_password(int argc, char * const *argv);
72  
73  extern int keychain_delete_generic_password(int argc, char * const *argv);
74  
75  extern int keychain_find_key(int argc, char* const *argv);
76  
77  extern int keychain_set_generic_password_partition_list(int argc, char * const *argv);
78  
79  extern int keychain_set_internet_password_partition_list(int argc, char * const *argv);
80  
81  extern int keychain_set_key_partition_list(int argc, char * const *argv);
82  
83  extern int keychain_find_certificate(int argc, char * const *argv);
84  
85  extern int keychain_dump(int argc, char * const *argv);
86  
87  #ifdef __cplusplus
88  }
89  #endif
90  
91  #endif /* _KEYCHAIN_FINDINTERNETPASSWORD_H_ */