なんとなく

誰得感満載な記事が多いかも。Mono関係とLinuxのサーバ関係、レビューとか。

GPL違反!? IODataにRockDisk Nextのソース開示請求をしてみた。

はじめに

RockDiskNextを購入したので、色々いじるつもりでGPLソースコードの開示もできるだろうと思ってソースの開示請求をしてみた。 実際にやってみたら、想定したのとは全く違う方向へ進んでびっくりした。 おそらく、いわゆるGPL違反じゃないのかな?ということになったのをまとめてみた。

つづきもある。 

GPL違反が継続状態、IO DATAのRockDisk Next - なんとなく

IODataのサポートとのやりとり

購入前に確認

とりあえず、購入前にGPLソースコードの開示がどういう感じで行えるか調べてみた。

RockDisk NextについてはGPLソースコードの開示請求ができるような記述は、IODataのホームページを見ても見つからなかった。

しかし、RockDisk NextではないNASでは、

<内容>

本製品のソースコードは、ご希望のお客さまへ弊社よりCD-ROMを郵送にてお送り しています。 (送料はお客様負担となります)

本製品ではシステム内部にて GPL対象ソフトを利用しております。 ソースプログラムにつきましては実費にてご提供させていただいておりますので、 ご希望の場合は、弊社サポートセンターへお問い合わせください。

なお、GPL/LGPLに基づき、本製品を構成しているプログラム・ドライバのうち 本製品向けに独自に作成された部分を除くオープンソースソフトウェアのみ配布 いたします。

ソースコードの内容などについてのご質問にはお答えいたしかねますので、あら かじめご了承ください。

<参考> GPL とは GNU プロジェクトが提唱するフリーソフ トウェアのライセンスです。 これにより GPL 対象のソフトウェアはその使用・複製・変更・再配布の自由が 認められています。 また、配布・複製に当たってソースプログラムの提供が義務付けられています。

本製品のソースコードの入手方法について|Q&A | IODATA アイ・オー・データ機器

とあり、GPLソースコードの開示請求ができる記述があった。

そのため、ご購入前のお問い合わせ | IODATA アイ・オー・データ機器に電話をかけて、RockDisk NextについてはGPLソースコードの開示ができるかどうか確認したところ、オペレーターさんでは即答できなかった。 折り返しをいただいて、RockDisk NextについてはGPLソースコードの開示ができるとのことだった。 詳しくは、購入後にサポートに確認してくださいとの事だった。

購入し、サポートに開示の仕方を確かめてみた

購入して、付属されていた、はじめにお読みくださいという書面に

「本製品及び本書は株式会社アイ・オー・データ機器の著作物です。~」

とあって、微妙な気持ちになった。 まぁ、でも、購入前に確認した際にRockDisk NextについてはGPLソースコードの開示ができるとのことだったので、サポートに ソースコードを入手したいので、その対応方法を教えてほしいと確認してみた。

返信が遅い。。。

IO-Dataの他のNAS製品だと

約30分後。

詳細の返信。

おー、仕事してるなぁ。

定形メールだろうから、CMSのボタン押すだけで手間はかからないだろうけど。

IODATAにソースコードを請求してみる(1) - kinneko@転職先募集中の日記

と記述されているように、時間がかからずに対応してもらえるようだったので、すぐに回答が来るものだと思っていたら、1週間たっても返信がないので、再度問い合わせてみた。

いつ用意できるか未定

返信はあったのだけど、

 恐れ入りますがソースコードの開示につきましては、ご提供までに時間がかかるみこ みとなり、いつ頃ご用意できるか未定の状況でございます。  弊社で用意ができ次第、ご連絡させて頂きたいと存じますので、大変申し訳ございま せんが、今しばらくお待ち頂きますようお願い申し上げます。

とのことだった。。。GPLなソースを元に、バイナリ提供しているのに、それに対応するソースが提供できないとは。

ソース開示か?いや違った。

その後、20日程度経過して、リストが送られてきた。

RockdiskNext_Opensourcelist.pdf - Google ドライブ

リストを確認したところ

  • バイナリに対応するソースコードではなかった
  • Linuxカーネル関連(ソースコードやbootに必要な物とか)がリストには記述されていなかった
  • 明らかにminidlnaは改変されているのに記載されている入手先ではみつからなかった

