Unable to start server if network contains client name with special characters


Sorry for writing about issue again, but I hope it will help to stabilize beta version, which is really very functional and cool.

Server 2.5.23 (CentOS 7).

Recently ran into interesting issue. I’ve stopped the server to make some adjustments to storage of backups. No changes to settings/path/filesystem has been made. In around 10 minutes I’ve restarted the server back, however after startup and during client discovery server has died with error:

urbackupsrv: basecode.cpp:184: static void CryptoPP::BaseN_Decoder::InitializeDecodingLookupArray(int*, const byte*, unsigned int, bool): Assertion `lookup[alphabet[i]] == -1' failed.

Unfortunately there is no more detailed info on what exactly name caused issue so I will proceed with switching off clients one-by-one in order to find guilty.

Will update the post once and if I find the problematic client.

I was unable to catch relevant client as from some point server just started. And brining new clients back online, as well as restarting server with all clients up didn’t bring this issue again.

If the lookup matching is not critical for further operations, I would suggest to place a warning in this place with client name which causes the issue, so this wouldn’t lead to a server failure.

My best guess is that some client contained “-” (minus or dash) and this was an issue. I have 1 client with such a name, but in web-interface it’s called as well a other clients - with alphanumeric name.

Here is the logs from that client:

2022-05-12 10:41:45: FileSrv: Servername: -Clientname-
2022-05-12 10:41:45: FileSrv: Server started up successfully

In server web interface it’s called “Clientname”.

However manipulating with this client - didn’t bring any failures.

Should I be able to reproduce it again - I’ll update post.

1 Like