トップ «前の日記(2008-07-07) 最新 次の日記(2008-07-09)» 編集

Orz日記 by Akio Morita

ToDo:

  • 15 SAD Fit[]回りの障害事例の解析
  • 10 smart pointer版PEGクラスの再実装(Left Recursionまわり)
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|06|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|07|08|09|10|11|12|
2013|01|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|06|07|08|10|12|
2016|01|02|03|05|06|08|10|11|
2017|01|02|03|04|05|06|07|09|10|11|12|
2018|01|02|03|04|06|07|08|09|10|11|12|
2019|01|03|04|05|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|

2008-07-07 [長年日記]

_ [tDiary]またコメントスパムに突破された

フィルターを突破されたので設定を修正&ログを記録してみる

投稿してるのはおそらく BOTなのですが...頑張りますねぇ Orz

_ [SAD]Cygwin対応 in amorita branch

SA_ONSTACK/SA_NOCLDWAIT機能フラグは、 SigAction関数がユーザーに提供しているだけなので、 Revision 2209にてSA_ONSTACK/SA_NOCLDWAITマクロが 未定義の場合は、当該フラグのサポートしないようにした。

具体的には、sigaction(2)に渡す環境依存フラグを組み立てるコードで 関連する部分を ifdefで無効化しています。

他のSA_*マクロが無い場合の同様の処置が可能なはずだが、 SA_SIGINFO/SA_RESTART/SA_RESETHANDに関しては SAD側の SIGFPEハンドラ等の実装に使ってるので必須です。

他の部分に関しては、昨日の日記にも書いたけど Cygwin側の POSIX機能の実装が不足しているのが原因なんで Cygwin環境側で 対処すべき問題だと思う。

ucontext_t型

sigaction(2)で、SA_SIGINFOを使えるようなので、 POSIX SA_SIGINFOなハンドラのプロトタイプ void handler(int, siginfo_t *info, ucontext_t *uap) が使えるはずなので、環境依存なucontext_t型の定義を 行うヘッダーファイルが存在するべきなのだが... Orz

また、Cygwinに getcontext(3)が存在しないとの情報も有るので、 User Thread Context自体がサポートされていないと思われる。

POSIX SA_SIGINFOなハンドラは、第3引数経由で割り込み時の User Thread Contextを受け取ることになっているので、 sigaction(2)SA_SIGINFOなハンドラを受け入れる以上 getcontext(3)ucontext.hが未実装なのは SUSv2的に NG。

SUSv2的には、前出のSA_ONSTACK/SA_NOCLDWAIT機能フラグが 存在しないのも NGなのだが...

getaddrinfo/getnameinfo/freeaddrinfo(IPv6 API/RFC3493)

Cygwinの IPv6 APIの実装が不足している。

外部プロジェクトで、実装を 進めている人々がいるので、その成果物をインストールするか、 自前で RFC3493を実装すべし

Tcl/Tkパッチファイル名

仮想マシン上で、母艦のファイルシステムを使う場合は CIFS等の ネットワークマウントに於ける名前空間変換の問題がある。

Cygwinで NTFSをローカルマウントした際に":"キャラクタと パス名に使用できないのは、Cygwinの実装上の制限と思われる。


カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記