ソースを参照

[ssl] Correct connect creation

We want to authenticate the server, see https://docs.python.org/dev/library/ssl.html#ssl.Purpose.SERVER_AUTH .
Philipp Hagemeister 10 年 前
コミット
be5f2c192c
1 ファイル変更2 行追加1 行削除
  1. 2 1
      youtube_dl/utils.py

+ 2 - 1
youtube_dl/utils.py

@@ -399,8 +399,9 @@ def formatSeconds(secs):
 def make_HTTPS_handler(params, **kwargs):
 def make_HTTPS_handler(params, **kwargs):
     opts_no_check_certificate = params.get('nocheckcertificate', False)
     opts_no_check_certificate = params.get('nocheckcertificate', False)
     if hasattr(ssl, 'create_default_context'):  # Python >= 3.4 or 2.7.9
     if hasattr(ssl, 'create_default_context'):  # Python >= 3.4 or 2.7.9
-        context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
+        context = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
         if opts_no_check_certificate:
         if opts_no_check_certificate:
+            context.check_hostname = False
             context.verify_mode = ssl.CERT_NONE
             context.verify_mode = ssl.CERT_NONE
         try:
         try:
             return YoutubeDLHTTPSHandler(params, context=context, **kwargs)
             return YoutubeDLHTTPSHandler(params, context=context, **kwargs)