diff options
author | Inaky Perez-Gonzalez <inaky@linux.intel.com> | 2009-04-27 21:46:08 (GMT) |
---|---|---|
committer | Thomas Graf <tgr@plip.localdomain> | 2009-05-04 12:56:24 (GMT) |
commit | ef8ba32e0ca7ac7bbbaf87f6fd7b197af18aed25 (patch) | |
tree | 52c7b695f82e0f0e9f14940de3a397a49114612a | |
parent | 8ee16e6688657886f591f0841cb8e892743ecf2a (diff) | |
download | libnl-ef8ba32e0ca7ac7bbbaf87f6fd7b197af18aed25.zip libnl-ef8ba32e0ca7ac7bbbaf87f6fd7b197af18aed25.tar.gz libnl-ef8ba32e0ca7ac7bbbaf87f6fd7b197af18aed25.tar.bz2 |
release_local_port: properly compute the bitmap position
Current calculation is always off, not reflecting the right position
in the bitmap, which results in failures due to conflicts (detected at
the kernel level) when trying to open a new handle.
Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
-rw-r--r-- | lib/socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/socket.c b/lib/socket.c index d1874f0..8083bbb 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -79,7 +79,7 @@ static void release_local_port(uint32_t port) return; nr = port >> 22; - used_ports_map[nr / 32] &= ~((nr % 32) + 1); + used_ports_map[nr / 32] &= ~(1 << nr % 32); } /** |