So, I just spent an hour or so trying to test that fix, it proved to be a lot trickier than expected :)
Reproducing the issue was easy using that perl script, the problem was to test the fix without getting into other crashes...
I "think" that the fix works, in the sense that I now correctly see the packages being downloaded and no ubiquity crashes happening during that time, however, that perl script triggers the following issues:
- Ubiquity crashes on invalid geoip information (had to disable the proxy to have it go past that point)
- Ubiquity crashes on invalid apt list ("Encountered a section with no Package: header")
As I mentioned, I managed to workaround the first crash by simply bypassing the proxy for that step but that second crash is a bit more annoying though I "believe" is not a regression from this fix and is a corner case I hit with my testing environment.
To enforce the use of the proxy, I set it up as a transparent http proxy, thereby forcing every tcp/80 traffic through it, this very likely catches a lot more than what was used by the reporter and can explain why I'm getting more crashes.
So, I just spent an hour or so trying to test that fix, it proved to be a lot trickier than expected :)
Reproducing the issue was easy using that perl script, the problem was to test the fix without getting into other crashes...
I "think" that the fix works, in the sense that I now correctly see the packages being downloaded and no ubiquity crashes happening during that time, however, that perl script triggers the following issues:
- Ubiquity crashes on invalid geoip information (had to disable the proxy to have it go past that point)
- Ubiquity crashes on invalid apt list ("Encountered a section with no Package: header")
As I mentioned, I managed to workaround the first crash by simply bypassing the proxy for that step but that second crash is a bit more annoying though I "believe" is not a regression from this fix and is a corner case I hit with my testing environment.
To enforce the use of the proxy, I set it up as a transparent http proxy, thereby forcing every tcp/80 traffic through it, this very likely catches a lot more than what was used by the reporter and can explain why I'm getting more crashes.