sockaddr_un.sun_path appears to never hold anything after accept()
This commit is contained in:
parent
ab17b909fe
commit
4fe83b554a
@ -336,16 +336,12 @@ int anetTcpAccept(char *err, int s, char *ip, int *port) {
|
|||||||
return fd;
|
return fd;
|
||||||
}
|
}
|
||||||
|
|
||||||
int anetUnixAccept(char *err, int s, char *path, int len) {
|
int anetUnixAccept(char *err, int s) {
|
||||||
int fd;
|
int fd;
|
||||||
struct sockaddr_un sa;
|
struct sockaddr_un sa;
|
||||||
socklen_t salen = sizeof(sa);
|
socklen_t salen = sizeof(sa);
|
||||||
if ((fd = anetGenericAccept(err,s,(struct sockaddr*)&sa,&salen)) == ANET_ERR)
|
if ((fd = anetGenericAccept(err,s,(struct sockaddr*)&sa,&salen)) == ANET_ERR)
|
||||||
return ANET_ERR;
|
return ANET_ERR;
|
||||||
|
|
||||||
if (path) {
|
|
||||||
strncpy(path,sa.sun_path,len-1);
|
|
||||||
path[len-1] = 0;
|
|
||||||
}
|
|
||||||
return fd;
|
return fd;
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ int anetResolve(char *err, char *host, char *ipbuf);
|
|||||||
int anetTcpServer(char *err, int port, char *bindaddr);
|
int anetTcpServer(char *err, int port, char *bindaddr);
|
||||||
int anetUnixServer(char *err, char *path);
|
int anetUnixServer(char *err, char *path);
|
||||||
int anetTcpAccept(char *err, int serversock, char *ip, int *port);
|
int anetTcpAccept(char *err, int serversock, char *ip, int *port);
|
||||||
int anetUnixAccept(char *err, int serversock, char *path, int len);
|
int anetUnixAccept(char *err, int serversock);
|
||||||
int anetWrite(int fd, char *buf, int count);
|
int anetWrite(int fd, char *buf, int count);
|
||||||
int anetNonBlock(char *err, int fd);
|
int anetNonBlock(char *err, int fd);
|
||||||
int anetTcpNoDelay(char *err, int fd);
|
int anetTcpNoDelay(char *err, int fd);
|
||||||
|
@ -199,12 +199,11 @@ void acceptTcpHandler(aeEventLoop *el, int fd, void *privdata, int mask) {
|
|||||||
|
|
||||||
void acceptUnixHandler(aeEventLoop *el, int fd, void *privdata, int mask) {
|
void acceptUnixHandler(aeEventLoop *el, int fd, void *privdata, int mask) {
|
||||||
int cfd;
|
int cfd;
|
||||||
char cpath[128];
|
|
||||||
REDIS_NOTUSED(el);
|
REDIS_NOTUSED(el);
|
||||||
REDIS_NOTUSED(mask);
|
REDIS_NOTUSED(mask);
|
||||||
REDIS_NOTUSED(privdata);
|
REDIS_NOTUSED(privdata);
|
||||||
|
|
||||||
cfd = anetUnixAccept(server.neterr, fd, cpath, sizeof(cpath));
|
cfd = anetUnixAccept(server.neterr, fd);
|
||||||
if (cfd == AE_ERR) {
|
if (cfd == AE_ERR) {
|
||||||
redisLog(REDIS_VERBOSE,"Accepting client connection: %s", server.neterr);
|
redisLog(REDIS_VERBOSE,"Accepting client connection: %s", server.neterr);
|
||||||
return;
|
return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user