ます’s Blog - どうでもいい記事100選

どうでもいい記事100選

internal

「?:」演算子(続きの続きの続きの続き)

少し時間が空いてしまいましたが、まだまだモチベーションは下がっていないようで一安心です。先日の続きです。 今回は(前回に宣言した)変数の変更(改竄)あたりをやってみたいと思います。 どの関数を対象にしようか迷いましたが、適当にround関数をター…

「?:」演算子(続きの続きの続き)

段々とPHPの話題ではなく、gdbの話題になってきていますが。。。気にしないという事で。(w どこまで「続き」が伸びるか気になるところではありますが、先日の続きです。iakioさんから「s(step)」と「n(next)」の違いについて補足をいただきました(後…

「?:」演算子(続きの続き)

昨日の件ですが。 はてなブックマークでshimookaさんからは(嬉しい)励ましの言葉を頂いたり、heavenshellさんからは有益なURLを教えてもらったおかげなのかは分かりませんが、自分の中で「gdbの使い方を(より)理解してみよう!」というモチベーションが…

「?:」演算子(続き)

先日の件ですが。 最後はprintfを盛大に仕込むという荒業で乗り切ったものの、今後も同じ作業を行い続けるのは効率が悪すぎるので、gdbを使って効率よく作業できないか。。。と探っていたところ、できるようです。しかも簡単に。_| ̄|○ とりあえず、前準備…

「?:」演算子

shimookaさんのトコで「?:」演算子が意外と使えないという事が判明したので、ちょっとガッカリな気分です。 問題は二つあって、 error_reportingがユルい設定の時にしか使う機会が無さそう true or false判定が微妙すぎる 特に後者については、この演算子に…

4.4.8と4.4.9RC1との差分

昨日の件ですが。 「security fixes」が気になったので、4.4.8と4.4.9RC1との差分を取ってみました。 % cd /usr/local/src % gzip -dc ./php-4.4.8.tar.gz | tar xf - % gzip -dc ./php-4.4.9RC1.tar.gz | tar xf - % diff -urN ./php-4.4.8 ./php-4.4.9RC1 …

replace problem in mb_ereg(i)_replace

今まで放置していたのですが、ふと思い出したので。 mb_ereg(i)_replace関数で微妙な挙動に遭遇したのですが(皆さん)どうやって回避しているのだろうか。。。教えて欲しいっす!(>_ % cd /usr/local/src % gzip -dc ./php-4.4.8.tar.gz | gtar xf - % cd .…

Refine fix for multibyte char hanling inside command names and args

この変更はマルチバイト圏のユーザーには厳しい予感がする(1・2・3)。 変更部分がphp_escape_shell_cmd関数内部とphp_escape_shell_arg関数内部なので、主にescapeshellcmd関数とescapeshellarg関数が影響を受けます。 どういう結果になるのか(一応)…

PHP: syntax error, unexpected TC_CONSTANT in /path/to/php.ini on line ****

昨日の大掛かりな変更を調べてみようと思って5.2.5と5.3-devをビルドしてみたら、認識が間違っていた事に気がつきました。。。これは恥ずかしい。_| ̄|○ それはさておき、5.3-devではphp.iniファイルのパース処理が厳密になるのかも。。。という事に気がつ…

file upload problem in mbstring(enable encoding_translation)

ちょっとした事でハマって色々と調べていたら、mbstringの微妙な挙動に出くわした。これは既知の問題なのだろうか。 草陰に隠れているヘビをつついてたら大蛇が出てきた。。。みたいな。忙しい時に限って悪条件が重なる。_| ̄|○ まず、自分がハマった件につ…

%{mod_php_memory_usage}n(補足)

先日の件ですが。 この時は少し熱くなりすぎていたようで、途中経過を全く書いていませんでした。これじゃ、何がなんだか。。。という感じですね。反省。 今更蒸し返すような話でもありませんが、一応履歴を晒しておきます(自分が忘れそうなダケだからメモ…

xdebug_get_code_coverage(その後)

先日の件ですが。 私は今、猛烈に憤慨している。。。抑えきれない程の怒りと憤りが体中を駆け巡っているぜ。。。! % less -N /path/to/crash.php 1

-DBIG_SECURITY_HOLE

この件ですが。 そんなクレイジーなオプションあったんですね。。。root権限で動かそうと考えた事が無かったので全然知らねー。(w ちょっとだけ中身を覗いてみます。 % grep -rn BIG_SECURITY_HOLE /usr/local/src/apache_1.3.39 /usr/local/src/apache_1.…

params

shimookaさんのトコで紹介があったので、少し試してみようかと思ったのですが。。。 % cd /usr/local/src % gzip -dc ./php-4.4.7.tar.gz | gtar xf - % cd ./php-4.4.7/ext % gzip -dc ../../params-1.0.tgz | gtar xf - % mv ./params-1.0 ./params % cd .…

mcryptで不正な長さのIVや鍵を渡した場合について(続き)

昨日の件ですが。ちょっとだけ深追い。しつこい。 shimookaさんが仰っている通り「イケてない実装」というのも確かにあるのですが、こうなっているからには理由があるハズ(理由も無しに実装するハズが無い)。。。と勝手に思い、背景を探るべく修正履歴を探…

mcryptで不正な長さのIVや鍵を渡した場合について

yandodさんのトコから。 理由については既にshimookaさんが調べているようなので、別の観点から。 「-3」が返却される条件を見てみます(libmcrypt本体を確認)。 % grep -rn mcrypt_generic_init /usr/local/src/libmcrypt-2.5.8 /usr/local/src/libmcrypt-2…

use命令?

昨日の件でパッチを眺めていたところ奇妙な定義を(たまたま)発見。 ソースを確認してみる。 % less -N php4-STABLE-200707050230/Zend/zend_language_scanner.l 〜 省略 〜 954 <ST_IN_SCRIPTING>"include" { 955 return T_INCLUDE; 956 } 957 958 <ST_IN_SCRIPTING>"include_once" { 959 ret</st_in_scripting></st_in_scripting>…

postmaster.pid

最近、開発環境がすっ飛ぶ事が多くて困ってます。 復旧(OSを起動)させる度にpidファイルを消すのがうっとうしい。。。基本、ソースからインストール派。 最初は我慢していたのですが(段々と頻度が多くなってきたので)そろそろ本格的に対応を行おうかと。…

無理して出力しようとするのは良くないと思うアレコレ

以前、「未定義の定数の扱い」というエントリで気に入らない挙動を何とかしたのですが、その続き。 どういった挙動が気に入らないかは、最初の実行結果を確認して頂くという事で。 まずは、玉(アーカイブ)を展開してディレクトリを移動。その後、バイナリ…

define定義を無効にする(おまけ)

先日の件ですが。 define定義を無効にする方法を作成した事で定数の登録(INSERT)や削除(DELETE)ができるようになりました。 ここまでくると欲しくなるのは、やはり更新(UPDATE)。。。って、ここまで来ると定数の意味が薄れてくる気もしますが。 頭の良…

define定義を無効にする

C言語には「undef」という命令があって「define」した内容を無効にする事ができます。 PHPにも同じ名前で「define」が存在しますが「undef」に相当する命令が見当たりませんでした。 知っている方は是非とも教えて頂きたいと思います。これからやろうとして…

Fixed possible memory corruption inside mb_strcut().

だそうで(1・2・3)。何気なくCVSを見ていたら気がつきました。 PHP_4_4とPHP_5_1のBranchには適用されているので、次のリリースでは修正済み。 % ./php-4.4.2RC1 -v PHP 4.4.2RC1 (cli) (built: Dec 16 2005 15:31:24) (DEBUG) Copyright (c) 1997-2004…