07th-mod / 07th-mod/python-patcher
Other MacOS SSL Issues
- 主要言語
- JavaScript
- スター
- 214
- フォーク
- 12
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
We had two types of errors reported recently:
----
This issue is not yet resolved
One issue was getting "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>" on startup (just after checking aria2c and 7z)
----
This issue is not yet resolved
"urlopen error [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590)"
During URL querying:
```
Local Version: None
Remote Version: id: Onikakushi Ch.1/full lastAttemptedInstallID: None files: ui-windows-1.1.0, script-6.2.0, movie-1.0.0, cg-1.0.0, ui-unix-1.1.0, voices-1.0.0, cgalt-1.0.0, movie-unix-1.0.0
Full Update: True (6/6) excluding mod options
<<< Status: 1% Querying URLs to be Downloaded >>>
Querying URL: [https://07th-mod.com/rikachama/graphics/Onikakushi-CG.7z]
Querying URL: [https://07th-mod.com/rikachama/graphics/Onikakushi-CGAlt.7z]
Querying URL: [https://07th-mod.com/rikachama/voice/Onikakushi-Voices.7z]
Querying URL: [https://07th-mod.com/rikachama/video/Onikakushi-Movie_UNIX.7z]
Querying URL: [https://07th-mod.com/ui.php?chapter=onikakushi&os=unix&unity=5.2.2f1]
Querying URL: [https://07th-mod.com/latest.php?repository=onikakushi]
07th Mod - Install failed due to error:
Exception in thread Thread-6:
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 763, in run
self.__target(*self.__args, **self.__kwargs)
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/httpGUI.py", line 451, in errorPrintingInstaller
installerFunction(args)
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/higurashiInstaller.py", line 253, in main
installer = Installer(fullInstallConfiguration, extractDirectlyToGameDirectory=False)
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/higurashiInstaller.py", line 84, in __init__
self.downloaderAndExtractor.buildDownloadAndExtractionList()
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/common.py", line 701, in buildDownloadAndExtractionList
DownloaderAndExtractor.getExtractableItem(url=file.url, extractionDir=self.defaultExtractionDir)
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/common.py", line 784, in getExtractableItem
filename, length, remoteLastModified = DownloaderAndExtractor.__getFilenameFromURL(url)
File "/Users/demo/Downloads/07th-Mod.Installer.mac/install_data/common.py", line 813, in __getFilenameFromURL
httpResponse = urlopen(Request(url, headers={"User-Agent": ""}))
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 437, in open
response = meth(req, response)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 469, in error
result = self._call_chain(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 656, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 431, in open
response = self._open(req, data)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 449, in _open
'_open', req)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1240, in https_open
context=self._context)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1197, in do_open
raise URLError(err)
URLError:
```
(they were running "OpenSSL 0.9.8zh 14 Jan 2016")
**edit: trialing a workaround using CURL instead of python's URLOpen, lets see how that goes...**
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
エラーは、urlopen が呼び出されたときに install_data/common.py の 813 行目、__getFilenameFromURL で発生します。この issue は、Python の URLOpen の代わりに CURL を使用する回避策について言及しています。macOS 上の Python 2.7 環境における SSL/TLS 構成、特に OpenSSL バージョンの互換性を調べることから始めてください。CURL の回避策が実装されているか確認し、URL 取得ロジックをテストしてください。「Done」とは、インストーラーが影響を受ける macOS システム上で、SSL エラーなしにリストされた URL を正常にクエリすることを意味します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- cli, tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100