BadUSB

なんか流れてきたので。 USBに設計上の致命的な脆弱性が発見され、そのコードが公開される - GIGAZINE 3行で あるデバイスのファームウェア実装が流出して仕込まれている自己書き換えのバックドアが解析された USBプロトコル上の問題ではない デバイスを一度…

NetworkManager も netctl も入れてないけど VMware Player で suspend させたい

https://gist.github.com/kikairoya/2db51f850ede358f44a9 これを /usr/local/bin/netctl として保存。

プログラマを辞めてから一年が経ちました。

エンジニアであることはやめていません。

open-vm-tools を linux-3.10 guest で動かせるようにした

A patch for workaround of open-vm-tools(2013.04.16) for Linux 3.10 kernel. Linux 3.10 renames create_proc_entry, struct super_block::s_frozen and changes type of callback struct dentry_operations::d_revalidate, struct inode_operations::loo…

MinGW 向けにコンパイルしたプログラムで Ctrl-C が効かなくて泣いている人のために

Cygwin(というかmintty)から Windows Native なコンソールアプリケーションを動かすと Ctrl-C が無視されて SIGINT を飛ばせなくなる現象への対処法。プログラム中のどこかで SetConsoleCtrlHandler(NULL, FALSE) を呼ぶだけ。To enable Ctrl-C on Windows N…

AStyleをハックした

C++

AStyle(Artistic Style - Index)でC++のラムダ式をまともに扱えるようにパッチ書いた。パッチはこの辺。SVN Headにapplyしてください。

Boost.勉強会 #8 大阪 で喋ってきました +新見観光のおまけつき

移動記録 2/10 住居探しのために前日入り。 607- 都城→鹿児島中央 758- 鹿児島中央→新大阪 1330- 不動産屋で空家探し 1900- 大阪の触手他7名で前夜祭 2/12 徒歩移動のみ。 1100- 本編 1800- 懇親会 2/12 新見市の縄文土器展のついでに鍾乳洞めぐり。 745- 大…

std::threadをMinGWで使えるようにした

implement condition-variable to gthr-win32 needed for std::thread family. modify from gcc-4.7.0. · GitHub libgcc の GThreads wrapper が pthreads 以外の環境では Condition-Variable に対応していないため std::thread が使えなかったが、必要にな…

Lazy Function/Qi Placeholder に頼らない Semantic Action の作り方

解説とか面倒なのでコード片だけ http://ideone.com/0nuSEfusion::vector が qi::_1, qi:_2, ... に、fusion::at_c(ctx.attributes) が qi::_val に、pass が qi::_pass に対応してます。 結論 Lazy Function使いましょう。

'11年代のMPL

この記事はC++11 Advent Calendar 2011の参加記事です。※注: やたらと長いコードが貼ってありますが、実装についての解説は無いので読み飛ばしてください。 Boost.MPL Boost.MPLはBoostを使っている人なら(魔クロ界の住人を除く)ほぼ全員が間接的にお世話に…

boost::lexical_castの涙ぐましい最適化

この記事はBoost Advent Calendar 2011の参加記事です。本稿では、Boostのコンポーネントの一つ、lexical_castの涙ぐましい最適化について解説します。 lexical_castとは この辺見てください。 安直な実装 まずは一番簡単な実装から見ていきましょう。 templ…

出張

1週間ほど深圳に行ってきます。

Boost.勉強会 #6 札幌 で喋ってきました

移動記録 11/4 700? - 833 新八代行新幹線リレーバス 849 - 940 さくら404 新八代-博多 947 - 952 福岡市営地下鉄空港線 博多-福岡空港 1110 - 1320 ANA289 FUK-CTS 1319 - 1355 快速エアポート133(7分遅れ) 新千歳空港-札幌 11/6 1155 - 1231 快速エアポー…

GCCのバグを直した

