|
|
|
|
@ -48,7 +48,9 @@ bool CUnixDgramReader::Open(const char *path) // returns true on failure
|
|
|
|
|
addr.sun_family = AF_UNIX;
|
|
|
|
|
strncpy(addr.sun_path+1, path, sizeof(addr.sun_path)-2);
|
|
|
|
|
|
|
|
|
|
int rval = bind(fd, (struct sockaddr *)&addr, sizeof(addr));
|
|
|
|
|
// We know path is a string, so we skip the first null, get the string length and add 1 for the begining Null
|
|
|
|
|
int path_len = sizeof(addr.sun_family) + strlen(addr.sun_path + 1) + 1;
|
|
|
|
|
int rval = bind(fd, (struct sockaddr *)&addr, path_len);
|
|
|
|
|
if (rval < 0)
|
|
|
|
|
{
|
|
|
|
|
std::cerr << "bind() failed for " << path << ": " << strerror(errno) << std::endl;
|
|
|
|
|
@ -139,7 +141,9 @@ ssize_t CUnixDgramWriter::Write(const void *buf, ssize_t size) const
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
// connect to the receiver
|
|
|
|
|
int rval = connect(fd, (struct sockaddr *)&addr, sizeof(addr));
|
|
|
|
|
// We know path is a string, so we skip the first null, get the string length and add 1 for the begining Null
|
|
|
|
|
int path_len = sizeof(addr.sun_family) + strlen(addr.sun_path + 1) + 1;
|
|
|
|
|
int rval = connect(fd, (struct sockaddr *)&addr, path_len);
|
|
|
|
|
if (rval < 0)
|
|
|
|
|
{
|
|
|
|
|
std::cerr << "connect() failed for " << addr.sun_path+1 << ": " << strerror(errno) << std::endl;
|
|
|
|
|
|