bitwarden_rs crashes when download icons #784

Closed
opened 2026-02-04 22:38:20 +03:00 by OVERLORD · 24 comments
Owner

Originally created by @lucky4ever2 on GitHub (Aug 28, 2020).

Subject of the issue

bitwarden_rs crashes when download icons

Your environment

Steps to reproduce

Log into Bitwarden Account
Go to tab "My Safe"
Go to tab "Tools"
Then again to "My Safe"
Server crashes
With disabled Icon-Download the server does not crash.
So for me it seems to be a problem with the icon.

I am not really sure which more information will help you.
So please give me a hint what information would be helpful for you.

Best Regard

Expected behaviour

No crashes

Actual behaviour

With the Option in Admin_panal "Disable Icon Downloads" set to true it not crashes

Originally created by @lucky4ever2 on GitHub (Aug 28, 2020). ### Subject of the issue bitwarden_rs crashes when download icons ### Your environment * Bitwarden_rs version: bitwardenrs/server:1.16.3 * Install method: with https://github.com/Skeen/helm-bitwarden_rs Rancher/Kubernetes Cluster ### Steps to reproduce Log into Bitwarden Account Go to tab "My Safe" Go to tab "Tools" Then again to "My Safe" Server crashes With disabled Icon-Download the server does not crash. So for me it seems to be a problem with the icon. I am not really sure which more information will help you. So please give me a hint what information would be helpful for you. Best Regard ### Expected behaviour No crashes ### Actual behaviour With the Option in Admin_panal "Disable Icon Downloads" set to true it not crashes
Author
Owner

@dani-garcia commented on GitHub (Aug 28, 2020):

We are going to need either the logs at the moment of crashing or the problematic domains to be able to debug this.

@dani-garcia commented on GitHub (Aug 28, 2020): We are going to need either the logs at the moment of crashing or the problematic domains to be able to debug this.
Author
Owner

@lucky4ever2 commented on GitHub (Sep 1, 2020):

I wanted to simulate the error again but it won't come back.
I'll let you know if he comes back again

@lucky4ever2 commented on GitHub (Sep 1, 2020): I wanted to simulate the error again but it won't come back. I'll let you know if he comes back again
Author
Owner

@BlackDex commented on GitHub (Sep 1, 2020):

@lucky4ever2 maybe you can look it up in the logs?

@BlackDex commented on GitHub (Sep 1, 2020): @lucky4ever2 maybe you can look it up in the logs?
Author
Owner

@lucky4ever2 commented on GitHub (Sep 7, 2020):

Today the error came back.
It seems the server crashes, if the download of several icons fails.
Following is the ending log of such a crash (domains replaced with "...")

{"log":"[2020-09-07 06:48:29.599][request][INFO] GET /icons/..../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.599450858Z"}
{"log":"[2020-09-07 06:48:29.659][bitwarden_rs::api::icons][INFO] Download failed for https://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:29.659918661Z"}
{"log":"[2020-09-07 06:48:29.670][bitwarden_rs::api::icons][INFO] Download failed for http://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:29.670912971Z"}
{"log":"[2020-09-07 06:48:29.670][bitwarden_rs::api::icons][ERROR] Error downloading icon: Empty response\n","stream":"stdout","time":"2020-09-07T06:48:29.670936171Z"}
{"log":"[2020-09-07 06:48:29.670][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.671028468Z"}
{"log":"[2020-09-07 06:48:29.671][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.671277762Z"}
{"log":"[2020-09-07 06:48:29.680][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.680785411Z"}
{"log":"[2020-09-07 06:48:29.680][request][INFO] GET /icon/..../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.681058103Z"}
{"log":"[2020-09-07 06:48:29.683][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.683653835Z"}
{"log":"[2020-09-07 06:48:29.683][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.683703734Z"}
{"log":"[2020-09-07 06:48:29.683][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.683719533Z"}
{"log":"[2020-09-07 06:48:29.683][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.68384033Z"}
{"log":"[2020-09-07 06:48:29.685][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.686001273Z"}
{"log":"[2020-09-07 06:48:29.686][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.686168568Z"}
{"log":"[2020-09-07 06:48:29.687][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.687936522Z"}
{"log":"[2020-09-07 06:48:29.688][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.688133117Z"}
{"log":"[2020-09-07 06:48:39.390][bitwarden_rs::api::icons][INFO] Download failed for https://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:39.391078253Z"}

