はじめに
この記事はamazon dash buttonのハックの続きです
前回の記事ではamazon dash buttonの処理を受け取る部分を紹介しましたが,
今回の記事では実際のサーバで運用する部分を紹介します
サーバの環境はraspberry pi(UNIX系)を前提にしています
前回の記事と同じくgithubのdemonブランチにあげてあります
deamon process
arpを受信する処理をサーバで常に実行するためにdeamon process化します
deamon processというのは, 簡単にいうと制御端末のないプロセス(バックグラウンドで勝手に動くプロセス)です
unix系では, unistd.hにdeamon関数を用意してくれているので簡単に実現できます
daemon
#include <unistd.h>
#include <errno.h>
if(daemon(0, 0) == 0) {
main_loop();
}else{
perror("Make daemon process");
return 1;
}
main_loopの中でarpの受信を行います
前回の記事であったソケット作成とバインドはmain_loopに入る前に実行しておきます
deamon processの確認
psコマンドでオプションaxをつけると, すべてのプロセスの情報を確認できます
% ps -ax
PID TTY STAT TIME COMMAND
-- 略 --
17725 ? Ss 0:00 ./main