Koji Arai
jca02****@gmail*****
2007年 4月 25日 (水) 14:13:35 JST
新井です。 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版にも 存在しないので、どのような拡張子かまだはっきりとしないのですが、 拡張子の指定を省略可能にするためのパッチのように思えます。 このパッチはセキュリティに関連するのでしょうか? もうちょっと調べますが、このパッチは必要ないと思います。 > |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 このパッチはセキュリティに関連するのでしょうか? とりあえず、これ以上の情報がない場合は、必要なしと判断します。 -- Koji Arai