diff options
| author | Garrett D'Amore <garrett@damore.org> | 2017-08-22 12:11:21 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2017-08-22 12:11:21 -0700 |
| commit | 9b6ac0a1ea92b1ec99acdd021087f6d8fdc75f14 (patch) | |
| tree | 7cac47944d1772997fd4d458b5bf6c311edd572c /src/core/socket.c | |
| parent | 6b66debe7532bd7c3b0c88da7332315d90a84d43 (diff) | |
| download | nng-9b6ac0a1ea92b1ec99acdd021087f6d8fdc75f14.tar.gz nng-9b6ac0a1ea92b1ec99acdd021087f6d8fdc75f14.tar.bz2 nng-9b6ac0a1ea92b1ec99acdd021087f6d8fdc75f14.zip | |
Add support for 64-bit ids in idhash.
We intend to use this with transports where dynamic "port numbers"
might be 32-bits. This would allow us to formulate a 64-bit number
representing a conversation, and be able to find that conversation
by the 64-bit value.
Note that the hashed values are probably not perfectly optimal, as
only the low order bits are particularly significant in the hash.
We might want to consider XOR'ing in the upper bits to address that.
Diffstat (limited to 'src/core/socket.c')
| -rw-r--r-- | src/core/socket.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/socket.c b/src/core/socket.c index 79c1602b..765a6d0c 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -31,7 +31,7 @@ struct nni_socket { nni_cv s_cv; nni_cv s_close_cv; - uint32_t s_id; + uint64_t s_id; uint32_t s_flags; unsigned s_refcnt; // protected by global lock void * s_data; // Protocol private @@ -81,7 +81,7 @@ nni_free_opt(nni_sockopt *opt) uint32_t nni_sock_id(nni_sock *s) { - return (s->s_id); + return ((uint32_t) s->s_id); } // nni_sock_sendq and nni_sock_recvq are called by the protocol to obtain |
