r24444: Convert reply_find[n]close to the new API
authorVolker Lendecke <vlendec@samba.org>
Tue, 14 Aug 2007 21:53:48 +0000 (21:53 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:29:48 +0000 (12:29 -0500)
source/smbd/process.c
source/smbd/trans2.c

index 7f307ade63cd9d310c48fa1a5723b4317ba80869..6405ddf1f51d616fd92342daab970f93b5e37a78 100644 (file)
@@ -742,8 +742,8 @@ static const struct smb_message_struct {
 /* 0x31 */ { NULL, NULL, NULL, 0 },
 /* 0x32 */ { "SMBtrans2", NULL,reply_trans2, AS_USER | CAN_IPC },
 /* 0x33 */ { "SMBtranss2", NULL,reply_transs2, AS_USER},
-/* 0x34 */ { "SMBfindclose", reply_findclose,NULL,AS_USER},
-/* 0x35 */ { "SMBfindnclose", reply_findnclose,NULL, AS_USER},
+/* 0x34 */ { "SMBfindclose", NULL,reply_findclose,AS_USER},
+/* 0x35 */ { "SMBfindnclose", NULL,reply_findnclose,AS_USER},
 /* 0x36 */ { NULL, NULL, NULL, 0 },
 /* 0x37 */ { NULL, NULL, NULL, 0 },
 /* 0x38 */ { NULL, NULL, NULL, 0 },
index 9c4c8556d2c1e7f1a5e9aad3315d6ff93d98565f..74c287c7578e4f5f335800123a273d648b517bca 100644 (file)
@@ -6816,37 +6816,49 @@ static void call_trans2ioctl(connection_struct *conn,
  Reply to a SMBfindclose (stop trans2 directory search).
 ****************************************************************************/
 
-int reply_findclose(connection_struct *conn,
-                   char *inbuf,char *outbuf,int length,int bufsize)
+void reply_findclose(connection_struct *conn, struct smb_request *req)
 {
-       int outsize = 0;
-       int dptr_num=SVALS(inbuf,smb_vwv0);
+       int dptr_num;
+
        START_PROFILE(SMBfindclose);
 
+       if (req->wct < 1) {
+               reply_nterror(req, NT_STATUS_INVALID_PARAMETER);
+               END_PROFILE(SMBfindclose);
+               return;
+       }
+
+       dptr_num = SVALS(req->inbuf,smb_vwv0);
+
        DEBUG(3,("reply_findclose, dptr_num = %d\n", dptr_num));
 
        dptr_close(&dptr_num);
 
-       outsize = set_message(inbuf, outbuf,0,0,False);
+       reply_outbuf(req, 0, 0);
 
        DEBUG(3,("SMBfindclose dptr_num = %d\n", dptr_num));
 
        END_PROFILE(SMBfindclose);
-       return(outsize);
+       return;
 }
 
 /****************************************************************************
  Reply to a SMBfindnclose (stop FINDNOTIFYFIRST directory search).
 ****************************************************************************/
 
-int reply_findnclose(connection_struct *conn, 
-                    char *inbuf,char *outbuf,int length,int bufsize)
+void reply_findnclose(connection_struct *conn, struct smb_request *req)
 {
-       int outsize = 0;
-       int dptr_num= -1;
+       int dptr_num;
+
        START_PROFILE(SMBfindnclose);
+
+       if (req->wct < 1) {
+               reply_nterror(req, NT_STATUS_INVALID_PARAMETER);
+               END_PROFILE(SMBfindnclose);
+               return;
+       }
        
-       dptr_num = SVAL(inbuf,smb_vwv0);
+       dptr_num = SVAL(req->inbuf,smb_vwv0);
 
        DEBUG(3,("reply_findnclose, dptr_num = %d\n", dptr_num));
 
@@ -6854,12 +6866,12 @@ int reply_findnclose(connection_struct *conn,
           findnotifyfirst - so any dptr_num is ok here. 
           Just ignore it. */
 
-       outsize = set_message(inbuf, outbuf,0,0,False);
+       reply_outbuf(req, 0, 0);
 
        DEBUG(3,("SMB_findnclose dptr_num = %d\n", dptr_num));
 
        END_PROFILE(SMBfindnclose);
-       return(outsize);
+       return;
 }
 
 static void handle_trans2(connection_struct *conn, struct smb_request *req,