2007-01-01から1年間の記事一覧

PDO_PGSQL でラージオブジェクト

make test で必ず失敗するので PDO_PGSQL におけるラージオブジェクトのサポートは腐っているものとばかり思っていたのですが、実はそうではありませんでした。 なんと、腐っていたのはテストケースの方でした。その発想はなかったわ。 というわけで、ちゃん…

OpenDogs extension 0.2.0 is out!

php_opendogs-0.2.0.tgz 文字列が UTF-8 として妥当なシーケンスか検証する関数 od_unistr_valid() と機能一覧を連想配列で返す関数 od_get_features() を追加したり、別件で作ってた Unicode 正規化機能をマージしたり。 正規化を有効にするには configure …

Yet-Another YAML parser for PHP

php_yaml-0.0.1devel.tgz Yet-Another っていうか LibYAML のラッパに過ぎないわけですが。 しかも emitter は未実装で、parser も基本型のみで、複合キーやユーザ定義タグにも非対応。 さらに対応している libyaml バージョン 0.0.1 と svn ではずいぶん中…

プラチナチケット━━━━(゚∀゚)━━━━!!!!

5/16 の厚生年金会館、いつまでたってもチケット来ない!なんでやねん!と思っていたら... 母が受け取ったの忘れて鞄に入れたままでした orz で、番号と座席表を比べてみたら... なんか最前列のほぼド真ん中なんですけど!(°Д°) 正直足が こんな状態なので微…

OpenDogs extension 0.1.0 is out!

このブログの過去のエントリで書いたネタと非公開だったネタ、いくつかをまとめて一つの拡張モジュールにしてみました。 php_opendogs-0.1.0.tgz Base32、UTF-8 対応の chr() & ord()、整数と平衡三進法の相互変換、dSFMT による疑似乱数を提供します。 イン…

pQRoss - QRコードでピクロス!

QR

大学時代の友人が面白いアイデアを書いていたので速攻(約1時間)でインスパイヤしてみました。 これと全く関係ないですが、ピクロスDSとかでQRコードが答えとなる問題出して、解いてQRスキャンしたらすごいこと起こるって誰かやってませんか?プロモーション…

Avahi 導入記

Bonjour で Mac OS X から FreeBSD のサーバに接続するため、avahi on FreeBSD - 気紛 - きまぐれ - を参考に Avahi を導入してみました。 インストールは portinstall avahi だけで OK. 設定も上記リンク先エントリのとおりで大丈夫・・・と思いきや、なぜ…

pecl_http の隠し機能?

PHP

今回は HttpRequest クラスのドキュメント化されていない (っぽい) 機能を紹介します。 なんと、サブクラスのメソッドとして onfinish が定義されている場合、リクエスト終了時に自動でコールされるのです。 onfinish メソッドは引数としてリクエストが成功…

セッション ID 生成モジュールを更新

痛いバグがあったので、修正版をリリースします。 php_session_hash (Alternative Session ID Generator Extension Module for PHP) php_session_hash-0.0.5.tgz PHP 組み込みの MD5 および SHA1 利用時の致命的なバグを修正

JPEG ロスレス回転モジュールを更新

ストリーム API とリサイズのサポートを追加しました。 php_jpegtransform (JPEG Transformation Extension Module for PHP) php_jpegtransform-0.2.0.tgz テストケースを記述 使用例を追加 (examples ディレクトリ) 入出力にファイル名でなくストリームリソ…

QRコード生成モジュールを更新

拡張子を取得するための関数を追加しました。 php_qr (QR Code Generator Extension Module for PHP) php_qr-0.2.0.tgz 関数 string qr_extension(int $format[, bool $include_dot]) およびメソッド string QRCode::getExtension([bool $include_dot]) を追…

ちょっとびっくりなわけですよ

この十日ばかりですごくアクセス数が増えました。PHPプロ! → 高木先生 → Do You PHP はてな → オレンジニュース → PHPSPOT開発日誌 のコンボは超強力ですね。 特に QRコードでここまで伸びるとは思ってもみなかったわけで。 零細ブロガーとしてはこんな気分…

PHP で JPEG ロスレス回転

ありそうで無かったので作ってみました。 php_jpegtransform-0.0.1.tgzこのモジュールのソースコードには IJG JPEG Library (libjpeg) より以下のファイルを拝借しています。 README (libjpeg のライセンスにより) jinclude.h jpegint.h transupp.c transupp…

QRコード生成モジュールの使い方 for PHP5

ドキュメントを書いているときに QRCode::addData() および QRCode::readData() での第二引数 $mode の取り扱いについて想定外の動作になっていたことに気付いたので、修正版をリリースします。 php_qr-0.1.4.tgz 0.1.4 で致命的なバグを加えてしまっていた…

libqr-0.1.4, php_qr-0.1.3 & pyqr-0.1.1

