#!/usr/local/bin/tt

# 簡易 ping コマンドです。
# 相手のIPアドレス（又は、ホスト名）を指定して、ping を実行します。
# なお、タイムアウト値も実数で指定できるようにします。（時間精度は、実行環境に依存します。）

/*--1---2---3---4---5---6---7---8---9---A---B---C---D---E---F---G---H---I---J---K---L---M---N---*/

# 引数の確認
    if( argc!=2 && argc!=3 )
        dying("使い方:  ping  [-タイムアウト値(秒)]  IPアドレスorホスト名\n")

# タイムアウト値の設定(オプション)
    opt = opshift()                     # オプションが指定されていれば、その文字列を返す。
    if( opt!=NULL ){ RAW_TIMEOUT = -atof(opt); }

# サーバーアドレスの取得
    ip = shift()                        # IPアドレス、又は、ホスト名（文字列）

# ping の実行（デフォルトソケットを利用）
    loop( i<5 ){                        # i = 0,1,2,3,4
        ret = ping(ip)                  # ping の送信と受信、戻り値は経過時間[sec]
        if( ret==NULL )
            print("From: IP=%s (%s!ERROR!%s)\n",ip,C_RED,C_DEF)
        else
            print("From: IP=%s (%f[ms])\n"     ,ip,ret*1000   )
    }