This is the end of the log. Than it crashes.

@lucky4ever2 commented on GitHub (Sep 7, 2020): Today the error came back. It seems the server crashes, if the download of several icons fails. Following is the ending log of such a crash (domains replaced with "...") {"log":"[2020-09-07 06:48:29.599][request][INFO] GET /icons/..../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.599450858Z"} {"log":"[2020-09-07 06:48:29.659][bitwarden_rs::api::icons][INFO] Download failed for https://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:29.659918661Z"} {"log":"[2020-09-07 06:48:29.670][bitwarden_rs::api::icons][INFO] Download failed for http://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:29.670912971Z"} {"log":"[2020-09-07 06:48:29.670][bitwarden_rs::api::icons][ERROR] Error downloading icon: Empty response\n","stream":"stdout","time":"2020-09-07T06:48:29.670936171Z"} {"log":"[2020-09-07 06:48:29.670][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.671028468Z"} {"log":"[2020-09-07 06:48:29.671][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.671277762Z"} {"log":"[2020-09-07 06:48:29.680][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.680785411Z"} {"log":"[2020-09-07 06:48:29.680][request][INFO] GET /icon/..../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.681058103Z"} {"log":"[2020-09-07 06:48:29.683][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.683653835Z"} {"log":"[2020-09-07 06:48:29.683][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.683703734Z"} {"log":"[2020-09-07 06:48:29.683][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.683719533Z"} {"log":"[2020-09-07 06:48:29.683][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.68384033Z"} {"log":"[2020-09-07 06:48:29.685][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.686001273Z"} {"log":"[2020-09-07 06:48:29.686][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.686168568Z"} {"log":"[2020-09-07 06:48:29.687][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T06:48:29.687936522Z"} {"log":"[2020-09-07 06:48:29.688][request][INFO] GET /icons/...../icon.png\n","stream":"stdout","time":"2020-09-07T06:48:29.688133117Z"} {"log":"[2020-09-07 06:48:39.390][bitwarden_rs::api::icons][INFO] Download failed for https://...../favicon.ico\n","stream":"stdout","time":"2020-09-07T06:48:39.391078253Z"} This is the end of the log. Than it crashes.
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

That is strange looks like some UTF8/IDN Domain issue?
But i don't see the full domain here, did you removed that for privacy reasons?

@BlackDex commented on GitHub (Sep 7, 2020): That is strange looks like some UTF8/IDN Domain issue? But i don't see the full domain here, did you removed that for privacy reasons?
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

Ah, i need to read better, you mentioned that.
It's a bit hard for us to debug this without the domain.
Is it possible that you share this domain privately? Either via Matrix Chat or e-mail maybe?

@BlackDex commented on GitHub (Sep 7, 2020): Ah, i need to read better, you mentioned that. It's a bit hard for us to debug this without the domain. Is it possible that you share this domain privately? Either via Matrix Chat or e-mail maybe?
Author
Owner

@lucky4ever2 commented on GitHub (Sep 7, 2020):

Sorry about this. The urls are from a company. I am not allowed to share it.

@lucky4ever2 commented on GitHub (Sep 7, 2020): Sorry about this. The urls are from a company. I am not allowed to share it.
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

Then, it's a bit hard for us to fix this.
Can you at least tell us if it uses IDN/UTF8 domain names?

@BlackDex commented on GitHub (Sep 7, 2020): Then, it's a bit hard for us to fix this. Can you at least tell us if it uses IDN/UTF8 domain names?
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

Because i also see an entry for <domain> in there, which is not being parsed, since we do check if the entry is a valid domain or not. But still. Seems strange, and not something which should be in the vault like that.

@BlackDex commented on GitHub (Sep 7, 2020): Because i also see an entry for `<domain>` in there, which is not being parsed, since we do check if the entry is a valid domain or not. But still. Seems strange, and not something which should be in the vault like that.
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

