srvsvc_svc.c revision 7f667e74610492ddbce8ce60f52ece95d2401949
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * CDDL HEADER START
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * The contents of this file are subject to the terms of the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Common Development and Distribution License (the "License").
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner * You may not use this file except in compliance with the License.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * See the License for the specific language governing permissions
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * and limitations under the License.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * When distributing Covered Code, include this CDDL HEADER in each
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * If applicable, add the following below this CDDL HEADER, with the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * fields enclosed by brackets "[]" replaced with your own identifying
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * information: Portions Copyright [yyyy] [name of copyright owner]
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * CDDL HEADER END
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Use is subject to license terms.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Server Service RPC (SRVSVC) server-side interface definition.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * The server service provides a remote administration interface.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * This service uses NERR/Win32 error codes rather than NT status
#define SRVSVC_CONNECT_ENUM_NULL 0
typedef struct srvsvc_enum {
struct mslm_NetFileEnum *);
struct mslm_NetFileEnum *);
ndr_xa_t *);
ndr_xa_t *);
static int srvsvc_netconnect_qualifier(const char *);
srvsvc_initialize(void)
char *qualifier;
int qualtype;
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static DWORD
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
return (SRVSVC_CONNECT_ENUM_NULL);
return (SRVSVC_CONNECT_ENUM_NULL);
return (SRVSVC_CONNECT_ENUM_WKSTN);
return (SRVSVC_CONNECT_ENUM_NULL);
return (SRVSVC_CONNECT_ENUM_SHARE);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static DWORD
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
++entries_read;
++fi2;
return (ERROR_SUCCESS);
static DWORD
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
++entries_read;
++fi3;
return (ERROR_SUCCESS);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
case SMB_SHRF_CSC_DISABLED:
case SMB_SHRF_CSC_AUTO:
case SMB_SHRF_CSC_VDO:
case SMB_SHRF_CSC_MANUAL:
return (NDR_DRC_OK);
sizeof (DWORD));
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
if (status != 0) {
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static DWORD
char *workstation;
int n_users;
int offset = 0;
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
for (i = 0; i < n_sessions; ++i) {
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
char *workstation;
int n_users;
int offset = 0;
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
for (i = 0; i < n_sessions; ++i) {
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (ERROR_NOT_ENOUGH_MEMORY);
sizeof (sys_comment));
sizeof (struct mslm_NetServerGetInfo_result));
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (ERROR_NOT_ENOUGH_MEMORY);
return (NDR_DRC_OK);
char *name;
int len;
return (NDR_DRC_OK);
return (NDR_DRC_OK);
case NAMETYPE_SHARE:
case NAMETYPE_USER:
case NAMETYPE_PASSWORD:
case NAMETYPE_GROUP:
case NAMETYPE_COMPUTER:
case NAMETYPE_EVENT:
case NAMETYPE_DOMAIN:
case NAMETYPE_SERVICE:
case NAMETYPE_NET:
case NAMETYPE_MESSAGE:
case NAMETYPE_MESSAGEDEST:
case NAMETYPE_SHAREPASSWORD:
case NAMETYPE_WORKGROUP:
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static uint32_t
if (obj_size == 0)
return (n_obj);
return (NDR_DRC_OK);
if (status != 0) {
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static DWORD
return (ERROR_SUCCESS);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_SUCCESS);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_SUCCESS);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_SUCCESS);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_SUCCESS);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_SUCCESS);
static DWORD
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_NOT_ENOUGH_MEMORY);
return (ERROR_INVALID_LEVEL);
return (ERROR_SUCCESS);
static boolean_t
return (B_FALSE);
return (B_FALSE);
p = path;
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
return (NDR_DRC_OK);
static sa_group_t
int err;
return (group);
return (NULL);
return (group);
static uint32_t
int err;
return (NERR_InternalError);
return (NERR_InternalError);
return (NERR_InternalError);
if (new_share)
return (NERR_InternalError);
return (status);
static uint32_t
return (NERR_InternalError);
return (status);