1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

s3-epmapper: Added a endpoint mapper skeleton.

This commit is contained in:
Andreas Schneider 2010-10-04 15:56:49 +02:00 committed by Andreas Schneider
parent eca7292aec
commit 84995397a7
3 changed files with 131 additions and 1 deletions

View File

@ -718,11 +718,13 @@ RPC_PIPE_OBJ = rpc_server/srv_pipe.o rpc_server/srv_pipe_hnd.o \
RPC_RPCECHO_OBJ = rpc_server/srv_echo_nt.o librpc/gen_ndr/srv_echo.o
RPC_EPMAPPER_OBJ = rpc_server/srv_epmapper.o librpc/gen_ndr/srv_epmapper.o
RPC_SERVER_OBJ = $(RPC_LSARPC_OBJ) $(RPC_WINREG_OBJ) $(RPC_INITSHUTDOWN_OBJ) \
$(RPC_DSSETUP_OBJ) $(RPC_WKSSVC_OBJ) $(RPC_SVCCTL_OBJ) \
$(RPC_NTSVCS_OBJ) $(RPC_NETLOGON_OBJ) $(RPC_NETDFS_OBJ) \
$(RPC_SRVSVC_OBJ) $(RPC_SPOOLSS_OBJ) $(RPC_EVENTLOG_OBJ) \
$(RPC_SAMR_OBJ) $(RPC_RPCECHO_OBJ) \
$(RPC_SAMR_OBJ) $(RPC_RPCECHO_OBJ) $(RPC_EPMAPPER_OBJ) \
$(RPC_PIPE_OBJ) $(NPA_TSTREAM_OBJ) \
$(LIBCLI_SPOOLSS_OBJ) \
$(LIBCLI_WINREG_OBJ) \

View File

@ -0,0 +1,127 @@
/*
Unix SMB/CIFS implementation.
Endpoint server for the epmapper pipe
Copyright (C) 2010 Andreas Schneider <asn@samba.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "includes.h"
#include "librpc/gen_ndr/ndr_epmapper.h"
#include "librpc/gen_ndr/srv_epmapper.h"
typedef uint32_t error_status_t;
/*
epm_Insert
*/
error_status_t _epm_Insert(struct pipes_struct *p,
struct epm_Insert *r)
{
/* Check if we have a priviledged pipe/handle */
/* Check if the entry already exits */
/* Replace the entry if flag is set */
/* Create new entry */
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_Delete
*/
error_status_t _epm_Delete(struct pipes_struct *p,
struct epm_Delete *r)
{
/* Check if we have a priviledged pipe/handle */
/* Delete the entry */
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_Lookup
*/
error_status_t _epm_Lookup(struct pipes_struct *p,
struct epm_Lookup *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
* Apply some algorithm (using the fields in the map_tower) to an endpoint map
* to produce a list of protocol towers.
*/
error_status_t _epm_Map(struct pipes_struct *p,
struct epm_Map *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_LookupHandleFree
*/
error_status_t _epm_LookupHandleFree(struct pipes_struct *p,
struct epm_LookupHandleFree *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_InqObject
*/
error_status_t _epm_InqObject(struct pipes_struct *p,
struct epm_InqObject *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_MgmtDelete
*/
error_status_t _epm_MgmtDelete(struct pipes_struct *p,
struct epm_MgmtDelete *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/*
epm_MapAuth
*/
error_status_t _epm_MapAuth(struct pipes_struct *p,
struct epm_MapAuth *r)
{
p->rng_fault_state = true;
return EPMAPPER_STATUS_CANT_PERFORM_OP;
}
/* vim: set ts=8 sw=8 noet cindent syntax=c.doxygen: */

View File

@ -47,6 +47,7 @@
#include "../librpc/gen_ndr/srv_svcctl.h"
#include "../librpc/gen_ndr/srv_winreg.h"
#include "../librpc/gen_ndr/srv_wkssvc.h"
#include "../librpc/gen_ndr/srv_epmapper.h"
#include "printing/nt_printing_migrate.h"