mirror of
https://github.com/yanyiwu/cppjieba.git
synced 2025-07-18 00:00:12 +08:00
use LogFatal for more human-readable
This commit is contained in:
parent
6e3bb7d057
commit
954100dc3d
@ -16,7 +16,7 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include "Limonp/StdExtension.hpp"
|
#include "Limonp/StdExtension.hpp"
|
||||||
#include "Limonp/HandyMacro.hpp"
|
#include "Limonp/Logger.hpp"
|
||||||
|
|
||||||
namespace Husky {
|
namespace Husky {
|
||||||
static const size_t LISTEN_QUEUE_LEN = 1024;
|
static const size_t LISTEN_QUEUE_LEN = 1024;
|
||||||
@ -25,22 +25,25 @@ typedef int SocketFd;
|
|||||||
SocketFd CreateAndListenSocket(int port) {
|
SocketFd CreateAndListenSocket(int port) {
|
||||||
SocketFd sock;
|
SocketFd sock;
|
||||||
sock = socket(AF_INET, SOCK_STREAM, 0);
|
sock = socket(AF_INET, SOCK_STREAM, 0);
|
||||||
LIMONP_CHECK(sock != -1);
|
if (sock == -1) {
|
||||||
|
LogFatal("create socket failed");
|
||||||
|
}
|
||||||
|
|
||||||
int optval = 1; // nozero
|
int optval = 1; // nozero
|
||||||
int ret;
|
if (-1 == setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval))) {
|
||||||
ret = setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval));
|
LogFatal("setsockopt failed");
|
||||||
LIMONP_CHECK(-1 != ret);
|
}
|
||||||
|
|
||||||
struct sockaddr_in addr;
|
struct sockaddr_in addr;
|
||||||
addr.sin_family = AF_INET;
|
addr.sin_family = AF_INET;
|
||||||
addr.sin_port = htons(port);
|
addr.sin_port = htons(port);
|
||||||
addr.sin_addr.s_addr = htonl(INADDR_ANY);
|
addr.sin_addr.s_addr = htonl(INADDR_ANY);
|
||||||
ret = ::bind(sock, (sockaddr*)&addr, sizeof(addr));
|
if (-1 == ::bind(sock, (sockaddr*)&addr, sizeof(addr))) {
|
||||||
LIMONP_CHECK(-1 != ret);
|
LogFatal(strerror(errno));
|
||||||
|
}
|
||||||
ret = listen(sock, LISTEN_QUEUE_LEN);
|
if (-1 == ::listen(sock, LISTEN_QUEUE_LEN)) {
|
||||||
LIMONP_CHECK(-1 != ret);
|
LogFatal(strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
return sock;
|
return sock;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user