危険なキャストをおこなってバグを誘発した例をみつけたのでご紹介します。
不具合の経緯としては
- あるグローバル変数をconst修飾子をつけて定義した。
- ところがこのグローバル変数のポインタを別のポインタ変数に代入するときに危険なキャスト(const外し)をおこなった。
- 代入先のポインタを操作してconst修飾子をつけた(read-onlyの)変数の書き換えを行った。
危険なキャストをおこなってバグを誘発した例をみつけたのでご紹介します。
不具合の経緯としては
|
1 |
$ php -S localhost:8080 |
|
1 |
$ php -S 0.0.0.0:8080 |
homebrewを長い期間使い続けると古いformulaが溜まり続ける。cleanupコマンドを実行することでストレージ領域を解放することができる。
log10() を呼び出すプログラムをコンパイルすると以下のようなエラーが発生する。
|
1 2 3 4 5 |
$ gcc main.c /tmp/ccuhFgLT.o: In function `main': main.c:(.text+0x4d): undefined reference to `log10' main.c:(.text+0x75): undefined reference to `log10' collect2: error: ld returned 1 exit status |
|
1 |
$ sudo mount -t iso9660 /dev/sr0 /mnt |
MACアドレスの前半24ビットのこと
ベンダー(≒メーカー企業)がIEEEに申請することでベンダー固有のOUIを取得することができる。OUIを取得した(割り振られた)ベンダーはベンダーの責任でMACアドレスの後半24ビットを重複なくネットワーク機器に割り振る。
Amazon Linuxのsshログインにおいて以下のエラーが表示される。
|
1 |
-bash: 警告: setlocale: LC_CTYPE: ロケールを変更できません (UTF-8): そのようなファイルやディレクトリはありません |
/etc/sysconfig/i18nにLC_CTYPEを追加する
/etc/sysconfig/i18nの例|
1 2 |
LANG=ja_JP.UTF-8 LC_CTYPE=ja_JP.UTF-8 |
| model version | astah version | astah release |
|---|---|---|
| 37 | 7.2.0 | 2017/09/27 |
| 38 | 8.0.0 | 2018/09/26 |
