s3:smbd: let reply_readbraw_error use the locked socket
authorStefan Metzmacher <metze@samba.org>
Fri, 19 Mar 2010 11:04:32 +0000 (12:04 +0100)
committerMichael Adam <obnox@samba.org>
Mon, 22 Mar 2010 16:48:05 +0000 (17:48 +0100)
metze

source3/smbd/reply.c

index 048715271bd29b97bb7cecead82afeb8b08d1037..0824449a474c61a65b6dae4a69abe9d8f1087bd5 100644 (file)
@@ -2750,11 +2750,22 @@ static void sendfile_short_send(files_struct *fsp,
 
 static void reply_readbraw_error(void)
 {
+       bool ok;
        char header[4];
+
        SIVAL(header,0,0);
+
+       ok = smbd_lock_socket(smbd_server_conn);
+       if (!ok) {
+               exit_server_cleanly("failed to lock socket");
+       }
        if (write_data(smbd_server_fd(),header,4) != 4) {
                fail_readraw();
        }
+       ok = smbd_unlock_socket(smbd_server_conn);
+       if (!ok) {
+               exit_server_cleanly("failed to unlock socket");
+       }
 }
 
 /****************************************************************************