source4/smbd: refactor the process model for prefork
[samba.git] / source4 / smb_server / smb_server.h
index 6088853743bb941626bf5afc651e0fd33f799c1a..5ddfe78a288ab8b9c8c547f4d74209c83c823a21 100644 (file)
@@ -22,6 +22,7 @@
 #include "libcli/raw/request.h"
 #include "libcli/raw/interfaces.h"
 #include "lib/socket/socket.h"
+#include "libds/common/roles.h"
 #include "../lib/util/dlinklist.h"
 #include "../librpc/gen_ndr/nbt.h"
 
@@ -265,8 +266,6 @@ struct smbsrv_request {
        struct smb_request_buffer out;
 };
 
-enum security_types {SEC_SHARE,SEC_USER};
-
 /* smb server context structure. This should contain all the state
  * information associated with a SMB server connection 
  */
@@ -300,7 +299,7 @@ struct smbsrv_connection {
                enum protocol_types protocol;
 
                /* authentication context for multi-part negprot */
-               struct auth_context *auth_context;
+               struct auth4_context *auth_context;
        
                /* reference to the kerberos keytab, or machine trust account */
                struct cli_credentials *server_credentials;
@@ -371,7 +370,6 @@ struct smbsrv_connection {
 
        /* configuration parameters */
        struct {
-               enum security_types security;
                bool nt_status_support;
        } config;
 
@@ -399,7 +397,8 @@ NTSTATUS smbsrv_add_socket(TALLOC_CTX *mem_ctx,
                           struct tevent_context *event_context,
                           struct loadparm_context *lp_ctx,
                           const struct model_ops *model_ops,
-                          const char *address);
+                          const char *address,
+                          void *process_context);
 
 struct loadparm_context;
 
@@ -477,7 +476,7 @@ struct loadparm_context;
 #define SMBSRV_CALL_NTVFS_BACKEND(cmd) do { \
        req->ntvfs->async_states->status = cmd; \
        if (req->ntvfs->async_states->state & NTVFS_ASYNC_STATE_ASYNC) { \
-               DLIST_ADD_END(req->smb_conn->requests, req, struct smbsrv_request *); \
+               DLIST_ADD_END(req->smb_conn->requests, req); \
        } else { \
                req->ntvfs->async_states->send_fn(req->ntvfs); \
        } \