もともとGPLv2のソースコードがあるならば、郵送代はこちら負担でCD-ROMにまとめて郵送で入手したかった。 本製品のソースコードの入手方法について|Q&A | IODATA アイ・オー・データ機器と同様な方法を取れば、色々と面倒じゃないと思ってた。

そのため以下のように返信した

お世話になります。

いただいたリストは、RockDiskNextにインストールされているパッケージについての リストのようですが、記載されている入手先は、プロジェクトのトップページなどで バイナリとして配布されているものの完全なソースのダウンロード先では無いように 思えます。

また、Linuxカーネルのソースについては記載すらないのですが、当該カーネルのソ ースとパッチを提供いただくにはどうすればよろしいでしょうか? さらに、minidlnaについてはDSDの対応などで貴社によって改変され、バイナリで配 布されています。リストの入手先には、そのソースはありません。 ソースを提供いただくにはどうすればよろしいでしょうか? 当方としてはLANDISKなどと同様の方法で、ライセンスとして開示されるべきものを 個別にではなく全体としてソースを提供いただきたいです。

2週間以上返信がない。。。

15日ほどして、回答は

 上記の内容についてですが、ソースコードの公開についてですが、ソースコードは弊 社から提供する他に、ソースコードの入手先と使用バージョンを提示するという方法が ございます。  RockDiskNextについては、後者のソースコードの入手先と使用バージョンを提示する という方法でご案内している状況となります。  その為、ソースコード全てを弊社から直接提供させて頂くということは難しいのです が、改変している部分のソースコードについてはご提供できるよう準備しており、この 点については、今しばらくお待ちいただきます様お願い申し上げます。

だった。LANDISKと同じ感じで物理メディアでの開示をお願いしているですけどね。

その後、minidlnaのソースは開示された。 minidlna-20140415.tar.zip - Google ドライブ

ただ、

  • バイナリがrpmで提供されているのにそれを作成するためのspecファイルが無かった

そのため、以下のように返信した

また、minidlnaのソースを送っていただいたのですが、GPLに基づく 配布されているバイナリへの対応ソース(Corresponding Source)になっていないようです。 作成する環境をまだ構築できていないので、未確認な状態で申し訳ないのですが、 頂いたものだけですとspecファイルが足りず、おそらく配布されているrpmを作成できないかと思います。 specファイルを含む対応ソースは、rpmをビルドする際に作成することは可能です。 おそらく minidlna-20140415-1.fc12.src.rpm というようなファイル名で、作成された環境ですと /root/rpmbuild/SRPMS/ にあると思われますので、そちらをお送りいただきますよう、よろしくお願い致します。

以前より指摘していた

いただいたリストは、RockDiskNextにインストールされているパッケージについてのリストのようですが、 記載されている入手先は、プロジェクトのトップページなどで バイナリとして配布されているものの完全なソースのダウンロード先では無いように思えます。

についても同様の理由です。 リストに記載されているパッケージの大半について、配布されているバイナリへの対応ソースは http://archive.fedoraproject.org/pub/archive/fedora/linux/releases/12/Fedora/source/SRPMS/ より入手可能と思われます。(きちんと確認はしておりませんが) ただ、GPLに基づくという点では、3年間提供される保証について、第三者のサイトで公開されている現状では 貴社にそれを保証していただける状態であるとは考えにくいです。 リストのようにソース入手先を持ってソースコードが提供可能とするには、 貴社サイトや貴社が管理できるWEBサービスを入手先として当該ソースをご提示いただければ、 不足分を除いて、GPLに基づくという条件を満たすのではないかと考えます。

ただ、残念ながら、そもそもバイナリのみの配布であるのに、 対応するソースコードを提供するという書面による申し出がない時点(RockDiskNextに同梱されてない)で GPLに基づくとはいえないと思いますが。

なるべくGPLに基づく対応を行っていただきたいと考えます。

また連絡がない

すると20日ほど経って

 また、「SPEC」ファイルにつきまして、SPECファイルは、指定されたシステムや開発 環境に依存する、ソフトウェア開発者が個々に利用するユーティリティであり、GPLで の公開義務の範囲以外にあると認識しております。  そのため、大変申し訳ございませんが、ご要望いただいたSPECファイルをご提供する ことはできない状況でございました。  大変ご面倒をお掛け致しますが、お手元にてコンパイルいただきますようお願い申し 上げます

