ソフトウェア名称とトレードマークは Lacewing(クサカゲロウ)、サーバとクライアントで構成される。略称は LW。公式ホームページは http://lacewing-project.org/
James McLaughlin によって作成されたクロスプラットフォームかつオープンソースな軽量のサーバ&クライアントシステム。
2012 年にプロジェクトとして立ち上げられ、2013 年に行われた最後の更新以降はプロジェクトの更新を停止しています。作者はすでに開発の継続及びサポートはできないことを明言。
ソースコードは BSD ライセンスで公開されていて、改変を含めた一切の権利的制限も無く自由に利用できます。
リリースバージョンは 0.5.4. が最終です。
GitHub:Cross-platform network I/O library for C/C++ 公式ドキュメント:liblacewing API documentation
対応プラットフォーム
- Windows
- Unix系(Linux, FreeBSD, OS X を含む)
- Android
Lacewing は OpenSSL ライブラリに依存している。OpenSSL はセキュリティ上の脆弱性が近年多く見つかっており、一般的な最新動向だと OpenSSL からフォークした、よりセキュアな実装が開発され採用されてきている。
ソースコードを GitHub から確認できるが、Windows 用のサーバのソースを見る限りでも間違いなくユニコードに対応していない。LB が Clickteam のフォーラムで過去に言及しているが、文字化けは発生するが受取り側で文字列を適切に再度変換するロジックを組み込めばおそらく文字化けを回避できる。その辺りのロジックは以前 prester が別ユーザのデータベース文字化けをエクステを作って修正したことがあるので、文字化けした文字列の再変換は実際に可能だった。ただしマルチプラットフォーム対応のことを考えると、パッチ的エクステで解決するよりも、ソースコードをユニコードに対応させることを優先すべきだとは思う。