1

Temat: curl na CC - problemy

Po zainstalowaniu na CC RC2 (aktualny obraz Cezarego) curl miał problem ze znalezieniem libmbedtls.so.8, więc zlinkowałem do libmbedtls.so.1.3.11 (tak jak jest linkowane libmbedtls.so.9) i zaczął już wyświetlać info:

# curl -V
curl 7.40.0 (mips-openwrt-linux-gnu) libcurl/7.40.0 OpenSSL/1.0.2c
Protocols: file ftp ftps http https
Features: IPv6 Largefile SSL

Niestety, próba pobrania jakiejkolwiek strony kończy się błędem 48:

# curl http://eko.one.pl
curl: (48) Error

Co może być przyczyną ?

Wally

2 (edytowany przez build000 2015-07-09 11:21:53)

Odp: curl na CC - problemy

curl, a raczej biblioteka libcurl na której opiera się curl, domyślnie jest skompilowana z opcją SSL używający do tego polarssl : musisz przekompilować sam libcurl i zaznaczyć openssl jako główny tls dla protokołu SSL. Jest chyba też opcja dla Largefile SSL w samym libcurl.
Jak to nie pomoże, to nie wiem. Większość z usług SSL w openwrt jest domyślnie kompilowana dla/ze wsparciem polarssl .

3

Odp: curl na CC - problemy

Jak zawsze - nie wystarczy doinstalowane libpolarssl?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4

Odp: curl na CC - problemy

Cezary napisał/a:

Jak zawsze - nie wystarczy doinstalowane libpolarssl?

To była pierwsza myśl big_smile

opkg install libpolarssl
Package libpolarssl (1.3.11-1) installed in root is up to date.

Domyślnie istnieją tylko:

ls /usr/lib | grep libmbedtls
libmbedtls.so
libmbedtls.so.1.3.11
libmbedtls.so.9

i curl nie może załadować:

curl http://eko.one.pl
curl: can't load library 'libmbedtls.so.8'

Po podlinkowaniu do libmbedtls.so.1.3.11 - błąd 48. Linkowanie do libssl.so.1.0.0 - to samo.

Wally

5 (edytowany przez build000 2015-07-09 11:49:02)

Odp: curl na CC - problemy

http://curl.haxx.se/libcurl/c/libcurl-errors.html napisał/a:

CURLE_UNKNOWN_OPTION (48)

An option passed to libcurl is not recognized/known. Refer to the appropriate documentation. This is most likely a problem in the program that uses libcurl. The error buffer might contain more specific information about which exact option it concerns.

Tak czy inaczej spróbuj co Ci napisałem.

6

Odp: curl na CC - problemy

Szybkie obejście: skopiowałem curl ze starego extroota BB ( big_smile ) i zlinkowałem libpolarssl.so.7 (tego chciała bestia) do libpolarssl.so i działa. Tak więc curl z CC ma rzeczywiście problem. Na razie zamiast kompilować jadę na wersji z BB.

Cezary, może przy okazji kolejnych kompilacji mógłbyś przekompilować curla (chyba nawet jest wersja 7.43)?

Wally

7 (edytowany przez build000 2015-07-09 12:50:26)

Odp: curl na CC - problemy

Wally napisał/a:

Szybkie obejście: skopiowałem curl ze starego extroota BB ( big_smile ) i zlinkowałem libpolarssl.so.7 (tego chciała bestia) do libpolarssl.so i działa. Tak więc curl z CC ma rzeczywiście problem. Na razie zamiast kompilować jadę na wersji z BB.

Cezary, może przy okazji kolejnych kompilacji mógłbyś przekompilować curla (chyba nawet jest wersja 7.43)?

No tego chce bestia bo tak jest domyślnie kompilowane curl/libcurl i wymaga libpolarssl - tyle, że na wielu stronach (nie wspominając o niektórych bibliotekach w openwrt) polarssl się nie sprawdza w curlu i zwyczajnie - kompilujesz ze wsparciem dla libopenssl - to działa wszędzie...ot co... wink

8

Odp: curl na CC - problemy

Jak widać w przypadku CC openssl się nie sprawdziło big_smile natomiast wersja z BB:

curl -V
curl 7.38.0 (mips-openwrt-linux-gnu) libcurl/7.40.0 OpenSSL/1.0.2c
Protocols: file ftp ftps http https
Features: IPv6 Largefile SSL

z polarssl działała i działa w CC (jak widać na załączonym obrazku wink ).

Wally

9 (edytowany przez build000 2015-07-09 13:16:49)

Odp: curl na CC - problemy

