memberd.defs   [plain text]


/*
 * Copyright (c) 2004-2007 Apple Computer, Inc. All rights reserved.
 *
 * @APPLE_LICENSE_HEADER_START@
 *
 * The contents of this file constitute Original Code as defined in and
 * are subject to the Apple Public Source License Version 1.1 (the
 * "License").  You may not use this file except in compliance with the
 * License.  Please obtain a copy of the License at
 * http://www.apple.com/publicsource and read it before using this file.
 *
 * This 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 OR NON-INFRINGEMENT.  Please see the
 * License for the specific language governing rights and limitations
 * under the License.
 *
 * @APPLE_LICENSE_HEADER_END@
 */


subsystem memberd 8000;

serverprefix Server;

#include <mach/std_types.defs>
#include <mach/mach_types.defs>
import "memberd_defines.h";

type kauth_identity_extlookup = struct [50] of integer_t;
type guid_t = struct [4] of uint32_t;

type StatBlock = struct [16] of uint32_t;

type GIDArray = array [16] of uint32_t;

type string = c_string[*:256];

routine _mbr_DoMembershipCall
(
	server: mach_port_t;
	inout request: kauth_identity_extlookup;
	UserSecToken token : security_token_t
);

routine _mbr_GetStats
(
	server: mach_port_t;
	out stats: StatBlock;
	UserSecToken token : security_token_t
);

routine _mbr_ClearStats
(
	server: mach_port_t;
	UserSecToken token : security_token_t
);

routine _mbr_MapName
(
	server: mach_port_t;
	in isUser: uint8_t;
	in name: string;
	out guid: guid_t;
	UserSecToken token : security_token_t
);

routine _mbr_GetGroups
(
	server: mach_port_t;
	in uid: uint32_t;
	out numGroups: uint32_t;
	out gids: GIDArray;
	UserSecToken token : security_token_t
);
 
routine _mbr_ClearCache
(
	server: mach_port_t;
	UserSecToken token : security_token_t
);

routine _mbr_DumpState
(
	server: mach_port_t;
	in logOnly: uint8_t;
	UserSecToken token : security_token_t
);