Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ icmp(4P) — NEWS-os 4.1C

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

send(2)

recv(2)

intro(4N)

inet(4F)

ip(4P)

ICMP(4P)  —  NEWS-OS Programmer’s Manual

名称

icmp − インターネットコントロールメッセージプロトコル

形式

#include <sys/socket.h>
#include <netinet/in.h>

s = socket(AF_INET, SOCK_RAW, proto);

解説

ICMP は、エラーとコントロールのメッセージプロトコルで、 IP とインターネットプロトコルファミリーで使用されます。 これは、ネットワークの監視や診断のために “raw socket” を通して アクセスされます。 ICMP ソケットを作るためのソケットコールのパラメータ proto は、 getprotobyname(3N) から得られます。 ICMP ソケットは接続がなく、通常、 sendto コールと recvfrom コールが使用されます。 しかし、 connect(2) コールを用いてパケットの相手先アドレスを固定することもできます。この場合は、 read(2)、 recv(2)、 write(2)、 send(2) のシステムコールを使用することができます。

発信パケットは、自動的に相手先アドレスを基にした IP ヘッダが付けられます。 受信パケットは、IP ヘッダとオプションが付いたままで受け取られます。

診断

ソケット操作は、次のエラーが返されたときは成功していません。

[EISCONN] すでに接続されているソケットに対して接続を確立しようとしたとき、 または相手先アドレスを指定してデータグラムを送ろうとしたときに ソケットがすでに接続されている。

[ENOTCONN] 相手先アドレスが指定されていない、 またはソケットが接続されていないのにデータグラムを送ろうとしたとき。

[ENOBUFS] システムが内部のデータ構造体用のメモリを使い果たしたとき。

[EADDRNOTAVAIL]
ネットワークインターフェースが存在しないネットワークアドレスの ソケットを作ろうとしたとき。

関連事項

send(2), recv(2), intro(4N), inet(4F), ip(4P)

NEWS-OSRelease 4.1C

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026