1/* 2 * Copyright (c) 2013 Apple Inc. All rights reserved. 3 * 4 * @APPLE_OSREFERENCE_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. The rights granted to you under the License 10 * may not be used to create, or enable the creation or redistribution of, 11 * unlawful or unlicensed copies of an Apple operating system, or to 12 * circumvent, violate, or enable the circumvention or violation of, any 13 * terms of an Apple operating system software license agreement. 14 * 15 * Please obtain a copy of the License at 16 * http://www.opensource.apple.com/apsl/ and read it before using this file. 17 * 18 * The Original Code and all software distributed under the License are 19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 23 * Please see the License for the specific language governing rights and 24 * limitations under the License. 25 * 26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ 27 */ 28 29/* 30 * Interface definition for the namespace facility. 31 */ 32 33subsystem 34#if KERNEL_USER 35KernelUser 36#endif /* KERNEL_USER */ 37vfs_nspace 867800; /* 'V''N'00 */ 38 39#include <mach/std_types.defs> 40#include <mach/mach_types.defs> 41 42ServerPrefix receive_; 43UserPrefix send_; 44 45/* DEPRECATED */ 46routine nspace_handle( 47 nspace_handler_port : mach_port_t; 48 pid : uint32_t; 49 in path : vfs_path_t; 50 out handler_error : int 51); 52 53routine nspace_resolve_cancel( 54 nspace_handler_port : mach_port_t; 55 req_id : uint32_t 56); 57 58/* 59 * nspace_resolve_path should not be moved even after it's not used, it's going 60 * to mess up the calls numbering in mig. 61 */ 62routine nspace_resolve_path( 63 nspace_handler_port : mach_port_t; 64 req_id : uint32_t; 65 pid : uint32_t; 66 op : uint32_t; 67 in path : nspace_path_t; 68 out xxx_rdar44371223 : int 69); 70 71/* 72 * vfs_resolve_file is deprecated in favor of vfs_resolve_file_with_audit_token. 73 */ 74routine vfs_resolve_file( 75 nspace_handler_port : mach_port_t; 76 req_id : uint32_t; 77 pid : uint32_t; 78 op : uint32_t; 79 offset : int64_t; 80 size : int64_t; 81 in path : nspace_path_t 82); 83 84/* 85 * vfs_resolve_dir is deprecated in favor of vfs_resolve_dir_with_audit_token. 86 */ 87routine vfs_resolve_dir( 88 nspace_handler_port : mach_port_t; 89 req_id : uint32_t; 90 pid : uint32_t; 91 op : uint32_t; 92 in file_name : nspace_name_t; 93 in path : nspace_path_t 94); 95 96routine vfs_resolve_file_with_audit_token( 97 nspace_handler_port : mach_port_t; 98 req_id : uint32_t; 99 op : uint32_t; 100 offset : int64_t; 101 size : int64_t; 102 in path : nspace_path_t; 103 in req_atoken : audit_token_t; /* audit token of requester */ 104ServerAuditToken atoken : audit_token_t 105); 106 107routine vfs_resolve_dir_with_audit_token( 108 nspace_handler_port : mach_port_t; 109 req_id : uint32_t; 110 op : uint32_t; 111 in file_name : nspace_name_t; 112 in path : nspace_path_t; 113 in req_atoken : audit_token_t; /* audit token of requester */ 114ServerAuditToken atoken : audit_token_t 115); 116 117/* vim: set ft=c : */ 118