Erreur de certificat avec framagenda

Bonjour,
Depuis hier matin (vendredi 23 juillet) mes clients carddav et caldav sous android recontrent des erreurs de connexion à mon compte framagenda.
Le client caldav (CalDAV-Sync) affiche une erreur de lib SSL et le client carddav (CardDAV-Sync) dit qu’il ne peut pas vérifier le certificat du serveur.

Il s’agit peut-être d’un pb de mon côté suite à une des mises à jour magiques d’android, mais je voulais faire remonter le problème au cas où une mise à jour du côté de framasoft (ou un certificat ssl périmé) aurait cassé quelque chose pour d’autres utilisateurs.

Je pourrais éventuellement faire d’autres tests pour savoir d’où vient le problème. Si ça peut aider, je reste disponible.

Merci!

Bonjour,

Nous avons un peu modifié la configuration du serveur web hier pour en augmenter la sécurité des connexions. Je viens de remettre la configuration d’avant.

Pouvez-vous nous dire si cela refonctionne ? Pouvez-vous nous donner la version d’Android de votre téléphone ?

Ça remarche!
Mon android est très ancien (4.2).

Est-ce qu’il vous serait possible de tester l’appli DAVx⁵ (dispo sur F-droid : https://f-droid.org/fr/packages/at.bitfire.davdroid/ et sur le play store (mais payant, sur le play store) : https://play.google.com/store/apps/details?id=at.bitfire.davdroid) ?

Apparemment, Davx5 embarque des bibliothèques SSL/TLS récentes et pourrait vous permettre de continuer à synchroniser vos agendas tout en nous laissant la possibilité de renforcer la sécurité.

Il faudrait nous dire si vous avez réussi à l’installer (sait-on jamais, des fois qu’il demande une version plus récente d’Android), que nous remettions une configuration plus sécurisée, que vous testiez et que vous nous disiez si ça fonctionne.

Bonjour,

Merci pour votre aide. Davx5 n’est pas compatible avec ma version d’Android. Il est marqué comme incompatible sur F-droid.

Bonjour,
Vous pouvez récupérer les versions antérieures de DAVx5 compatibles avec votre système en activant le dépôt archive de F-Droid : Can I use DAVx⁵ with Android <5? — DAVx⁵

Ah! Je ne connaissais pas cette possibilité d’utiliser les archives! Je vais regarder ça ce soir et vous tiens au courant.
Merci!

Bonsoir,
J’ai installé la version la plus récente de DavDroid (DAVX5) compatible avec Android 4.4 (c’est la 1.9.3). Elle s’installe correctement, mais à la création du compte pour synchoniser avec framagenda, j’ai une erreur. J’ai suivi la doc pour fournir la bonne url et j’ai fait plusieurs essais avec différentes versions de https://framagenda.org/remote.php/dav/calendars/user/persoics/ et à chaque fois il y a une erreur.

Je pense que la bonne url est https://framagenda.org/remote.php/dav/. Avec celle-ci j’ai le rapport de bug ci-joint.

--- BEGIN DEBUG INFO ---

LOGS:
2021-08-02 19:52:52 5 [ui.setup.DavResourceFinder] Finding initial carddav service configuration
2021-08-02 19:52:52 5 [ui.setup.DavResourceFinder] Checking user-given URL: https://framagenda.org/remote.php/dav/
2021-08-02 19:52:52 5 [HttpClient] --> PROPFIND https://framagenda.org/remote.php/dav/
2021-08-02 19:52:52 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:52 5 [HttpClient] Content-Length: 290
2021-08-02 19:52:52 5 [HttpClient] Depth: 0
2021-08-02 19:52:52 5 [HttpClient] 
2021-08-02 19:52:52 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><resourcetype /><displayname /><CARD:addressbook-description /><CARD:addressbook-home-set /><current-user-principal /></prop></propfind>
2021-08-02 19:52:52 5 [HttpClient] --> END PROPFIND (290-byte body)
2021-08-02 19:52:52 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x7a0cf428: I/O error during system call, Connection reset by peer
2021-08-02 19:52:52 5 [ui.setup.DavResourceFinder] PROPFIND/OPTIONS on user-given URL failed
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x7a0cf428: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.checkUserGivenURL(DavResourceFinder.kt:166)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:101)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:73)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:53 5 [HttpClient] --> PROPFIND https://framagenda.org/.well-known/carddav
2021-08-02 19:52:53 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:53 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:53 5 [HttpClient] Depth: 0
2021-08-02 19:52:53 5 [HttpClient] 
2021-08-02 19:52:53 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:53 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:54 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79928c10: I/O error during system call, Connection reset by peer
2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] Well-known URL detection failed
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79928c10: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:105)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:73)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] No principal found at user-given URL, trying to discover
2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] Looking up SRV records for _carddavs._tcp.framagenda.org
2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] Didn't find carddav service, trying at https://framagenda.org:443
2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] Trying to determine principal from initial context path=https://framagenda.org/.well-known/carddav
2021-08-02 19:52:54 5 [HttpClient] --> PROPFIND https://framagenda.org/.well-known/carddav
2021-08-02 19:52:54 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:54 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:54 5 [HttpClient] Depth: 0
2021-08-02 19:52:54 5 [HttpClient] 
2021-08-02 19:52:54 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:54 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:54 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79b8fd58: I/O error during system call, Connection reset by peer
2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] No resource found
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79b8fd58: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.discoverPrincipalUrl(DavResourceFinder.kt:334)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:123)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:73)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:54 5 [ui.setup.DavResourceFinder] Trying to determine principal from initial context path=https://framagenda.org/
2021-08-02 19:52:54 5 [HttpClient] --> PROPFIND https://framagenda.org/
2021-08-02 19:52:54 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:54 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:55 5 [HttpClient] Depth: 0
2021-08-02 19:52:55 5 [HttpClient] 
2021-08-02 19:52:55 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:55 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:55 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x7419aa88: I/O error during system call, Connection reset by peer
2021-08-02 19:52:55 5 [ui.setup.DavResourceFinder] No resource found
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x7419aa88: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.discoverPrincipalUrl(DavResourceFinder.kt:334)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:123)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:73)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:55 5 [ui.setup.DavResourceFinder] Finding initial caldav service configuration
2021-08-02 19:52:55 5 [ui.setup.DavResourceFinder] Checking user-given URL: https://framagenda.org/remote.php/dav/
2021-08-02 19:52:55 5 [HttpClient] --> PROPFIND https://framagenda.org/remote.php/dav/
2021-08-02 19:52:55 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:55 5 [HttpClient] Content-Length: 435
2021-08-02 19:52:55 5 [HttpClient] Depth: 0
2021-08-02 19:52:55 5 [HttpClient] 
2021-08-02 19:52:55 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><resourcetype /><displayname /><n0:calendar-color xmlns:n0="http://apple.com/ns/ical/" /><CAL:calendar-description /><CAL:calendar-timezone /><current-user-privilege-set /><CAL:supported-calendar-component-set /><CAL:calendar-home-set /><current-user-principal /></prop></propfind>
2021-08-02 19:52:55 5 [HttpClient] --> END PROPFIND (435-byte body)
2021-08-02 19:52:56 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x791d3918: I/O error during system call, Connection reset by peer
2021-08-02 19:52:56 5 [ui.setup.DavResourceFinder] PROPFIND/OPTIONS on user-given URL failed
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x791d3918: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.checkUserGivenURL(DavResourceFinder.kt:174)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:101)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:74)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:56 5 [HttpClient] --> PROPFIND https://framagenda.org/.well-known/caldav
2021-08-02 19:52:56 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:56 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:56 5 [HttpClient] Depth: 0
2021-08-02 19:52:56 5 [HttpClient] 
2021-08-02 19:52:57 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:57 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:57 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79250330: I/O error during system call, Connection reset by peer
2021-08-02 19:52:57 5 [ui.setup.DavResourceFinder] Well-known URL detection failed
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79250330: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:105)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:74)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:57 5 [ui.setup.DavResourceFinder] No principal found at user-given URL, trying to discover
2021-08-02 19:52:57 5 [ui.setup.DavResourceFinder] Looking up SRV records for _caldavs._tcp.framagenda.org
2021-08-02 19:52:57 5 [ui.setup.DavResourceFinder] Didn't find caldav service, trying at https://framagenda.org:443
2021-08-02 19:52:57 5 [ui.setup.DavResourceFinder] Trying to determine principal from initial context path=https://framagenda.org/.well-known/caldav
2021-08-02 19:52:57 5 [HttpClient] --> PROPFIND https://framagenda.org/.well-known/caldav
2021-08-02 19:52:57 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:57 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:57 5 [HttpClient] Depth: 0
2021-08-02 19:52:57 5 [HttpClient] 
2021-08-02 19:52:57 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:57 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:58 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x791d2b98: I/O error during system call, Connection reset by peer
2021-08-02 19:52:58 5 [ui.setup.DavResourceFinder] No resource found
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x791d2b98: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.discoverPrincipalUrl(DavResourceFinder.kt:334)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:123)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:74)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)

