Armadilloフォーラム

wgetのバージョンについて

tani1023

2015年3月19日 14時49分

谷と申します。
お世話になります。

ユーザーランド (Atmark Dist)のv20150127を使用して、Armadillo上の環境を作成しています。
wgetを使用してxmlを送信するプログラムを作成してますが、
バージョンがGNU Wget 1.9.1と古く、HTTP1.1に対応しておりません。

Atmark Dist上に最新バージョンのwget(wget-1.16??)をAtmark Dist上に展開はできますでしょうか?
できるのであれば、大変恐縮ですが、作成方法を指南していたければありがたいです。

よろしくお願いいたします。

コメント

花田です。

先日、wgetの新しいバージョンへの更新を試してみていました。
ただ、最新版(というか2006年より最近)のものはライセンスがGPLv3になっており、一般市販製品では扱いづらい状況になっております。
このため、バージョンとしては古いのですがv1.10.2(GPLv2)のものをベースに、セキュリティ面の脆弱性CVE-2009-3490/CVE-2010-2252/CVE-2014-4877への対策などを取り込んだものを作りました。

このバージョンでも、HTTP/1.1のHTTP_STATUS_SEE_OTHER(303)やHTTP_STATUS_TEMPORARY_REDIRECT(307)の扱いなど実装されているようです。
wgetディレクトリを固めたものを添付しますので、atmark-dist下のuser/wgetディレクトリを削除(またはリネーム)して、こちらに差し替えて試してみてください。

GPLv3で構わなければ、より新しいwgetを持ってくることも可能ではあります。
また、最近のAtmark Distでは似た機能を持つcurl(cURL)も入っているので、機能面で目的を満たすようであればこちらを使う手もあります。

> 谷と申します。
> お世話になります。
>
> ユーザーランド (Atmark Dist)のv20150127を使用して、Armadillo上の環境を作成しています。
> wgetを使用してxmlを送信するプログラムを作成してますが、
> バージョンがGNU Wget 1.9.1と古く、HTTP1.1に対応しておりません。
>
> Atmark Dist上に最新バージョンのwget(wget-1.16??)をAtmark Dist上に展開はできますでしょうか?
> できるのであれば、大変恐縮ですが、作成方法を指南していたければありがたいです。
>
> よろしくお願いいたします。
>

ファイル ファイルの説明
wget.tar.gz wget v1.10.2 (atmark-dist/user/wgetとして配置)

花田様

下記返答、ありがとうございます。

頂いたフォルダをatmark-dist/user/wgetに配置し、早速試しましたが出来上がったwgetはarm-linux-gnueabi-gccのコンパイルとなっておらず、
Armadillo上では動きませんでした。

GPLv3でもよいので、wgetの最新バージョンももってきましたが、この辺のMakefileとconfigureの設定がわからずに四苦八苦している状態です。
curlではなく、wgetを使う予定です。

※wgetのHTTPのリクエストラインが/ HTTP/1.0となるのを修正したい状況です。
v1.10.2 でも恐らく/ HTTP/1.0のままです。wgetソース内のhttp.cでベタ書きですので修正すれば直るのではと思っていますが…。
できれば最新のバージョンでとは考えております。

> 花田です。
>
> 先日、wgetの新しいバージョンへの更新を試してみていました。
> ただ、最新版(というか2006年より最近)のものはライセンスがGPLv3になっており、一般市販製品では扱いづらい状況になっております。
> このため、バージョンとしては古いのですがv1.10.2(GPLv2)のものをベースに、セキュリティ面の脆弱性CVE-2009-3490/CVE-2010-2252/CVE-2014-4877への対策などを取り込んだものを作りました。
>
> このバージョンでも、HTTP/1.1のHTTP_STATUS_SEE_OTHER(303)やHTTP_STATUS_TEMPORARY_REDIRECT(307)の扱いなど実装されているようです。
> wgetディレクトリを固めたものを添付しますので、atmark-dist下のuser/wgetディレクトリを削除(またはリネーム)して、こちらに差し替えて試してみてください。
>
> GPLv3で構わなければ、より新しいwgetを持ってくることも可能ではあります。
> また、最近のAtmark Distでは似た機能を持つcurl(cURL)も入っているので、機能面で目的を満たすようであればこちらを使う手もあります。
>
>
> > 谷と申します。
> > お世話になります。
> >
> > ユーザーランド (Atmark Dist)のv20150127を使用して、Armadillo上の環境を作成しています。
> > wgetを使用してxmlを送信するプログラムを作成してますが、
> > バージョンがGNU Wget 1.9.1と古く、HTTP1.1に対応しておりません。
> >
> > Atmark Dist上に最新バージョンのwget(wget-1.16??)をAtmark Dist上に展開はできますでしょうか?
> > できるのであれば、大変恐縮ですが、作成方法を指南していたければありがたいです。
> >
> > よろしくお願いいたします。
> >

花田です。

> ※wgetのHTTPのリクエストラインが/ HTTP/1.0となるのを修正したい状況です。

なるほど、このcommitより新しいものということになりますね。

Support HTTP/1.1.
http://git.savannah.gnu.org/cgit/wget.git/commit/src?id=1cee0861627ce56…

すると、大体1.13以降ということになります。

> GPLv3でもよいので、

わかりました。wgetのビルド構造を改造したので、新しいものでもそれほど難しくありません。
後程試してみて、ご報告いたします。

> 頂いたフォルダをatmark-dist/user/wgetに配置し、早速試しましたが出来上がったwgetはarm-linux-gnueabi-gccのコンパイルとなっておらず、
> Armadillo上では動きませんでした。

これがちょっとわかりません…配置してatmark-dist直下でmakeすれば、CC=arm-linux-gnueabi-gccが伝わりarm用になるはずですが…

花田です。

wget 1.13.4(Debian Wheezy/Stableのもの、脆弱性対策ほかDebianが入れているすべてのパッチを含む)にて実装してみました。
これは、HTTP/1.1でリクエストするはずです。

ソースと実行ファイルそのものそれぞれを添付します。

ファイル ファイルの説明
wget-1.13.4.tar.gz Atmark Dist下のuser/wgetとして配置するソースのtarball
wget.gz armel用実行ファイル(のgzip圧縮)

谷です。

花田様
下記返答、ありがとうございます。

下記の件、試させていただきました。
前回はフォルダ名とメイクファイルを修正して使用として誤ってMakeしておりました。失礼しました。

wgetフォルダを置き換え、makeにて問題なく作成されました。
リクエストラインも1.1と確認しております。

こちらを使用させていただきます。
ありがとうございました。

> 花田です。
>
> wget 1.13.4(Debian Wheezy/Stableのもの、脆弱性対策ほかDebianが入れているすべてのパッチを含む)にて実装してみました。
> これは、HTTP/1.1でリクエストするはずです。
>
> ソースと実行ファイルそのものそれぞれを添付します。
>