summaryrefslogtreecommitdiff
path: root/source4/smb_server
diff options
context:
space:
mode:
Diffstat (limited to 'source4/smb_server')
-rw-r--r--source4/smb_server/service.c4
-rw-r--r--source4/smb_server/smb_server.h7
2 files changed, 7 insertions, 4 deletions
diff --git a/source4/smb_server/service.c b/source4/smb_server/service.c
index 275e625386..bc436172a1 100644
--- a/source4/smb_server/service.c
+++ b/source4/smb_server/service.c
@@ -182,7 +182,7 @@ static NTSTATUS make_connection_snum(struct smbsrv_request *req,
/* Invoke NTVFS connection hook */
if (tcon->ntvfs_ops->connect) {
- status = tcon->ntvfs_ops->connect(req, lp_servicename(snum));
+ status = tcon->ntvfs_ops->connect(req, lp_servicename(snum), 0);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0,("make_connection: NTVFS make connection failed!\n"));
conn_free(req->smb_conn, tcon);
@@ -252,7 +252,7 @@ void close_cnum(struct smbsrv_tcon *tcon)
lp_servicename(SNUM(tcon))));
/* tell the ntvfs backend that we are disconnecting */
- tcon->ntvfs_ops->disconnect(tcon);
+ tcon->ntvfs_ops->disconnect(tcon, 0);
conn_free(tcon->smb_conn, tcon);
}
diff --git a/source4/smb_server/smb_server.h b/source4/smb_server/smb_server.h
index 59fb03ea2e..b7f9e04385 100644
--- a/source4/smb_server/smb_server.h
+++ b/source4/smb_server/smb_server.h
@@ -62,8 +62,8 @@ struct smbsrv_tcon {
/* the server context that this was created on */
struct smbsrv_connection *smb_conn;
- /* a private structure used by the active NTVFS backend */
- void *ntvfs_private;
+ /* an array of private structures used by the active NTVFS backends */
+ void **ntvfs_private_list;
uint16_t cnum; /* an index passed over the wire (the TID) */
int service;
@@ -93,6 +93,9 @@ struct smbsrv_request {
/* the session context is derived from the vuid */
struct smbsrv_session *session;
+ /* the ntvfs chaining depth */
+ int ntvfs_depth;
+
/* a set of flags to control usage of the request. See REQ_CONTROL_* */
unsigned control_flags;