パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

auのW42CAとW42Hが%nと%Sの文字列で強制再起動」記事へのコメント

  • こういうのかな。
    int xxx_func(...){
       char *str;
     
       str = (char *)malloc(sizeof(char) * x);
     
       (strに文字が入る処理)
     
       printf(str);
     
       return ret;
    }
    まあ、ここまで来ていれば次のようにするだけでOKなんですが...
      printf("%s",str);
    どっかしらに入りそうではありますねぇ

    # printf Injectionとでも言うのだろうか
    --
    M-FalconSky (暑いか寒い)
    • by Anonymous Coward on 2006年08月04日 21時25分 (#991225)
      snprintf()とかじゃないの?

      ケータイ開発はしたことがないけど、標準出力がディスプレイに行くように設計しないとじゃない?

      # snprintf()は第2引数で揉めたことのあるAC
      ## Windowsのは_snprintf()だ!
      親コメント
      • by Anonymous Coward on 2006年08月05日 0時37分 (#991299)
        さすがに画面描画文字列を生のchar*で扱うことは無いと思ってBREWの文字列を少しググってみた。

        http://plusd.itmedia.co.jp/mobile/0311/14/n_bapp.html [itmedia.co.jp]
        をみると画面描画文字列はラップされているが、
        デバッグ用関数がprintfっぽい。
        ということでログ出力用のprintfの不具合くさいかな。

        もしデバッグ用ログでリセットなら最悪ですな。まさにミイラ取りがミイラ。
        親コメント
        • 普通に考えたら SPRINTF のほうでしょ。
          デバッグ用にビルドしないと DBGPRINTF は空文字に置き換えられるんだし。
          どこかで 素の sprintf につながってたとか。最近の組込みは標準ライブラリの大半が使えること多いですからね。少なくとも BREW のアプリなら普通は ADS だから使ますね。
      • 単にprintf(系の)関数、と言う意味でprintf、と表現しているだけで…

        # 空気読もうよ

目玉の数さえ十分あれば、どんなバグも深刻ではない -- Eric Raymond

処理中...