[SCM] Samba Shared Repository - branch master updated

Volker Lendecke vlendec at samba.org
Wed Oct 20 05:59:02 MDT 2010


The branch, master has been updated
       via  efb22bf s3: Add some DEBUG
       via  da00021 s3: Cope with EINTR in smbd_[un]lock_socket
      from  4a8c17a libcli/ldap Don't try and encode a control with a NULL OID

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit efb22bf782fe49ca60650c87a0ead8ae93c06eca
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Oct 19 08:59:14 2010 +0200

    s3: Add some DEBUG
    
    Autobuild-User: Volker Lendecke <vlendec at samba.org>
    Autobuild-Date: Wed Oct 20 11:58:20 UTC 2010 on sn-devel-104

commit da00021a7c236f9ac87442b96881bf0b2701ad0b
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Oct 19 08:53:21 2010 +0200

    s3: Cope with EINTR in smbd_[un]lock_socket

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/process.c |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index f2aa23e..a1aed80 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -48,9 +48,14 @@ static bool smbd_lock_socket_internal(struct smbd_server_connection *sconn)
 
 	DEBUG(10,("pid[%d] wait for socket lock\n", (int)sys_getpid()));
 
-	ok = fcntl_lock(sconn->smb1.echo_handler.socket_lock_fd,
+	do {
+		ok = fcntl_lock(
+			sconn->smb1.echo_handler.socket_lock_fd,
 			SMB_F_SETLKW, 0, 0, F_WRLCK);
+	} while (!ok && (errno == EINTR));
+
 	if (!ok) {
+		DEBUG(1, ("fcntl_lock failed: %s\n", strerror(errno)));
 		return false;
 	}
 
@@ -80,9 +85,14 @@ static bool smbd_unlock_socket_internal(struct smbd_server_connection *sconn)
 		return true;
 	}
 
-	ok = fcntl_lock(sconn->smb1.echo_handler.socket_lock_fd,
+	do {
+		ok = fcntl_lock(
+			sconn->smb1.echo_handler.socket_lock_fd,
 			SMB_F_SETLKW, 0, 0, F_UNLCK);
+	} while (!ok && (errno == EINTR));
+
 	if (!ok) {
+		DEBUG(1, ("fcntl_lock failed: %s\n", strerror(errno)));
 		return false;
 	}
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list