@@ -105,6 +105,8 @@ pub type vm_statistics_data_t = vm_statistics;
105
105
pub type vm_statistics64_t = * mut vm_statistics64 ;
106
106
pub type vm_statistics64_data_t = vm_statistics64 ;
107
107
108
+ pub type sysdir_search_path_enumeration_state = :: c_uint ;
109
+
108
110
pub type CCStatus = i32 ;
109
111
pub type CCCryptorStatus = i32 ;
110
112
pub type CCRNGStatus = :: CCCryptorStatus ;
@@ -140,6 +142,57 @@ impl ::Clone for qos_class_t {
140
142
}
141
143
}
142
144
145
+ #[ cfg_attr( feature = "extra_traits" , derive( Debug ) ) ]
146
+ #[ repr( u32 ) ]
147
+ pub enum sysdir_search_path_directory_t {
148
+ SYSDIR_DIRECTORY_APPLICATION = 1 ,
149
+ SYSDIR_DIRECTORY_DEMO_APPLICATION = 2 ,
150
+ SYSDIR_DIRECTORY_DEVELOPER_APPLICATION = 3 ,
151
+ SYSDIR_DIRECTORY_ADMIN_APPLICATION = 4 ,
152
+ SYSDIR_DIRECTORY_LIBRARY = 5 ,
153
+ SYSDIR_DIRECTORY_DEVELOPER = 6 ,
154
+ SYSDIR_DIRECTORY_USER = 7 ,
155
+ SYSDIR_DIRECTORY_DOCUMENTATION = 8 ,
156
+ SYSDIR_DIRECTORY_DOCUMENT = 9 ,
157
+ SYSDIR_DIRECTORY_CORESERVICE = 10 ,
158
+ SYSDIR_DIRECTORY_AUTOSAVED_INFORMATION = 11 ,
159
+ SYSDIR_DIRECTORY_DESKTOP = 12 ,
160
+ SYSDIR_DIRECTORY_CACHES = 13 ,
161
+ SYSDIR_DIRECTORY_APPLICATION_SUPPORT = 14 ,
162
+ SYSDIR_DIRECTORY_DOWNLOADS = 15 ,
163
+ SYSDIR_DIRECTORY_INPUT_METHODS = 16 ,
164
+ SYSDIR_DIRECTORY_MOVIES = 17 ,
165
+ SYSDIR_DIRECTORY_MUSIC = 18 ,
166
+ SYSDIR_DIRECTORY_PICTURES = 19 ,
167
+ SYSDIR_DIRECTORY_PRINTER_DESCRIPTION = 20 ,
168
+ SYSDIR_DIRECTORY_SHARED_PUBLIC = 21 ,
169
+ SYSDIR_DIRECTORY_PREFERENCE_PANES = 22 ,
170
+ SYSDIR_DIRECTORY_ALL_APPLICATIONS = 100 ,
171
+ SYSDIR_DIRECTORY_ALL_LIBRARIES = 101 ,
172
+ }
173
+ impl :: Copy for sysdir_search_path_directory_t { }
174
+ impl :: Clone for sysdir_search_path_directory_t {
175
+ fn clone ( & self ) -> sysdir_search_path_directory_t {
176
+ * self
177
+ }
178
+ }
179
+
180
+ #[ cfg_attr( feature = "extra_traits" , derive( Debug ) ) ]
181
+ #[ repr( u32 ) ]
182
+ pub enum sysdir_search_path_domain_mask_t {
183
+ SYSDIR_DOMAIN_MASK_USER = ( 1 << 0 ) ,
184
+ SYSDIR_DOMAIN_MASK_LOCAL = ( 1 << 1 ) ,
185
+ SYSDIR_DOMAIN_MASK_NETWORK = ( 1 << 2 ) ,
186
+ SYSDIR_DOMAIN_MASK_SYSTEM = ( 1 << 3 ) ,
187
+ SYSDIR_DOMAIN_MASK_ALL = 0x0ffff ,
188
+ }
189
+ impl :: Copy for sysdir_search_path_domain_mask_t { }
190
+ impl :: Clone for sysdir_search_path_domain_mask_t {
191
+ fn clone ( & self ) -> sysdir_search_path_domain_mask_t {
192
+ * self
193
+ }
194
+ }
195
+
143
196
s ! {
144
197
pub struct ip_mreq {
145
198
pub imr_multiaddr: in_addr,
@@ -4971,6 +5024,16 @@ extern "C" {
4971
5024
) -> :: kern_return_t ;
4972
5025
4973
5026
pub static mut mach_task_self_: mach_port_t ;
5027
+
5028
+ // sysdir.h
5029
+ pub fn sysdir_start_search_path_enumeration (
5030
+ dir : sysdir_search_path_directory_t ,
5031
+ domainMask : sysdir_search_path_domain_mask_t ,
5032
+ ) -> :: sysdir_search_path_enumeration_state ;
5033
+ pub fn sysdir_get_next_search_path_enumeration (
5034
+ state : :: sysdir_search_path_enumeration_state ,
5035
+ path : * mut :: c_char ,
5036
+ ) -> :: sysdir_search_path_enumeration_state ;
4974
5037
}
4975
5038
4976
5039
pub unsafe fn mach_task_self ( ) -> mach_port_t {
0 commit comments