Mercurial > libervia-desktop-kivy
annotate libervia/desktop_kivy/core/patches.py @ 499:f387992d8e37
plugins: new "call" plugin for A/V calls:
this is the base implementation for calls plugin, handling one2one calls.
For now, the interface is very basic, call is done by specifying the bare jid of the
destinee, then press the "call" button. Incoming calls are automatically accepted.
rel 424
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 04 Oct 2023 22:54:36 +0200 |
parents | b3cedbee561d |
children |
rev | line source |
---|---|
399 | 1 #!/usr/bin/env python3 |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
2 |
493
b3cedbee561d
refactoring: rename `cagou` to `libervia.desktop_kivy` + update imports and names following backend changes
Goffi <goffi@goffi.org>
parents:
461
diff
changeset
|
3 #Libervia Desktop-Kivy |
461 | 4 # Copyright (C) 2016-2021 Jérôme Poisson (goffi@goffi.org) |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
5 |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
6 # This program is free software: you can redistribute it and/or modify |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
7 # it under the terms of the GNU Affero General Public License as published by |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
8 # the Free Software Foundation, either version 3 of the License, or |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
9 # (at your option) any later version. |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
10 |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
11 # This program is distributed in the hope that it will be useful, |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
14 # GNU Affero General Public License for more details. |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
15 |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
16 # You should have received a copy of the GNU Affero General Public License |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
17 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
18 |
312 | 19 import urllib.request, urllib.error, urllib.parse |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
20 import ssl |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
21 |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
22 |
438
58d3ea442f9c
core (patches): renamed `apply` to `disable_tls_validation` which suits better
Goffi <goffi@goffi.org>
parents:
399
diff
changeset
|
23 def disable_tls_validation(): |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
24 # allow to disable certificate validation |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
25 ctx_no_verify = ssl.create_default_context() |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
26 ctx_no_verify.check_hostname = False |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
27 ctx_no_verify.verify_mode = ssl.CERT_NONE |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
28 |
312 | 29 class HTTPSHandler(urllib.request.HTTPSHandler): |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
30 no_certificate_check = False |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
31 |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
32 def __init__(self, *args, **kwargs): |
312 | 33 urllib.request._HTTPSHandler_ori.__init__(self, *args, **kwargs) |
280
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
34 if self.no_certificate_check: |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
35 self._context = ctx_no_verify |
b0461363bc65
core: certificate validation can be disabled:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
36 |
312 | 37 urllib.request._HTTPSHandler_ori = urllib.request.HTTPSHandler |
38 urllib.request.HTTPSHandler = HTTPSHandler | |
39 urllib.request.HTTPSHandler.no_certificate_check = True |