So, without the actual domain/website we are unable to fix this issue.
And i also do not see any crash/trace log here, all i can see is just normal log messages stating it couldn't download an icon.

Maybe if you can enable debug logging by setting LOG_LEVEL to debug.
And then clear the icon_cache folder which is located in the data folder (the bw-data part in) -v /bw-data/:/data/ of all it's contents, and load the web-vault again.
This should trigger a re-download of all the icons, and thus trigger the error.

Hopefully there is some more info now.

@BlackDex commented on GitHub (Sep 7, 2020): So, without the actual domain/website we are unable to fix this issue. And i also do not see any crash/trace log here, all i can see is just normal log messages stating it couldn't download an icon. Maybe if you can enable debug logging by setting `LOG_LEVEL` to `debug`. And then clear the `icon_cache` folder which is located in the data folder (the bw-data part in) `-v /bw-data/:/data/` of all it's contents, and load the web-vault again. This should trigger a re-download of all the icons, and thus trigger the error. Hopefully there is some more info now.
Author
Owner

@lucky4ever2 commented on GitHub (Sep 7, 2020):

{"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] processing in state Data\n","stream":"stdout","time":"2020-09-07T15:25:33.758479805Z"}
{"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] got characters None\n","stream":"stdout","time":"2020-09-07T15:25:33.758483805Z"}
{"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] processing EOF in state Data\n","stream":"stdout","time":"2020-09-07T15:25:33.758487705Z"}
{"log":"[2020-09-07 15:25:33.758][html5ever::tree_builder][DEBUG] processing EOFToken in insertion mode AfterAfterBody\n","stream":"stdout","time":"2020-09-07T15:25:33.758493305Z"}
{"log":"[2020-09-07 15:25:33.765][hyper::client::pool][DEBUG] reuse idle connection for ("http", ……de) \n","stream":"stdout","time":"2020-09-07T15:25:33.76537222Z"}
{"log":"[2020-09-07 15:25:33.765][hyper::proto::h1::io][DEBUG] flushed 367 bytes \n","stream":"stdout","time":"2020-09-07T15:25:33.765479417Z"}
{"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::io][DEBUG] read 1436 bytes \n","stream":"stdout","time":"2020-09-07T15:25:33.784594403Z"}
{"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::io][DEBUG] parsed 9 headers \n","stream":"stdout","time":"2020-09-07T15:25:33.784628602Z"}
{"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::conn][DEBUG] incoming body is content-length (1150 bytes) \n","stream":"stdout","time":"2020-09-07T15:25:33.784637202Z"}
{"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::conn][DEBUG] incoming body completed \n","stream":"stdout","time":"2020-09-07T15:25:33.784643402Z"}
{"log":"[2020-09-07 15:25:33.784][hyper::client::pool][DEBUG] pooling idle connection for ("http", ……de) \n","stream":"stdout","time":"2020-09-07T15:25:33.784649202Z"}
{"log":"[2020-09-07 15:25:33.784][reqwest::async_impl::client][DEBUG] response '200 OK' for http://.......de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.784654501Z"}
{"log":"[2020-09-07 15:25:33.784][bitwarden_rs::api::icons][INFO] Downloaded icon from http://.........de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.784678301Z"}
{"log":"[2020-09-07 15:25:33.784][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T15:25:33.785221386Z"}
{"log":"[2020-09-07 15:25:33.785][request][INFO] GET /icons/……de/icon.png\n","stream":"stdout","time":"2020-09-07T15:25:33.785243886Z"}
{"log":"[2020-09-07 15:25:33.929][reqwest::connect][DEBUG] starting new connection: https://....de/\n","stream":"stdout","time":"2020-09-07T15:25:33.929510008Z"}
{"log":"[2020-09-07 15:25:33.929][hyper::client::connect::dns][DEBUG] resolving host=\“…..de" \n","stream":"stdout","time":"2020-09-07T15:25:33.929656904Z"}
{"log":"[2020-09-07 15:25:33.946][hyper::client::connect::http][DEBUG] connecting to …..:443 \n","stream":"stdout","time":"2020-09-07T15:25:33.946513351Z"}
{"log":"[2020-09-07 15:25:33.951][bitwarden_rs::api::icons][INFO] Download failed for https://......de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.951293622Z"}
{"log":"[2020-09-07 15:25:33.960][reqwest::connect][DEBUG] starting new connection: http://.......de/\n","stream":"stdout","time":"2020-09-07T15:25:33.960502574Z"}
{"log":"[2020-09-07 15:25:33.960][hyper::client::connect::dns][DEBUG] resolving host=\“…….de" \n","stream":"stdout","time":"2020-09-07T15:25:33.960533874Z"}
{"log":"[2020-09-07 15:25:33.969][hyper::client::connect::http][DEBUG] connecting to .....:80 \n","stream":"stdout","time":"2020-09-07T15:25:33.969260839Z"}
{"log":"[2020-09-07 15:25:34.667][reqwest::connect][DEBUG] starting new connection: http://www.......de/\n","stream":"stdout","time":"2020-09-07T15:25:34.668047156Z"}
{"log":"[2020-09-07 15:25:34.667][hyper::client::connect::dns][DEBUG] resolving host="www…….de" \n","stream":"stdout","time":"2020-09-07T15:25:34.668089554Z"}
{"log":"[2020-09-07 15:25:34.673][hyper::client::connect::http][DEBUG] connecting to .……:80 \n","stream":"stdout","time":"2020-09-07T15:25:34.673482609Z"}
{"log":"[2020-09-07 15:25:37.532][hyper::proto::h1::io][DEBUG] read 0 bytes \n","stream":"stdout","time":"2020-09-07T15:25:37.532944649Z"}

I set the loglevel to debug and deleted the icon cache.
That's the end of the log. Than it craches.

@lucky4ever2 commented on GitHub (Sep 7, 2020): {"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] processing in state Data\n","stream":"stdout","time":"2020-09-07T15:25:33.758479805Z"} {"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] got characters None\n","stream":"stdout","time":"2020-09-07T15:25:33.758483805Z"} {"log":"[2020-09-07 15:25:33.758][html5ever::tokenizer][DEBUG] processing EOF in state Data\n","stream":"stdout","time":"2020-09-07T15:25:33.758487705Z"} {"log":"[2020-09-07 15:25:33.758][html5ever::tree_builder][DEBUG] processing EOFToken in insertion mode AfterAfterBody\n","stream":"stdout","time":"2020-09-07T15:25:33.758493305Z"} {"log":"[2020-09-07 15:25:33.765][hyper::client::pool][DEBUG] reuse idle connection for (\"http\", ……de) \n","stream":"stdout","time":"2020-09-07T15:25:33.76537222Z"} {"log":"[2020-09-07 15:25:33.765][hyper::proto::h1::io][DEBUG] flushed 367 bytes \n","stream":"stdout","time":"2020-09-07T15:25:33.765479417Z"} {"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::io][DEBUG] read 1436 bytes \n","stream":"stdout","time":"2020-09-07T15:25:33.784594403Z"} {"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::io][DEBUG] parsed 9 headers \n","stream":"stdout","time":"2020-09-07T15:25:33.784628602Z"} {"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::conn][DEBUG] incoming body is content-length (1150 bytes) \n","stream":"stdout","time":"2020-09-07T15:25:33.784637202Z"} {"log":"[2020-09-07 15:25:33.784][hyper::proto::h1::conn][DEBUG] incoming body completed \n","stream":"stdout","time":"2020-09-07T15:25:33.784643402Z"} {"log":"[2020-09-07 15:25:33.784][hyper::client::pool][DEBUG] pooling idle connection for (\"http\", ……de) \n","stream":"stdout","time":"2020-09-07T15:25:33.784649202Z"} {"log":"[2020-09-07 15:25:33.784][reqwest::async_impl::client][DEBUG] response '200 OK' for http://.......de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.784654501Z"} {"log":"[2020-09-07 15:25:33.784][bitwarden_rs::api::icons][INFO] Downloaded icon from http://.........de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.784678301Z"} {"log":"[2020-09-07 15:25:33.784][response][INFO] GET /icons/\u003cdomain\u003e/icon.png (icon) =\u003e 200 OK\n","stream":"stdout","time":"2020-09-07T15:25:33.785221386Z"} {"log":"[2020-09-07 15:25:33.785][request][INFO] GET /icons/……de/icon.png\n","stream":"stdout","time":"2020-09-07T15:25:33.785243886Z"} {"log":"[2020-09-07 15:25:33.929][reqwest::connect][DEBUG] starting new connection: https://....de/\n","stream":"stdout","time":"2020-09-07T15:25:33.929510008Z"} {"log":"[2020-09-07 15:25:33.929][hyper::client::connect::dns][DEBUG] resolving host=\“…..de\" \n","stream":"stdout","time":"2020-09-07T15:25:33.929656904Z"} {"log":"[2020-09-07 15:25:33.946][hyper::client::connect::http][DEBUG] connecting to …..:443 \n","stream":"stdout","time":"2020-09-07T15:25:33.946513351Z"} {"log":"[2020-09-07 15:25:33.951][bitwarden_rs::api::icons][INFO] Download failed for https://......de/favicon.ico\n","stream":"stdout","time":"2020-09-07T15:25:33.951293622Z"} {"log":"[2020-09-07 15:25:33.960][reqwest::connect][DEBUG] starting new connection: http://.......de/\n","stream":"stdout","time":"2020-09-07T15:25:33.960502574Z"} {"log":"[2020-09-07 15:25:33.960][hyper::client::connect::dns][DEBUG] resolving host=\“…….de\" \n","stream":"stdout","time":"2020-09-07T15:25:33.960533874Z"} {"log":"[2020-09-07 15:25:33.969][hyper::client::connect::http][DEBUG] connecting to .....:80 \n","stream":"stdout","time":"2020-09-07T15:25:33.969260839Z"} {"log":"[2020-09-07 15:25:34.667][reqwest::connect][DEBUG] starting new connection: http://www.......de/\n","stream":"stdout","time":"2020-09-07T15:25:34.668047156Z"} {"log":"[2020-09-07 15:25:34.667][hyper::client::connect::dns][DEBUG] resolving host=\"www…….de\" \n","stream":"stdout","time":"2020-09-07T15:25:34.668089554Z"} {"log":"[2020-09-07 15:25:34.673][hyper::client::connect::http][DEBUG] connecting to .……:80 \n","stream":"stdout","time":"2020-09-07T15:25:34.673482609Z"} {"log":"[2020-09-07 15:25:37.532][hyper::proto::h1::io][DEBUG] read 0 bytes \n","stream":"stdout","time":"2020-09-07T15:25:37.532944649Z"} I set the loglevel to debug and deleted the icon cache. That's the end of the log. Than it craches.
Author
Owner

@BlackDex commented on GitHub (Sep 7, 2020):

Then without the original domain I'm afraid we can't help, since there is nothing here to even start guessing what the issue could be or reproduce.
I'm very sorry, but unless you are able to provide the domain we can't help.

One last thing to maybe have something. Where do these log lines come from? The bitwarden.log file? Or is it the container output?
If it's from the log file, could you maybe try the same as above, but the before triggering the crash run docker logs -f --details bitwarden where bitwarden is the name of the container.

@BlackDex commented on GitHub (Sep 7, 2020): Then without the original domain I'm afraid we can't help, since there is nothing here to even start guessing what the issue could be or reproduce. I'm very sorry, but unless you are able to provide the domain we can't help. One last thing to maybe have something. Where do these log lines come from? The bitwarden.log file? Or is it the container output? If it's from the log file, could you maybe try the same as above, but the before triggering the crash run `docker logs -f --details bitwarden` where bitwarden is the name of the container.
Author
Owner

@lucky4ever2 commented on GitHub (Sep 8, 2020):

We have domains that are not always available. And Bitwarden tries to download the icon for these domains. I think bitwarden should be made more robust if a domain is not reachable.
Maybe you have the possibility to simulate an unreachable domain?

@lucky4ever2 commented on GitHub (Sep 8, 2020): We have domains that are not always available. And Bitwarden tries to download the icon for these domains. I think bitwarden should be made more robust if a domain is not reachable. Maybe you have the possibility to simulate an unreachable domain?
Author
Owner

@BlackDex commented on GitHub (Sep 8, 2020):

If a domain is not reachable it will simply just not work. It will take a few seconds because of the timeout, but that is about it.
It will first try to download the HTML and extract all the possible options for a favicon.
If that is not possible it will try to download https://domain.tld/favicon.ico, and then http://domain.tld/favicon.ico.
And when both fail it will return a default icon.

I have multiple unreachable domains/ip's in my list and no issues at all.
You say it crashes, but i miss the stacktrace/dump, without that information it's impossible for us to help you with this issue.
We would need something like this: https://github.com/dani-garcia/bitwarden_rs/issues/891#issue-574838393

@BlackDex commented on GitHub (Sep 8, 2020): If a domain is not reachable it will simply just not work. It will take a few seconds because of the timeout, but that is about it. It will first try to download the HTML and extract all the possible options for a favicon. If that is not possible it will try to download https://domain.tld/favicon.ico, and then http://domain.tld/favicon.ico. And when both fail it will return a default icon. I have multiple unreachable domains/ip's in my list and no issues at all. You say it crashes, but i miss the stacktrace/dump, without that information it's impossible for us to help you with this issue. We would need something like this: https://github.com/dani-garcia/bitwarden_rs/issues/891#issue-574838393
Author
Owner

@lucky4ever2 commented on GitHub (Sep 8, 2020):

I have Logs like this: docker logs -f --details bitwarden
Can I send you the logs to email?

@lucky4ever2 commented on GitHub (Sep 8, 2020): I have Logs like this: docker logs -f --details bitwarden Can I send you the logs to email?
Author
Owner

@BlackDex commented on GitHub (Sep 8, 2020):

@lucky4ever2 send it to lucky4ever2@vyus.nl

@BlackDex commented on GitHub (Sep 8, 2020): @lucky4ever2 send it to lucky4ever2@vyus.nl
Author
Owner

@BlackDex commented on GitHub (Sep 13, 2020):

@lucky4ever2 Had a change yet to e-mail it?
If you already did, i didn't received it.

@BlackDex commented on GitHub (Sep 13, 2020): @lucky4ever2 Had a change yet to e-mail it? If you already did, i didn't received it.
Author
Owner

@lucky4ever2 commented on GitHub (Sep 15, 2020):

My boss doesn't allow me to send the log. Sorry.

@lucky4ever2 commented on GitHub (Sep 15, 2020): My boss doesn't allow me to send the log. Sorry.
Author
Owner

@PHCSJC commented on GitHub (Feb 23, 2021):

I have same issue, version is 1.19.0, and I have solve this issue by disable icon down , This is env for disable icon down:
-e DISABLE_ICON_DOWNLOAD=true \

@PHCSJC commented on GitHub (Feb 23, 2021): I have same issue, version is 1.19.0, and I have solve this issue by disable icon down , This is env for disable icon down: -e DISABLE_ICON_DOWNLOAD=true \
Author
Owner

@BlackDex commented on GitHub (Feb 23, 2021):

Disabling the downloading of icon's is not the solution.

Are you using the systemd solution to run bitwarden_rs?
If so please disable the LimitNPROC=64 from the .service file, because that is causing issues.

When using Docker, please provide logs which state the issues, because we may need to fix stuff.

@BlackDex commented on GitHub (Feb 23, 2021): Disabling the downloading of icon's is not the solution. Are you using the systemd solution to run bitwarden_rs? If so please disable the `LimitNPROC=64` from the `.service` file, because that is causing issues. When using Docker, please provide logs which state the issues, because we may need to fix stuff.
Author
Owner

@xhanrot commented on GitHub (Apr 9, 2021):

Hi, I have the same issue

BW_rs is installed on my Synology NAS via Docker. I have imported a vault from an old instance of BW, and he tries to download icons but fails with all of them. The domains are random sites.

Example with Amazon :

[2021-04-09 15:22:19.684][request][INFO] GET /icons/www.amazon.com/icon.png
[2021-04-09 15:22:19.684][request][INFO] GET /icons/www.amazon.fr/icon.png
[2021-04-09 15:33:31.857][request][INFO] GET /icons/www.amazon.fr/icon.png
[2021-04-09 15:33:31.857][request][INFO] GET /icons/www.amazon.com/icon.png
[2021-04-09 15:36:21.953][bitwarden_rs::api::icons][WARN] Download failed for https://www.amazon.com/favicon.ico
[2021-04-09 15:36:21.980][bitwarden_rs::api::icons][WARN] Download failed for https://www.amazon.fr/favicon.ico
[2021-04-09 15:36:51.971][bitwarden_rs::api::icons][WARN] Download failed for http://www.amazon.com/favicon.ico
[2021-04-09 15:36:51.996][bitwarden_rs::api::icons][WARN] Download failed for http://www.amazon.fr/favicon.ico

And for each domain, I also get these lines :

[2021-04-09 15:40:12.137][response][INFO] GET /icons/<domain>/icon.png (icon) => 404 Not Found
[2021-04-09 15:50:12.518][bitwarden_rs::api::icons][ERROR] Empty response
[2021-04-09 15:50:12.518][bitwarden_rs::api::icons][ERROR] Error downloading icon: Empty response

@xhanrot commented on GitHub (Apr 9, 2021): Hi, I have the same issue BW_rs is installed on my Synology NAS via Docker. I have imported a vault from an old instance of BW, and he tries to download icons but fails with all of them. The domains are random sites. Example with Amazon : > [2021-04-09 15:22:19.684][request][INFO] GET /icons/www.amazon.com/icon.png > [2021-04-09 15:22:19.684][request][INFO] GET /icons/www.amazon.fr/icon.png > [2021-04-09 15:33:31.857][request][INFO] GET /icons/www.amazon.fr/icon.png > [2021-04-09 15:33:31.857][request][INFO] GET /icons/www.amazon.com/icon.png > [2021-04-09 15:36:21.953][bitwarden_rs::api::icons][WARN] Download failed for https://www.amazon.com/favicon.ico > [2021-04-09 15:36:21.980][bitwarden_rs::api::icons][WARN] Download failed for https://www.amazon.fr/favicon.ico > [2021-04-09 15:36:51.971][bitwarden_rs::api::icons][WARN] Download failed for http://www.amazon.com/favicon.ico > [2021-04-09 15:36:51.996][bitwarden_rs::api::icons][WARN] Download failed for http://www.amazon.fr/favicon.ico And for each domain, I also get these lines : > [2021-04-09 15:40:12.137][response][INFO] GET /icons/\<domain\>/icon.png (icon) => 404 Not Found > [2021-04-09 15:50:12.518][bitwarden_rs::api::icons][ERROR] Empty response > [2021-04-09 15:50:12.518][bitwarden_rs::api::icons][ERROR] Error downloading icon: Empty response
Author
Owner

@unickq commented on GitHub (Jul 14, 2021):

Having the same with Synology Docker/
image

Had to disable icons download

@unickq commented on GitHub (Jul 14, 2021): Having the same with Synology Docker/ ![image](https://user-images.githubusercontent.com/6696821/125583028-bde62304-22d4-409f-bd3e-636be4e4a094.png) Had to disable icons download
Author
Owner

@BlackDex commented on GitHub (Jul 14, 2021):

@unickq I'm not seeing any crashes here.
@xhanrot i only see that downloading failed, which could be number of issues like the container can't access internet or dns isn't working. Or a pihole or special dns service is blocking access.

For both, if it isn't working please check the /admin/diagnostics page if there are some errors there. And also try to enable debug log_level to see some more logs during icon fetching.

@BlackDex commented on GitHub (Jul 14, 2021): @unickq I'm not seeing any crashes here. @xhanrot i only see that downloading failed, which could be number of issues like the container can't access internet or dns isn't working. Or a pihole or special dns service is blocking access. For both, if it isn't working please check the /admin/diagnostics page if there are some errors there. And also try to enable debug log_level to see some more logs during icon fetching.
Author
Owner

@unickq commented on GitHub (Jul 14, 2021):

@BlackDex you were right, thanks. Docker image was connected to bridge network, not to host - so it didn't have internet access.
Reconfigured and all works well.

@unickq commented on GitHub (Jul 14, 2021): @BlackDex you were right, thanks. Docker image was connected to bridge network, not to host - so it didn't have internet access. Reconfigured and all works well.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/vaultwarden#784