読者です 読者をやめる 読者になる 読者になる

情弱ログ

参考にならないので当てにしないでください

ELF入門

C言語が書ける、アセンブラが吐き出すアセンブリコードが分かる、でもHello, worldするバイナリは何が書かれているか分からない…。というか、バイナリの実行って何?っていう疑問を解決したいバイナリ初心者のメモです。 今回はreadelfコマンドは知っていて…

カーネルからリンクダウン時のイベントを飛ばす処理を探す

あるインタフェースのリンク状態を確認するために、netlinkソケットを使ってカーネルからメッセージを受信するサンプルがnetlink(7)に載っています。 struct sockaddr_nl sa; memset(&sa, 0, sizeof(sa)); sa.nl_family = AF_NETLINK; sa.nl_groups = RTMGRP…

1年生に送るデバッガ(gdb)の使い方(中級編)

前回の記事でコアダンプからセグメンテーション違反の原因を探す方法を書きました。 今回はデバッガからプログラムを実行することで、実行中のプログラムを一時停止したり変数に何が入っているかを確認してみましょう。 突然ですが、以下のプログラムには重…

1年生に送るデバッガ(gdb)の使い方(入門編)

長い夏休みが終わって、1年生はプログラミングⅡを履修すると思います。 プログラミングⅡではポインタ、ファイル入出力といった新しい概念を学んでいくことになります。 しかし、これらの発展的な内容は便利であると共にエンバグしやすい部分でもあります。例…

x86_64環境でシステムコールを発行する

「1日待ってください。本物のシステムコールをお見せしますよ。」 と言ってしまったので、C言語からインラインアセンブラを使ってシステムコールを実行することになった時のメモです。「write()やread()は通常の関数ではなくシステムコールである」という説…

Emacsで保存時に句読点を全角コンマと全角ピリオドに置換する設定

様式か、風習か、日本語で論文を書くときは「、」や「。」は「,」と「.」に置き換えなくてはいけない。 句読点の設定はだいたいどのIMEにもあるメジャーな設定なのでそこまで困ることではないが、グローバルに変更されると他の文章も全て全角コンマ・ピリ…

ブート時に途中から画面が真っ暗で表示されなくなる時のtips

ブートローダの選択画面やブートの途中までは画面に映るのに、ある途端から画面が真っ暗になったり、バックグラウンドで処理は行われているのに画面が停止した際の解決法。 nvidiaのプロプライエタリドライバを使用していることが前提。原因はカーネルのオプ…

glibcの野良ビルド方法

ちゃんとINSTALL読もうね案件glibcは思考停止したまま./configure&&makeするとconfigureでコケる。 エラー内容としては configure: error: you must configure in a separate build directoryといった出力がされるはず。これは書いてあるとおり、別個に用意…

セキュキャンに落ちた解答を晒す

んなもん誰が読むんじゃ まずはセキュリティ・キャンプ合格者のみなさんおめでとうございます。僕は残念ながら落ちてしまいましたが、部内に一人合格者がいたので全滅は免れました。KK君おめでとう&頑張れ。 年齢的に最後のチャンスだったので、落ちた時は…

Gnome3のアプリケーション一覧を汚染された

winetricksでゴニョゴニョといくつかパッケージを入れていたら、Gnomeのアプリケーション一覧(Activities→Show Applications)がバッテン印のアプリケーションに汚染された。 アプリケーション一覧からアプリを起動することはあまりないが、見た目がよろしく…

yosemite上のGentoo/Prefixでmedia-libs/libcanberraのemergeがコケる

誰かバグレポート書いて案件その3。 とりあえず % emerge libcanberraすると canberra-gtk-module.c:28:22: error: gdk/gdkx.h: No such file or directory canberra-gtk-module.c: In function 'window_get_desktop': canberra-gtk-module.c:303: error: 'A…

yosemite上のGentoo/Prefixでx11-libs/gtk+のemergeがコケる

さっきの記事と似たような内容 とりあえずそのままemergeするとこんな感じのエラーが大量に出てコケる。 In file included from /System/Library/Frameworks/AppKit.framework/Headers/AppKit.h:207, from /Users/vicco/Gentoo/var/tmp/portage/x11-libs/gtk…

yosemite上のGentoo/Prefixでsys-apps/dbusのemergeがコケる

OSX 10.10.2な環境でsys-apps/dbusをemergeするとconfigure phaseでコケる。 configure: error: launchd support explicitly enabled but not available こんな感じのエラーログが出る。原因はlaunch.h内でインクルードしているxpc/base.hでclangでしか使え…

emerge時のdependency conflict例①

# emerge -pvuDN @world とかしたらこんな感じのconflictが起きた。 x11-base/xorg-server:0 (x11-base/xorg-server-1.15.99.902-r2:0/1.15.99.902::gentoo, ebuild scheduled for merge) conflicts with x11-base/xorg-server:0/1.15.1= required by (x11-d…