GCCで8bit長・16bit長のビットフィールドが正しく扱われない(STRICT_ALGINMENTな環境でもアライン無視する、volatile付けると領域破壊を起こす)問題を修正した。 BTSには投げたけれど、多分無視されるのでここにパッチを置いておく(gcc-4_6-branch/trunkにて…

高専ロボコン関東甲信越地区大会と九州沖縄地区大会を見てきた

今年の関東は山梨県開催だったので堂々と関東「甲」信越大会*1を名乗れますね!!!…というのは置いておいて。非常に腹立たしいというか悲しいというか、そんな気持ちになったのでちょっとぶちまける。 歩行出来ない もう2足歩行連続4年目ですよ。なんで歩けな…

プログラミングの魔導書 真・最遅レビュー

らんはくん(id:ranha)が最遅レビューを名乗っているので対抗して真・最遅レビューでも書こうかと思います。出版の概要・購入方法についてはこの記事を読んでいる人なら当然予約済みであるはずなので省略して、個人的にオススメの記事を紹介します。 風とF#と…

プログラミングの魔導書 〜Programmers' Grimoire〜 Vol.2 に寄稿しました

株式会社ロングゲート 買いましょう。

Qt @福岡 第4回勉強会 で喋ってきました

T/O …と言いたいところだけど、いろいろ補足。 各コンテナのパフォーマンス差について 発表中に出したベンチ結果は1千万要素のint(つまり40MB)とかそういうレベルで、ようやく1sec以下の差になろうかという程度です。その程度の差よりは「楽に安全に使う」ほ…

VMware ToolsをLinux 3.0ゲストで使う

[open-vm-tools というので動きました。

手段に縛りをかけるのは筋が悪い

制御に縛りをかけたロボコンイベント: kirikuzudo blog since 2010 競技に於いて達成したいことはあくまでゴール・得点であって、手段の制限はゲームの適切な運用のためでしかない。 コントローラに何を使うとか、構造体の材質に何を使うとかはどうでもいい…

Linux2.6.39ゲスト上のVMWare-Tools用パッチ Patch for VMWare-Tools on Linux-2.6.39 Guest

https://sites.google.com/site/kikairoya/file-cabinet/vmtool_linux2_6_39.patch?attredirects=0&d=1コンパイル通るようにしただけ。詳しい人いたらレビュー求む。 I don't know inside Linux, request for comment.使い方: /tmp/vmware-tools-distrib/lib…

コンテナの要素をセパレータで連結して表示したい

にあるアルゴリズムが便利すぎます…3 Jun, 00:05 update/ ファンクタの引数がintになってたのを修正、ostream_iteratorのcharTをostreamのcharTに合わせて指定するようにした (thanks for id:SubaruG) #include <iterator> #include <numeric> #include <iosfwd> template <typename charT, typename Traits, typename Sep, typename Iter> inline std::</typename></iosfwd></numeric></iterator>…

NiosII EDSをUAC環境下で使う

AlteraのソフトコアNiosIIの開発にはEclipseベースのNiosIIが必要ですが、10.1の時点ではUAC環境に対応していません(11.0は未確認)。しかし、Visual StudioのExpress版があれば、UAC環境下でも動作させることができます。 マニフェストの用意 まず、以下の内…

Boost.勉強会 in 南九州

partake.inとりあえず参加人数の調査です。

std::arrayの要素数を自動推論する

だいぶ前に作ったやつ。どこに置いたか探し回ってしまったので備忘録用に。 https://gist.github.com/657582 forkを辿っていくとid:SubaruG先生を巻き込んで進化の様子がわかります。std::arrayを使うと、各種メンバ関数の追加だけでなく、ポインタへの暗黙…

Boost.勉強会とかいうので喋ってきました

Boost.勉強会 #4 - 加速するデートタイム図書館 -にスピーカとして参加してきました。移動記録 6:00頃 出発、宮崎空港へ 7:35-9:20頃 宮崎-羽田 10:15頃 会場着 18:00頃 懇親会開始 21:00頃 二次会(徹カラ)開始 5:30頃 二次会を抜けて羽田へ 7:30-9:10頃 羽…

クラステンプレートをメタ関数で特殊化したい

C++

Fusion! Boost.Geometry - Togetter ここら辺から派生した話。 素直にenable_ifを使えばできます。ただし複数の特殊化にマッチした場合はambiguousでコンパイルエラー #include <iostream> #include <string> #include <typeinfo> #include <cxxabi.h> #include <stdlib.h> #include <boost/type_traits.hpp> #include <boost/utility/enable_if.hpp> #ifdef __GNUC</boost/utility/enable_if.hpp></boost/type_traits.hpp></stdlib.h></cxxabi.h></typeinfo></string></iostream>…

BOOST_FUSION_ADAPT_STRUCTをちょっと便利に

Boost.FusionのBOOST_FUSION_ADAPT_STRUCTマクロを使うとはユーザ定義型をFusionのシーケンスとして扱えるようにできます(参考:ユーザー定義のクラスをFusionのコンテナ(タプル)として使用する - Faith and Brave - C++で遊ぼう)が、メンバの型をいちいち書…

ポインタは用法用量を守って正しくお使いください

この記事は C++ Advent Calendar jp 2010 の参加記事です。 C++にはポインタ(参照のセマンティクスを持つデータ)がたくさんありますが、悲しいかな生ポインタ(raw pointer/Cのポインタ)が簡単(見た目的な意味で)過ぎて、ほかの便利で安全で高速なポインタは…

ドリームにちりんが消滅するようです。

鉄路オワタ \(^o^)/