1
0
Fork 0

Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel

This commit is contained in:
Michael Hackstein 2014-03-06 17:53:52 +01:00
commit a59b4f7767
9 changed files with 46 additions and 44 deletions

View File

@ -38,7 +38,7 @@ var base64Encode = require("internal").base64Encode;
// Our default configurations:
var PlannerLocalDefaults = {
"agencyPrefix" : "meier",
"agencyPrefix" : "arango",
"numberOfAgents" : 1,
"numberOfDBservers" : 2,
"startSecondaries" : false,
@ -327,7 +327,7 @@ function fillConfigWithDefaults (config, defaultConfig) {
/// default values:
///
/// {
/// "agencyPrefix" : "meier",
/// "agencyPrefix" : "arango",
/// "numberOfAgents" : 1,
/// "numberOfDBservers" : 2,
/// "startSecondaries" : false,

View File

@ -175,7 +175,7 @@
#define TRI_CONNECT_AI_FLAGS AI_PASSIVE | AI_NUMERICSERV | AI_ALL
#define INVALID_SOCKET -1
#define TRI_INVALID_SOCKET -1
#define TRI_CLOSE_SOCKET TRI_closesocket
#define TRI_READ_SOCKET(a,b,c,d) TRI_readsocket((a), (b), (c), (d))
@ -313,7 +313,7 @@
#define TRI_CONNECT_AI_FLAGS AI_PASSIVE | AI_NUMERICSERV
#define INVALID_SOCKET -1
#define TRI_INVALID_SOCKET -1
#define TRI_CLOSE_SOCKET TRI_closesocket
#define TRI_READ_SOCKET(a,b,c,d) TRI_readsocket((a), (b), (c), (d))
@ -469,7 +469,7 @@
#define TRI_CONNECT_AI_FLAGS AI_PASSIVE | AI_NUMERICSERV | AI_ALL
#define INVALID_SOCKET -1
#define TRI_INVALID_SOCKET -1
#define TRI_CLOSE_SOCKET TRI_closesocket
#define TRI_READ_SOCKET(a,b,c,d) TRI_readsocket((a), (b), (c), (d))
@ -679,6 +679,8 @@ typedef unsigned char bool;
#define TRI_CONNECT_AI_FLAGS AI_PASSIVE | AI_NUMERICSERV | AI_ALL
#define TRI_INVALID_SOCKET INVALID_SOCKET
#define TRI_CLOSE_SOCKET TRI_closesocket
#define TRI_READ_SOCKET(a,b,c,d) TRI_readsocket((a), (b), (c), (d))
#define TRI_WRITE_SOCKET(a,b,c,d) TRI_writesocket((a), (b), (c), (d))

View File

@ -52,7 +52,7 @@
int TRI_closesocket (TRI_socket_t s) {
int res = 0;
#ifdef _WIN32
if (s.fileDescriptor != INVALID_SOCKET) {
if (s.fileDescriptor != -1) {
res = _close(s.fileDescriptor);
/*
To close a file opened with _open_osfhandle, call _close.
@ -60,7 +60,7 @@ int TRI_closesocket(TRI_socket_t s) {
so it is not necessary to call the Win32 function CloseHandle on the original handle.
*/
}
else if (s.fileHandle != INVALID_SOCKET) {
else if (s.fileHandle != TRI_INVALID_SOCKET) {
res = shutdown(s.fileHandle, SD_SEND);
if (res != 0) {
LOG_WARNING("socket shutdown error: %d", WSAGetLastError());
@ -78,7 +78,7 @@ int TRI_closesocket(TRI_socket_t s) {
}
}
#else
if (s.fileDescriptor != INVALID_SOCKET) {
if (s.fileDescriptor != TRI_INVALID_SOCKET) {
res = close(s.fileDescriptor);
}
#endif
@ -147,7 +147,7 @@ bool TRI_SetNonBlockingSocket (TRI_socket_t s) {
int res;
DWORD ul = 1;
res = ioctlsocket(s.fileHandle, FIONBIO, &ul);
return (res != INVALID_SOCKET);
return (res == 0);
}
#else

View File

@ -58,15 +58,6 @@ extern "C" {
/// @{
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @brief invalid socket
////////////////////////////////////////////////////////////////////////////////
#ifndef INVALID_SOCKET
#define INVALID_SOCKET (-1)
#endif
////////////////////////////////////////////////////////////////////////////////
/// @brief socket types
////////////////////////////////////////////////////////////////////////////////
@ -104,7 +95,7 @@ static inline TRI_socket_t TRI_socket (int domain, int type, int protocol) {
TRI_socket_t res;
#ifdef _WIN32
res.fileHandle = socket(domain, type, protocol);
res.fileDescriptor = INVALID_SOCKET;
res.fileDescriptor = -1;
#else
res.fileDescriptor = socket(domain, type, protocol);
#endif
@ -132,7 +123,7 @@ static inline TRI_socket_t TRI_accept (TRI_socket_t s, struct sockaddr* address,
TRI_socket_t res;
#ifdef _WIN32
res.fileHandle = accept(s.fileHandle, address, address_len);
res.fileDescriptor = INVALID_SOCKET;
res.fileDescriptor = -1;
#else
res.fileDescriptor = accept(s.fileDescriptor, address, address_len);
#endif
@ -231,9 +222,9 @@ static inline int TRI_setsockopt (TRI_socket_t s, int level, int optname,
static inline bool TRI_isvalidsocket (TRI_socket_t s) {
#ifdef _WIN32
return s.fileHandle != INVALID_SOCKET;
return s.fileHandle != TRI_INVALID_SOCKET;
#else
return s.fileDescriptor != INVALID_SOCKET;
return s.fileDescriptor != TRI_INVALID_SOCKET;
#endif
}
@ -243,10 +234,10 @@ static inline bool TRI_isvalidsocket (TRI_socket_t s) {
static inline void TRI_invalidatesocket (TRI_socket_t* s) {
#ifdef _WIN32
s->fileHandle = INVALID_SOCKET;
s->fileDescriptor = INVALID_SOCKET;
s->fileHandle = TRI_INVALID_SOCKET;
s->fileDescriptor = -1;
#else
s->fileDescriptor = INVALID_SOCKET;
s->fileDescriptor = TRI_INVALID_SOCKET;
#endif
}
@ -257,13 +248,15 @@ static inline void TRI_invalidatesocket (TRI_socket_t* s) {
/// the right thing we need in all but one places.
////////////////////////////////////////////////////////////////////////////////
static inline int TRI_get_fd_or_handle_of_socket (TRI_socket_t s) {
#ifdef _WIN32
return (int)(s.fileHandle);
#else
return s.fileDescriptor;
#endif
static inline SOCKET TRI_get_fd_or_handle_of_socket (TRI_socket_t s) {
return s.fileHandle;
}
#else
static inline int TRI_get_fd_or_handle_of_socket (TRI_socket_t s) {
return s.fileDescriptor;
}
#endif
////////////////////////////////////////////////////////////////////////////////
/// @brief closes an open socket

View File

@ -103,7 +103,7 @@ namespace triagens {
_maximalHeaderSize(0),
_maximalBodySize(0) {
LOG_TRACE("connection established, client %d, server ip %s, server port %d, client ip %s, client port %d",
TRI_get_fd_or_handle_of_socket(socket),
(int) TRI_get_fd_or_handle_of_socket(socket),
_connectionInfo.serverAddress.c_str(),
(int) _connectionInfo.serverPort,
_connectionInfo.clientAddress.c_str(),

View File

@ -276,7 +276,7 @@ namespace triagens {
LOG_DEBUG("trying to establish secure connection");
// convert in a SSL BIO structure
BIO * sbio = BIO_new_socket(TRI_get_fd_or_handle_of_socket(socket), BIO_NOCLOSE);
BIO * sbio = BIO_new_socket((int) TRI_get_fd_or_handle_of_socket(socket), BIO_NOCLOSE);
if (sbio == 0) {
LOG_WARNING("cannot build new SSL BIO: %s", triagens::basics::lastSSLError().c_str());

View File

@ -113,11 +113,12 @@ bool ListenTask::setup (Scheduler* scheduler, EventLoop loop) {
return false;
}
_listenSocket.fileDescriptor = _open_osfhandle (_listenSocket.fileHandle, 0);
if (_listenSocket.fileDescriptor == INVALID_SOCKET) {
int res = _open_osfhandle (_listenSocket.fileHandle, 0);
if (res == - 1) {
LOG_ERROR("In ListenTask::setup could not convert socket handle to socket descriptor -- _open_osfhandle(...) failed");
int res = closesocket(_listenSocket.fileHandle);
res = TRI_CLOSE_SOCKET(_listenSocket);
if (res != 0) {
res = WSAGetLastError();
@ -127,6 +128,8 @@ bool ListenTask::setup (Scheduler* scheduler, EventLoop loop) {
return false;
}
_listenSocket.fileDescriptor = res;
#endif
this->scheduler = scheduler;

View File

@ -429,19 +429,23 @@ bool SocketTask::setup (Scheduler* scheduler, EventLoop loop) {
return false;
}
_commSocket.fileDescriptor = _open_osfhandle (_commSocket.fileHandle, 0);
if (_commSocket.fileDescriptor == -1) {
int res = _open_osfhandle(_commSocket.fileHandle, 0);
if (res == -1) {
LOG_ERROR("In SocketTask::setup could not convert socket handle to socket descriptor -- _open_osfhandle(...) failed");
int res = closesocket(_commSocket.fileHandle);
res = TRI_CLOSE_SOCKET(_commSocket);
if (res != 0) {
res = WSAGetLastError();
LOG_ERROR("In SocketTask::setup closesocket(...) failed with error code: %d", (int) res);
}
TRI_invalidatesocket(&_commSocket);
return false;
}
_commSocket.fileDescriptor = res;
#endif

View File

@ -162,7 +162,7 @@ bool SslClientConnection::connectSocket () {
return false;
}
if (SSL_set_fd(_ssl, TRI_get_fd_or_handle_of_socket(_socket)) != 1) {
if (SSL_set_fd(_ssl, (int) TRI_get_fd_or_handle_of_socket(_socket)) != 1) {
_endpoint->disconnect();
SSL_free(_ssl);
_ssl = 0;