2021-08-02 19:52:58 5 [ui.setup.DavResourceFinder] Trying to determine principal from initial context path=https://framagenda.org/
2021-08-02 19:52:58 5 [HttpClient] --> PROPFIND https://framagenda.org/
2021-08-02 19:52:58 5 [HttpClient] Content-Type: application/xml; charset=utf-8
2021-08-02 19:52:58 5 [HttpClient] Content-Length: 198
2021-08-02 19:52:58 5 [HttpClient] Depth: 0
2021-08-02 19:52:58 5 [HttpClient] 
2021-08-02 19:52:59 5 [HttpClient] <?xml version='1.0' encoding='UTF-8' ?><propfind xmlns="DAV:" xmlns:CAL="urn:ietf:params:xml:ns:caldav" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><current-user-principal /></prop></propfind>
2021-08-02 19:52:59 5 [HttpClient] --> END PROPFIND (198-byte body)
2021-08-02 19:52:59 5 [HttpClient] <-- HTTP FAILED: javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79988800: I/O error during system call, Connection reset by peer
2021-08-02 19:52:59 5 [ui.setup.DavResourceFinder] No resource found
EXCEPTION javax.net.ssl.SSLException: SSL handshake aborted: ssl=0x79988800: I/O error during system call, Connection reset by peer
	at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
	at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
	at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299)
	at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268)
	at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160)
	at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256)
	at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134)
	at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.java:212)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
	at okhttp3.RealCall.execute(RealCall.java:77)
	at at.bitfire.dav4android.DavResource.propfind(DavResource.kt:264)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.getCurrentUserPrincipal(DavResourceFinder.kt:352)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.discoverPrincipalUrl(DavResourceFinder.kt:334)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:123)
	at at.bitfire.davdroid.ui.setup.DavResourceFinder.findInitialConfiguration(DavResourceFinder.kt:74)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:131)
	at at.bitfire.davdroid.ui.setup.DetectConfigurationFragment$ServerConfigurationLoader.loadInBackground(DetectConfigurationFragment.kt:112)
	at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
	at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
	at android.os.AsyncTask$2.call(AsyncTask.java:288)
	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
	at java.lang.Thread.run(Thread.java:841)



