summaryrefslogtreecommitdiff
path: root/source4/auth
diff options
context:
space:
mode:
Diffstat (limited to 'source4/auth')
-rw-r--r--source4/auth/auth.c8
-rw-r--r--source4/auth/config.mk61
-rw-r--r--source4/auth/credentials/config.mk9
-rw-r--r--source4/auth/gensec/config.mk33
-rw-r--r--source4/auth/gensec/gensec.c7
-rw-r--r--source4/auth/kerberos/config.mk15
-rw-r--r--source4/auth/ntlmssp/config.mk9
7 files changed, 81 insertions, 61 deletions
diff --git a/source4/auth/auth.c b/source4/auth/auth.c
index af3796a70d..c4cb42779b 100644
--- a/source4/auth/auth.c
+++ b/source4/auth/auth.c
@@ -23,7 +23,6 @@
#include "auth/auth.h"
#include "auth/auth_proto.h"
#include "lib/events/events.h"
-#include "build.h"
#include "param/param.h"
/***************************************************************************
@@ -516,8 +515,13 @@ const struct auth_critical_sizes *auth_interface_version(void)
_PUBLIC_ NTSTATUS auth_init(void)
{
static bool initialized = false;
+ extern NTSTATUS auth_developer_init(void);
+ extern NTSTATUS auth_winbind_init(void);
+ extern NTSTATUS auth_anonymous_init(void);
+ extern NTSTATUS auth_unix_init(void);
+ extern NTSTATUS auth_sam_init(void);
- init_module_fn static_init[] = { STATIC_auth_MODULES };
+ init_module_fn static_init[] = { STATIC_service_auth_MODULES };
if (initialized) return NT_STATUS_OK;
initialized = true;
diff --git a/source4/auth/config.mk b/source4/auth/config.mk
index 63aec09847..14f5da0eb7 100644
--- a/source4/auth/config.mk
+++ b/source4/auth/config.mk
@@ -5,92 +5,95 @@ mkinclude ntlmssp/config.mk
mkinclude credentials/config.mk
[SUBSYSTEM::auth_session]
-OBJ_FILES = session.o
PRIVATE_PROTO_HEADER = session_proto.h
PUBLIC_DEPENDENCIES = CREDENTIALS
# PUBLIC_HEADERS += auth/session.h
+auth_session_OBJ_FILES = $(addprefix auth/, session.o)
+
[SUBSYSTEM::auth_system_session]
-OBJ_FILES = system_session.o
PRIVATE_PROTO_HEADER = system_session_proto.h
PUBLIC_DEPENDENCIES = CREDENTIALS
PRIVATE_DEPENDENCIES = auth_session LIBSAMBA-UTIL LIBSECURITY
+auth_system_session_OBJ_FILES = $(addprefix auth/, system_session.o)
+
[SUBSYSTEM::auth_sam]
PRIVATE_PROTO_HEADER = auth_sam.h
-OBJ_FILES = sam.o ntlm_check.o
PUBLIC_DEPENDENCIES = SAMDB UTIL_LDB LIBSECURITY
PRIVATE_DEPENDENCIES = LDAP_ENCODE
+auth_sam_OBJ_FILES = $(addprefix auth/, sam.o ntlm_check.o)
+
[SUBSYSTEM::auth_sam_reply]
PRIVATE_PROTO_HEADER = auth_sam_reply.h
-OBJ_FILES = auth_sam_reply.o
+
+auth_sam_reply_OBJ_FILES = $(addprefix auth/, auth_sam_reply.o)
#######################
# Start MODULE auth_sam
[MODULE::auth_sam_module]
# gensec_krb5 and gensec_gssapi depend on it
INIT_FUNCTION = auth_sam_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_sam.o
+SUBSYSTEM = service_auth
PRIVATE_DEPENDENCIES = \
SAMDB auth_sam
# End MODULE auth_sam
#######################
+auth_sam_module_OBJ_FILES = $(addprefix auth/, auth_sam.o)
+
#######################
# Start MODULE auth_anonymous
[MODULE::auth_anonymous]
INIT_FUNCTION = auth_anonymous_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_anonymous.o
+SUBSYSTEM = service_auth
# End MODULE auth_anonymous
#######################
+auth_anonymous_OBJ_FILES = $(addprefix auth/, auth_anonymous.o)
+
#######################
# Start MODULE auth_winbind
[MODULE::auth_winbind]
INIT_FUNCTION = auth_winbind_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_winbind.o
+SUBSYSTEM = service_auth
PRIVATE_DEPENDENCIES = NDR_WINBIND MESSAGING LIBWINBIND-CLIENT
# End MODULE auth_winbind
#######################
+auth_winbind_OBJ_FILES = $(addprefix auth/, auth_winbind.o)
+
#######################
# Start MODULE auth_developer
[MODULE::auth_developer]
INIT_FUNCTION = auth_developer_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_developer.o
+SUBSYSTEM = service_auth
# End MODULE auth_developer
#######################
+auth_developer_OBJ_FILES = $(addprefix auth/, auth_developer.o)
+
[MODULE::auth_unix]
INIT_FUNCTION = auth_unix_init
-SUBSYSTEM = auth
-OBJ_FILES = auth_unix.o
+SUBSYSTEM = service_auth
PRIVATE_DEPENDENCIES = CRYPT PAM PAM_ERRORS NSS_WRAPPER
+auth_unix_OBJ_FILES = $(addprefix auth/, auth_unix.o)
+
[SUBSYSTEM::PAM_ERRORS]
PRIVATE_PROTO_HEADER = pam_errors.h
-OBJ_FILES = pam_errors.o
-#######################
-# Start SUBSYSTEM auth
-[SUBSYSTEM::auth]
-#VERSION = 0.0.1
-#SO_VERSION = 0
+PAM_ERRORS_OBJ_FILES = $(addprefix auth/, pam_errors.o)
+
+[MODULE::service_auth]
+INIT_FUNCTION = server_service_auth_init
+SUBSYSTEM = smbd
PRIVATE_PROTO_HEADER = auth_proto.h
-OBJ_FILES = \
- auth.o \
- auth_util.o \
- auth_simple.o
-PUBLIC_DEPENDENCIES = LIBSECURITY SAMDB CREDENTIALS
-PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
-# End SUBSYSTEM auth
-#######################
+PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL LIBSECURITY SAMDB CREDENTIALS
+
+service_auth_OBJ_FILES = $(addprefix auth/, auth.o auth_util.o auth_simple.o)
# PUBLIC_HEADERS += auth/auth.h
@@ -98,3 +101,5 @@ PRIVATE_DEPENDENCIES = LIBSAMBA-UTIL
PUBLIC_DEPENDENCIES = auth_system_session
PRIVATE_DEPENDENCIES = SAMDB
SWIG_FILE = auth.i
+
+swig_auth_OBJ_FILES = auth/auth_wrap.o
diff --git a/source4/auth/credentials/config.mk b/source4/auth/credentials/config.mk
index 83f2f0db93..6f3ec3997c 100644
--- a/source4/auth/credentials/config.mk
+++ b/source4/auth/credentials/config.mk
@@ -2,18 +2,17 @@
# Start SUBSYSTEM CREDENTIALS
[SUBSYSTEM::CREDENTIALS]
PRIVATE_PROTO_HEADER = credentials_proto.h
-OBJ_FILES = credentials.o \
- credentials_files.o \
- credentials_ntlm.o \
- credentials_krb5.o \
- ../kerberos/kerberos_util.o
PUBLIC_DEPENDENCIES = \
LIBCLI_AUTH SECRETS LIBCRYPTO KERBEROS UTIL_LDB HEIMDAL_GSSAPI
PRIVATE_DEPENDENCIES = \
SECRETS
+CREDENTIALS_OBJ_FILES = $(addprefix auth/credentials/, credentials.o credentials_files.o credentials_ntlm.o credentials_krb5.o ../kerberos/kerberos_util.o)
+
PUBLIC_HEADERS += auth/credentials/credentials.h
[PYTHON::swig_credentials]
PUBLIC_DEPENDENCIES = CREDENTIALS LIBCMDLINE_CREDENTIALS
SWIG_FILE = credentials.i
+
+swig_credentials_OBJ_FILES = auth/credentials/credentials_wrap.o
diff --git a/source4/auth/gensec/config.mk b/source4/auth/gensec/config.mk
index 14864f7e4c..61663d9633 100644
--- a/source4/auth/gensec/config.mk
+++ b/source4/auth/gensec/config.mk
@@ -1,16 +1,18 @@
#################################
# Start SUBSYSTEM gensec
[LIBRARY::gensec]
-PC_FILE = gensec.pc
-VERSION = 0.0.1
-SO_VERSION = 0
PRIVATE_PROTO_HEADER = gensec_proto.h
-OBJ_FILES = gensec.o socket.o
PUBLIC_DEPENDENCIES = \
CREDENTIALS LIBSAMBA-UTIL LIBCRYPTO ASN1_UTIL samba-socket LIBPACKET
# End SUBSYSTEM gensec
#################################
+PC_FILES += auth/gensec/gensec.pc
+
+gensec_VERSION = 0.0.1
+gensec_SOVERSION = 0
+gensec_OBJ_FILES = $(addprefix auth/gensec/, gensec.o socket.o)
+
PUBLIC_HEADERS += auth/gensec/gensec.h
################################################
@@ -18,31 +20,34 @@ PUBLIC_HEADERS += auth/gensec/gensec.h
[MODULE::gensec_krb5]
SUBSYSTEM = gensec
INIT_FUNCTION = gensec_krb5_init
-OBJ_FILES = gensec_krb5.o
-PRIVATE_DEPENDENCIES = CREDENTIALS KERBEROS auth auth_sam
+PRIVATE_DEPENDENCIES = CREDENTIALS KERBEROS service_auth auth_sam
# End MODULE gensec_krb5
################################################
+gensec_krb5_OBJ_FILES = $(addprefix auth/gensec/, gensec_krb5.o)
+
################################################
# Start MODULE gensec_gssapi
[MODULE::gensec_gssapi]
SUBSYSTEM = gensec
INIT_FUNCTION = gensec_gssapi_init
-OBJ_FILES = gensec_gssapi.o
PRIVATE_DEPENDENCIES = HEIMDAL_GSSAPI CREDENTIALS KERBEROS
# End MODULE gensec_gssapi
################################################
+gensec_gssapi_OBJ_FILES = $(addprefix auth/gensec/, gensec_gssapi.o)
+
################################################
# Start MODULE cyrus_sasl
[MODULE::cyrus_sasl]
SUBSYSTEM = gensec
INIT_FUNCTION = gensec_sasl_init
-OBJ_FILES = cyrus_sasl.o
PRIVATE_DEPENDENCIES = CREDENTIALS SASL
# End MODULE cyrus_sasl
################################################
+cyrus_sasl_OBJ_FILES = $(addprefix auth/gensec/, cyrus_sasl.o)
+
################################################
# Start MODULE gensec_spnego
[MODULE::gensec_spnego]
@@ -50,31 +55,31 @@ SUBSYSTEM = gensec
INIT_FUNCTION = gensec_spnego_init
PRIVATE_PROTO_HEADER = spnego_proto.h
PRIVATE_DEPENDENCIES = ASN1_UTIL CREDENTIALS
-OBJ_FILES = spnego.o spnego_parse.o
# End MODULE gensec_spnego
################################################
+gensec_spnego_OBJ_FILES = $(addprefix auth/gensec/, spnego.o spnego_parse.o)
+
################################################
# Start MODULE gensec_schannel
[MODULE::gensec_schannel]
SUBSYSTEM = gensec
PRIVATE_PROTO_HEADER = schannel_proto.h
INIT_FUNCTION = gensec_schannel_init
-OBJ_FILES = schannel.o \
- schannel_sign.o
PRIVATE_DEPENDENCIES = SCHANNELDB NDR_SCHANNEL CREDENTIALS LIBNDR
OUTPUT_TYPE = MERGED_OBJ
# End MODULE gensec_schannel
################################################
+gensec_schannel_OBJ_FILES = $(addprefix auth/gensec/, schannel.o schannel_sign.o)
+
################################################
# Start SUBSYSTEM SCHANNELDB
[SUBSYSTEM::SCHANNELDB]
PRIVATE_PROTO_HEADER = schannel_state.h
-OBJ_FILES = \
- schannel_state.o
PRIVATE_DEPENDENCIES = LDB_WRAP SAMDB
-#
# End SUBSYSTEM SCHANNELDB
################################################
+SCHANNELDB_OBJ_FILES = $(addprefix auth/gensec/, schannel_state.o)
+
diff --git a/source4/auth/gensec/gensec.c b/source4/auth/gensec/gensec.c
index 59c19b96ab..3393ce0178 100644
--- a/source4/auth/gensec/gensec.c
+++ b/source4/auth/gensec/gensec.c
@@ -23,7 +23,6 @@
#include "includes.h"
#include "auth/auth.h"
#include "lib/events/events.h"
-#include "build.h"
#include "librpc/rpc/dcerpc.h"
#include "auth/credentials/credentials.h"
#include "auth/gensec/gensec.h"
@@ -1268,6 +1267,12 @@ static int sort_gensec(struct gensec_security_ops **gs1, struct gensec_security_
_PUBLIC_ NTSTATUS gensec_init(struct loadparm_context *lp_ctx)
{
static bool initialized = false;
+ extern NTSTATUS gensec_sasl_init(void);
+ extern NTSTATUS gensec_krb5_init(void);
+ extern NTSTATUS gensec_schannel_init(void);
+ extern NTSTATUS gensec_spnego_init(void);
+ extern NTSTATUS gensec_gssapi_init(void);
+ extern NTSTATUS gensec_ntlmssp_init(void);
init_module_fn static_init[] = { STATIC_gensec_MODULES };
init_module_fn *shared_init;
diff --git a/source4/auth/kerberos/config.mk b/source4/auth/kerberos/config.mk
index 7493a6d06d..762d6f8c49 100644
--- a/source4/auth/kerberos/config.mk
+++ b/source4/auth/kerberos/config.mk
@@ -2,13 +2,16 @@
# Start SUBSYSTEM KERBEROS
[SUBSYSTEM::KERBEROS]
PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = kerberos.o \
- clikrb5.o \
- kerberos_heimdal.o \
- kerberos_pac.o \
- gssapi_parse.o \
- krb5_init_context.o
PUBLIC_DEPENDENCIES = HEIMDAL_KRB5 NDR_KRB5PAC samba-socket LIBCLI_RESOLVE
PRIVATE_DEPENDENCIES = ASN1_UTIL auth_sam_reply LIBPACKET LIBNDR
# End SUBSYSTEM KERBEROS
#################################
+
+KERBEROS_OBJ_FILES = $(addprefix auth/kerberos/, \
+ kerberos.o \
+ clikrb5.o \
+ kerberos_heimdal.o \
+ kerberos_pac.o \
+ gssapi_parse.o \
+ krb5_init_context.o)
+
diff --git a/source4/auth/ntlmssp/config.mk b/source4/auth/ntlmssp/config.mk
index 9033384b1f..f8e711feda 100644
--- a/source4/auth/ntlmssp/config.mk
+++ b/source4/auth/ntlmssp/config.mk
@@ -1,6 +1,7 @@
[SUBSYSTEM::MSRPC_PARSE]
PRIVATE_PROTO_HEADER = msrpc_parse.h
-OBJ_FILES = ntlmssp_parse.o
+
+MSRPC_PARSE_OBJ_FILES = $(addprefix auth/ntlmssp/, ntlmssp_parse.o)
################################################
# Start MODULE gensec_ntlmssp
@@ -8,11 +9,9 @@ OBJ_FILES = ntlmssp_parse.o
SUBSYSTEM = gensec
INIT_FUNCTION = gensec_ntlmssp_init
PRIVATE_PROTO_HEADER = proto.h
-OBJ_FILES = ntlmssp.o \
- ntlmssp_sign.o \
- ntlmssp_client.o \
- ntlmssp_server.o
PRIVATE_DEPENDENCIES = MSRPC_PARSE CREDENTIALS
OUTPUT_TYPE = MERGED_OBJ
# End MODULE gensec_ntlmssp
################################################
+
+gensec_ntlmssp_OBJ_FILES = $(addprefix auth/ntlmssp/, ntlmssp.o ntlmssp_sign.o ntlmssp_client.o ntlmssp_server.o)