GSoC 2018 Project Summary: Conpot
18 Aug 2018 Daniel Haslinger conpot gsoc ics python scada
Abhinav Saxena wrote this post as a project summary of his GSoC2018 experience.
What did we achieve?
The following features and changes were implemented:
- Migration of the codebase from Python 2.7 to Python 3.5 (issue #358, code: #374)
- Implementation of FTP (RFC 959) and TFTP (RFC 1350) protocol stacks based on gevent (issue #352, code: ftp and tftp)
- Implementation of an abstract filesystem that proxies and wraps an actual file system by providing os.* wrappers (code: #375 and #382)
- Wrote 123 unit tests and refactored all existing 44 unit tests, increasing coverage from 44% to 72% at the time of this writing (code: #374, #375 and #382)
- Bug fixes and refactoring of the existing BACnet and IPMI protocol stacks (issue #341, code #382)
- Bug fixes in auxiliary Docker files (issue: #378, code: #380 and #392)
- Refactoring of an existing telnet library to be compatible to the Conpot codebase (issue #285, code: mushorg/telnetsrvlib)
- Wrote an internal interface implementation that introduces a decorator, allowing protocol servers to interact more deeply with each other. (issue #259, code #375)
- Helping users with issues and pull request reviews: link