From e071de0cf9d9bc32c4c0fa1cf2ce787cf87bd156 Mon Sep 17 00:00:00 2001 From: Andrew Evdokimov Date: Fri, 2 Jan 2015 05:20:24 -0800 Subject: [PATCH] Bug 3664: ssl_crtd fails to build on OpenSolaris/OpenIndiana/Solaris 11 --- src/ssl/certificate_db.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ssl/certificate_db.cc b/src/ssl/certificate_db.cc index f495ef153c..a2d920030d 100644 --- a/src/ssl/certificate_db.cc +++ b/src/ssl/certificate_db.cc @@ -50,7 +50,7 @@ void Ssl::Lock::lock() hFile = CreateFile(TEXT(filename.c_str()), GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE) #else - fd = open(filename.c_str(), 0); + fd = open(filename.c_str(), O_RDWR); if (fd == -1) #endif throw std::runtime_error("Failed to open file " + filename); @@ -58,7 +58,7 @@ void Ssl::Lock::lock() #if _SQUID_WINDOWS_ if (!LockFile(hFile, 0, 0, 1, 0)) #else - if (flock(fd, LOCK_EX) != 0) + if (lockf(fd, F_LOCK, 0) != 0) #endif throw std::runtime_error("Failed to get a lock of " + filename); } @@ -73,7 +73,7 @@ void Ssl::Lock::unlock() } #else if (fd != -1) { - flock(fd, LOCK_UN); + lockf(fd, F_ULOCK, 0); close(fd); fd = -1; } -- 2.47.3