Skip to content

Commit 167eb60

Browse files
committed
Added logic to find CA certs for SSL connections (for frozen apps) and added some logging
1 parent c04b7e0 commit 167eb60

File tree

4 files changed

+20
-4
lines changed

4 files changed

+20
-4
lines changed

config.py

+3
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,9 @@ def defPaths():
9494

9595
__createDirs(savePath)
9696

97+
if isFrozen():
98+
os.environ["REQUESTS_CA_BUNDLE"] = os.path.join(pyfaPath, "cacert.pem")
99+
97100
format = '%(asctime)s %(name)-24s %(levelname)-8s %(message)s'
98101
logging.basicConfig(format=format, level=logLevel)
99102
handler = logging.handlers.RotatingFileHandler(os.path.join(savePath, "log.txt"), maxBytes=1000000, backupCount=3)

service/crest.py

+11-3
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
from service.server import *
1111
import config
1212
from gui.utils.repeatedTimer import RepeatedTimer
13+
import logging
1314

15+
logger = logging.getLogger(__name__)
1416

1517
class Crest():
1618

@@ -29,6 +31,7 @@ def getInstance(cls):
2931
def __init__(self):
3032
self.settings = service.settings.CRESTSettings.getInstance()
3133
self.httpd = StoppableHTTPServer(('', 6461), AuthHandler)
34+
logger.debug(self.httpd)
3235
self.scopes = ['characterFittingsRead', 'characterFittingsWrite']
3336
self.state = None
3437

@@ -96,15 +99,15 @@ def startServer(self):
9699
return self.eve.auth_uri(scopes=self.scopes, state=self.state)
97100

98101
def handleLogin(self, message):
102+
self.httpd.stop()
99103
if not message:
100104
return
101105

102106
if message['state'][0] != self.state:
103-
print "state mismatch"
107+
logger.warn("OAUTH state mismatch")
104108
return
105109

106-
print "handling login by making characters and stuff"
107-
print message
110+
logger.debug("Handling CREST login with: %s"%message)
108111

109112
if 'access_token' in message: # implicit
110113
eve = copy.copy(self.eve)
@@ -117,6 +120,9 @@ def handleLogin(self, message):
117120

118121
eve()
119122
info = eve.whoami()
123+
124+
logger.debug("Got character info: %s" % info)
125+
120126
self.implicitCharacter = CrestUser(info['CharacterID'], info['CharacterName'])
121127
self.implicitCharacter.eve = eve
122128
self.implicitCharacter.fetchImage()
@@ -128,6 +134,8 @@ def handleLogin(self, message):
128134
eve()
129135
info = eve.whoami()
130136

137+
logger.debug("Got character info: %s" % info)
138+
131139
# check if we have character already. If so, simply replace refresh_token
132140
char = self.getCrestCharacter(int(info['CharacterID']))
133141
if char:

service/server.py

+4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99

1010
from html import HTML
1111

12+
import logging
13+
14+
logger = logging.getLogger(__name__)
15+
1216
# https://github.com/fuzzysteve/CREST-Market-Downloader/
1317
class AuthHandler(BaseHTTPServer.BaseHTTPRequestHandler):
1418
def do_GET(self):

setup.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,12 @@
44
Windows executable: python setup.py build
55
Windows executable + installer: python setup.py bdist_msi
66
"""
7+
import requests.certs
78

89
# The modules that contain the bulk of teh source
910
packages = ['eos', 'gui', 'service', 'utils']
1011
# Extra files that will be copied into the root directory
11-
include_files = ['eve.db', 'LICENSE', 'README.md']
12+
include_files = ['eve.db', 'LICENSE', 'README.md', (requests.certs.where(),'cacert.pem')]
1213
# this is read by dist.py to package the icons
1314
icon_dirs = ['gui', 'icons', 'renders']
1415

0 commit comments

Comments
 (0)