notify_ipc.defs   [plain text]


/*
 * Copyright (c) 2003-2010 Apple Inc. All rights reserved.
 *
 * @APPLE_LICENSE_HEADER_START@
 * 
 * Portions Copyright (c) 2003-2010 Apple Inc.  All Rights Reserved.
 *
 * This file contains Original Code and/or Modifications of Original Code
 * as defined in and that are subject to the Apple Public Source License
 * Version 2.0 (the 'License'). You may not use this file except in
 * compliance with the License. Please obtain a copy of the License at
 * http://www.opensource.apple.com/apsl/ and read it before using this
 * file.
 * 
 * The Original Code and all software distributed under the License are
 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 * Please see the License for the specific language governing rights and
 * limitations under the License.
 * 
 * @APPLE_LICENSE_HEADER_END@
 */

#include <mach/std_types.defs>
#include <mach/mach_types.defs>

subsystem notify_ipc 78945668;
serverprefix _;

import <sys/types.h>;

import "notify_ipc_types.h";

type notify_name    = ^ array [] of MACH_MSG_TYPE_BYTE
	ctype : caddr_t;

routine _notify_server_post
(
	server : mach_port_t;
	name : notify_name;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_register_plain
(
	server : mach_port_t;
	name : notify_name;
	out client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_register_check
(
	server : mach_port_t;
	name : notify_name;
	out size : int;
	out slot : int;
	out client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_register_signal
(
	server : mach_port_t;
	name : notify_name;
	sig: int;
	out client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_register_file_descriptor
(
	server : mach_port_t;
	name : notify_name;
	fileport : mach_port_move_send_t;
	ntoken : int;
	out client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_register_mach_port
(
	server : mach_port_t;
	name : notify_name;
	fileport : mach_port_move_send_t;
	ntoken : int;
	out client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_set_owner
(
	server : mach_port_t;
	name : notify_name;
	user : int;
	group : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_get_owner
(
	server : mach_port_t;
	name : notify_name;
	out user : int;
	out group : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_set_access
(
	server : mach_port_t;
	name : notify_name;
	mode : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_get_access
(
	server : mach_port_t;
	name : notify_name;
	out mode : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_release_name
(
	server : mach_port_t;
	name : notify_name;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_cancel
(
	server : mach_port_t;
	client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_check
(
	server : mach_port_t;
	client_id : int;
	out check : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_get_state
(
	server : mach_port_t;
	client_id : int;
	out state : uint64_t;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_set_state
(
	server : mach_port_t;
	client_id : int;
	state : uint64_t;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_get_val
(
	server : mach_port_t;
	client_id : int;
	out val : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_set_val
(
	server : mach_port_t;
	client_id : int;
	val : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_monitor_file
(
	server : mach_port_t;
	client_id : int;
	path : notify_name;
	flags : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_suspend
(
	server : mach_port_t;
	client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_resume
(
	server : mach_port_t;
	client_id : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_suspend_pid
(
	server : mach_port_t;
	pid : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

routine _notify_server_resume_pid
(
	server : mach_port_t;
	pid : int;
	out status : int;
	ServerAuditToken token : audit_token_t
);

simpleroutine _notify_server_simple_post
(
	server : mach_port_t;
	name : notify_name;
	ServerAuditToken token : audit_token_t
);