IDE 0019以降向けにDNSライブラリを移植

http://gkaindl.com/software/arduino-ethernet で配布されているArduino用のEthernetDNSライブラリですが、IDE 0019以降ではコンパイルが通らず動作しません。これはEthernetライブラリがUDPをサポートするなど変更が加わった影響のようです。対応中だからそれまでIDE 0018を使ってくれとのことですが、何よりArduino Unoが使えないので困る。


拙作のTwitterライブラリでもEthernetDNSを使っていたため、IDE 0019では動作しなくなっています。


とりあえず本家が対応してくれるまでのつなぎとして、EthernetDNSライブラリを0019以降向けに移植しました。使い方などは全く同じです。なお、DNSの送受信中に消費するスタック(RAM)がオリジナルより200byteほど増えてしまっていますので注意して下さい*1


ダウンロードは以下から。

*1:0019に付属のUdpライブラリがパケットの部分送受信に対応しておらず、一括で全パケットを構築してから送信/一括受信してから解析しているためです。