smbd/oplock.c: Use O_CREAT and O_TRUNC and correct mode flags
authorJeremy Allison <jra@samba.org>
Wed, 23 Sep 1998 01:58:27 +0000 (01:58 +0000)
committerJeremy Allison <jra@samba.org>
Wed, 23 Sep 1998 01:58:27 +0000 (01:58 +0000)
               when creating oplock test file.
smbd/server.c: Check for existance of kernel oplocks before
               becoming a daemon.
Jeremy.
(This used to be commit b42779e17e754d4a2f75904e2187c9209e0a53f0)

source3/smbd/oplock.c
source3/smbd/server.c

index 0cd6f0bef61050981e1c8aca762e55c9082cf695..b87d664046b5d97fc740c529712e9c9babcf2246 100644 (file)
@@ -1035,7 +1035,7 @@ void check_kernel_oplocks(void)
       return;
     }
 
-    if((fd = open(tmpname, O_RDWR)) < 0) {
+    if((fd = open(tmpname, O_RDWR|O_CREAT|O_TRUNC, 0600)) < 0) {
       DEBUG(0,("check_kernel_oplocks: Unable to open temp test file %s. Error was %s\n",
             tmpname, strerror(errno) ));
       unlink( tmpname );
index c06c0ce1cb42dd7cb5d9138f0244a46b9288489d..e1b5e427642baa37f7f1ca02c4dfaaa75a7b243d 100644 (file)
@@ -661,6 +661,8 @@ static void usage(char *pname)
 
        DEBUG(3,( "loaded services\n"));
 
+    check_kernel_oplocks();
+
        if (!is_daemon && !is_a_socket(0)) {
                DEBUG(0,("standard input is not a socket, assuming -D option\n"));
                is_daemon = True;
@@ -700,8 +702,6 @@ static void usage(char *pname)
        if( !open_oplock_ipc() )
                exit(1);
 
-    check_kernel_oplocks();
-
        smbd_process();
        close_sockets();