← Back to team overview

kicad-developers team mailing list archive

Re: [rfc patch] replace avhttp with libcurl

 

Hi Wayne,

Before we ever suggest to our users to modify /etc/hosts, can we please do
a check with Wireshark or something equivalent to see if the computer is
actually hitting the wire asking for the IP of github.com?

I know Windows caches DNS lookups, and so does OS X.  Many Linuxes do, and
honestly these days it may even be built into the Linux kernel.

It certainly is something we can look into but I don't want to suggest to
our users to modify system files without knowing it's actually a problem,
because there's no real guarantee our users can troubleshoot any issues if
something gets messed up.

This will be a double-edged sword as KiCad continues to get more usable and
a smaller percentage of our userbase has their own compile toolchain and
years of experience troubleshooting intricate computing problems.

Adam Wolf

On Fri, Dec 4, 2015 at 9:56 AM, Wayne Stambaugh <stambaughw@xxxxxxxxx>
wrote:

> Replacing avhttp with lib curl is fine for the development branch once
> we prove it out but I am reluctant to backport it to the stable release
> for obvious reasons.  I got an email from Dick today.  He believes the
> problem lies with the users router's inability to keep up with the
> parallel DNS look up requests.  This may be that's why it hasn't been a
> problem for developers.  My guess is most of us have routers that are
> fast enough to handle the parallel DNS requests.  He suggested adding
> github to /etc/hosts so the host will cache the DNS look up but that's
> still no guarentee.  As an alternative we could either lower the number
> of work threads in footprint_info.cpp (which also effects non-github
> footprint library loading), disable multiple threads all together, or
> make the number of worker threads configurable.  I'm not sure if the
> github plugin itself is also spawning multiple threads so that may be
> another place to look.  Has anyone tried building kicad with worker
> threads disabled in footprint_info.cpp to confirm if this resolves the
> issue?
>
> On 12/4/2015 10:10 AM, Nick Østergaard wrote:
> > 2015-12-04 14:15 GMT+01:00 Mark Roszko <mark.roszko@xxxxxxxxx>:
> >>> I understand what you mean, but I am pretty sure avhttp did not test
> >> certificates.
> >> It did using boost::asio:ssl which has the functionality for it.
> >>
> >> in include/avhttp/impl/http_stream.ipp you can even see the
> >> m_check_certificate option which kicad never turned off.
> >>
> >>
> >>> I am worried by the fact most of Kicad users know nothing about
> >>> certificates, and using them is open a door to a lot of bug reports
> (the
> >>> fp lib table issues could be zilch compared to that).
> >>
> >> We would bundle it with the kicad  for Windows and it should be fine.
> >> Anyone else should have a dependency on their installed kicad package
> >> on libcurl which in term will have a dependency on ca-certificates.
> >>
> >>
> >>> I am thinking the certificate ca-bundle.crt is OK (cURL works fine
> since
> >>> I updated it), but it is just not found by Kicad (It could be fixed).
> >>
> >> On two of my machines inside MSYS2, curl works just fine in kicad :/
> >>
> >>
> >>> I am thinking the certificate ca-bundle.crt is OK (cURL works fine
> since I updated it), but it is just not found by Kicad (It could be fixed).
> >>
> >> It can be by setting the paths within kicad. But its more of a MSYS2
> issue.
> >
> > I am not exactly sure why it happens, but this happens on msys2 when
> > you do not upgrade "properly". If you blindly pacman -Syu when it will
> > update the mingw something something dll, which requires you to only
> > update that and close the shell and reopen to continue the update this
> > ca-certificates thing happen where https do not work.  But if you do
> > update-repo and then pacman -Sy   to update it should be good at all
> > times -- apparently.
> >
> >> Interesting is they compile with
> >>
> _variant_config+=("--with-ca-bundle=${MINGW_PREFIX}/ssl/certs/ca-bundle.crt")
> >>
> >> so I have it in
> >> D:\msys64\usr\ssl\certs
> >> and
> >> D:\msys64\mingw64\ssl\certs
> >>
> >> They do add a patch to curl that makes the ca-bundle path relative to
> >> the executable.
> >>
> >> _______________________________________________
> >> Mailing list: https://launchpad.net/~kicad-developers
> >> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> >> Unsubscribe : https://launchpad.net/~kicad-developers
> >> More help   : https://help.launchpad.net/ListHelp
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help   : https://help.launchpad.net/ListHelp
> >
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>

References