Nie czytasz uważnie - najpierw libcurl trzeba skompilować dla/ze wsparciem dla libopenssl - wtedy działa "wszędzie i ze wszystkim". wink
Ponoć polarssl wybrane jest jako główna biblioteka ssl, ponieważ jest "niby" bardziej bezpieczne i mniej pochłania czasu procesora, zasobów sprzętu, i.t.d., ale ma to też w praktyce swoje złe strony - chociażby Twój problem i/lub to, że na niektórych stronach curl zwyczajnie w ogóle nie będzie obsłużony (przy domyślnej kompilacji libcurl w openwrt)...

10

Odp: curl na CC - problemy

Ten mój obraz to było luci?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: curl na CC - problemy

build000 napisał/a:

Nie czytasz uważnie - najpierw libcurl trzeba skompilować dla/ze wsparciem dla libopenssl - wtedy działa "wszędzie i ze wszystkim". wink

Może i nie czytam uważnie (a może to Ty nie spojrzałeś na wyświetlane wersje w moich postach?), ale libcurl nadal jest w wersji z CC - libcurl/7.40.0 OpenSSL/1.0.2c (może ja czegoś nie rozumiem, ale wygląda na to, że jest skompilowana ze wsparciem dla openssl), zmieniłem tylko binarkę curla (wersja 7.38.0). Czyli ewidentnie wina nowej kompilacji curla 7.40.0 a nie libcurl (biblioteka bez zmian).

build000 napisał/a:

Ponoć polarssl wybrane jest jako główna biblioteka ssl, ponieważ jest "niby" bardziej bezpieczne i mniej pochłania czasu procesora, zasobów sprzętu, i.t.d., ale ma to też w praktyce swoje złe strony - chociażby Twój problem i/lub to, że na niektórych stronach curl zwyczajnie w ogóle nie będzie obsłużony (przy domyślnej kompilacji libcurl w openwrt)...

Może i nie będzie obsłużony, ale chyba nikt nie ściąga curlem Gmaila na router big_smile. A w większości typowych zastosowań działa i to jest najważniejsze.

Wally

12

Odp: curl na CC - problemy

Cezary napisał/a:

Ten mój obraz to było luci?

Tak, luci CC RC2 dla WDR3600

Wally

13

Odp: curl na CC - problemy

To jeszcze pytanie skąd masz libcurl'a. Jeżeli ode mnie to ja domyślnie właśnie z libopenssl kompiluje, bo do transmission jest ta biblioteka potrzeba. Nie wiem jak sam curl na to reaguje. Tak czy siak - mogę curla jako binarkę kompilować że później problemów nie było.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14 (edytowany przez Wally 2015-07-09 13:44:59)

Odp: curl na CC - problemy

Cezary napisał/a:

To jeszcze pytanie skąd masz libcurl'a. Jeżeli ode mnie to ja domyślnie właśnie z libopenssl kompiluje, bo do transmission jest ta biblioteka potrzeba. Nie wiem jak sam curl na to reaguje. Tak czy siak - mogę curla jako binarkę kompilować że później problemów nie było.

Było standardowo - opkg update i opkg install curl. O ile pamiętam, to ciągnął się tylko curl bez zależności (nie mam pewności). Jeżeli będziesz testował następne obrazy może spróbuj zainstalować curla i sprawdzić czy działa. Jeżeli nie będziesz miał czasu, wystaw pakiet, potestuję. Na razie działa 7.38 z BB, więc się nie pali.

Wally

15 (edytowany przez build000 2015-07-09 14:49:29)

Odp: curl na CC - problemy

Cezary napisał/a:

To jeszcze pytanie skąd masz libcurl'a. Jeżeli ode mnie to ja domyślnie właśnie z libopenssl kompiluje, bo do transmission jest ta biblioteka potrzeba. Nie wiem jak sam curl na to reaguje. Tak czy siak - mogę curla jako binarkę kompilować że później problemów nie było.

No i wszystko jasne ... wink
Reaguje tak, że pobiera info z już skompilowanej biblioteki libcurl i w zależności od tego jak jest skompilowany libcurl (z libopenssl lub libpolarssl) sam się odpowiednio buduje - musi być w tej samej distro kompilowane razem, jak w przyszłości chce się w tej distro używać curl.

16

Odp: curl na CC - problemy

Mój curl kompilowany na moim chodzi bez problemu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17

Odp: curl na CC - problemy

Cezary napisał/a:

Mój curl kompilowany na moim chodzi bez problemu.

Dobrze wiedzieć. Ale na http://dl.eko.one.pl/chaos_calmer/ar71xx/packages/ go nie ma, więc opkg musiało ciągnąć z głównego repo. Mógłbyś dorzucić ten pakiet na dl.eko?

Wally

18

Odp: curl na CC - problemy

Będzie wraz z następnymi buildami.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19

Odp: curl na CC - problemy

Cezary napisał/a:

Będzie wraz z następnymi buildami.

Dzięki!

Wally