と返信があって、ホントにゲンナリした。そして、法令や社会規範を遵守することを謳っている企業としてこの回答でほんとうに良いのか確認してみた。 コンプライアンス | IODATA アイ・オー・データ機器

本当に株式会社アイ・オー・データ機器様の回答としてこれでよろしいのでしょうか?

貴社はminidlnaをRPMで配布しています。 specファイルは、RPMつくるためのファイルでrpmbuildに使われるものです。 http://en.wikipedia.org/wiki/RPM_Package_Manager#SPEC_file

GPLv2では著作物のソースコードについては、section3で http://www.opensource.jp/gpl/gpl.ja.html

著作物のソースコードとは、それに対して改変を加える上で好ましいとされる 著作物の形式を意味する。 ある実行形式の著作物にとって完全なソースコードとは、それが含むモジュールすべてのソースコード全部に加え、 関連するインターフェース定義ファイルのすべてとライブラリのコンパイルやインストールを 制御するために使われるスクリプトをも加えたものを意味する。

と定義されています。

RPMで配布されているものに対応する完全なソースコードは、SRPMです。 http://en.wikipedia.org/wiki/RPM_Package_Manager#SRPM specファイルは、当該ソフトウェアについての記述やビルド方法が記述されているものです。 そして、specファイルはSRPMに含まれており、SRPMRPMで配布されているものに対応する完全なソースコードです。

したがって、GPLに基いて対応されるべきと私は考えます。

本当に本回答をもって貴社の回答としてよろしいのでしょうか? お手数おかけいたしますが、いま一度確認頂ますようよろしくお願いします。

他にもカーネル関連がまだ開示されていなかったので、確認してみた

当方としては、他に開示いただけるものは、カーネル関係のソースコードと考えていますが、 貴社で把握しているものについてお知らせいただき、 それらについていつ頃開示されるかについてお知らせいただきたく存じます。

連続の珍回答にノックアウトされた。

そして、翌日に回答があった。

 現在、弊社にてご案内しているRockDiskNextのソースコードにつきましては、GPLに 基づいていると認識しております。

 大変恐れ入りますが、カーネルに関する情報につきまして確認させていただきました ので、ご案内させて頂きます。

Linux kernelはFedra 12を使用しております。

 入手先はhttp://www.kernel.org/となり、バージョンは2.6.31となります。

一体、

Linux kernelはFedra 12を使用しております。

とは何か? カーネル以外にもU-bootとかあるはず。

system2222:maxell ShareMax M-2IHD500PS-JP.BK において、SilverStone SST-DC01Sが類似品とされていて、おそらく同じボードをつかっているのだろう。 また、同様に類似品とされているAKiTiO MyCloud Miniでカーネルが動くというのだから Arch Linux ARM • View topic - AKiTiO MyCloud Mini

おそらく、同じボードを使用しているRockDisk Nextでも Index of /download/DC01_source_code よりダウンロードできるソースの中にあるものは公開できなければおかしいはずである。

ただ、前回のspecファイルについての解釈とこの記述を見て、何を言っても無駄だなと思って、心が折れた。

これを記述して、回答としてしまう技術レベルを疑うし、この程度の技術レベルならGPLについて理解できないのも納得できる。

GPL違反なのかも。

ソースコード全てを弊社から直接提供させて頂くということは難しいのです

IODATAから回答をもらっており、おそらく、IODATAは対応するソースコードを保持していない(minidlnaを除いては)のであろうと推測できる。

頒布されているバイナリがGPLv2のを含み、IODATAもその使用を認めているので、GPLv2で考えていきたい。また、ソースコードはバイナリと一緒に提供されていない。 GPLv2では著作物のソースコードについては、section3で

b) 著作物に、いかなる第三者に対しても、『プログラム』に対応した完全 かつ機械で読み取り可能なソースコードを、頒布に要する物理的コスト を上回らない程度の手数料と引き換えに提供する旨述べた少なくとも3年 間は有効な書面になった申し出を添える。ただし、ソースコードは上記 第1節および2節の条件に従いソフトウェアの交換で習慣的に使われる媒体で頒布しなければならない。

とあるので、まずは製品に書面になった申し出が必要と考えるが、当該製品にはそれがなかった。 付属されていた、はじめにお読みくださいという書面に 「本製品及び本書は株式会社アイ・オー・データ機器の著作物です。~」 とあったほどだ。

GPLに基いていると言いつつ、当方からの物理メディアでの開示してほしいということに答えないということは、矛盾してはいないか? GPLv2のFAQには、

