Koji Arai
jca02****@gmail*****
2007年 4月 26日 (木) 13:19:44 JST
新井です。 07/04/25 に Koji Arai<jca02****@gmail*****> さんは書きました: > 新井です。 > > 07/04/23 に Koji Arai<jca02****@gmail*****> さんは書きました: > > > |@@ -1066,6 +1079,12 @@ open_old_archive() > > | if (open_old_archive_1(archive_name, &fp)) > > | return fp; > > | snprintf(expanded_archive_name, sizeof(expanded_archive_name), > > |+ "%s." ARCHIVEEXT_OLD, archive_name); > > |+ if (open_old_archive_1(expanded_archive_name, &fp)) { > > |+ archive_name = expanded_archive_name; > > |+ return fp; > > |+ } > > |+ snprintf(expanded_archive_name, sizeof(expanded_archive_name), > > | "%s.lzh", archive_name); > > | if (open_old_archive_1(expanded_archive_name, &fp)) { > > | archive_name = expanded_archive_name; > > > > ★よくわかりません。 > > ARCHIVEEXT_OLD というマクロがlha-1.14iオリジナルにも、autoconf版にも > 存在しないので、どのような拡張子かまだはっきりとしないのですが、 > 拡張子の指定を省略可能にするためのパッチのように思えます。 > > このパッチはセキュリティに関連するのでしょうか? > もうちょっと調べますが、このパッチは必要ないと思います。 結局、FC5とSuSEの差が出ているだけのようです。 SuSE版 lha では、拡張子 ".lha" (ARCHIVEEXT_OLD) も lha アーカイブとみなすようにしているようですね。 このパッチは必要なしという結論です。 > > |diff -burp FC-5/lha-114i/src/lhext.c /home/lkundrak/lha-114i-SUSE/src/lhext.c > > |--- FC-5/lha-114i/src/lhext.c 2007-04-16 15:20:23.000000000 +0200 > > |+++ /home/lkundrak/lha-114i-SUSE/src/lhext.c 2007-04-16 > > 15:57:10.000000000 +0200 > > |@@ -360,7 +361,6 @@ extract_one(afp, hdr) > > | } > > | > > | unlink(bb1); > > |- make_parent_path(bb1); > > | l_code = symlink(bb2, bb1); > > | if (l_code < 0) { > > | if (quiet != TRUE) > > > > ★よくわかりません。 > > このパッチを適用するとmake testが1件通らなくなることを確認しました。 > 具体的には、以下のようにシンボリックリンクを含むアーカイブに対して、 > > % touch test > % ln -s test test-link > % src/lha c test.lzh test-link > test-link -> test - Symbolic Link > test-link - Frozen(0%) > > 以下の通り展開先ディレクトリ(-w)を指定しての展開ができなくなります。 > > % src/lha xw=test-dir test.lzh > LHa: Warning: Can't make Symbolic Link "test-dir/test-link" -> "test" > LHa: Symbolic Link test-dir/test-link -> test > > このパッチはセキュリティに関連するのでしょうか? > とりあえず、これ以上の情報がない場合は、必要なしと判断します。 これは逆に、FC5の以下のパッチ lha-114i-symlink.patch で、上記不具合を解消しているものが、SuSEとの差分で リバースパッチとして作成されてしまっているだけのようです。 # つまり、FC5とSuSEの差が出ているだけ このパッチは必要なしという結論です。 -- Koji Arai