Ticket #1839 (closed バグ指摘: 保留)

Opened 8 years ago

Last modified 8 years ago

phpの文法に乗っ取ってない表記で書かれたソースでもプラグインとして読み込める

Reported by: tokuhiro Owned by: tokuhiro
Priority: Milestone: EC-CUBE2.12.0
Component: 管理画面 Version: 2.12.0
Keywords: Cc:
修正済み: no

Description

管理画面のプラグイン管理にて

文法エラーがおこっているプラグインでも読み込む事ができ、なおかつ、そのプラグインは削除できなくなってしまう。

具体例として括弧の数が合わないプラグインメインクラスをtar.gz化し、eccube上で読み込むと読み込む事ができてしまう。 そのせいで、uninstallメソッドが呼び出せず、プラグインの削除ができなくなる。

対処法として、環境に依存する可能性はありますが、 requirePluginFileにてexecを実行し、一度ソースの確認をしています。

なお、アンインストールの処理時にも、エラーが起こるプラグインを削除できるように修正

Change History

comment:1 Changed 8 years ago by tokuhiro

  • Status changed from new to assigned

comment:2 Changed 8 years ago by shutta

r21877 により、プラグイン無効時に

Fatal error(E_COMPILE_ERROR): Cannot redeclare class プラグインクラス名

のようにシステムエラーになっていた。
r21878 にて修正。

comment:3 Changed 8 years ago by shutta

r21879 にて、コメント中のら抜き言葉を修正。(r21877 にて混入)
誤: 見れる
正: 見られる

comment:4 Changed 8 years ago by h_yoshimoto

環境によって動作しないケースが報告されているので一旦戻します。
 http://heteml.jp/info/detail/id/38

r21974

comment:5 follow-up: ↓ 6 Changed 8 years ago by shutta

修正するとすれば、どのようにするのが良いでしょうか?

phpコマンドへのパスをmtb_constants等にパラメーターとして持たせて、環境に応じて変更可能にする形で問題無いでしょうか?

また、その場合のデフォルト設定は、 /usr/bin/env php 等で良いでしょうか?

comment:6 in reply to: ↑ 5 Changed 8 years ago by h_yoshimoto

shutta さんへの返信

お世話になっております。株式会社ロックオン吉本です。

弊社で検討させて頂きました。
ストアに掲載されているプラグインに関しては、インストールのチェックを行った上で配布しているので、現時点ではここまでのバリデーションは不要かと思われます。

ですので一旦対応を入れないとさせて頂きたいのですが
shuttaさんの方で、本チケットに関して何か懸念点など、お考えがありましたらお教え頂ければと思います。

comment:7 Changed 8 years ago by adachi

  • Milestone changed from EC-CUBE2.12.2 to EC-CUBE 2.12.3

comment:8 Changed 8 years ago by kim

  • Status changed from assigned to closed
  • Resolution set to 保留
  • Milestone changed from EC-CUBE2.12.3 to EC-CUBE2.12.0

現時点では仕様として保留クローズさせていただきます。

Note: See TracTickets for help on using tickets.