誰かが注文してきたならば、あなたはソースコードを物理的媒体に収めてメールオーダーで提供しなければなりません。メールオーダーに加えて、人々が対応するソースコードFTPで入手できるようにするのは歓迎すべきことですが、ソースへのFTPアクセスだけではGPLの第3節を満足するに十分ではありません。 ユーザがソースを注文したとき、あなたはそのユーザがソースを得られるよう保証しなければなりません。ある特定のユーザが、あなたからanonymous FTPでソースを便利に入手できるなら、FTPは期待された役割を果たしているということで大いに結構です。しかしすべてのユーザがネットワークにつながっているわけではありません。そういったユーザたちもあなたからソースコードを得る権利は他の人同様持っているわけですから、あなたはかれらにソースを郵便経由で送るよう準備しておかなければなりません。

FTPアクセスが十分便利ならば、おそらく誰もメールオーダーでソースを取り寄せようとは思わないでしょうから、ソースを郵便で発送しなければならないということはまずないでしょう。しかしそう決めてかかることはできません。

もちろん、そもそも最初からバイナリといっしょにソースを送ればこういった面倒は起こりません。

GNU GPL v2.0に関してよく聞かれる質問 - GNUプロジェクト - フリーソフトウェアファウンデーション とある。

バイナリに対応するソースコードではない点においても、 GPLv2では著作物のソースコードについては、section3で

著作物のソースコードとは、それに対して改変を加える上で好ましいとされる 著作物の形式を意味する。ある実行形式の著作物にとって完全なソースコード とは、それが含むモジュールすべてのソースコード全部に加え、関連するイン ターフェース定義ファイルのすべてとライブラリのコンパイルやインストール を制御するために使われるスクリプトをも加えたものを意味する

GNU 一般公衆利用許諾契約書 - GNU プロジェクト - フリーソフトウェア財団 (FSF) とある。

当該minidlnaはRPMで配布されており、specファイルはコンパイルやインストールを制御するために使われるファイルであると考えられるので、バイナリに対応するソースに含めるべきではないかと考える。それが開示されないのはおかしくないか?

また、 たとえ、リストのリンク先のコードが対応するソースコードであっても、 3年間は有効である保証について、ダウンロード先が保証するものではなく、バイナリを配布した側が保証するものだから、リンク先とバイナリを配布したものが何らかの約束を結んでいなければ、成り立たず、すべてのリンク先とバイナリを配布した側がそうしていることは考えられないので、満たしていないと考えられる。

GPLv2のFAQには、

GPLでは、あなたはソースコードをバイナリと「同じ場所から」コピーするためのアクセスを提供しなければならないと定めています。すなわち、バイナリのとなりにソースを置くということです。しかし、他のサイトと協定を結んで、必要なソースコードを入手可能にし続けてもらい、バイナリの近傍にソースコードへのリンクやクロスリファレンスを張って置くならば、わたしたちは「同じ場所から」と言ってよいと判断します。 しかし、注意すべきなのは、たまたま今日は適切なソースコードをおいているとあるサイトを見つけて、人々にそっちを見ろと言うだけでは不十分だということです。明日になればそのサイトはソースコードを削除してしまうかもしれませんし、あるいは単に同じプログラムの新しいバージョンで置き換えてしまうかもしれません。そうするとあなたはもはやGPLの要件を満たしているとは言えなくなります。要件を満たすべく十分な努力を払うには、あなたは他のサイトとはっきりした協定を結び、あなたがバイナリを入手可能にしておく期間中はソースがそこで入手可能であるということを保証しなければなりません。

GNU GPL v2.0に関してよく聞かれる質問 - GNUプロジェクト - フリーソフトウェアファウンデーション とある。

まとめ

  • IODATAのサポートの対応の質が極めて低いことがわかった。
  • IODATA著作権およびOSSに対する企業の姿勢も理解できた。(LANDISKでは適切と思われる対応をしているのになぜ。。。)
  • 個人的にGPLv2,v3について勉強になった。

また、VPN構築 - 挑戦者BBS において、私のGPLについての解釈は問題なさそうだということがわかった。 このスレッドでGPL違反だということを確信できたので、数ヶ月様子を見た後、改善していなければ、著作者に連絡するしかないだろう。 もし、私にそれをやるだけの力があればの話ではあるが。

つぶやき