mirror of
https://github.com/zeromq/libzmq.git
synced 2025-01-15 10:18:01 +08:00
Merge pull request #3377 from sigiesec/fix-3376
Fix handling of random port numbers with tipc
This commit is contained in:
commit
1aa6f7070c
@ -55,10 +55,6 @@ zmq::tipc_address_t::tipc_address_t (const sockaddr *sa, socklen_t sa_len)
|
|||||||
_random = false;
|
_random = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
zmq::tipc_address_t::~tipc_address_t ()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void zmq::tipc_address_t::set_random ()
|
void zmq::tipc_address_t::set_random ()
|
||||||
{
|
{
|
||||||
_random = true;
|
_random = true;
|
||||||
|
@ -50,7 +50,6 @@ class tipc_address_t
|
|||||||
public:
|
public:
|
||||||
tipc_address_t ();
|
tipc_address_t ();
|
||||||
tipc_address_t (const sockaddr *sa, socklen_t sa_len);
|
tipc_address_t (const sockaddr *sa, socklen_t sa_len);
|
||||||
~tipc_address_t ();
|
|
||||||
|
|
||||||
// This function sets up the address "{type, lower, upper}" for TIPC transport
|
// This function sets up the address "{type, lower, upper}" for TIPC transport
|
||||||
int resolve (const char *name);
|
int resolve (const char *name);
|
||||||
@ -69,9 +68,6 @@ class tipc_address_t
|
|||||||
private:
|
private:
|
||||||
bool _random;
|
bool _random;
|
||||||
struct sockaddr_tipc address;
|
struct sockaddr_tipc address;
|
||||||
|
|
||||||
tipc_address_t (const tipc_address_t &);
|
|
||||||
const tipc_address_t &operator= (const tipc_address_t &);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ int zmq::tipc_listener_t::set_address (const char *addr_)
|
|||||||
if (rc != 0)
|
if (rc != 0)
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
tipc_address_t addr ((struct sockaddr *) &ss, sl);
|
address = tipc_address_t ((struct sockaddr *) &ss, sl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -91,6 +91,9 @@ void test_tipc_port_identity ()
|
|||||||
rc = sscanf (&endpoint[0], "tipc://<%u.%u.%u:%u>", &z, &c, &n, &ref);
|
rc = sscanf (&endpoint[0], "tipc://<%u.%u.%u:%u>", &z, &c, &n, &ref);
|
||||||
TEST_ASSERT_EQUAL_INT (4, rc);
|
TEST_ASSERT_EQUAL_INT (4, rc);
|
||||||
|
|
||||||
|
TEST_ASSERT_NOT_EQUAL_MESSAGE (
|
||||||
|
0, ref, "tipc port number must not be 0 after random assignment");
|
||||||
|
|
||||||
rc = zmq_connect (sc, endpoint);
|
rc = zmq_connect (sc, endpoint);
|
||||||
TEST_ASSERT_EQUAL_INT (0, rc);
|
TEST_ASSERT_EQUAL_INT (0, rc);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user