SeaDrive without GUI using a client-name containing a dash fails to sync

I installed SeaDrive without GUI, obtained an access token from server, generated seadrive.conf, using

client_name = LinuxMint-18

I got a sync error:

[04/06/17 17:24:04] sync-mgr.c(561): Repo ‘Cloud’ sync state transition from ‘get token’ to ‘downloading’.
[04/06/17 17:24:04] http-tx-mgr.c(4806): Download with HTTP sync protocol version 1.
[04/06/17 17:24:04] http-tx-mgr.c(1117): Transfer repo ‘93d1f567’: (‘normal’, ‘init’) → (‘normal’, ‘check’)
[04/06/17 17:24:04] http-tx-mgr.c(2351): Bad response code for GET MYSERVER/seafhttp/repo/93d1f567-6f42-4a60-9c2f-2295b7fdb199/permission-check/?op=download&client_id=&client_name=LinuxMint-18: 400.
[04/06/17 17:24:04] http-tx-mgr.c(4812): Download permission denied for repo 93d1f567 on server MYSERVER.
[04/06/17 17:24:04] http-tx-mgr.c(1117): Transfer repo ‘93d1f567’: (‘normal’, ‘check’) → (‘error’, ‘finished’)
[04/06/17 17:24:04] sync-mgr.c(595): Repo ‘Cloud’ sync state transition from downloading to ‘error’: ‘Error occured in download.’.

Naming the client “LinuxMint18” works as expected.

Another flaw is in the help. The curl command needs to be corrected. I used something like

curl -d “username=username@example.com” -d “password=123456” https://seafile.example.com/api2/auth-token/

BTW Thank you very much for the software. It’s really awesome

Thank you for reporting. We’ll check it.

We’ve updated the documentation.

For the client_name part, I cannot reproduce your problem. I’m testing with Nginx. Perhaps you can find some clue in your web server’s log?

That’s sort of weird. Now it’s working. I switched forth and back some days ago before opening this thread. Having the dash in the name, it failed, without the dash it worked. Now it works in both cases.

I use nginx, too. The nginx error log contains some lines like:
2017/04/06 17:01:01 [error] 2060#2060: *149364 connect() failed (111: Connection refused) while connecting to upstream, client: CLIENT-IP, server: _, request: “GET /seafile/api2/repos/ HTTP/1.1”, upstream: “fastcgi://127.0.0.1:8000”, host: “MYSERVER”

seahub.log contains this line, but I don’t know if it’s related to the problem. It looks a bit early in time:
2017-04-06 15:10:05,862 [INFO] seahub.api2.serializers:93 validate MYUSER: unrecognized device

I cannot see anything else unusual in the logs, neither seafile nor nginx.

Maybe we should leave it as it is. It just works now.

Thank you for looking.