Description
We should start with vanilla vsftpd 3.0.3 and perform a series of refactorings to get it to a compliant Checked C version (as much as possible). We should have a series of commits: 3c_XXX
for updates made by the tool, followed by manual refactorings in between. This way a reader of the commit history can see how the tool was applied to propagate changes.
We should do this on a standard Linux distro so that we can properly build the server at each step.
I'm pretty sure that @Machiry found that the baseline code actually has a bug in it (relating to an enum
or something like that) so the first commit will have to be a refactoring to fix that bug. Then we go from there. This should be done in a separate @correctcomputation repository.
Very likely, doing this will reveal features that we should add, which may result in needing to pause this and restart it, so we can add them.