今回はOO的に書いてみました。finalizeし忘れてハマりました。。。 php_qrがバージョンアップ - Do You PHP はてな サンプルを書いてくださってありがとうございます。やっぱりそこはハマりますよね... ちなみに finalize 前に getSymbol/outputSymbol とか…

pyqr-0.1.0

pyqr-0.1.0.tgz Python モジュール版もできました。 まだ関数 qrcode(data, ...) と 設定用の変数 ECL_{L,M,Q,H}, EM_{AUTO,NUMERIC,ALNUM,8BIT,KANJI}, FMT_{DIGIT,ASCII,JSON,PBM,BMP,SVG,TIFF,GIF,JPEG,PNG,WBMP} が定義されているだけですが。 qrcode() …

php_qr-0.1.2

php_qr-0.1.2.tgz PHP4 でも QRコードをイメージリソースとして取得できるように、関数 []resource qr_image_resource(string $data[, array $options[, array &$colors]])[] を追加しました。 また、qr_image_resource() の第三引数または QRCode::getImage…

php_qr-0.1.1 & libqr-0.1.2

php_qr-0.1.1.tgz libqr-0.1.2.tgz libqr の内容はすべて php_qr に含まれています。 php_qr の変更点 for PHP4/5 出力形式に対応した MIME タイプを返す関数 string qr_mimetype(int $format) を追加。 for PHP5 only 出力形式に対応した MIME タイプを返す…

業務連絡

昨日の診察では周りの組織は安定してきたけど癒合はまだとのことでした。 そっちにいくのは再来週の診察で OK が出てから、というか 5/16 に個人的に外せない用事があるのでその次の日になります。 それまでに足が治ってなかったら泣く。

php_qr-0.1.0

php_qr-0.1.0.tgz PHP4/5 用の QRコード生成拡張モジュールです。 インストール方法 通常の PHP 拡張モジュール同様にインストールできます。 tar xfz php_qr-0.1.0.tgz cd php_qr-0.1.0 phpize ./configure --enable-qr make sudo make install PHP の GD …

訂正です

PHP

この件に関しては僕の認識が誤っていました。MT はゲーム等のクリティカルでない用途に使う乱数としては使い勝手が良いものだけど、セキュリティが求められる分野では有効ではないのですね。 session_hash エクステンションのアドバンテージは MD5 / SHA1 よ…

今日の小ネタ: create_closure()

PHP

http://p0t.jp/mt/archives/2007/04/php_22.html より。 リンク先のコメントで id:bobchin さんが書かれている方法とはまた別のやつを考えてみました。

PHPプロ!で紹介されました

http://www.phppro.jp/news/369 びっくりですよ。(嬉) 最初の説明は我ながら読みにくい文章だったと反省しています。 ちなみに session_hash モジュールは用途が用途だけに phpt スタイルのテストケースも書いていて、make test で確認できます。 (このと…

高木浩光さんのブックマークコメントに対するレスポンス

PHP

参照:http://b.hatena.ne.jp/HiromitsuTakagi/20070426#bookmark-4557199 [セキュリティ][乱数][PHP][使うな危険][bad] 「セッションIDの重複による脆弱性などに気を配る必要方は試してみては」 アルゴリズムを使ってはいけない。 予測困難性が重要であるの…

libqr-0.1.0

QR

libqr-0.1.0.tgz とりあえず MinGW で動作確認できました。ハマったのは標準入出力がデフォルトではテキストモードで、バイナリモードにしてやらないといけなかったこと。 その他、ヘルプを英語で書き直したり、一部のオプション名を変更しています。 コマン…

続々・セッションID生成器を差し替える

PHP

php_session_hash-0.0.3devel.tgz session_hash エクステンションでは最初のバージョンからセッションIDの種として十分なビット長を確保するためにメルセンヌ・ツイスタによる疑似乱数を併用していたのですが、最近 SFMT というものを知ったので、擬似乱数生…

今日の小ネタ: partial()

PHP

PEP 309 のパクリ

続・セッションID生成器を差し替える

PHP

php_session_hash-0.0.2devel.tgz バグ修正と、Mhash 使用時のパフォーマンス向上と、セッションIDが既に使われているかチェックするためのコールバック関数をサポート。 files セッションセーブハンドラの場合はこんな感じで。

セッションID生成器を差し替える

PHP

php_session_hash-0.0.1devel.tgz セッションハンドラのセッションIDを生成する関数を差し替える拡張モジュールを書いてみました。 PHP4 でも PHP5 にある session.hash_function, session.hash_bits_per_character 相当の設定ができるほか、hash (または mh…

SHA-256 その後

PHP

昨日あたりから以前書いたSHA-256 - 讃容日記へのアクセスが増えているので、ちょっとだけフォロー。 あれから1年半で PHP で SHA-256 を使う手段も増えました。代表的な関数を3つ挙げます。 mhash (mhash extension) hash (hash extension) sha256 (suhosin…