diff options
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/process.c | 2 | ||||
-rw-r--r-- | source3/smbd/reply.c | 17 |
2 files changed, 8 insertions, 11 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c index 85e061710d..fdec2d106d 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -747,7 +747,7 @@ static const struct smb_message_struct { /* 0x6e */ { NULL, NULL, NULL, 0 }, /* 0x6f */ { NULL, NULL, NULL, 0 }, /* 0x70 */ { "SMBtcon",reply_tcon,NULL,0}, -/* 0x71 */ { "SMBtdis",reply_tdis,NULL,DO_CHDIR}, +/* 0x71 */ { "SMBtdis",NULL,reply_tdis,DO_CHDIR}, /* 0x72 */ { "SMBnegprot",NULL,reply_negprot,0}, /* 0x73 */ { "SMBsesssetupX",NULL,reply_sesssetup_and_X,0}, /* 0x74 */ { "SMBulogoffX", reply_ulogoffX,NULL, 0}, /* ulogoff doesn't give a valid TID */ diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index c347182b99..7af0807c0a 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -3704,27 +3704,24 @@ int reply_unlock(connection_struct *conn, char *inbuf,char *outbuf, int size, conn POINTER CAN BE NULL HERE ! ****************************************************************************/ -int reply_tdis(connection_struct *conn, - char *inbuf,char *outbuf, int dum_size, int dum_buffsize) +void reply_tdis(connection_struct *conn, struct smb_request *req) { - int outsize = set_message(inbuf,outbuf,0,0,False); - uint16 vuid; START_PROFILE(SMBtdis); - vuid = SVAL(inbuf,smb_uid); - if (!conn) { DEBUG(4,("Invalid connection in tdis\n")); + reply_doserror(req, ERRSRV, ERRinvnid); END_PROFILE(SMBtdis); - return ERROR_DOS(ERRSRV,ERRinvnid); + return; } conn->used = False; - close_cnum(conn,vuid); - + close_cnum(conn,req->vuid); + + reply_outbuf(req, 0, 0); END_PROFILE(SMBtdis); - return outsize; + return; } /**************************************************************************** |