Error When AUTH
- Dominant language
- Python
- Stars
- 123
- Forks
- 41
- PR merge metrics
- No merged PRs in 30d
Description
My code:
`
import logging
from secure_smtpd import SMTPServer, FakeCredentialValidator, LOG_NAME
class SSLSMTPServer(SMTPServer):
def process_message(self, peer, mailfrom, rcpttos, message_data):
print(message_data)
logger = logging.getLogger( LOG_NAME )
logger.setLevel(logging.INFO)
server = SSLSMTPServer(
('0.0.0.0', 4896),
None,
require_authentication=True,
ssl=False,
credential_validator=FakeCredentialValidator(),
maximum_execution_time = 1.0
)
server.run()
`
ERROR:
`error: uncaptured python exception, closing channel <__main__.SSLSMTPServer listening 0.0.0.0:4896 at 0x2e3e108> (:Can't pickle : it's not found as __main__.recvfrom_into [C:\Python27\lib\asyncore.py|read|83] [C:\Python27\lib\asyncore.py|handle_read_event|443] [C:\Python27\lib\site-packages\secure_smtpd-3.0.0-py2.7.egg\secure_smtpd\smtp_server.py|handle_accept|31] [C:\Python27\lib\site-packages\secure_smtpd-3.0.0-py2.7.egg\secure_smtpd\process_pool.py|__init__|10] [C:\Python27\lib\site-packages\secure_smtpd-3.0.0-py2.7.egg\secure_smtpd\process_pool.py|_create_processes|16] [C:\Python27\lib\multiprocessing\process.py|start|130] [C:\Python27\lib\multiprocessing\forking.py|__init__|277] [C:\Python27\lib\multiprocessing\forking.py|dump|199] [C:\Python27\lib\pickle.py|dump|224] [C:\Python27\lib\pickle.py|save|331] [C:\Python27\lib\pickle.py|save_reduce|425] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_dict|655] [C:\Python27\lib\pickle.py|_batch_setitems|687] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\multiprocessing\forking.py|dispatcher|67] [C:\Python27\lib\pickle.py|save_reduce|401] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_tuple|554] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_inst|731] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_dict|655] [C:\Python27\lib\pickle.py|_batch_setitems|687] [C:\Python27\lib\pickle.py|save|331] [C:\Python27\lib\pickle.py|save_reduce|425] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_tuple|554] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_dict|655] [C:\Python27\lib\pickle.py|_batch_setitems|687] [C:\Python27\lib\pickle.py|save|286] [C:\Python27\lib\pickle.py|save_global|754])`
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the reported AUTH configuration on Python 2.7, then trace the failure through secure_smtpd/smtp_server.py:handle_accept and secure_smtpd/process_pool.py, as shown in the traceback. Compare the multiprocessing startup path with the socket object that raises PicklingError. Done means authenticated server startup no longer closes the channel with this exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100