From f5a117172ec17e1b0b9245bb5e067ca2da23572c Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Sat, 31 Dec 2011 22:24:44 +1100 Subject: [PATCH] gensec: move gensec_util.c to the top level To do this some defines need to move to common_auth.h Andrew Bartlett Signed-off-by: Stefan Metzmacher --- auth/common_auth.h | 5 +++++ auth/gensec/gensec.h | 14 ++++++++++++++ {source4/auth => auth}/gensec/gensec_util.c | 5 +---- auth/gensec/wscript_build | 2 +- source3/Makefile.in | 1 + source4/auth/auth.h | 5 ----- source4/auth/gensec/wscript_build | 2 +- 7 files changed, 23 insertions(+), 11 deletions(-) rename {source4/auth => auth}/gensec/gensec_util.c (95%) diff --git a/auth/common_auth.h b/auth/common_auth.h index ce3444ce7a0..40f7da4fe73 100644 --- a/auth/common_auth.h +++ b/auth/common_auth.h @@ -33,6 +33,11 @@ enum auth_password_state { AUTH_PASSWORD_RESPONSE = 3 }; +#define AUTH_SESSION_INFO_DEFAULT_GROUPS 0x01 /* Add the user to the default world and network groups */ +#define AUTH_SESSION_INFO_AUTHENTICATED 0x02 /* Add the user to the 'authenticated users' group */ +#define AUTH_SESSION_INFO_SIMPLE_PRIVILEGES 0x04 /* Use a trivial map between users and privilages, rather than a DB */ +#define AUTH_SESSION_INFO_UNIX_TOKEN 0x08 /* The returned token must have the unix_token and unix_info elements provided */ + struct auth_usersupplied_info { const char *workstation_name; diff --git a/auth/gensec/gensec.h b/auth/gensec/gensec.h index be330e97faf..a1ae634bf88 100644 --- a/auth/gensec/gensec.h +++ b/auth/gensec/gensec.h @@ -313,4 +313,18 @@ bool gensec_setting_bool(struct gensec_settings *settings, const char *mechanism NTSTATUS gensec_set_target_principal(struct gensec_security *gensec_security, const char *principal); +NTSTATUS gensec_generate_session_info(TALLOC_CTX *mem_ctx, + struct gensec_security *gensec_security, + struct auth_user_info_dc *user_info_dc, + struct auth_session_info **session_info); + +NTSTATUS gensec_generate_session_info_pac(TALLOC_CTX *mem_ctx, + struct gensec_security *gensec_security, + struct smb_krb5_context *smb_krb5_context, + DATA_BLOB *pac_blob, + const char *principal_string, + const struct tsocket_address *remote_address, + struct auth_session_info **session_info); + + #endif /* __GENSEC_H__ */ diff --git a/source4/auth/gensec/gensec_util.c b/auth/gensec/gensec_util.c similarity index 95% rename from source4/auth/gensec/gensec_util.c rename to auth/gensec/gensec_util.c index 9c5db48378b..44da345438a 100644 --- a/source4/auth/gensec/gensec_util.c +++ b/auth/gensec/gensec_util.c @@ -22,10 +22,7 @@ #include "includes.h" #include "auth/gensec/gensec.h" -#include "auth/gensec/gensec_proto.h" -#include "auth/auth.h" -#include "auth/credentials/credentials.h" -#include "auth/system_session_proto.h" +#include "auth/common_auth.h" NTSTATUS gensec_generate_session_info(TALLOC_CTX *mem_ctx, struct gensec_security *gensec_security, diff --git a/auth/gensec/wscript_build b/auth/gensec/wscript_build index e3e9372c3df..03d97e6cc96 100644 --- a/auth/gensec/wscript_build +++ b/auth/gensec/wscript_build @@ -1,6 +1,6 @@ #!/usr/bin/env python bld.SAMBA_LIBRARY('gensec', - source='gensec.c gensec_start.c', + source='gensec.c gensec_start.c gensec_util.c', pc_files='gensec.pc', autoproto='gensec_toplevel_proto.h', public_deps='tevent-util samba-util errors LIBPACKET auth_system_session samba-modules gensec_util', diff --git a/source3/Makefile.in b/source3/Makefile.in index 532cd79d88f..a6324b01716 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -557,6 +557,7 @@ LIBSMB_OBJ0 = \ libsmb/ntlmssp_wrap.o \ ../auth/gensec/gensec.o \ ../auth/gensec/gensec_start.o \ + ../auth/gensec/gensec_util.o \ ../auth/credentials/credentials.o \ ../auth/credentials/credentials_samba3.o \ ../auth/ntlmssp/ntlmssp.o \ diff --git a/source4/auth/auth.h b/source4/auth/auth.h index 06857fad2ee..a7fc413ecca 100644 --- a/source4/auth/auth.h +++ b/source4/auth/auth.h @@ -45,11 +45,6 @@ struct loadparm_context; /* version 0 - till samba4 is stable - metze */ #define AUTH4_INTERFACE_VERSION 0 -#define AUTH_SESSION_INFO_DEFAULT_GROUPS 0x01 /* Add the user to the default world and network groups */ -#define AUTH_SESSION_INFO_AUTHENTICATED 0x02 /* Add the user to the 'authenticated users' group */ -#define AUTH_SESSION_INFO_SIMPLE_PRIVILEGES 0x04 /* Use a trivial map between users and privilages, rather than a DB */ -#define AUTH_SESSION_INFO_UNIX_TOKEN 0x08 /* The returned token must have the unix_token and unix_info elements provided */ - struct auth_method_context; struct auth_check_password_request; struct auth4_context; diff --git a/source4/auth/gensec/wscript_build b/source4/auth/gensec/wscript_build index e298954536d..2eb49e6abcb 100644 --- a/source4/auth/gensec/wscript_build +++ b/source4/auth/gensec/wscript_build @@ -1,7 +1,7 @@ #!/usr/bin/env python bld.SAMBA_SUBSYSTEM('gensec_util', - source='socket.c gensec_tstream.c gensec_util.c', + source='socket.c gensec_tstream.c', deps='tevent-util tevent samba-util LIBTSOCKET', autoproto='gensec_proto.h') -- 2.34.1