medicafe 0.250529.2__tar.gz → 0.250610.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of medicafe might be problematic. Click here for more details.
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Gmail.py +37 -3
- {medicafe-0.250529.2/medicafe.egg-info → medicafe-0.250610.0}/PKG-INFO +1 -1
- {medicafe-0.250529.2 → medicafe-0.250610.0/medicafe.egg-info}/PKG-INFO +1 -1
- {medicafe-0.250529.2 → medicafe-0.250610.0}/setup.py +1 -1
- {medicafe-0.250529.2 → medicafe-0.250610.0}/LICENSE +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MANIFEST.in +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot.bat +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_Charges.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_Crosswalk_Library.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_Post.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_Preprocessor.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_Preprocessor_lib.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_UI.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_dataformat_library.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/MediBot_docx_decoder.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/PDF_to_CSV_Cleaner.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/__init__.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/update_json.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediBot/update_medicafe.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_837p_encoder.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_837p_encoder_library.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_API_Generator.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_API_v2.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_API_v3.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_APIs.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Azure.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_ClaimStatus.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_ConfigLoader.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_DataMgmt.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Decoder.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Deductible.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Down.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Mailer.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Parser.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Scan.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Scheduler.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_UI.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_Up.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/MediLink_batch.bat +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/Soumit_api.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/__init__.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/MediLink/test.py +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/README.md +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/medicafe.egg-info/SOURCES.txt +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/medicafe.egg-info/dependency_links.txt +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/medicafe.egg-info/not-zip-safe +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/medicafe.egg-info/requires.txt +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/medicafe.egg-info/top_level.txt +0 -0
- {medicafe-0.250529.2 → medicafe-0.250610.0}/setup.cfg +0 -0
|
@@ -321,13 +321,40 @@ class RequestHandler(BaseHTTPRequestHandler):
|
|
|
321
321
|
def generate_self_signed_cert(cert_file, key_file):
|
|
322
322
|
log("Checking if certificate file exists: " + cert_file)
|
|
323
323
|
log("Checking if key file exists: " + key_file)
|
|
324
|
-
|
|
324
|
+
|
|
325
|
+
# Check if certificate exists and is not expired
|
|
326
|
+
cert_needs_regeneration = True
|
|
327
|
+
if os.path.exists(cert_file):
|
|
328
|
+
try:
|
|
329
|
+
# Check certificate expiration
|
|
330
|
+
check_cmd = ['openssl', 'x509', '-in', cert_file, '-checkend', '86400', '-noout'] # Check if expires in next 24 hours
|
|
331
|
+
result = subprocess.call(check_cmd)
|
|
332
|
+
if result == 0:
|
|
333
|
+
log("Certificate is still valid")
|
|
334
|
+
cert_needs_regeneration = False
|
|
335
|
+
else:
|
|
336
|
+
log("Certificate is expired or will expire soon")
|
|
337
|
+
# Delete expired certificate and key files
|
|
338
|
+
try:
|
|
339
|
+
if os.path.exists(cert_file):
|
|
340
|
+
os.remove(cert_file)
|
|
341
|
+
log("Deleted expired certificate file: {}".format(cert_file))
|
|
342
|
+
if os.path.exists(key_file):
|
|
343
|
+
os.remove(key_file)
|
|
344
|
+
log("Deleted expired key file: {}".format(key_file))
|
|
345
|
+
except Exception as e:
|
|
346
|
+
log("Error deleting expired certificate files: {}".format(e))
|
|
347
|
+
except Exception as e:
|
|
348
|
+
log("Error checking certificate expiration: {}".format(e))
|
|
349
|
+
|
|
350
|
+
if cert_needs_regeneration:
|
|
325
351
|
log("Generating self-signed SSL certificate...")
|
|
326
352
|
cmd = [
|
|
327
353
|
'openssl', 'req', '-config', openssl_cnf, '-nodes', '-new', '-x509',
|
|
328
354
|
'-keyout', key_file,
|
|
329
355
|
'-out', cert_file,
|
|
330
|
-
'-days', '365'
|
|
356
|
+
'-days', '365',
|
|
357
|
+
'-sha256' # Use SHA-256 for better security
|
|
331
358
|
#'-subj', '/C=US/ST=...' The openssl.cnf file contains default values for these fields, but they can be overridden by the -subj option.
|
|
332
359
|
]
|
|
333
360
|
try:
|
|
@@ -336,7 +363,14 @@ def generate_self_signed_cert(cert_file, key_file):
|
|
|
336
363
|
log("Command finished with result: " + str(result))
|
|
337
364
|
if result != 0:
|
|
338
365
|
raise RuntimeError("Failed to generate self-signed certificate")
|
|
339
|
-
|
|
366
|
+
|
|
367
|
+
# Verify the certificate was generated correctly
|
|
368
|
+
verify_cmd = ['openssl', 'x509', '-in', cert_file, '-text', '-noout']
|
|
369
|
+
verify_result = subprocess.call(verify_cmd)
|
|
370
|
+
if verify_result != 0:
|
|
371
|
+
raise RuntimeError("Generated certificate verification failed")
|
|
372
|
+
|
|
373
|
+
log("Self-signed SSL certificate generated and verified successfully.")
|
|
340
374
|
except Exception as e:
|
|
341
375
|
log("Error generating self-signed certificate: {}".format(e))
|
|
342
376
|
raise
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|