diff options
Diffstat (limited to 'source4/librpc')
-rw-r--r-- | source4/librpc/config.mk | 9 | ||||
-rw-r--r-- | source4/librpc/rpc/dcerpc.c | 7 | ||||
-rw-r--r-- | source4/librpc/tables.pl | 5 |
3 files changed, 14 insertions, 7 deletions
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk index 06254a6748..03367bdf17 100644 --- a/source4/librpc/config.mk +++ b/source4/librpc/config.mk @@ -302,14 +302,9 @@ librpc/gen_ndr/tables.c: librpc/gen_ndr/ndr_*.h @$(PERL) librpc/tables.pl --output=librpc/gen_ndr/tables.c \ librpc/gen_ndr/ndr_*.h -[SUBSYSTEM::NDR_IFACE_TABLE] -NOPROTO = YES -OBJ_FILES = gen_ndr/tables.o - [SUBSYSTEM::NDR_ALL] -INIT_FUNCTION = dcerpc_table_init -OBJ_FILES = rpc/table.o -REQUIRED_SUBSYSTEMS = NDR_IFACE_TABLE NDR_AUDIOSRV NDR_ECHO NDR_DCERPC NDR_EXCHANGE \ +OBJ_FILES = rpc/table.o gen_ndr/tables.o +REQUIRED_SUBSYSTEMS = NDR_AUDIOSRV NDR_ECHO NDR_DCERPC NDR_EXCHANGE \ NDR_DSBACKUP NDR_EFS NDR_MISC NDR_LSA NDR_DFS NDR_DRSUAPI \ NDR_POLICYAGENT NDR_UNIXINFO NDR_SAMR NDR_SPOOLSS NDR_WKSSVC NDR_SRVSVC NDR_ATSVC \ NDR_EVENTLOG NDR_EPMAPPER NDR_DBGIDL NDR_DSSETUP NDR_MSGSVC NDR_WINS \ diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c index df71be7651..0269eb9919 100644 --- a/source4/librpc/rpc/dcerpc.c +++ b/source4/librpc/rpc/dcerpc.c @@ -29,6 +29,13 @@ #include "libcli/composite/composite.h" #include "auth/gensec/gensec.h" +NTSTATUS dcerpc_init(void) +{ + gensec_init(); + + return NT_STATUS_OK; +} + static void dcerpc_ship_next_request(struct dcerpc_connection *c); /* destroy a dcerpc connection */ diff --git a/source4/librpc/tables.pl b/source4/librpc/tables.pl index 5757dc000a..7ef1dbd14a 100644 --- a/source4/librpc/tables.pl +++ b/source4/librpc/tables.pl @@ -82,6 +82,11 @@ print TABLEC <<EOF; NTSTATUS dcerpc_table_init(void) { + static BOOL initialized = False; + + if (initialized) return NT_STATUS_OK; + initialized = True; + $init_fns return NT_STATUS_OK; |