07th-mod / 07th-mod/python-patcher

Other MacOS SSL Issues

Open
#77 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
214
Forks
12
PR merge metrics
No merged PRs in 30d

Description

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...**

Contributor guide

No contributing guide indexed for this repository

Research direction

The error occurs in install_data/common.py line 813 in __getFilenameFromURL when urlopen is called. The issue mentions a workaround using CURL instead of Python's URLOpen. Start by examining the SSL/TLS configuration in the Python 2.7 environment on macOS, specifically the OpenSSL version compatibility. Check if the CURL workaround was implemented and test the URL fetching logic. 'Done' means the installer successfully queries the listed URLs without SSL errors on affected macOS systems.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.