summaryrefslogtreecommitdiff
path: root/source3/smbd/globals.h
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2011-12-15 14:45:56 +0100
committerStefan Metzmacher <metze@samba.org>2012-06-25 20:55:06 +0200
commit85f8c14f3084121f58f31ebd11d80bfa01c8d6ce (patch)
tree9e631dd73ebcfa9dd9e02bb6a9163347017dc111 /source3/smbd/globals.h
parent5b3c07fa898604791401050f1772844ef2ac622a (diff)
downloadsamba-85f8c14f3084121f58f31ebd11d80bfa01c8d6ce.tar.gz
samba-85f8c14f3084121f58f31ebd11d80bfa01c8d6ce.tar.bz2
samba-85f8c14f3084121f58f31ebd11d80bfa01c8d6ce.zip
s3:smbd: add smbXsrv_session infrastructure
Pair-Programmed-With: Michael Adam <obnox@samba.org> metze
Diffstat (limited to 'source3/smbd/globals.h')
-rw-r--r--source3/smbd/globals.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h
index 2614ebe631..e452ae7aa1 100644
--- a/source3/smbd/globals.h
+++ b/source3/smbd/globals.h
@@ -19,6 +19,7 @@
*/
#include "system/select.h"
+#include "librpc/gen_ndr/smbXsrv.h"
#if defined(HAVE_AIO)
struct aio_extra;
@@ -354,6 +355,8 @@ struct smbXsrv_connection {
struct msg_state *msg_state;
uint64_t smbd_idle_profstamp;
+
+ struct smbXsrv_session_table *session_table;
};
NTSTATUS smbXsrv_version_global_init(const struct server_id *server_id);
@@ -362,6 +365,22 @@ uint32_t smbXsrv_version_global_current(void);
NTSTATUS smbXsrv_connection_init_tables(struct smbXsrv_connection *conn,
enum protocol_types protocol);
+NTSTATUS smbXsrv_session_global_init(void);
+NTSTATUS smbXsrv_session_create(struct smbXsrv_connection *conn,
+ NTTIME now,
+ struct smbXsrv_session **_session);
+NTSTATUS smbXsrv_session_update(struct smbXsrv_session *session);
+NTSTATUS smbXsrv_session_logoff(struct smbXsrv_session *session);
+NTSTATUS smbXsrv_session_logoff_all(struct smbXsrv_connection *conn);
+NTSTATUS smb1srv_session_table_init(struct smbXsrv_connection *conn);
+NTSTATUS smb1srv_session_lookup(struct smbXsrv_connection *conn,
+ uint16_t vuid, NTTIME now,
+ struct smbXsrv_session **session);
+NTSTATUS smb2srv_session_table_init(struct smbXsrv_connection *conn);
+NTSTATUS smb2srv_session_lookup(struct smbXsrv_connection *conn,
+ uint64_t session_id, NTTIME now,
+ struct smbXsrv_session **session);
+
struct smbd_smb2_request {
struct smbd_smb2_request *prev, *next;