SOFTWARE INFORMATION
Package: at.bitfire.davdroid
Version: 1.9.3-ose (189) from 2 déc. 2017
Installed from: org.fdroid.fdroid
JB Workaround installed: no

CONNECTIVITY (at the moment)
Active connection: mobile, CONNECTED

CONFIGURATION
android.permission.READ_CONTACTS permission: granted
android.permission.WRITE_CONTACTS permission: granted
android.permission.READ_CALENDAR permission: granted
android.permission.WRITE_CALENDAR permission: granted
org.dmfs.permission.READ_TASKS permission: granted
org.dmfs.permission.WRITE_TASKS permission: granted
System-wide synchronization: automatically

SQLITE DUMP
android_metadata
	|  locale |
	|  fr_FR |
----------
services
	|  _id | accountName | service | principal |
----------
sqlite_sequence
	|  name | seq |
----------
homesets
	|  _id | serviceID | url |
----------
collections
	|  _id | serviceID | type | url | readOnly | displayName | description | color | timezone | supportsVEVENT | supportsVTODO | source | sync |
----------

SYSTEM INFORMATION
Android version: 4.4.4 (KTU84P.A300FUXXU1ANL5)
Device: samsung SM-A300FU (a3ulte)

--- END DEBUG INFO ---

Ok, donc la dernière version de DAVx⁵ compatible avec votre version d’Android n’embarque pas de bibliothèque SSL/TLS récente permettant de communiquer avec le serveur, même sans durcir la sécurité du serveur.

Vous pouvez donc supprimer DAVx⁵, merci d’avoir essayé :slight_smile:

En effet, c’était à partir de la version 2.5 que Conscrypt a été ajouté hélas.

Bonjour,
J’ai récupéré un téléphone d’occasion avec Android 5 et je peux donc utiliser DAVx5. Si je suis le seul utilisateur ayant rencontré des problèmes avec la mise à jour de la configuration du serveur web, je pense que vous pouvez ne plus tenir compte de mon cas.
Je vous remercie pour votre aide et votre disponibilité.

Merci de l’information,

Nous allons inspecter nos journaux d’accès pour essayer de contacter les personnes se connectant encore à l’aide d’appareils en Android < 4.4, et modifier la configuration à moyen terme.