Skip to content

Loading builds...

Changes

#133 (Apr 23, 2026, 1:13:24 PM)

Fix: Prevent race conditions when accessing slotmap in bankd

All threads (main and workers) can use slotmap_by_bank() and
slotmap_by_client() to get a mapping entry from the slot map. While
working with this entry (reading values), it could be deleted by a
different thread.

For example, if a client connects to a worker, the worker will check if
there is an existing mapping between a reader and this client. If it
exists, slotmap_by_client() will return a pointer. If the mapping is
deleted at this time by the server, the worker uses a pointer to a
mapping entry that has just been freed.

Change-Id: I3464726f37beb7c47b4e1f00c018ffa4f3948906
Andreas Eversberg at

#132 (Apr 23, 2026, 1:13:24 PM)

Fix: Prevent bankd from exiting upon SIGPIPE

IF a client disconnects from a worker thread while the worker is
responding to a to a request from that client, the socket is closed and
SIGPIPE is sent to the worker, causing the application to exit.

To prevent this, all workers have a dummy handler to prevent this. Now
the worker can handle the closing of the socket.

Change-Id: I13d6e9da48d12f93c00bd2d021789bde71aca7cf
Andreas Eversberg at

#131 (Apr 23, 2026, 11:53:00 AM)

Fix: Prevent race conditions when accessing slotmap in bankd

All threads (main and workers) can use slotmap_by_bank() and
slotmap_by_client() to get a mapping entry from the slot map. While
working with this entry (reading values), it could be deleted by a
different thread.

For example, if a client connects to a worker, the worker will check if
there is an existing mapping between a reader and this client. If it
exists, slotmap_by_client() will return a pointer. If the mapping is
deleted at this time by the server, the worker uses a pointer to a
mapping entry that has just been freed.

Change-Id: I3464726f37beb7c47b4e1f00c018ffa4f3948906
Andreas Eversberg at

#130 (Apr 23, 2026, 11:53:00 AM)

Fix: Prevent bankd from exiting upon SIGPIPE

IF a client disconnects from a worker thread while the worker is
responding to a to a request from that client, the socket is closed and
SIGPIPE is sent to the worker, causing the application to exit.

To prevent this, all workers have a dummy handler to prevent this. Now
the worker can handle the closing of the socket.

Change-Id: I13d6e9da48d12f93c00bd2d021789bde71aca7cf
Andreas Eversberg at

#129 (Apr 21, 2026, 7:12:55 AM)

Fix: Remove slot mapping at bankd when client disconnects

If a client disconnects before removing the slot mapping, the slotmap
entry will not be removed automatically. A subsequent client connection
for the same mapping will then trigger the the error: “ignoring
identical slotmap.”

In a setup with multiple readers, there are multiple bankd worker
threads. If a client re-connects, but if its connection is accepted by
a different thread, subsequent reader access or unmapping will fail.
There will be no mapping at the new thread.

The approach of this fix is to remove the slot mapping, if the client
connection to the worker thread terminates.

Change-Id: I2fd03490e2506c55104309a0ef952389119023b8
Andreas Eversberg at

#128 (Apr 21, 2026, 7:09:05 AM)

Fix: Remove slot mapping at bankd when client disconnects

If a client disconnects before removing the slot mapping, the slotmap
entry will not be removed automatically. A subsequent client connection
for the same mapping will then trigger the the error: “ignoring
identical slotmap.”

In a setup with multiple readers, there are multiple bankd worker
threads. If a client re-connects, but if its connection is accepted by
a different thread, subsequent reader access or unmapping will fail.
There will be no mapping at the new thread.

The approach of this fix is to remove the slot mapping, if the client
connection to the worker thread terminates.

Change-Id: I2fd03490e2506c55104309a0ef952389119023b8
Andreas Eversberg at

#127 (Apr 21, 2026, 6:52:45 AM)

Fix: Remove slot mapping at bankd when client disconnects

If a client disconnects before removing the slot mapping, the slotmap
entry will not be removed automatically. A subsequent client connection
for the same mapping will then trigger the the error: “ignoring
identical slotmap.”

In a setup with multiple readers, there are multiple bankd worker
threads. If a client re-connects, but if its connection is accepted by
a different thread, subsequent reader access or unmapping will fail.
There will be no mapping at the new thread.

The approach of this fix is to remove the slot mapping, if the client
connection to the worker thread terminates.

Change-Id: I2fd03490e2506c55104309a0ef952389119023b8
Andreas Eversberg at

#126 (Apr 21, 2026, 6:42:14 AM)

Fix: Remove slot mapping at bankd when client disconnects

If a client disconnects before removing the slot mapping, the slotmap
entry will not be removed automatically. A subsequent client connection
for the same mapping will then trigger the the error: “ignoring
identical slotmap.”

In a setup with multiple readers, there are multiple bankd worker
threads. If a client re-connects, but if its connection is accepted by
a different thread, subsequent reader access or unmapping will fail.
There will be no mapping at the new thread.

The approach of this fix is to remove the slot mapping, if the client
connection to the worker thread terminates.

Change-Id: I2fd03490e2506c55104309a0ef952389119023b8
Andreas Eversberg at

#125 (Apr 20, 2026, 2:37:29 PM)

Fix: Remove slot mapping at bankd when client disconnects

If a client disconnects before removing the slot mapping, the slotmap
entry will not be removed automatically. A subsequent client connection
for the same mapping will then trigger the the error: “ignoring
identical slotmap.”

In a setup with multiple readers, there are multiple bankd worker
threads. If a client re-connects, but if its connection is accepted by
a different thread, subsequent reader access or unmapping will fail.
There will be no mapping at the new thread.

The approach of this fix is to remove the slot mapping, if the client
connection to the worker thread terminates.

Change-Id: I2fd03490e2506c55104309a0ef952389119023b8
Andreas Eversberg at

#124 (Apr 9, 2026, 10:31:17 AM)

rspro_server: don't access the msg on error cases

The msg is NULL on errors.

Related: SYS#7930
Change-Id: I4e95c2473acd72cd2e01df329691c8f31882b3d9
lynxis at

#123 (Apr 9, 2026, 10:30:51 AM)

rspro_server: don't access the msg on error cases

The msg is NULL on errors.

Related: SYS#7930
Change-Id: I4e95c2473acd72cd2e01df329691c8f31882b3d9
lynxis at